Explorar o código

辅助定额。

Chenshilong %!s(int64=8) %!d(string=hai) anos
pai
achega
6eb2b8a2e2

+ 15 - 1
modules/ration_repository/models/ration_item.js

@@ -12,6 +12,19 @@ var rationGljItemSchema = mongoose.Schema({
     consumeAmt: Number,
     proportion: Number //配合比,暂时无需使用,默认0
 }, { _id: false });
+
+var rationAssItemSchema = mongoose.Schema({
+    name: String,
+    assistID: Number,
+    assistCode: String,
+    stdValue: String,
+    stepValue: String,
+    decimal: Number,
+    carryBit: String,
+    minValue: String,
+    maxValue: String
+}, { _id: false });
+
 var rationItemSchema = mongoose.Schema({
     ID:Number,
     code: String,
@@ -23,7 +36,8 @@ var rationItemSchema = mongoose.Schema({
     caption: String,
     feeType: Number,
     rationGljList: [rationGljItemSchema],
-    rationCoeList: Array
+    rationCoeList: Array,
+    rationAssList: [rationAssItemSchema]
 });
 var rationItemModel = db.model("rationItems",rationItemSchema, "rationItems")
 var counter = require('../../../public/counter/counter');

+ 12 - 61
web/maintain/ration_repository/dinge.html

@@ -34,7 +34,7 @@
                       <a class="nav-link px-3" id="fuzhu" href="#">附注条件</a>
                   </li>
                   <li class="nav-item">
-                      <a class="nav-link px-3" href="#maz">安装增加费</a>
+                      <a class="nav-link px-3" href="#">安装增加费</a>
                   </li>
               </ul>
         </nav>
@@ -86,7 +86,8 @@
                                           <a class="nav-link" id="linkFZTJ" data-toggle="tab" href="#rDetail" role="tab">附注条件调整</a>
                                       </li>
                                       <li class="nav-item">
-                                          <a class="nav-link" id="linkAZZJ" data-toggle="tab" href="#rDetail" role="tab">安装增加费</a>
+                                          <!--<a class="nav-link" id="linkAZZJ" data-toggle="tab" href="#" role="tab">安装增加费</a>-->
+                                          <a class="nav-link" href="#">安装增加费</a>
                                       </li>
                                   </ul>
                                   <!-- 内容 -->
@@ -94,60 +95,6 @@
                                       <div class="tab-pane active" id="rDetail" role="tabpanel">
                                           <div id="rdSpread" class="main-data-bottom"></div>
                                       </div>
-<!--                                      &lt;!&ndash;辅助定额调整&ndash;&gt;
-                                      <div class="tab-pane" id="bfzd" role="tabpanel">
-                                          <div class="main-data-bottom">
-                                              <table class="table table-sm table-bordered m-0">
-                                                  <thead><tr><th width="30"></th><th width="120">调整名称</th><th>序号</th><th>参数最大值</th><th>辅助定额号</th><th>参数名称</th><th>标准值</th><th>步距</th><th>精度</th><th>进位方式</th></tr></thead>
-                                                  <tbody>
-                                                  <tr>
-                                                      <td>1</td><td>运距m</td><td>0</td><td></td><td>AA0012</td><td>运距m</td>
-                                                      <td>20</td><td>20</td><td>0</td><td>四舍五入</td>
-                                                  </tr>
-                                                  <tr>
-                                                      <td>2</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>
-                                                  </tr>
-                                                  <tr>
-                                                      <td>3</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>
-                                                  </tr>
-                                                  <tr>
-                                                      <td>4</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td>
-                                                  </tr>
-                                                  </tbody>
-                                              </table>
-                                          </div>
-                                      </div>
-                                      &lt;!&ndash;附注条件调整&ndash;&gt;
-
-                                      <div class="tab-pane" id="bfzt" role="tabpanel">
-                                          <div id="rationCoeSpread" class="main-data-bottom"></div>
-                                          &lt;!&ndash;<div class="main-data-bottom">
-                                              <table class="table table-sm table-bordered m-0">
-                                                  <thead><tr><th width="30"></th><th width="40">编号</th><th width="120">本分项全部适用</th><th>调整顺序</th><th>名称</th><th>内容</th></tr></thead>
-                                                  <tbody>
-                                                  <tr>
-                                                      <td>1</td><td>1</td><td><label class="form-check-label"><input type="checkbox" class="form-check-input" checked></label></td><td>2</td><td>挖湿土时</td><td>人工x1.18</td>
-                                                  </tr>
-                                                  <tr>
-                                                      <td>2</td><td></td><td></td><td></td><td></td><td></td>
-                                                  </tr>
-                                                  <tr>
-                                                      <td>3</td><td></td><td></td><td></td><td></td><td></td>
-                                                  </tr>
-                                                  <tr>
-                                                      <td>4</td><td></td><td></td><td></td><td></td><td></td>
-                                                  </tr>
-                                                  </tbody>
-                                              </table>
-                                          </div>&ndash;&gt;
-                                      </div>
-                                      &lt;!&ndash;安装增加费&ndash;&gt;
-                                      <div class="tab-pane" id="baz" role="tabpanel">
-                                          <div class="main-data-bottom">
-                                              安装增加费
-                                          </div>
-                                      </div>-->
-
                                   </div>
                               </div>
                           </div>
@@ -510,6 +457,7 @@
         <script type="text/javascript" src="/web/maintain/ration_repository/js/ration_glj.js"></script>
         <script type="text/javascript" src="/public/web/sheet/sheet_creater.js"></script>
         <script type="text/javascript" src="/web/maintain/ration_repository/js/ration_coe.js"></script>
+        <script type="text/javascript" src="/web/maintain/ration_repository/js/ration_assist.js"></script>
         <script type="text/javascript" src="/public/web/treeDataHelper.js"></script>
         <script type="text/javascript" src="/public/web/QueryParam.js"></script>
         <script type="text/javascript" src="/public/web/storageUtil.js"></script>
@@ -561,20 +509,23 @@
                 var rdSpread = sheetCommonObj.createSpread($("#rdSpread")[0], 3);
                 rationGLJOprObj.buildSheet(rdSpread.getSheet(0));
                 sheetCommonObj.shieldAllCells(rdSpread.getSheet(0), rationGLJOprObj.setting);
-                rationCoeOprObj.buildSheet(rdSpread.getSheet(1));
-                sheetCommonObj.shieldAllCells(rdSpread.getSheet(1), rationCoeOprObj.setting);
+
+                rationAssistOprObj.buildSheet(rdSpread.getSheet(1));
+                sheetCommonObj.shieldAllCells(rdSpread.getSheet(1), rationAssistOprObj.setting);
+
+                rationCoeOprObj.buildSheet(rdSpread.getSheet(2));
+                sheetCommonObj.shieldAllCells(rdSpread.getSheet(2), rationCoeOprObj.setting);
 
                 $("#linkGLJ").click(function(){
                     rdSpread.setActiveSheetIndex(0);
                 });
 
                 $("#linkFZDE").click(function(){
-                    rdSpread.setActiveSheetIndex(2);
-                    rdSpread.getSheet(2).setText(0,0,"开发中...");
+                    rdSpread.setActiveSheetIndex(1);
                 });
 
                 $("#linkFZTJ").click(function(){
-                    rdSpread.setActiveSheetIndex(1);
+                    rdSpread.setActiveSheetIndex(2);
                 });
 
             });

+ 17 - 12
web/maintain/ration_repository/js/ration.js

@@ -46,25 +46,27 @@ var rationOprObj = {
     onCellClick: function(sender, args) {
         var me = rationOprObj,
             sheetGLJ = rationGLJOprObj.sheet, settingGLJ = rationGLJOprObj.setting,
-            sheetCoe = rationCoeOprObj.sheet, settingCoe = rationCoeOprObj.setting;
-        if(args.sheetArea === GC.Spread.Sheets.SheetArea.colHeader || args.sheetArea === GC.Spread.Sheets.SheetArea.corner){
-            sheetCommonObj.cleanSheet(sheetGLJ, settingGLJ, -1);
-            sheetCommonObj.shieldAllCells(sheetGLJ);
-            sheetCommonObj.cleanSheet(sheetCoe, settingCoe, -1);
-            sheetCommonObj.shieldAllCells(sheetCoe);
-        } else {
-            sheetCommonObj.cleanSheet(sheetGLJ, settingGLJ, -1);
-            sheetCommonObj.shieldAllCells(sheetGLJ);
-            sheetCommonObj.cleanSheet(sheetCoe, settingCoe, -1);
-            sheetCommonObj.shieldAllCells(sheetCoe);
+            sheetCoe = rationCoeOprObj.sheet, settingCoe = rationCoeOprObj.setting,
+            sheetAss = rationAssistOprObj.sheet, settingAss = rationAssistOprObj.setting;
+
+        sheetCommonObj.cleanSheet(sheetGLJ, settingGLJ, -1);
+        sheetCommonObj.shieldAllCells(sheetGLJ);
+        sheetCommonObj.cleanSheet(sheetCoe, settingCoe, -1);
+        sheetCommonObj.shieldAllCells(sheetCoe);
+        sheetCommonObj.cleanSheet(sheetAss, settingAss, -1);
+        sheetCommonObj.shieldAllCells(sheetAss);
+
+        if(!(args.sheetArea === GC.Spread.Sheets.SheetArea.colHeader || args.sheetArea === GC.Spread.Sheets.SheetArea.corner)){
             var cacheSection = me.getCache();
             if (cacheSection && args.row < cacheSection.length) {
                 rationGLJOprObj.getGljItems(cacheSection[args.row]);
                 rationCoeOprObj.getCoeItems(cacheSection[args.row]);
+                rationAssistOprObj.getAssistItems(cacheSection[args.row]);
             }
-        }
+        };
         me.workBook.focus(true);
     },
+
     getCache: function() {
         var me = this, rst = me.currentRations["_SEC_ID_" + me.currentSectionId];
         if (!(rst)) {
@@ -243,6 +245,7 @@ var rationOprObj = {
                 sheetCommonObj.unShieldAllCells(me.workBook.getSheet(0));
                 sheetCommonObj.lockCells(rationGLJOprObj.sheet, rationGLJOprObj.setting);
                 sheetCommonObj.lockCells(rationCoeOprObj.sheet, rationCoeOprObj.setting);
+                sheetCommonObj.unShieldAllCells(rationAssistOprObj.sheet);
             } else {
                 $.ajax({
                     type:"POST",
@@ -258,10 +261,12 @@ var rationOprObj = {
                             sheetCommonObj.unShieldAllCells(me.workBook.getSheet(0));
                             sheetCommonObj.lockCells(rationGLJOprObj.sheet, rationGLJOprObj.setting);
                             sheetCommonObj.lockCells(rationCoeOprObj.sheet, rationCoeOprObj.setting);
+                            sheetCommonObj.unShieldAllCells(rationAssistOprObj.sheet);
                         } else {
                             sheetCommonObj.shieldAllCells(me.workBook.getSheet(0));
                             sheetCommonObj.shieldAllCells(rationGLJOprObj.sheet);
                             sheetCommonObj.shieldAllCells(rationCoeOprObj.sheet);
+                            sheetCommonObj.shieldAllCells(rationAssistOprObj.sheet);
                         }
                     },
                     error:function(err){

+ 101 - 0
web/maintain/ration_repository/js/ration_assist.js

@@ -0,0 +1,101 @@
+/**
+ * Created by CSL on 2017-06-08.
+ */
+var rationAssistOprObj = {
+    sheet: null,
+    libID: null,
+    ration: null,
+    setting: {
+        header:[
+            {headerName:"调整名称",headerWidth:200,dataCode:"name", dataType: "String"},
+            {headerName:"辅助定额号",headerWidth:120,dataCode:"assistCode", dataType: "String", hAlign: "center"},
+            {headerName:"标准值",headerWidth:120,dataCode:"stdValue", dataType: "String"},
+            {headerName:"步距",headerWidth:120,dataCode:"stepValue", dataType: "String"},
+            {headerName:"精度",headerWidth:80,dataCode:"decimal", dataType: "Number", hAlign: "center"},
+            {headerName:"进位方式",headerWidth:120,dataCode:"carryBit", dataType: "String"},
+            {headerName:"最小值",headerWidth:120,dataCode:"minValue", dataType: "String"},
+            {headerName:"最大值",headerWidth:120,dataCode:"maxValue", dataType: "String"}
+        ],
+        view:{
+            comboBox:[],
+            lockColumns:[]
+        }
+    },
+
+    buildSheet: function(sheet) {
+        var me = this;
+        me.sheet = sheet;
+        me.libID = storageUtil.getSessionCache("RationGrp","repositoryID"); // 不可靠,有时取不到
+        if (me.libID == undefined){me.libID = getQueryString('repository')};
+
+        sheetCommonObj.initSheet(me.sheet, me.setting, 10);
+
+        var carryBit = new GC.Spread.Sheets.CellTypes.ComboBox();
+        carryBit.items(["四舍五入","进一"]);
+        me.sheet.getRange(-1, 5, -1, 1).cellType(carryBit);
+
+        me.sheet.bind(GC.Spread.Sheets.Events.ClipboardPasting, me.onClipboardPasting);
+        me.sheet.bind(GC.Spread.Sheets.Events.ClipboardPasted, me.onClipboardPasted);
+        me.sheet.bind(GC.Spread.Sheets.Events.EditEnded, me.onCellEditEnd);
+        me.sheet.bind(GC.Spread.Sheets.Events.RangeChanged, me.onRangeChanged);
+    },
+
+    onClipboardPasting: function(sender, args) {
+        var me = rationAssistOprObj;
+        if (!me.ration) {
+            args.cancel = true;
+        }
+    },
+
+    onClipboardPasted: function(e, info) {
+        var me = rationAssistOprObj;
+        if (me.ration) {
+            // 粘!
+        }
+    },  // .....
+
+    onCellEditEnd: function(sender, args){
+        var me = rationAssistOprObj;
+        if (!me.ration) {return;};
+
+    },  // .....
+
+    onRangeChanged: function(sender, args) {
+        if (args.action == GC.Spread.Sheets.RangeChangedAction.clear) {
+            if (!confirm('确定要删除本条辅助定额吗?')){return; }
+            var me = rationAssistOprObj;
+            var obj = me.datas[args.row];
+            me.save([],[obj],[]);
+            args.sheet.deleteRows(args.row, 1);
+        };
+    },
+
+    getAssistItems: function(ration) {
+        var me = this;
+        me.ration = ration;
+
+        sheetCommonObj.cleanSheet(me.sheet, me.setting, -1);
+
+        if (ration == undefined || ration.rationAssList == undefined ||
+            ration.rationAssList.length == 0){return;};
+
+        sheetCommonObj.showData(me.sheet, me.setting, ration.rationAssList);
+    },
+
+    save: function() {
+        var me = this;
+        if (!me.ration) {return;};
+
+        var ass = me.ration.rationAssList;
+/*        var rst = [];
+        var curCache = me.cache["_Coe_" + me.ration.ID];
+        if (curCache) {
+            for (let obj of curCache) {
+                rst.push(obj.ID);
+            };
+            me.ration.rationCoeList = rst;
+            updateArr.push(me.ration);
+            rationOprObj.mixUpdateRequest(updateArr, [], []);
+        }; */
+    }
+}