Merge branch 'release' into develop

This commit is contained in:
liufu 2023-03-30 15:36:24 +08:00
commit 2737f152c3
15 changed files with 7019 additions and 7019 deletions

View file

@ -1,6 +1,6 @@
ENV = 'development'
VITE_CLI_PORT = 5173
VITE_SERVER_PORT = 21011
VITE_BASE_API = /api
VITE_BASE_PATH = http://192.168.103.80
ENV = 'development'
VITE_CLI_PORT = 5173
VITE_SERVER_PORT = 21011
VITE_BASE_API = /api
VITE_BASE_PATH = http://192.168.103.80

View file

@ -1,6 +1,6 @@
ENV = 'production'
VITE_CLI_PORT = 5174
VITE_SERVER_PORT = 20011
VITE_BASE_API = /api
VITE_BASE_PATH = http://127.0.0.1
ENV = 'production'
VITE_CLI_PORT = 5174
VITE_SERVER_PORT = 20011
VITE_BASE_API = /api
VITE_BASE_PATH = http://127.0.0.1

View file

@ -1,82 +1,82 @@
{
"root": true,
"globals": {
"defineEmits": "readonly",
"defineProps": "readonly",
"defineExpose": "readonly"
},
"extends": ["plugin:@typescript-eslint/recommended", "plugin:vue/vue3-recommended", "airbnb-base"],
"parserOptions": {
"parser": "@typescript-eslint/parser",
"ecmaVersion": 2020
},
"rules": {
"camelcase": "off",
"no-bitwise": "off", // 禁用按位运算符
"no-tabs": "off", // 禁用 tab
"array-element-newline": ["error", "consistent"], // 强制数组元素间出现换行
"indent": "off", // 强制使用一致的缩进
"quotes": ["error", "single"], // 强制使用一致的反勾号、双引号或单引号
"comma-dangle": "off", // 要求或禁止末尾逗号
"object-curly-spacing": ["error", "always"], // 强制在大括号中使用一致的空格
"max-len": ["error", 200], // 强制一行的最大长度; 注意: 这里特意调整的比prettierrc多50, 因为某些情况下两个插件格式化出来的结果不同导致界面上有波浪线
"no-new": "off", // 禁止使用 new 以避免产生副作用
"linebreak-style": "off", // 强制使用一致的换行风格
"import/extensions": "off", // 确保在导入路径中统一使用文件扩展名
"eol-last": "off", // 要求或禁止文件末尾存在空行
"no-shadow": "off", // 禁止变量声明与外层作用域的变量同名
"no-unused-vars": "warn", // 禁止出现未使用过的变量
"import/no-cycle": "off", // 禁止一个模块导入一个有依赖路径的模块回到自己身上
"arrow-parens": "off", // 要求箭头函数的参数使用圆括号
"semi": ["error", "never"], // 要求或禁止使用分号代替 ASI
"eqeqeq": "off", // 要求使用 === 和 !==
"no-param-reassign": "off", // 禁止对 function 的参数进行重新赋值
"import/prefer-default-export": "off", // 如果模块只输入一个名字,则倾向于默认输出
"no-use-before-define": "off", // 禁止在变量定义之前使用它们,则倾向于默认输出
"no-continue": "off", // 禁用 continue 语句
"prefer-destructuring": "off", // 优先使用数组和对象解构
"no-plusplus": "off", // 禁用一元操作符 ++ 和 --
"prefer-const": "warn", // 要求使用 const 声明那些声明后不再被修改的变量
"global-require": "off", // 要求 require() 出现在顶层模块作用域中
"no-prototype-builtins": "off", // 禁止直接调用 Object.prototypes 的内置属性
"consistent-return": "off", // 要求 return 语句要么总是指定返回的值,要么不指定
"one-var-declaration-per-line": "off", // 要求或禁止在变量声明周围换行
"one-var": "off", // 强制函数中的变量要么一起声明要么分开声明
"import/named": "off", // 确保命名导入与远程文件中的命名导出相对应
"object-curly-newline": "off", // 强制大括号内换行符的一致性
"default-case": "off", // 要求 switch 语句中有 default 分支
"no-trailing-spaces": "off", // 禁用行尾空格
"func-names": "off", // 要求或禁止使用命名的 function 表达式
"radix": "off", // 强制在 parseInt() 使用基数参数
"no-unused-expressions": "off", // 禁止出现未使用过的表达式
"no-underscore-dangle": "off", // 禁止标识符中有悬空下划线
"no-nested-ternary": "off", // 禁用嵌套的三元表达式
"no-restricted-syntax": "off", // 禁用特定的语法
"no-await-in-loop": "off", // 禁止在循环中出现 await
"import/no-extraneous-dependencies": "off", // 禁止使用外部包
"import/no-unresolved": "off", // 确保导入指向一个可以解析的文件/模块
"template-curly-spacing": ["error", "always"], // 要求或禁止模板字符串中的嵌入表达式周围空格的使用
"@typescript-eslint/no-var-requires": "off", // 除import语句外禁止使用require语句
"@typescript-eslint/no-empty-function": "off", // 不允许空函数
"@typescript-eslint/no-explicit-any": "off", // 禁止使用 any 类型
"guard-for-in": "off", // 要求 for-in 循环中有一个 if 语句
"class-methods-use-this": "off", // 强制类方法使用 this
"vue/html-indent": ["error", 2], // 在<template>中强制一致缩进
"vue/html-self-closing": "off", // 执行自闭合的风格
"vue/max-attributes-per-line": [
// 强制每行属性的最大数量
"warn",
{
"singleline": {
"max": 10,
"allowFirstLine": true
},
"multiline": {
"max": 1,
"allowFirstLine": false
}
}
],
"vue/singleline-html-element-content-newline": "off" // 要求单行元素的内容前后有一个换行符
}
}
{
"root": true,
"globals": {
"defineEmits": "readonly",
"defineProps": "readonly",
"defineExpose": "readonly"
},
"extends": ["plugin:@typescript-eslint/recommended", "plugin:vue/vue3-recommended", "airbnb-base"],
"parserOptions": {
"parser": "@typescript-eslint/parser",
"ecmaVersion": 2020
},
"rules": {
"camelcase": "off",
"no-bitwise": "off", // 禁用按位运算符
"no-tabs": "off", // 禁用 tab
"array-element-newline": ["error", "consistent"], // 强制数组元素间出现换行
"indent": "off", // 强制使用一致的缩进
"quotes": ["error", "single"], // 强制使用一致的反勾号、双引号或单引号
"comma-dangle": "off", // 要求或禁止末尾逗号
"object-curly-spacing": ["error", "always"], // 强制在大括号中使用一致的空格
"max-len": ["error", 200], // 强制一行的最大长度; 注意: 这里特意调整的比prettierrc多50, 因为某些情况下两个插件格式化出来的结果不同导致界面上有波浪线
"no-new": "off", // 禁止使用 new 以避免产生副作用
"linebreak-style": "off", // 强制使用一致的换行风格
"import/extensions": "off", // 确保在导入路径中统一使用文件扩展名
"eol-last": "off", // 要求或禁止文件末尾存在空行
"no-shadow": "off", // 禁止变量声明与外层作用域的变量同名
"no-unused-vars": "warn", // 禁止出现未使用过的变量
"import/no-cycle": "off", // 禁止一个模块导入一个有依赖路径的模块回到自己身上
"arrow-parens": "off", // 要求箭头函数的参数使用圆括号
"semi": ["error", "never"], // 要求或禁止使用分号代替 ASI
"eqeqeq": "off", // 要求使用 === 和 !==
"no-param-reassign": "off", // 禁止对 function 的参数进行重新赋值
"import/prefer-default-export": "off", // 如果模块只输入一个名字,则倾向于默认输出
"no-use-before-define": "off", // 禁止在变量定义之前使用它们,则倾向于默认输出
"no-continue": "off", // 禁用 continue 语句
"prefer-destructuring": "off", // 优先使用数组和对象解构
"no-plusplus": "off", // 禁用一元操作符 ++ 和 --
"prefer-const": "warn", // 要求使用 const 声明那些声明后不再被修改的变量
"global-require": "off", // 要求 require() 出现在顶层模块作用域中
"no-prototype-builtins": "off", // 禁止直接调用 Object.prototypes 的内置属性
"consistent-return": "off", // 要求 return 语句要么总是指定返回的值,要么不指定
"one-var-declaration-per-line": "off", // 要求或禁止在变量声明周围换行
"one-var": "off", // 强制函数中的变量要么一起声明要么分开声明
"import/named": "off", // 确保命名导入与远程文件中的命名导出相对应
"object-curly-newline": "off", // 强制大括号内换行符的一致性
"default-case": "off", // 要求 switch 语句中有 default 分支
"no-trailing-spaces": "off", // 禁用行尾空格
"func-names": "off", // 要求或禁止使用命名的 function 表达式
"radix": "off", // 强制在 parseInt() 使用基数参数
"no-unused-expressions": "off", // 禁止出现未使用过的表达式
"no-underscore-dangle": "off", // 禁止标识符中有悬空下划线
"no-nested-ternary": "off", // 禁用嵌套的三元表达式
"no-restricted-syntax": "off", // 禁用特定的语法
"no-await-in-loop": "off", // 禁止在循环中出现 await
"import/no-extraneous-dependencies": "off", // 禁止使用外部包
"import/no-unresolved": "off", // 确保导入指向一个可以解析的文件/模块
"template-curly-spacing": ["error", "always"], // 要求或禁止模板字符串中的嵌入表达式周围空格的使用
"@typescript-eslint/no-var-requires": "off", // 除import语句外禁止使用require语句
"@typescript-eslint/no-empty-function": "off", // 不允许空函数
"@typescript-eslint/no-explicit-any": "off", // 禁止使用 any 类型
"guard-for-in": "off", // 要求 for-in 循环中有一个 if 语句
"class-methods-use-this": "off", // 强制类方法使用 this
"vue/html-indent": ["error", 2], // 在<template>中强制一致缩进
"vue/html-self-closing": "off", // 执行自闭合的风格
"vue/max-attributes-per-line": [
// 强制每行属性的最大数量
"warn",
{
"singleline": {
"max": 10,
"allowFirstLine": true
},
"multiline": {
"max": 1,
"allowFirstLine": false
}
}
],
"vue/singleline-html-element-content-newline": "off" // 要求单行元素的内容前后有一个换行符
}
}

48
frontend/.gitignore vendored
View file

@ -1,24 +1,24 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
*.local
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
node_modules
dist
dist-ssr
*.local
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

View file

@ -1,19 +1,19 @@
{
"eslintIntegration": false,
"printWidth": 150,
"tabWidth": 2,
"useTabs": false,
"semi": false,
"singleQuote": true,
"quoteProps": "as-needed",
"bracketSpacing": true,
"trailingComma": "none",
"jsxBracketSameLine": false,
"jsxSingleQuote": false,
"arrowParens": "always",
"insertPragma": false,
"requirePragma": false,
"proseWrap": "never",
"htmlWhitespaceSensitivity": "strict",
"endOfLine": "lf"
{
"eslintIntegration": false,
"printWidth": 150,
"tabWidth": 2,
"useTabs": false,
"semi": false,
"singleQuote": true,
"quoteProps": "as-needed",
"bracketSpacing": true,
"trailingComma": "none",
"jsxBracketSameLine": false,
"jsxSingleQuote": false,
"arrowParens": "always",
"insertPragma": false,
"requirePragma": false,
"proseWrap": "never",
"htmlWhitespaceSensitivity": "strict",
"endOfLine": "lf"
}

View file

@ -1,4 +1,4 @@
# 系统环境
Vue + TS: 3.2.45
Vite: 4.0.0
# 系统环境
Vue + TS: 3.2.45
Vite: 4.0.0
Node: 16.13.1

View file

@ -1,5 +1,5 @@
// Generated by 'unplugin-auto-import'
export {}
declare global {
}
// Generated by 'unplugin-auto-import'
export {}
declare global {
}

View file

@ -1,13 +1,13 @@
// generated by unplugin-vue-components
// We suggest you to commit this file into source control
// Read more: https://github.com/vuejs/core/pull/3399
import '@vue/runtime-core'
export {}
declare module '@vue/runtime-core' {
export interface GlobalComponents {
RouterLink: typeof import('vue-router')['RouterLink']
RouterView: typeof import('vue-router')['RouterView']
}
}
// generated by unplugin-vue-components
// We suggest you to commit this file into source control
// Read more: https://github.com/vuejs/core/pull/3399
import '@vue/runtime-core'
export {}
declare module '@vue/runtime-core' {
export interface GlobalComponents {
RouterLink: typeof import('vue-router')['RouterLink']
RouterView: typeof import('vue-router')['RouterView']
}
}

View file

@ -1,14 +1,14 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>ModernWMS</title>
<link rel="icon" href="./src/assets/img/webLogoMini.png" />
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>ModernWMS</title>
<link rel="icon" href="./src/assets/img/webLogoMini.png" />
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.ts"></script>
</body>
</html>

File diff suppressed because it is too large Load diff

View file

@ -1,50 +1,50 @@
{
"name": "ykwms",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vue-tsc && vite build",
"preview": "vite preview"
},
"dependencies": {
"axios": "1.2.1",
"exceljs": "4.3.0",
"lottie-web": "5.10.1",
"mitt": "3.0.0",
"qrcode.vue": "^3.3.3",
"ts-md5": "1.3.1",
"vue": "3.2.45",
"vue-i18n": "9.2.2",
"vue-router": "4.1.6",
"vuetify": "3.0.4",
"vuex": "4.0.2",
"vuex-persist": "3.1.3",
"vxe-table": "4.3.7",
"vxe-table-plugin-export-xlsx": "3.0.4",
"xe-utils": "3.5.7",
"xlsx": "0.18.5"
},
"devDependencies": {
"@mdi/font": "7.1.96",
"@types/node": "18.11.13",
"@typescript-eslint/eslint-plugin": "5.46.0",
"@typescript-eslint/parser": "5.46.0",
"@vitejs/plugin-vue": "4.0.0",
"eslint": "7.2.0",
"eslint-config-airbnb-base": "14.2.1",
"eslint-plugin-import": "2.26.0",
"eslint-plugin-vue": "7.20.0",
"less": "4.1.3",
"less-loader": "11.1.0",
"material-design-icons-iconfont": "6.7.0",
"typescript": "4.9.3",
"unplugin-auto-import": "0.12.1",
"unplugin-icons": "0.14.15",
"unplugin-vue-components": "0.22.12",
"vite": "4.0.0",
"vue-eslint-parser": "9.1.0",
"vue-tsc": "1.0.11"
}
}
{
"name": "ykwms",
"private": true,
"version": "0.0.0",
"type": "module",
"scripts": {
"dev": "vite",
"build": "vue-tsc && vite build",
"preview": "vite preview"
},
"dependencies": {
"axios": "1.2.1",
"exceljs": "4.3.0",
"lottie-web": "5.10.1",
"mitt": "3.0.0",
"qrcode.vue": "^3.3.3",
"ts-md5": "1.3.1",
"vue": "3.2.45",
"vue-i18n": "9.2.2",
"vue-router": "4.1.6",
"vuetify": "3.0.4",
"vuex": "4.0.2",
"vuex-persist": "3.1.3",
"vxe-table": "4.3.7",
"vxe-table-plugin-export-xlsx": "3.0.4",
"xe-utils": "3.5.7",
"xlsx": "0.18.5"
},
"devDependencies": {
"@mdi/font": "7.1.96",
"@types/node": "18.11.13",
"@typescript-eslint/eslint-plugin": "5.46.0",
"@typescript-eslint/parser": "5.46.0",
"@vitejs/plugin-vue": "4.0.0",
"eslint": "7.2.0",
"eslint-config-airbnb-base": "14.2.1",
"eslint-plugin-import": "2.26.0",
"eslint-plugin-vue": "7.20.0",
"less": "4.1.3",
"less-loader": "11.1.0",
"material-design-icons-iconfont": "6.7.0",
"typescript": "4.9.3",
"unplugin-auto-import": "0.12.1",
"unplugin-icons": "0.14.15",
"unplugin-vue-components": "0.22.12",
"vite": "4.0.0",
"vue-eslint-parser": "9.1.0",
"vue-tsc": "1.0.11"
}
}

View file

@ -1,24 +1,24 @@
{
"compilerOptions": {
"target": "ESNext",
"useDefineForClassFields": true,
"module": "ESNext",
"moduleResolution": "Node",
"strict": true,
"jsx": "preserve",
"resolveJsonModule": true,
"isolatedModules": true,
"esModuleInterop": true,
"lib": ["ESNext", "DOM"],
"skipLibCheck": true,
"noEmit": true,
//
"baseUrl": ".", // baseUrl
"paths": {
// baseUrl
"@/*": ["src/*"]
}
},
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "src/api/sys/login.tsn.tssrc/api/sys/login.tslogisrc/api/sys/login.tssys/src/api/sys/login.tsapi/sys/login.ts"],
"references": [{ "path": "./tsconfig.node.json" }]
}
{
"compilerOptions": {
"target": "ESNext",
"useDefineForClassFields": true,
"module": "ESNext",
"moduleResolution": "Node",
"strict": true,
"jsx": "preserve",
"resolveJsonModule": true,
"isolatedModules": true,
"esModuleInterop": true,
"lib": ["ESNext", "DOM"],
"skipLibCheck": true,
"noEmit": true,
//
"baseUrl": ".", // baseUrl
"paths": {
// baseUrl
"@/*": ["src/*"]
}
},
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "src/api/sys/login.tsn.tssrc/api/sys/login.tslogisrc/api/sys/login.tssys/src/api/sys/login.tsapi/sys/login.ts"],
"references": [{ "path": "./tsconfig.node.json" }]
}

View file

@ -1,9 +1,9 @@
{
"compilerOptions": {
"composite": true,
"module": "ESNext",
"moduleResolution": "Node",
"allowSyntheticDefaultImports": true
},
"include": ["vite.config.ts"]
}
{
"compilerOptions": {
"composite": true,
"module": "ESNext",
"moduleResolution": "Node",
"allowSyntheticDefaultImports": true
},
"include": ["vite.config.ts"]
}

View file

@ -1,26 +1,26 @@
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
// https://vitejs.dev/config/
export default defineConfig({
plugins: [
vue()
],
resolve: {
alias: {
// 配置别名指向src目录
'@': resolve(__dirname, 'src'),
'vue-i18n': 'vue-i18n/dist/vue-i18n.cjs.js'
},
// 使用别名的文件后缀
extensions: ['.js', '.json', '.ts']
},
css: {
preprocessorOptions: {
less: {
javascriptEnabled: true
}
}
}
})
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
// https://vitejs.dev/config/
export default defineConfig({
plugins: [
vue()
],
resolve: {
alias: {
// 配置别名指向src目录
'@': resolve(__dirname, 'src'),
'vue-i18n': 'vue-i18n/dist/vue-i18n.cjs.js'
},
// 使用别名的文件后缀
extensions: ['.js', '.json', '.ts']
},
css: {
preprocessorOptions: {
less: {
javascriptEnabled: true
}
}
}
})

File diff suppressed because it is too large Load diff