Selaa lähdekoodia

confirm_modal

MaiXinRong 7 vuotta sitten
vanhempi
commit
3243cd0b27
2 muutettua tiedostoa jossa 110 lisäystä ja 0 poistoa
  1. 1 0
      config/gulpConfig.js
  2. 109 0
      web/building_saas/main/js/views/confirm_modal.js

+ 1 - 0
config/gulpConfig.js

@@ -93,6 +93,7 @@ module.exports = {
         'web/building_saas/main/js/models/quantity_detail.js',
         'web/building_saas/main/js/views/glj_view_contextMenu.js',
         'web/building_saas/main/js/views/calc_program_view.js',
+        'web/building_saas/main/js/views/confirm_modal.js'
         'public/web/treeDataHelper.js',
         'public/web/ztree_common.js',
         'public/web/rpt_tpl_def.js',

+ 109 - 0
web/building_saas/main/js/views/confirm_modal.js

@@ -0,0 +1,109 @@
+/**
+ * 
+ * Created by Mai on 2017/10/20.
+ */
+
+let ConfirmModal = {  
+    reBind: function (obj, eventName, fun) {
+         obj.unbind(eventName);
+         obj.bind(eventName, fun);
+    },
+    stdBillsUnit: {
+        modalObj: $('#std_bills_unit'),
+        okObj: $('#std_bills_unit_ok'),
+        cancelObj: $('#std_bills_unit_cancel'),
+        closeObj: $('#std_bills_unit_close'),
+        spread: null,
+        setting: {
+            "emptyRows":0,
+            "headRows":1,
+            "headRowHeight":[25],
+            "defaultRowHeight": 21,
+            "cols":[{
+                "width":120,
+                "readOnly":true,
+                "head":{
+                    "titleNames":["编码"],
+                    "spanCols":[1],
+                    "spanRows":[1],
+                    "vAlign":[1],
+                    "hAlign":[1],
+                    "font":["Arial"]
+                },
+                "data":{
+                    "field":"code",
+                    "vAlign":1,
+                    "hAlign":0,
+                    "font":"Arial"
+                }
+            }, {
+                "width":200,
+                "readOnly":true,
+                "head":{
+                    "titleNames":["名称"],
+                    "spanCols":[1],
+                    "spanRows":[1],
+                    "vAlign":[1],
+                    "hAlign":[1],
+                    "font":["Arial"]
+                },
+                "data":{
+                    "field":"name",
+                    "vAlign":1,
+                    "hAlign":0,
+                    "font":"Arial"
+                }
+            }, {
+                "width":50,
+                "readOnly":true,
+                "head":{
+                    "titleNames":["单位"],
+                    "spanCols":[1],
+                    "spanRows":[1],
+                    "vAlign":[1],
+                    "hAlign":[1],
+                    "font":["Arial"]
+                },
+                "data":{
+                    "field":"unit",
+                    "vAlign":1,
+                    "hAlign":1,
+                    "font":"Arial"
+                }
+            }]
+        },
+        check: function (std, okCallBack, cancelCallBack) {
+            if (!this.spread) {
+                this.spread = SheetDataHelper.createNewSpread($('#std_bills_unit_spread')[0]);
+                SheetDataHelper.loadSheetHeader(this.setting, ConfirmModal.stdBillsUnit.spread.getActiveSheet());
+            }
+            let sheet = ConfirmModal.stdBillsUnit.spread.getActiveSheet();
+            let modalObj = this.modalObj;
+            let okFun = function () {
+                modalObj.modal('toggle');
+                if (okCallBack) {
+                    let newStd = JSON.parse(JSON.stringify(std));
+                    newStd.unit = sheet.getText(sheet.getSelections()[0].row, 2);
+                    okCallBack(newStd);
+                }
+            };
+            let cancelFun = function () {
+                modalObj.modal('toggle');
+                if (cancelCallBack) {
+                    cancelCallBack();
+                }
+            };
+            ConfirmModal.reBind(this.okObj, 'click', okFun);
+            ConfirmModal.reBind(this.cancelObj, 'click', cancelFun);
+            ConfirmModal.reBind(this.closeObj, 'click', cancelFun);
+            let datas = [];
+            let units = std.unit.split('/');
+            for (let unit of units) {
+                datas.push({'code': std.code, 'name': std.name, 'unit': unit});
+            }
+            SheetDataHelper.loadSheetData(this.setting, sheet, datas);
+            this.modalObj.modal({backdrop: false, keyboard: false});  
+            ConfirmModal.stdBillsUnit.spread.refresh();  
+        }
+    }
+};