From 4766b769a6aa894834a6defa21a03578ddab175b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=98=8E=E6=A2=81?= <2429105222@qq.com> Date: Wed, 26 Apr 2023 10:58:38 +0800 Subject: [PATCH 01/26] =?UTF-8?q?=E8=80=97=E6=9D=90=E9=A2=86=E7=94=A8?= =?UTF-8?q?=E6=8B=89=E5=8F=96=E4=BA=A7=E5=93=81=E5=BA=93=E5=AD=98=E4=BD=9C?= =?UTF-8?q?=E5=8C=BA=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/inout/DialogSelectInvProduct.vue | 58 ++++++++++++++++---- src/views/inout/receive/DialogNewReceive.vue | 8 ++- src/views/inout/receive/receiveAdd.vue | 22 +++++++- 3 files changed, 72 insertions(+), 16 deletions(-) diff --git a/src/views/inout/DialogSelectInvProduct.vue b/src/views/inout/DialogSelectInvProduct.vue index e6e4f0e8..278c7254 100644 --- a/src/views/inout/DialogSelectInvProduct.vue +++ b/src/views/inout/DialogSelectInvProduct.vue @@ -65,6 +65,8 @@ import { } from "@/api/inventory/invPorduct"; import {addDetail} from "@/api/inout/receiveOrder"; import {addBizProduct} from "@/api/inout/orderDetailCode"; +import {getInvPreInProduct} from "@/api/inventory/invPreInSearch"; +import {getInvPreProduct} from "@/api/inventory/invPreProduct"; export default { @@ -162,19 +164,51 @@ export default { }, getList() { + debugger this.loading = true; - getInvProduct(this.filterQuery) - .then((response) => { - this.showSup = response.data.showSup; - this.loading = false; - this.list = response.data.list || []; - this.total = response.data.total || 0; - }) - .catch(() => { - this.loading = false; - this.list = []; - this.total = 0; - }); + //寄售 + if(this.invQueryData.advanceType==3){ + getInvPreProduct(this.filterQuery) + .then((response) => { + this.showSup = response.data.showSup; + this.loading = false; + this.list = response.data.list || []; + this.total = response.data.total || 0; + }) + .catch(() => { + this.loading = false; + this.list = []; + this.total = 0; + }); + //预验收 + }else if(this.invQueryData.advanceType==2){ + getInvPreInProduct(this.filterQuery) + .then((response) => { + this.showSup = response.data.showSup; + this.loading = false; + this.list = response.data.list || []; + this.total = response.data.total || 0; + }) + .catch(() => { + this.loading = false; + this.list = []; + this.total = 0; + }); + + }else{ + getInvProduct(this.filterQuery) + .then((response) => { + this.showSup = response.data.showSup; + this.loading = false; + this.list = response.data.list || []; + this.total = response.data.total || 0; + }) + .catch(() => { + this.loading = false; + this.list = []; + this.total = 0; + }); + } }, hideSearch() { this.showSearch = !this.showSearch; diff --git a/src/views/inout/receive/DialogNewReceive.vue b/src/views/inout/receive/DialogNewReceive.vue index bdaaa4d3..a5ed31e5 100644 --- a/src/views/inout/receive/DialogNewReceive.vue +++ b/src/views/inout/receive/DialogNewReceive.vue @@ -59,7 +59,7 @@ - @@ -277,6 +277,7 @@ export default { findFromInv() { let cQuery = { locInvCode: this.formData.invCode, + type:1, }; findByFrom(cQuery) .then((response) => { @@ -301,7 +302,10 @@ export default { hideSearch() { this.showSearch = !this.showSearch; }, - + getTargerType(){ + this.formData.advanceType= this.fromOptions.find(item => item.code == this.formData.targetInvCode).advanceType + console.log(this.formData) + }, saveOrder(status) { this.code = ""; this.$refs.multipleTable.setCurrentRow(); diff --git a/src/views/inout/receive/receiveAdd.vue b/src/views/inout/receive/receiveAdd.vue index aad1f874..72303bf9 100644 --- a/src/views/inout/receive/receiveAdd.vue +++ b/src/views/inout/receive/receiveAdd.vue @@ -22,7 +22,14 @@ - + + + + @@ -147,7 +154,7 @@ import {selectIp} from "@/api/param/systemParamConfig"; import thrOrderNew from "./DialogNewReceive"; import {getOrderDetail, getReceiveOrder} from "@/api/inout/receiveOrder"; import {getBusChange} from "@/api/basic/busTypeChange"; -import {findInvByUser} from "@/api/system/invSubWarehouse"; +import {filterSubAll, findInvByUser} from "@/api/system/invSubWarehouse"; export default { data() { @@ -178,6 +185,7 @@ export default { 4: "已拒绝" }, idQuery: {}, + corpList: [], total: 0, thirdSys: [], thirdSysDetail: null, @@ -373,6 +381,15 @@ export default { .catch(() => { }); }, + finCorpList(){ + filterSubAll({}) + .then((response) => { + this.corpList = response.data || []; + }) + .catch(() => { + }); + }, + }, components: { thrOrderNew, @@ -382,6 +399,7 @@ export default { created() { this.finCurInv(); this.getBusType(); + this.finCorpList(); }, }; From 2c5dd24356c8c4aff3bf9f3e3698c8f18926611a Mon Sep 17 00:00:00 2001 From: CTP <630182278@qq.com> Date: Wed, 26 Apr 2023 11:59:39 +0800 Subject: [PATCH 02/26] =?UTF-8?q?git=E5=BF=BD=E7=95=A5config?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + vue.config.js | 131 -------------------------------------------------- 2 files changed, 1 insertion(+), 131 deletions(-) delete mode 100644 vue.config.js diff --git a/.gitignore b/.gitignore index 78a752d8..86842559 100644 --- a/.gitignore +++ b/.gitignore @@ -19,5 +19,6 @@ selenium-debug.log *.sln *.local +vue.config.js package-lock.json yarn.lock diff --git a/vue.config.js b/vue.config.js deleted file mode 100644 index eef5677e..00000000 --- a/vue.config.js +++ /dev/null @@ -1,131 +0,0 @@ -"use strict"; -const path = require("path"); - -function resolve(dir) { - return path.join(__dirname, dir); -} - -const CompressionPlugin = require("compression-webpack-plugin"); - -const name = process.env.VUE_APP_TITLE || "UDI管理系统"; // 网页标题 - -const port = process.env.port || process.env.npm_config_port || 80; // 端口 - -// vue.config.js 配置说明 -//官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions -// 这里只列一部分,具体配置参考文档 -module.exports = { - // 部署生产环境和开发环境下的URL。 - // 默认情况下,Vue CLI 会假设你的应用是被部署在一个域名的根路径上 - // 例如 https://www.ruoyi.vip/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.ruoyi.vip/admin/,则设置 baseUrl 为 /admin/。 - publicPath: process.env.VUE_APP_CONTEXT_PATH, - // 在npm run build 或 yarn build 时 ,生成文件的目录名称(要和baseUrl的生产环境路径一致)(默认dist) - outputDir: "UDI_WMS_NEW", - // 用于放置生成的静态资源 (js、css、img、fonts) 的;(项目打包之后,静态资源会放在这个文件夹下) - assetsDir: "static", - // 是否开启eslint保存检测,有效值:ture | false | 'error' - lintOnSave: process.env.NODE_ENV === "development", - // 如果你不需要生产环境的 source map,可以将其设置为 false 以加速生产环境构建。 - productionSourceMap: false, - // webpack-dev-server 相关配置 - devServer: { - host: "0.0.0.0", - port: port, - open: false, - proxy: { - // detail: https://cli.vuejs.org/config/#devserver-proxy - [process.env.VUE_APP_BASE_API]: { - target: `http://192.168.0.166:9991/`, - changeOrigin: true, - pathRewrite: { - ["^" + process.env.VUE_APP_BASE_API]: "", - }, - }, - }, - disableHostCheck: true, - }, - css: { - loaderOptions: { - sass: { - sassOptions: { outputStyle: "expanded" }, - }, - }, - }, - configureWebpack: { - name: name, - resolve: { - alias: { - "@": resolve("src"), - }, - }, - plugins: [ - // http://doc.ruoyi.vip/ruoyi-vue/other/faq.html#使用gzip解压缩静态文件 - new CompressionPlugin({ - cache: false, // 不启用文件缓存 - test: /\.(js|css|html)?$/i, // 压缩文件格式 - filename: "[path].gz[query]", // 压缩后的文件名 - algorithm: "gzip", // 使用gzip压缩 - minRatio: 0.8, // 压缩率小于1才会压缩 - }), - ], - }, - chainWebpack(config) { - config.plugins.delete("preload"); // TODO: need test - config.plugins.delete("prefetch"); // TODO: need test - - // set svg-sprite-loader - config.module.rule("svg").exclude.add(resolve("src/assets/icons")).end(); - config.module - .rule("icons") - .test(/\.svg$/) - .include.add(resolve("src/assets/icons")) - .end() - .use("svg-sprite-loader") - .loader("svg-sprite-loader") - .options({ - symbolId: "icon-[name]", - }) - .end(); - - config.when(process.env.NODE_ENV !== "development", (config) => { - config - .plugin("ScriptExtHtmlWebpackPlugin") - .after("html") - .use("script-ext-html-webpack-plugin", [ - { - // `runtime` must same as runtimeChunk name. default is `runtime` - inline: /runtime\..*\.js$/, - }, - ]) - .end(); - config.optimization.splitChunks({ - chunks: "all", - cacheGroups: { - libs: { - name: "chunk-libs", - test: /[\\/]node_modules[\\/]/, - priority: 10, - chunks: "initial", // only package third parties that are initially dependent - }, - elementUI: { - name: "chunk-elementUI", // split elementUI into a single package - priority: 20, // the weight needs to be larger than libs and app or it will be packaged into libs or app - test: /[\\/]node_modules[\\/]_?element-ui(.*)/, // in order to adapt to cnpm - }, - commons: { - name: "chunk-commons", - test: resolve("src/components"), // can customize your rules - minChunks: 3, // minimum common number - priority: 5, - reuseExistingChunk: true, - }, - }, - }); - config.optimization.runtimeChunk("single"), - { - from: path.resolve(__dirname, "./public/robots.txt"), //防爬虫文件 - to: "./", //到根目录下 - }; - }); - }, -}; From 3192366934afaf3044535dca5b84449795a1c03a Mon Sep 17 00:00:00 2001 From: x_z Date: Wed, 26 Apr 2023 13:50:54 +0800 Subject: [PATCH 03/26] =?UTF-8?q?1.=E6=8F=90=E4=BA=A4=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vue.config.js | 131 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 131 insertions(+) create mode 100644 vue.config.js diff --git a/vue.config.js b/vue.config.js new file mode 100644 index 00000000..eef5677e --- /dev/null +++ b/vue.config.js @@ -0,0 +1,131 @@ +"use strict"; +const path = require("path"); + +function resolve(dir) { + return path.join(__dirname, dir); +} + +const CompressionPlugin = require("compression-webpack-plugin"); + +const name = process.env.VUE_APP_TITLE || "UDI管理系统"; // 网页标题 + +const port = process.env.port || process.env.npm_config_port || 80; // 端口 + +// vue.config.js 配置说明 +//官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions +// 这里只列一部分,具体配置参考文档 +module.exports = { + // 部署生产环境和开发环境下的URL。 + // 默认情况下,Vue CLI 会假设你的应用是被部署在一个域名的根路径上 + // 例如 https://www.ruoyi.vip/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.ruoyi.vip/admin/,则设置 baseUrl 为 /admin/。 + publicPath: process.env.VUE_APP_CONTEXT_PATH, + // 在npm run build 或 yarn build 时 ,生成文件的目录名称(要和baseUrl的生产环境路径一致)(默认dist) + outputDir: "UDI_WMS_NEW", + // 用于放置生成的静态资源 (js、css、img、fonts) 的;(项目打包之后,静态资源会放在这个文件夹下) + assetsDir: "static", + // 是否开启eslint保存检测,有效值:ture | false | 'error' + lintOnSave: process.env.NODE_ENV === "development", + // 如果你不需要生产环境的 source map,可以将其设置为 false 以加速生产环境构建。 + productionSourceMap: false, + // webpack-dev-server 相关配置 + devServer: { + host: "0.0.0.0", + port: port, + open: false, + proxy: { + // detail: https://cli.vuejs.org/config/#devserver-proxy + [process.env.VUE_APP_BASE_API]: { + target: `http://192.168.0.166:9991/`, + changeOrigin: true, + pathRewrite: { + ["^" + process.env.VUE_APP_BASE_API]: "", + }, + }, + }, + disableHostCheck: true, + }, + css: { + loaderOptions: { + sass: { + sassOptions: { outputStyle: "expanded" }, + }, + }, + }, + configureWebpack: { + name: name, + resolve: { + alias: { + "@": resolve("src"), + }, + }, + plugins: [ + // http://doc.ruoyi.vip/ruoyi-vue/other/faq.html#使用gzip解压缩静态文件 + new CompressionPlugin({ + cache: false, // 不启用文件缓存 + test: /\.(js|css|html)?$/i, // 压缩文件格式 + filename: "[path].gz[query]", // 压缩后的文件名 + algorithm: "gzip", // 使用gzip压缩 + minRatio: 0.8, // 压缩率小于1才会压缩 + }), + ], + }, + chainWebpack(config) { + config.plugins.delete("preload"); // TODO: need test + config.plugins.delete("prefetch"); // TODO: need test + + // set svg-sprite-loader + config.module.rule("svg").exclude.add(resolve("src/assets/icons")).end(); + config.module + .rule("icons") + .test(/\.svg$/) + .include.add(resolve("src/assets/icons")) + .end() + .use("svg-sprite-loader") + .loader("svg-sprite-loader") + .options({ + symbolId: "icon-[name]", + }) + .end(); + + config.when(process.env.NODE_ENV !== "development", (config) => { + config + .plugin("ScriptExtHtmlWebpackPlugin") + .after("html") + .use("script-ext-html-webpack-plugin", [ + { + // `runtime` must same as runtimeChunk name. default is `runtime` + inline: /runtime\..*\.js$/, + }, + ]) + .end(); + config.optimization.splitChunks({ + chunks: "all", + cacheGroups: { + libs: { + name: "chunk-libs", + test: /[\\/]node_modules[\\/]/, + priority: 10, + chunks: "initial", // only package third parties that are initially dependent + }, + elementUI: { + name: "chunk-elementUI", // split elementUI into a single package + priority: 20, // the weight needs to be larger than libs and app or it will be packaged into libs or app + test: /[\\/]node_modules[\\/]_?element-ui(.*)/, // in order to adapt to cnpm + }, + commons: { + name: "chunk-commons", + test: resolve("src/components"), // can customize your rules + minChunks: 3, // minimum common number + priority: 5, + reuseExistingChunk: true, + }, + }, + }); + config.optimization.runtimeChunk("single"), + { + from: path.resolve(__dirname, "./public/robots.txt"), //防爬虫文件 + to: "./", //到根目录下 + }; + }); + }, +}; From c122f65bc4ab08238fc7b6602eb3b20a28ab5132 Mon Sep 17 00:00:00 2001 From: x_z Date: Wed, 26 Apr 2023 13:54:46 +0800 Subject: [PATCH 04/26] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E6=91=86=E6=94=BE?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/inventory/InvOrderPlaceModify.vue | 1 - src/views/inventory/InvPlace.vue | 60 +++++++++++-------- src/views/inventory/InvProductPlaceModify.vue | 1 - 3 files changed, 36 insertions(+), 26 deletions(-) diff --git a/src/views/inventory/InvOrderPlaceModify.vue b/src/views/inventory/InvOrderPlaceModify.vue index 12205a78..a08c3011 100644 --- a/src/views/inventory/InvOrderPlaceModify.vue +++ b/src/views/inventory/InvOrderPlaceModify.vue @@ -260,7 +260,6 @@ export default { getInvProductInfo(orderId) { let params = { invCode: this.formData.invCode, - invSpaceCode: this.formData.invSpaceCode, code: orderId }; getInvProductInfo(params).then((res) => { diff --git a/src/views/inventory/InvPlace.vue b/src/views/inventory/InvPlace.vue index 5d2d56e2..2403e8a8 100644 --- a/src/views/inventory/InvPlace.vue +++ b/src/views/inventory/InvPlace.vue @@ -42,16 +42,18 @@ - - - + + + - - + + + { - this.loading = false; - if (res.code === 20000) { - this.list = res.data.list || []; - this.total = res.data.total || 0; - } else { - this.$message.error(res.message); + if (isBlank(this.filterQuery.invSpaceCode) && this.spaceList.length > 0) { + this.filterQuery.invSpaceCode = this.spaceList[0].code; + } + + if (!isBlank(this.filterQuery.invSpaceCode)) { + this.loading = true; + getPlaceDetailList(this.filterQuery).then((res) => { + this.loading = false; + if (res.code === 20000) { + this.list = res.data.list || []; + this.total = res.data.total || 0; + } else { + this.$message.error(res.message); + this.list = []; + this.total = 0; + } + }).catch((error) => { + this.loading = false; + this.$message.error(error.message); this.list = []; this.total = 0; - } - }).catch((error) => { - this.loading = false; - this.$message.error(error.message); - this.list = []; - this.total = 0; - }) + }); + } }, invChange() { this.spaceList = []; + this.filterQuery.invSpaceCode = null; this.getSpaceList(); - this.getList(); }, getInvList() { getInvListByUser() .then((response) => { this.invList = response.data || []; this.getSpaceList(); - this.getList(); }) .catch(() => { }); @@ -175,6 +186,7 @@ export default { }; getInvSpaceList(params).then((res) => { this.spaceList = res.data.list || []; + this.getList(); }) }, invPlace(type) { diff --git a/src/views/inventory/InvProductPlaceModify.vue b/src/views/inventory/InvProductPlaceModify.vue index 2d029203..5a3a480e 100644 --- a/src/views/inventory/InvProductPlaceModify.vue +++ b/src/views/inventory/InvProductPlaceModify.vue @@ -234,7 +234,6 @@ export default { getInvProductInfo(code) { let params = { invCode: this.formData.invCode, - invSpaceCode: this.formData.invSpaceCode, code: code }; getInvProductInfo(params).then((res) => { From e1de4bcb1fadf35f2b7e275e962caa9840624447 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=98=8E=E6=A2=81?= <2429105222@qq.com> Date: Wed, 26 Apr 2023 14:29:17 +0800 Subject: [PATCH 05/26] =?UTF-8?q?=E5=BE=80=E6=9D=A5=E5=8D=95=E4=BD=8D?= =?UTF-8?q?=E9=80=89=E5=85=A5=E4=BA=A7=E5=93=81=E5=88=A4=E6=96=AD=E4=BA=A7?= =?UTF-8?q?=E5=93=81=E6=9C=AA=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/basic/product/basicCompanyProductsImport.vue | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/views/basic/product/basicCompanyProductsImport.vue b/src/views/basic/product/basicCompanyProductsImport.vue index 4e7c7bdd..f2bb7580 100644 --- a/src/views/basic/product/basicCompanyProductsImport.vue +++ b/src/views/basic/product/basicCompanyProductsImport.vue @@ -435,6 +435,10 @@ export default { selectExport() { var selectData = this.multipleSelection; + if(selectData.length==0){ + this.$message.error("请先选择产品!"); + return + } selectData.forEach((obj) => { this.filterQuery.rlIds.push(obj.id); this.filterQuery.nameCode=obj.nameCode; From 63f878c3812b27700de6a397afe7e99c8d0395ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=98=8E=E6=A2=81?= <2429105222@qq.com> Date: Wed, 26 Apr 2023 14:50:15 +0800 Subject: [PATCH 06/26] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=9B=BE=E6=A0=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/inout/IoCheckAuditOrder.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/inout/IoCheckAuditOrder.vue b/src/views/inout/IoCheckAuditOrder.vue index 414a4269..62b15d76 100644 --- a/src/views/inout/IoCheckAuditOrder.vue +++ b/src/views/inout/IoCheckAuditOrder.vue @@ -84,7 +84,7 @@ >查询 - 新增单据审核 From 220b4c7c46313cdd667b9c66c36893902da531bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=98=8E=E6=A2=81?= <2429105222@qq.com> Date: Wed, 26 Apr 2023 15:05:41 +0800 Subject: [PATCH 07/26] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AE=A1=E6=A0=B8?= =?UTF-8?q?=E5=8D=95=E6=8D=AE=E6=97=B6=E9=97=B4=E6=B2=A1=E6=9C=89=E6=98=BE?= =?UTF-8?q?=E7=A4=BA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/inout/IoAuditedOrder.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/views/inout/IoAuditedOrder.vue b/src/views/inout/IoAuditedOrder.vue index 0cdc26ab..52703d6a 100644 --- a/src/views/inout/IoAuditedOrder.vue +++ b/src/views/inout/IoAuditedOrder.vue @@ -119,10 +119,10 @@ - + From 4c059b2c4592a5402a9e786b300e94637fe84d9d Mon Sep 17 00:00:00 2001 From: wangwei <1610949092@qq.com> Date: Wed, 26 Apr 2023 17:06:03 +0800 Subject: [PATCH 08/26] =?UTF-8?q?=E8=B0=83=E6=95=B4=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/inout/DialogCreateOrder.vue | 2 +- src/views/inventory/InvProductPlaceModify.vue | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/views/inout/DialogCreateOrder.vue b/src/views/inout/DialogCreateOrder.vue index d1d9b649..37feb59a 100644 --- a/src/views/inout/DialogCreateOrder.vue +++ b/src/views/inout/DialogCreateOrder.vue @@ -1,6 +1,6 @@ From d8ee05854a7ee0b7fc71a3da3418b8747f2a92eb Mon Sep 17 00:00:00 2001 From: CTP <630182278@qq.com> Date: Thu, 27 Apr 2023 09:36:09 +0800 Subject: [PATCH 12/26] =?UTF-8?q?=E7=89=A9=E8=B5=84=E5=AD=97=E5=85=B8?= =?UTF-8?q?=E7=BB=B4=E6=8A=A4=20=E5=88=86=E7=B1=BB=E6=8D=A2=E8=A1=8C?= =?UTF-8?q?=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/basic/product/product.vue | 667 +++++++++++++++++++--------- 1 file changed, 463 insertions(+), 204 deletions(-) diff --git a/src/views/basic/product/product.vue b/src/views/basic/product/product.vue index 89a39656..13b1eaa6 100644 --- a/src/views/basic/product/product.vue +++ b/src/views/basic/product/product.vue @@ -1,61 +1,88 @@ @@ -193,31 +306,87 @@ v-if="editDialogVisible" > - + - - - - - - - + + + + + + + -
+
产品标识:
- - - - - + + + + + @@ -227,10 +396,9 @@ ref="editQuery" border label-width="140px" - style="margin-top: 20px; " + style="margin-top: 20px" > -