完成了 BOM 管理和生产管理,完成部分发料单、采购计划和调拨单。

This commit is contained in:
c
2026-02-28 18:18:01 +08:00
commit 219eef4729
399 changed files with 46113 additions and 0 deletions

76
node/plugins.ts Normal file
View File

@@ -0,0 +1,76 @@
import vue from "@vitejs/plugin-vue";
import vueJsx from "@vitejs/plugin-vue-jsx";
import { resolve } from "path";
import { createSvgIconsPlugin } from "vite-plugin-svg-icons";
import { createStyleImportPlugin, ElementPlusResolve } from "vite-plugin-style-import";
import eslintPlugin from "vite-plugin-eslint";
import progress from "vite-plugin-progress";
import ServerUrlCopy from "vite-plugin-url-copy";
import vueDevTools from "vite-plugin-vue-devtools";
import { visualizer } from "rollup-plugin-visualizer";
import AutoImport from "unplugin-auto-import/vite";
import Components from "unplugin-vue-components/vite";
import { ElementPlusResolver } from "unplugin-vue-components/resolvers";
import { configCompressPlugin } from "./compress";
export function getPluginsList(command: string, viteEnv: ImportMetaEnv) {
const lifecycle = process.env.npm_lifecycle_event;
return [
vue(),
vueJsx(),
viteEnv.VITE_DEVTOOLS && vueDevTools(),
eslintPlugin({ cache: false }), // EsLint 报错信息显示在浏览器界面上
ServerUrlCopy({
qrcode: {
disabled: true, // 是否生成二维码
},
}),
progress(),
!viteEnv.VITE_LOAD_ALL_EP_STYLE
? createStyleImportPlugin({
resolves: [ElementPlusResolve()],
libs: [
{
libraryName: "element-plus",
esModule: true,
resolveStyle: name => {
if (!name.startsWith("el-")) return "";
return `element-plus/theme-chalk/src/${name.replace(/^el-/, "")}.scss`;
},
},
],
})
: undefined,
AutoImport({
imports: ["vue", "vue-router", "pinia"], // 自动引入 vue 的 ref、toRefs、onMounted 等,无需在页面中再次引入
dts: "src/types/auto-import.d.ts", // 生成在 src 路径下名为 auto-import.d.ts 的声明文件
eslintrc: {
enabled: false, // 改为 true 用于生成 eslint 配置。生成后改回 false避免重复生成消耗
},
resolvers: !viteEnv.VITE_LOAD_ALL_EP_COMPONENTS ? [ElementPlusResolver()] : [],
}),
!viteEnv.VITE_LOAD_ALL_EP_COMPONENTS
? Components({
resolvers: [ElementPlusResolver({ importStyle: "sass" })],
dirs: "src/components", // 自定引入需要扫描的组件路径
dts: "src/types/auto-components.d.ts", // 生成在 src 路径下名为 auto-components.d.ts 的声明文件
directoryAsNamespace: true,
})
: undefined,
// 使用 svg 图标
createSvgIconsPlugin({
iconDirs: [resolve(process.cwd(), "src/common/assets/icons")],
symbolId: "icon-[dir]-[name]",
}),
viteEnv.VITE_BUILD_GZIP && configCompressPlugin(viteEnv.VITE_COMPRESSION),
// 打包分析
(lifecycle === "report" || viteEnv.VITE_REPORT) &&
visualizer({ open: true, brotliSize: true, filename: "report.html" }),
];
}