兰宝车间质量管理系统-前端
疯狂的狮子Li
2023-08-11 f3195be73291effc55c3e35e623b82953cf1fc02
update 优化 整体代码结构
已修改16个文件
130 ■■■■ 文件已修改
.eslintrc.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
.prettierrc.cjs 82 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/system/client/types.ts 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/system/user/index.ts 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/tool/gen/index.ts 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/styles/element-ui.scss 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/styles/index.scss 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/BuildCode/render.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/layout/components/InnerLink/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/plugins/download.ts 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.ts 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/request.ts 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/validate.ts 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/dept/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/user/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
vite/plugins/unocss.ts 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
.eslintrc.js
@@ -30,7 +30,7 @@
        extendDefaults: true,
        types: {
          '{}': false,
          'Function': false
          Function: false
        }
      }
    ]
.prettierrc.cjs
@@ -2,45 +2,45 @@
 * 代码格式化配置
 */
module.exports = {
    // 一行最多多少个字符
    printWidth: 150,
    // 指定每个缩进级别的空格数
    tabWidth: 2,
    // 使用制表符而不是空格缩进行
    useTabs: false,
    // 在语句末尾是否需要分号
    semi: true,
    // 是否使用单引号
    singleQuote: true,
    // 更改引用对象属性的时间 可选值"<as-needed|consistent|preserve>"
    quoteProps: 'as-needed',
    // 在JSX中使用单引号而不是双引号
    jsxSingleQuote: false,
    // 多行时尽可能打印尾随逗号。(例如,单行数组永远不会出现逗号结尾。) 可选值"<none|es5|all>",默认none
    trailingComma: 'none',
    // 在对象文字中的括号之间打印空格
    bracketSpacing: true,
    // jsx 标签的反尖括号需要换行
    jsxBracketSameLine: false,
    embeddedLanguageFormatting: 'off',
    // 在单独的箭头函数参数周围包括括号 always:(x) => x \ avoid:x => x
    arrowParens: 'always',
    // 这两个选项可用于格式化以给定字符偏移量(分别包括和不包括)开始和结束的代码
    rangeStart: 0,
    rangeEnd: Infinity,
    // 指定要使用的解析器,不需要写文件开头的 @prettier
    requirePragma: false,
    // 不需要自动在文件开头插入 @prettier
    insertPragma: false,
    // 使用默认的折行标准 always\never\preserve
    proseWrap: 'preserve',
    // 指定HTML文件的全局空格敏感度 css\strict\ignore
    htmlWhitespaceSensitivity: 'css',
    // Vue文件脚本和样式标签缩进
    vueIndentScriptAndStyle: false,
    // 在 windows 操作系统中换行符通常是回车 (CR) 加换行分隔符 (LF),也就是回车换行(CRLF),
    // 然而在 Linux 和 Unix 中只使用简单的换行分隔符 (LF)。
    // 对应的控制字符为 "\n" (LF) 和 "\r\n"(CRLF)。auto意为保持现有的行尾
    // 换行符使用 lf 结尾是 可选值"<auto|lf|crlf|cr>"
    endOfLine: 'auto'
  // 一行最多多少个字符
  printWidth: 150,
  // 指定每个缩进级别的空格数
  tabWidth: 2,
  // 使用制表符而不是空格缩进行
  useTabs: false,
  // 在语句末尾是否需要分号
  semi: true,
  // 是否使用单引号
  singleQuote: true,
  // 更改引用对象属性的时间 可选值"<as-needed|consistent|preserve>"
  quoteProps: 'as-needed',
  // 在JSX中使用单引号而不是双引号
  jsxSingleQuote: false,
  // 多行时尽可能打印尾随逗号。(例如,单行数组永远不会出现逗号结尾。) 可选值"<none|es5|all>",默认none
  trailingComma: 'none',
  // 在对象文字中的括号之间打印空格
  bracketSpacing: true,
  // jsx 标签的反尖括号需要换行
  jsxBracketSameLine: false,
  embeddedLanguageFormatting: 'off',
  // 在单独的箭头函数参数周围包括括号 always:(x) => x \ avoid:x => x
  arrowParens: 'always',
  // 这两个选项可用于格式化以给定字符偏移量(分别包括和不包括)开始和结束的代码
  rangeStart: 0,
  rangeEnd: Infinity,
  // 指定要使用的解析器,不需要写文件开头的 @prettier
  requirePragma: false,
  // 不需要自动在文件开头插入 @prettier
  insertPragma: false,
  // 使用默认的折行标准 always\never\preserve
  proseWrap: 'preserve',
  // 指定HTML文件的全局空格敏感度 css\strict\ignore
  htmlWhitespaceSensitivity: 'css',
  // Vue文件脚本和样式标签缩进
  vueIndentScriptAndStyle: false,
  // 在 windows 操作系统中换行符通常是回车 (CR) 加换行分隔符 (LF),也就是回车换行(CRLF),
  // 然而在 Linux 和 Unix 中只使用简单的换行分隔符 (LF)。
  // 对应的控制字符为 "\n" (LF) 和 "\r\n"(CRLF)。auto意为保持现有的行尾
  // 换行符使用 lf 结尾是 可选值"<auto|lf|crlf|cr>"
  endOfLine: 'auto'
};
src/api/system/client/types.ts
@@ -43,7 +43,6 @@
   * 状态(0正常 1停用)
   */
  status: string;
}
export interface ClientForm extends BaseEntity {
@@ -91,7 +90,6 @@
   * 状态(0正常 1停用)
   */
  status?: string;
}
export interface ClientQuery extends PageQuery {
@@ -134,5 +132,4 @@
   * 状态(0正常 1停用)
   */
  status?: string;
}
src/api/system/user/index.ts
@@ -175,8 +175,8 @@
 */
export const listUserByDeptId = (deptId: string | number): AxiosPromise<UserVO[]> => {
  return request({
    url: "/system/user/list/dept/" + deptId,
    method: "get"
    url: '/system/user/list/dept/' + deptId,
    method: 'get'
  });
};
src/api/tool/gen/index.ts
@@ -37,7 +37,7 @@
};
// 导入表
export const importTable = (data: { tables: string, dataName: string }) => {
export const importTable = (data: { tables: string; dataName: string }) => {
  return request({
    url: '/tool/gen/importTable',
    method: 'post',
@@ -83,4 +83,4 @@
    url: '/tool/gen/getDataNames',
    method: 'get'
  });
};
};
src/assets/styles/element-ui.scss
@@ -78,8 +78,6 @@
  overflow-x: hidden;
}
// refine element ui upload
.upload-container {
  .el-upload {
@@ -109,10 +107,10 @@
  box-sizing: content-box;
}
.el-menu--collapse>div>.el-submenu>.el-submenu__title .el-submenu__icon-arrow {
.el-menu--collapse > div > .el-submenu > .el-submenu__title .el-submenu__icon-arrow {
  display: none;
}
.el-dropdown .el-dropdown-link {
  color: var(--el-color-primary) !important;
}
}
src/assets/styles/index.scss
@@ -26,7 +26,8 @@
  box-sizing: border-box;
}
html.dark .svg-icon, html.dark svg {
html.dark .svg-icon,
html.dark svg {
  fill: var(--el-text-color-regular);
}
src/components/BuildCode/render.vue
@@ -4,11 +4,11 @@
const props = defineProps({
  formJson: {
    type: [String, Object],
    default: {}
    default: ""
  },
  formData: {
    type: [String, Object],
    default: {}
    default: ""
  },
  isView: {
    type: Boolean,
src/layout/components/InnerLink/index.vue
@@ -15,4 +15,4 @@
    }
});
const height = ref(document.documentElement.clientHeight - 94.5 + "px");
</script>
</script>
src/plugins/download.ts
@@ -3,7 +3,7 @@
import errorCode from '@/utils/errorCode';
import { blobValidate } from '@/utils/ruoyi';
import { LoadingInstance } from 'element-plus/es/components/loading/src/loading';
import { globalHeaders } from "@/utils/request";
import { globalHeaders } from '@/utils/request';
const baseURL = import.meta.env.VITE_APP_BASE_API;
let downloadLoadingInstance: LoadingInstance;
@@ -16,7 +16,7 @@
        method: 'get',
        url: url,
        responseType: 'blob',
        headers: globalHeaders(),
        headers: globalHeaders()
      });
      const isBlob = blobValidate(res.data);
      if (isBlob) {
@@ -40,7 +40,7 @@
        method: 'get',
        url: url,
        responseType: 'blob',
        headers: globalHeaders(),
        headers: globalHeaders()
      });
      const isBlob = blobValidate(res.data);
      if (isBlob) {
src/router/index.ts
@@ -181,5 +181,4 @@
  }
});
export default router;
src/utils/request.ts
@@ -16,10 +16,10 @@
export const isRelogin = { show: false };
export const globalHeaders = () => {
  return {
    Authorization: "Bearer " + getToken(),
    Authorization: 'Bearer ' + getToken(),
    clientid: import.meta.env.VITE_APP_CLIENT_ID
  }
}
  };
};
axios.defaults.headers['Content-Type'] = 'application/json;charset=utf-8';
axios.defaults.headers['clientid'] = import.meta.env.VITE_APP_CLIENT_ID;
src/utils/validate.ts
@@ -68,7 +68,7 @@
 */
export const validEmail = (email: string) => {
  const reg =
    /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
    /^(([^<>()\]\\.,;:\s@"]+(\.[^<>()\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
  return reg.test(email);
};
src/views/system/dept/index.vue
@@ -116,7 +116,7 @@
            <el-form-item label="部门状态">
              <el-radio-group v-model="form.status">
                <el-radio v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.value">{{ dict.label
                  }}</el-radio>
                }}</el-radio>
              </el-radio-group>
            </el-form-item>
          </el-col>
src/views/system/user/index.vue
@@ -299,7 +299,6 @@
<script setup name="User" lang="ts">
import api from "@/api/system/user"
import { UserForm, UserQuery, UserVO } from '@/api/system/user/types';
import { getToken } from "@/utils/auth";
import { treeselect } from "@/api/system/dept";
import { DeptVO } from "@/api/system/dept/types";
import { RoleVO } from "@/api/system/role/types";
vite/plugins/unocss.ts
@@ -9,6 +9,6 @@
      'panel-title':
        'pb-[5px] font-sans leading-[1.1] font-medium text-base text-[#6379bb] border-b border-b-solid border-[var(--el-border-color-light)] mb-5 mt-0'
    },
    hmrTopLevelAwait: false, // unocss默认是true,低版本浏览器是不支持的,启动后会报错
    hmrTopLevelAwait: false // unocss默认是true,低版本浏览器是不支持的,启动后会报错
  });
};