瀏覽代碼

调差清单设置页修改工料bug修复

laiguoran 3 年之前
父節點
當前提交
a266fb7256

+ 9 - 9
app/public/js/material_list.js

@@ -41,10 +41,10 @@ function getMpSpreadByMBData(id) {
     return info ? info.m_spread : 0;
 }
 
-function getMaterialListByLeafXmj(gcl_id, xmj_id, mx_id = null) {
+function getMaterialListByLeafXmj(gcl_id, xmj_id, mx_id = '') {
     const list = [];
     for (const ml of materialListData) {
-        if (gcl_id === ml.gcl_id && xmj_id === ml.xmj_id && (mx_id === null || mx_id === ml.mx_id)) {
+        if (gcl_id === ml.gcl_id && xmj_id === ml.xmj_id && (mx_id === '' || mx_id === ml.mx_id)) {
             list.push(ml);
         }
     }
@@ -224,7 +224,7 @@ $(document).ready(() => {
                     indent: 16,
                     getColor: function (index, data) {
                         if (!data) return;
-                        if (_.findIndex(selfList, { gcl_id: data.gcl_id, xmj_id: data.id, mx_id: (data.mx_id ? data.mx_id : null) }) !== -1) {
+                        if (_.findIndex(selfList, { gcl_id: data.gcl_id, xmj_id: data.id, mx_id: (data.mx_id ? data.mx_id : '') }) !== -1) {
                             return '#dc3545';
                         }
                     }
@@ -484,7 +484,7 @@ $(document).ready(() => {
             const xmj = leafXmjs[iLXmjRow];
             console.log(xmj, iLXmjRow);
             materialListSelf = [];
-            if (_.findIndex(selfList, { gcl_id: xmj.gcl_id, xmj_id: xmj.id, mx_id: (xmj.mx_id ? xmj.mx_id : null) }) != -1) {
+            if (_.findIndex(selfList, { gcl_id: xmj.gcl_id, xmj_id: xmj.id, mx_id: (xmj.mx_id ? xmj.mx_id : '') }) != -1) {
                 for (const m of materialListData) {
                     if (m.gcl_id === xmj.gcl_id && m.xmj_id === xmj.id && ((xmj.mx_id !==undefined && m.mx_id === xmj.mx_id) || xmj.mx_id === undefined)) {
                         materialListSelf.push(m);
@@ -582,7 +582,7 @@ $(document).ready(() => {
                 const data = {
                     xmj_id: xmj.id,
                     gcl_id: xmj.gcl_id,
-                    mx_id: xmj.mx_id ? xmj.mx_id : null,
+                    mx_id: xmj.mx_id ? xmj.mx_id : '',
                     gather_qty: xmj.gather_qty,
                     is_join: notx === undefined ? 1 : 0,
                 };
@@ -617,7 +617,7 @@ $(document).ready(() => {
             const data = {
                 xmj_id: xmj.id,
                 gcl_id: xmj.gcl_id,
-                mx_id: xmj.mx_id ? xmj.mx_id : null,
+                mx_id: xmj.mx_id ? xmj.mx_id : '',
                 mb_id: mb_id,
                 gather_qty: xmj.gather_qty,
                 is_join: notx === undefined ? 1 : 0,
@@ -809,7 +809,7 @@ $(document).ready(() => {
                     const data = {
                         xmj_id: xmj.id,
                         gcl_id: xmj.gcl_id,
-                        mx_id: xmj.mx_id ? xmj.mx_id : null,
+                        mx_id: xmj.mx_id ? xmj.mx_id : '',
                     };
                     datas.push(data);
                 }
@@ -911,7 +911,7 @@ $(document).ready(() => {
                         const data = {
                             xmj_id: xmj.id,
                             gcl_id: xmj.gcl_id,
-                            mx_id: xmj.mx_id ? xmj.mx_id : null,
+                            mx_id: xmj.mx_id ? xmj.mx_id : '',
                         };
                         datas.push(data);
                     }
@@ -1040,7 +1040,7 @@ $(document).ready(() => {
                     const data2 = {
                         xmj_id: xmj.id,
                         gcl_id: xmj.gcl_id,
-                        mx_id: xmj.mx_id ? xmj.mx_id : null,
+                        mx_id: xmj.mx_id ? xmj.mx_id : '',
                     };
                     datas.push(data2);
                 }

+ 3 - 2
app/service/material_list.js

@@ -153,7 +153,7 @@ module.exports = app => {
                             mid: this.ctx.material.id,
                             gcl_id: xmj.gcl_id,
                             xmj_id: xmj.id,
-                            mx_id: xmj.mx_id ? xmj.mx_id : [null, ''],
+                            mx_id: xmj.mx_id,
                         },
                     });
                     const mbIdList = this._.map(mlList, 'mb_id');
@@ -167,7 +167,7 @@ module.exports = app => {
                             mb_id: mb.mb_id,
                             gcl_id: xmj.gcl_id,
                             xmj_id: xmj.id,
-                            mx_id: xmj.mx_id ? xmj.mx_id : '',
+                            mx_id: xmj.mx_id,
                             gather_qty: xmj.gather_qty ? xmj.gather_qty : null,
                             quantity: mb.quantity,
                             expr: mb.expr,
@@ -548,6 +548,7 @@ module.exports = app => {
                         });
                     }
                 }
+                console.log(updateDatas);
                 if (updateDatas.length > 0) await transaction.updateRows(this.tableName, updateDatas);
                 if (updateListGcl.length > 0) await transaction.updateRows(this.service.materialListGcl.tableName, updateListGcl);
                 await this.calcQuantityByML(transaction, mb_id);

+ 6 - 5
app/service/material_list_notjoin.js

@@ -37,11 +37,11 @@ module.exports = app => {
                     mid: this.ctx.material.id,
                     gcl_id: data.gcl_id,
                     xmj_id: data.id,
-                    mx_id: data.mx_id !== undefined ? data.mx_id : null,
+                    mx_id: data.mx_id ? data.mx_id : '',
                     in_time: new Date(),
                 };
                 data.xmj_id = data.id;
-                data.mx_id = data.mx_id !== undefined ? data.mx_id : null;
+                data.mx_id = data.mx_id ? data.mx_id : '';
                 await this.updateAllMaterials(transaction, data, 'add');
                 // 新增不参与调差清单
                 const result = await transaction.insert(this.tableName, newListNotJoin);
@@ -90,10 +90,11 @@ module.exports = app => {
                 mid: this.ctx.material.id,
                 gcl_id: data.gcl_id,
                 xmj_id: data.xmj_id,
+                mx_id: data.mx_id,
             };
-            if (data.mx_id !== null) {
-                searchSql.mx_id = data.mx_id;
-            }
+            // if (data.mx_id !== '') {
+            //     searchSql.mx_id = data.mx_id;
+            // }
             const materialListData = await this.ctx.service.materialList.getAllDataByCondition({
                 where: searchSql,
             });

+ 7 - 6
app/service/material_list_self.js

@@ -37,7 +37,7 @@ module.exports = app => {
                     mid: this.ctx.material.id,
                     gcl_id: data.gcl_id,
                     xmj_id: data.id,
-                    mx_id: data.mx_id !== undefined ? data.mx_id : null,
+                    mx_id: data.mx_id ? data.mx_id : '',
                     in_time: new Date(),
                 };
                 // 更新list表为is_self为1
@@ -47,7 +47,7 @@ module.exports = app => {
                         mid: this.ctx.material.id,
                         gcl_id: data.gcl_id,
                         xmj_id: data.id,
-                        mx_id: data.mx_id ? data.mx_id : null,
+                        mx_id: data.mx_id ? data.mx_id : '',
                     },
                 });
                 // data.xmj_id = data.id;
@@ -100,10 +100,11 @@ module.exports = app => {
                 mid: this.ctx.material.id,
                 gcl_id: data.gcl_id,
                 xmj_id: data.xmj_id,
+                mx_id: data.mx_id,
             };
-            if (data.mx_id !== null) {
-                searchSql.mx_id = data.mx_id;
-            }
+            // if (data.mx_id !== null) {
+            //     searchSql.mx_id = data.mx_id;
+            // }
             const materialListData = await this.ctx.service.materialList.getAllDataByCondition({
                 where: searchSql,
             });
@@ -121,7 +122,7 @@ module.exports = app => {
                     mid: this.ctx.material.id,
                     gcl_id: data.gcl_id,
                     xmj_id: data.xmj_id,
-                    mx_id: data.mx_id ? data.mx_id : null,
+                    mx_id: data.mx_id ? data.mx_id : '',
                 });
                 const materialListGclData = await this.ctx.service.materialListGcl.getAllDataByCondition({
                     where: { tid: this.ctx.tender.id, gcl_id: data.gcl_id },

+ 9 - 2
sql/update.sql

@@ -71,7 +71,11 @@ UPDATE `zh_material` SET `exponent_rate`=`rate`;
 
 ALTER TABLE `zh_material_list` ADD `is_self` TINYINT(1) NOT NULL DEFAULT '0' COMMENT '是否为单独添加的工料清单关联' AFTER `is_join`;
 
-UPDATE `zh_material_list` SET `mx_id`= null WHERE `mx_id` = '';
+UPDATE `zh_material_list` SET `mx_id`= '' WHERE `mx_id` is null;
+
+ALTER TABLE `zh_material_list_notjoin` CHANGE `mx_id` `mx_id` VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT '' COMMENT '部位明细id';
+
+UPDATE `zh_material_list_notjoin` SET `mx_id`= '' WHERE `mx_id` is null;
 
 CREATE TABLE `zh_material_list_self`  (
   `id` int(11) NOT NULL AUTO_INCREMENT,
@@ -79,7 +83,7 @@ CREATE TABLE `zh_material_list_self`  (
   `mid` int(11) NOT NULL COMMENT '调差期id',
   `gcl_id` varchar(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL COMMENT '清单id',
   `xmj_id` varchar(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL COMMENT '项目节id',
-  `mx_id` varchar(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT NULL COMMENT '部位明细id',
+  `mx_id` varchar(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci NULL DEFAULT '' COMMENT '部位明细id',
   `in_time` datetime NOT NULL COMMENT '添加时间',
   PRIMARY KEY (`id`) USING BTREE
 ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_unicode_ci COMMENT = '单独调差的清单表';
@@ -92,3 +96,6 @@ ADD COLUMN `sorder`  int(11) UNSIGNED NOT NULL AFTER `sid`;
 
 Update zh_stage_change_final scf Join zh_stage s on scf.sid = s.id Set scf.sorder = s.`order`;
 
+ALTER TABLE `zh_change` ADD `order_by` TINYINT(1) NOT NULL DEFAULT '0' COMMENT '清单排序规则,默认按清单编号排(0),自定义排序(1)' AFTER `is_revise`;
+ALTER TABLE `zh_change_audit_list` ADD `order` INT NULL DEFAULT NULL COMMENT '排序序号(自定义规则时使用)' AFTER `spamount`;
+