From 54d0491aebb665ddf4d62c22ef5deb3e52b13311 Mon Sep 17 00:00:00 2001 From: xielue Date: Mon, 28 Aug 2023 20:01:16 +0800 Subject: [PATCH] =?UTF-8?q?=E6=A8=A1=E5=85=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/application/mk/index.js | 7 +++ src/application/mk/libs/function/funs.js | 44 ++++++++++++++++--- .../Middle/Mes/MesStaff/MesStaff/Edit.vue | 3 ++ src/pages/Middle/Mold/MoldOrder/Edit.vue | 9 ++-- .../Middle/Mold/MoldProductionOrder/Edit.vue | 18 +++++--- .../Middle/Mold/MoldProductionOrder/List.vue | 10 ++--- src/pages/Middle/Mold/MoldScheme/Edit.vue | 2 +- 7 files changed, 72 insertions(+), 21 deletions(-) diff --git a/src/application/mk/index.js b/src/application/mk/index.js index 811ac4a..a896ce0 100644 --- a/src/application/mk/index.js +++ b/src/application/mk/index.js @@ -104,12 +104,19 @@ VXETable.formats.mixin({ return '未审'; }, formatDateTime({ cellValue }) { // 日期时间格式化 + + if(!cellValue){ + return ''; + } if (typeof (cellValue) == "number") { cellValue = new Date(cellValue * 1000); } return XEUtils.toDateString(cellValue, 'yyyy-MM-dd HH:mm:ss') }, formatDate({ cellValue }) { // 日期格式化 + if(!cellValue){ + return ''; + } if (typeof (cellValue) == "number") { cellValue = new Date(cellValue * 1000); } diff --git a/src/application/mk/libs/function/funs.js b/src/application/mk/libs/function/funs.js index aec27d4..e09c0ba 100644 --- a/src/application/mk/libs/function/funs.js +++ b/src/application/mk/libs/function/funs.js @@ -11,7 +11,7 @@ export default { }, - formatDetailData({ data }) { + formatDetailData({ data, rules }) { if (data.create_time) { data.create_time = new Date(data.create_time * 1000); @@ -21,6 +21,34 @@ export default { } + + let feachRules = (rules) => { + + rules.forEach(rule => { // 循环规则 + if (rule.children && rule.children.length) { + feachRules(rule.children); + } + if (!rule.dataRule) { + return; + } + if (rule.field in data) { // 如果字段在数据中 + let value = data[rule.field]; // 获取值 + if (rule.dataRule.type == "timestamp" && value) { // 如果是时间戳 + + data[rule.field] = new Date(value * 1000); + + } + } + }); + }; + if (rules) { + feachRules(rules); + } + + + + + return data; }, @@ -35,7 +63,7 @@ export default { if (dataRule) { list.forEach(item => { - + dataRule.forEach(rule => { let value = item[rule.field]; if (rule.type == "integer") { @@ -45,13 +73,19 @@ export default { item[rule.field] = parseFloat(value); } else if (rule.type == "timestamp") { - item[rule.field] = parseInt(new Date(value).getTime() / 1000); + if(value){ + if(typeof(value) == 'string'){ + item[rule.field] = parseInt(new Date(value).getTime() / 1000); + } + + } + } else if (rule.type == "bigint") { - if(typeof(item[rule.field]) == 'string'){ + if (typeof (item[rule.field]) == 'string') { item[rule.field] = JSONbig.parse(`{"v":${item[rule.field]}}`).v; } - + } }) diff --git a/src/pages/Middle/Mes/MesStaff/MesStaff/Edit.vue b/src/pages/Middle/Mes/MesStaff/MesStaff/Edit.vue index fea14e4..9587458 100644 --- a/src/pages/Middle/Mes/MesStaff/MesStaff/Edit.vue +++ b/src/pages/Middle/Mes/MesStaff/MesStaff/Edit.vue @@ -162,6 +162,9 @@ export default { name: [ { required: true, message: '请输入员工姓名' } + ], + code: [ + { required: true, message: '请输入工号' } ] // =============================== 表单校验 自动生成 End =============================== diff --git a/src/pages/Middle/Mold/MoldOrder/Edit.vue b/src/pages/Middle/Mold/MoldOrder/Edit.vue index 729cea5..997af37 100644 --- a/src/pages/Middle/Mold/MoldOrder/Edit.vue +++ b/src/pages/Middle/Mold/MoldOrder/Edit.vue @@ -29,7 +29,7 @@ - { - this.formOptions.data = this.$mk.formatDetailData({ data: a.data[this.detailDataFieldName] }); + this.formOptions.data = this.$mk.formatDetailData({ data: a.data[this.detailDataFieldName],rules:this.formOptions.items }); this.detailsData = JSON.parse(JSON.stringify(a.data[this.detailDataFieldName].order_molds || [])); @@ -328,6 +328,9 @@ export default { {field:'inlay_deep_hole_time',type:'timestamp'} , {field:'update_uid',type:'bigint'} , {field:'mold_id',type:'bigint'} , + {field:'mold_master_uid',type:'bigint'} , + + {field:'create_uid',type:'bigint'} ] }); diff --git a/src/pages/Middle/Mold/MoldProductionOrder/Edit.vue b/src/pages/Middle/Mold/MoldProductionOrder/Edit.vue index d41967f..6339f6f 100644 --- a/src/pages/Middle/Mold/MoldProductionOrder/Edit.vue +++ b/src/pages/Middle/Mold/MoldProductionOrder/Edit.vue @@ -190,7 +190,7 @@ export default { currentBeid: 0, uploadDefaultImg: null, - detailDataFieldName: "mold_scheme", + detailDataFieldName: "mold_production_order", actions: { get: `${BASE_URL.BASE_URL}/MoldProductionOrder/v1/mold/production/order/detail`, @@ -219,12 +219,12 @@ export default { ], }, // 表单项 - items: [ - { field: 'order_code', title: '订单编号', span: 8, itemRender: { name: '$input' } }, + items: [ + { field: 'code', title: '编号', span: 8, itemRender: { name: '$input' } }, { title: '订单', span: 8, - field: 'order_id', + field: 'mold_order', dataRule: { fromField: "id", saveField: "order_id" // 如果表单项存储的是对象,将从fromField中取得值保存到saveField @@ -364,8 +364,9 @@ export default { }).then(a => { - this.formOptions.data = this.$mk.formatDetailData({ data: a.data[this.detailDataFieldName] }); + this.formOptions.data = this.$mk.formatDetailData({ data: a.data[this.detailDataFieldName],rules:this.formOptions.items }); + console.log(this.formOptions.data) this.detailsData = JSON.parse(JSON.stringify(a.data[this.detailDataFieldName].mold_production_order_component || [])); this.detailsData2 = JSON.parse(JSON.stringify(a.data[this.detailDataFieldName].mold_production_order_component_processes || [])); @@ -471,13 +472,16 @@ export default { this.$mk.formatFormData({ data: postdata, rules: this.formOptions.items }); postdata.mold_production_order_component = this.$mk.getPostFieldValue({ - rowFilter: (row) => { return row.id || row.mold_id }, + rowFilter: (row) => { return row.id || row.component_id }, dataId: this.getDataId_BigInt(), list: this.detailsData, deletedList: this.deletedDetailsData, fieldName: 'production_id', dataRule: [ { field: 'production_type', type: 'integer' }, + { field: 'component_num', type: 'integer' }, + + { field: 'id', type: 'bigint' }, { field: 'update_uid', type: 'bigint' }, { field: 'create_uid', type: 'bigint' }, @@ -489,7 +493,7 @@ export default { ] }); postdata.mold_production_order_component_processes = this.$mk.getPostFieldValue({ - rowFilter: (row) => { return row.id || (row.mold_id && row.mes_processes_id) }, + rowFilter: (row) => { return row.id || (row.component_id && row.mes_processes_id) }, dataId: this.getDataId_BigInt(), list: this.detailsData2, deletedList: this.deletedDetailsData2, diff --git a/src/pages/Middle/Mold/MoldProductionOrder/List.vue b/src/pages/Middle/Mold/MoldProductionOrder/List.vue index a80f905..8ef121c 100644 --- a/src/pages/Middle/Mold/MoldProductionOrder/List.vue +++ b/src/pages/Middle/Mold/MoldProductionOrder/List.vue @@ -63,13 +63,13 @@ export default { }, // 搜索区配置 searchRules: [ - { key: "order_code", mode: "like" } + { key: "code", mode: "like" } ], //搜索区 searchFormItems: [ // 子项 - { field: 'order_code', title: '订单编码', span: 6, itemRender: { name: '$input', props: { placeholder: '请输入订单编码' } } }, + { field: 'code', title: '编码', span: 6, itemRender: { name: '$input', props: { placeholder: '请输入编码' } } }, { align: 'right', span: 4, itemRender: { // 按钮列 @@ -92,9 +92,9 @@ export default { { type: 'seq', width:80 }, // 序号 { title: '操作', slots: { default: 'op' }, width: 120 }, - - - { field: 'order_code', sortable: true, title: '订单编码', width: 250 }, + + + { field: 'code', sortable: true, title: '编码', width: 250 }, { field: 'create_time', formatter: 'formatDate', width: 100, sortable: true, title: '创建时间', showHeaderOverflow: true }, // 创建时间 diff --git a/src/pages/Middle/Mold/MoldScheme/Edit.vue b/src/pages/Middle/Mold/MoldScheme/Edit.vue index 1a83a02..c0a39d6 100644 --- a/src/pages/Middle/Mold/MoldScheme/Edit.vue +++ b/src/pages/Middle/Mold/MoldScheme/Edit.vue @@ -29,7 +29,7 @@ formatter='formatEnum' :edit-render="{ name: '$select', props: { options: options_production_type } }"> -