chenshilong 7 年之前
父節點
當前提交
117348c078

+ 2 - 1
modules/main/controllers/calc_program_controller.js

@@ -32,8 +32,9 @@ async function getProjectCalcProgram(req, res) {
 async function getStdCalcProgram(req, res) {
     let result = {error: 0, message: '', data: null};
 
+    let data = JSON.parse(req.body.data);
     try {
-        let stdCP = await calcProgramFacade.getStdCalcProgramFile(req.body.ID);
+        let stdCP = await calcProgramFacade.getStdCalcProgramFile(data.ID);
         result.data= stdCP;
     }catch (err){
         result.error = 1;

+ 0 - 1
web/building_saas/main/js/models/calc_program.js

@@ -1465,7 +1465,6 @@ class CalcProgram {
 
             for (let i = 0; i < template.calcItems.length; i++) {
                 let item = template.calcItems[i];
-                // item.expression = analyzer.getExpression(item.dispExpr, template);
                 item.dispExpr = analyzer.getDispExpr(item.expression, template);
                 template.compiledCalcItems[item.ID] = item;
                 template.compiledCalcItems[item.ID + "_idx"] = i;

+ 33 - 0
web/building_saas/main/js/views/calc_program_manage.js

@@ -86,6 +86,22 @@ let calcProgramManage = {
             disableSpread(me.detailSpread);
         }
     },
+    getStdCalcProgramFiles: function(){
+        function getStdCPFilesHtml(stdCPLibs) {
+            let result = '<option value="">请选择计算程序标准库</option>';
+            if (stdCPLibs.length <= 0) {
+                return result;
+            };
+
+            for (let lib of stdCPLibs){
+                result += '<option value='+ lib.id +'>'+ lib.name +'</option>';
+            };
+            return result;
+        };
+
+        let stdCPHtml = getStdCPFilesHtml(projectInfoObj.projectInfo.engineeringInfo.program_lib);
+        $("#calcProgramFileSelect").html(stdCPHtml);
+    },
     onMainEnterCell: function(sender, args) {
         var me = calcProgramManage;
         var row = args.sheet.getActiveRowIndex();
@@ -474,6 +490,23 @@ $(document).ready(function(){
         sessionStorage.setItem('mainTab', '#tab_calc_program_manage');
         $(e.relatedTarget.hash).removeClass('active');
         calcProgramManage.buildSheet();
+        calcProgramManage.getStdCalcProgramFiles();
+    });
+
+    $("#calcProgramFileSelect").change(function() {
+        // 取标准库数据过来显示。
+        let libID = $(this).val();
+        if (libID == ''){
+
+            return false;
+        };
+
+        CommonAjax.post('/calcProgram/getStdCalcProgram', {"ID":  parseFloat(libID)}, function (data) {
+            projectObj.project.calcProgram.datas.templates = data.templates;
+            projectObj.project.calcProgram.compileAllTemps();
+            calcProgramManage.buildSheet();
+            // $('#this').val(libID);
+        });
     });
 });