Procházet zdrojové kódy

1.内蒙养护定额库定额人材机排序问题
2.内蒙养护新建分段不显示费用标准

zeweizhong před 6 roky
rodič
revize
b0a8aaadff

+ 4 - 14
modules/complementary_ration_lib/models/compleRationModel.js

@@ -159,13 +159,13 @@ class CompleRatoinDao {
                 }
             }
             if(stdGljIds.length > 0) {
-                stdGljs = await stdGljModel.find({ID: {$in: stdGljIds}});
+                stdGljs = await stdGljModel.find({ID: {$in: stdGljIds}}).lean();
             }
             if(comGljIds.length > 0) {
                 comGljs = await complementaryGljModel.find({userId: userId, ID: {$in: comGljIds}});
             }
             if(!gUtil) gUtil = gljUtil;
-            let gljDatas = gUtil.sortRationGLJ(stdGljs.concat(comGljs));
+            let gljDatas = gUtil.sortRationGLJ(stdGljs.concat(comGljs), true);
             if(ration.jobContent && ration.jobContent.toString().trim() !== ''){
                 hintsArr.push(`工作内容:`);
                 hintsArr = hintsArr.concat(ration.jobContent.split('\n'));
@@ -219,16 +219,6 @@ class CompleRatoinDao {
                 return recurCompare(aArr, bArr, 0);
             });
         }
-        /*stdRations.sort(function (a, b) {
-            let rst = 0;
-            if(a.code > b.code){
-                rst = 1;
-            }
-            else if(a.code < b.code){
-                rst = -1;
-            }
-            return rst;
-        });*/
         sortByCode(stdRations);
         for(let ration of stdRations){
             let hintsArr = [];
@@ -240,10 +230,10 @@ class CompleRatoinDao {
                 stdGljIds.push(rationGlj.gljId);
             }
             if(stdGljIds.length > 0) {
-                stdGljs = await stdGljModel.find({ID: {$in: stdGljIds}});
+                stdGljs = await stdGljModel.find({ID: {$in: stdGljIds}}).lean();
             }
             if(!gUtil) gUtil = gljUtil;
-            let gljDatas =  gUtil.sortRationGLJ(stdGljs);
+            let gljDatas =  gUtil.sortRationGLJ(stdGljs, true);
             if(ration.jobContent && ration.jobContent.toString().trim() !== ''){
                 hintsArr.push(`工作内容:`);
                 hintsArr = hintsArr.concat(ration.jobContent.split('\n'));

+ 2 - 2
public/gljUtil.js

@@ -70,8 +70,8 @@ function isCommercialConcreteType(type){
     return gljNodeUtil.isCommercialConcreteType(type);
 }
 
-function sortRationGLJ(list) {
-    return gljNodeUtil.sortRationGLJ(list);
+function sortRationGLJ(list, std) {
+    return gljNodeUtil.sortRationGLJ(list, std);
 }
 
 function sortProjectGLJ(list,lodash) {

+ 3 - 2
public/web/gljUtil.js

@@ -355,9 +355,10 @@ let gljUtil = {
         let str = type + "";
         return parseInt(str.substr(0,1));
     },
-    sortRationGLJ:function (list) {
+    sortRationGLJ:function (list, std) {
+        const field = std ? 'gljType' : 'type';
         list = _.sortByAll(list, [function (item) {
-            return gljUtil.getMainType(item.type);
+            return gljUtil.getMainType(item[field]);
         }, gljUtil.getCodeSortMath()]);
         return list;
     },

+ 1 - 1
web/building_saas/pm/html/project-management.html

@@ -344,7 +344,7 @@
                         </div>
                     </div>
                     <span class="form-text text-danger" id="engineering-info" style="display: none;">请选择养护类别</span>
-                    <div class="form-group row">
+                    <div class="form-group row" id="tender-feeStandard-group">
                         <label for="staticEmail" class="col-auto col-form-label col-form-label-sm">费用标准</label>
                         <div class="col">
                             <select class="form-control  form-control-sm" id="tender-feeStandard"></select>

+ 10 - 6
web/building_saas/pm/js/pm_newMain.js

@@ -1744,9 +1744,16 @@ $(document).ready(function() {
             $('#regionDiv').find('select').append($opt);
         }
     }
-
+    // 某些费用定额不显示费用标准
+    const compilationWithoutFeeStandard = [
+        // 内蒙2019
+        '5d776dad620cc0000dab6b2a'
+    ];
     // 新增单位工程弹层改变
     $('#add-tender-dialog').on('show.bs.modal', function() {
+        if (compilationWithoutFeeStandard.includes(compilationData._id)) {
+            $('#tender-feeStandard-group').hide();
+        }
         //clear info
         $('#poj-name-info').hide();
         $('#tender-name-info').hide();
@@ -2677,10 +2684,6 @@ function AddTender() {
         let unitPriceFileObj = getAddTenderFile(tenderName, $('#unit-price'), $("#unit-price").children());
         let feeFileObj = getAddTenderFile(tenderName, $('#tender-fee-rate'), $("#tender-fee-rate").children());
         let valuation = $("#valuation").val();
-        /*if(!valuation || valuation === ''){
-            setDangerInfo($('#valuation-info'), '请选择计价规则');
-            return false;
-        }*/
         /*
         * 计价规则只是隐藏显示了,工程专业id还是要通过养护类别、费用标准确定,因为后台结构没有变化
         * */
@@ -2689,6 +2692,7 @@ function AddTender() {
             setDangerInfo($('#engineering-info'), '请选择养护类别');
             return false;
         }
+        // 费用标准只是隐藏显示了(某些费用定额下)
         let feeName = $('#tender-feeStandard').val();
         if(!feeName || feeName === ''){
             setDangerInfo($('#feeStandard-info'), '请选择费用标准');
@@ -3858,4 +3862,4 @@ function refreshProjSummary(project, summaryInfo) {
         }
     }
     projTreeObj.refreshNodeData(refreshNodes);
-}
+}