ellisran пре 11 месеци
родитељ
комит
0cb84a723a
1 измењених фајлова са 30 додато и 28 уклоњено
  1. 30 28
      app/controller/change_controller.js

+ 30 - 28
app/controller/change_controller.js

@@ -516,39 +516,41 @@ module.exports = app => {
                     renderData.companyList = companyList;
                     const stateInfo = ctx.helper._.find(fun_set.change_state, { order: ctx.change.state });
                     renderData.deLimit = stateInfo.value;
-                    if (stateInfo.value !== ctx.change.delimit) {
-                        // 需要更新所有的计量上限值,除了已调用的值
-                        const updateList = [];
-                        for (const cl of changeList) {
-                            const one = {
-                                id: cl.id,
-                            };
-                            if (useChangeUsedData.length > 0 && ctx.helper._.findIndex(useChangeUsedData, { cbid: cl.id }) !== -1) {
-                                // 获取比例值
-                                const uc = ctx.helper._.find(useChangeUsedData, { cbid: cl.id });
-                                const minLimit = Math.ceil(ctx.helper.mul(ctx.helper.div(uc.qty, cl.camount), 100));
-                                if (minLimit <= renderData.deLimit) {
+                    if (!change.readOnly) {
+                        if (stateInfo.value !== ctx.change.delimit) {
+                            // 需要更新所有的计量上限值,除了已调用的值
+                            const updateList = [];
+                            for (const cl of changeList) {
+                                const one = {
+                                    id: cl.id,
+                                };
+                                if (useChangeUsedData.length > 0 && ctx.helper._.findIndex(useChangeUsedData, {cbid: cl.id}) !== -1) {
+                                    // 获取比例值
+                                    const uc = ctx.helper._.find(useChangeUsedData, {cbid: cl.id});
+                                    const minLimit = Math.ceil(ctx.helper.mul(ctx.helper.div(uc.qty, cl.camount), 100));
+                                    if (minLimit <= renderData.deLimit) {
+                                        one.delimit = renderData.deLimit;
+                                        cl.delimit = renderData.deLimit;
+                                    }
+                                } else if (cl.delimit !== renderData.deLimit) {
                                     one.delimit = renderData.deLimit;
                                     cl.delimit = renderData.deLimit;
                                 }
-                            } else if (cl.delimit !== renderData.deLimit) {
-                                one.delimit = renderData.deLimit;
-                                cl.delimit = renderData.deLimit;
+                                if (!ctx.helper._.isEqual(one, {id: cl.id})) updateList.push(one);
                             }
-                            if (!ctx.helper._.isEqual(one, { id: cl.id })) updateList.push(one);
+                            console.log(updateList);
+                            if (updateList.length > 0) await ctx.service.changeAuditList.defaultUpdateRows(updateList);
+                            await ctx.service.change.defaultUpdate({delimit: stateInfo.value}, {where: {cid: change.cid}});
+                        }
+                        // 判断是否更新变更类别
+                        if (ctx.helper._.findIndex(fun_set.change_class, {value: change.class, checked: true}) === -1) {
+                            renderData.change.class = ctx.helper._.find(fun_set.change_class, {checked: true}).value;
+                            await ctx.service.change.saveInfo({class: ctx.helper._.find(fun_set.change_class, {checked: true}).value});
+                        }
+                        // 获取固定审批流列表
+                        if (tender.info.shenpi.change === shenpiConst.sp_status.gdspl) {
+                            renderData.spGroupList = await ctx.service.shenpiGroup.getGroupListByChangeType(tender.id, shenpiConst.sp_type.change, 'change');
                         }
-                        console.log(updateList);
-                        if (updateList.length > 0) await ctx.service.changeAuditList.defaultUpdateRows(updateList);
-                        await ctx.service.change.defaultUpdate({ delimit: stateInfo.value }, { where: { cid: change.cid } });
-                    }
-                    // 判断是否更新变更类别
-                    if (ctx.helper._.findIndex(fun_set.change_class, { value: change.class, checked: true }) === -1) {
-                        renderData.change.class = ctx.helper._.find(fun_set.change_class, { checked: true }).value;
-                        await ctx.service.change.saveInfo({ class: ctx.helper._.find(fun_set.change_class, { checked: true }).value });
-                    }
-                    // 获取固定审批流列表
-                    if (tender.info.shenpi.change === shenpiConst.sp_status.gdspl) {
-                        renderData.spGroupList = await ctx.service.shenpiGroup.getGroupListByChangeType(tender.id, shenpiConst.sp_type.change, 'change');
                     }
                 }
                 renderData.changeList = changeList;