浏览代码

code sync

TonyKang 5 年之前
父节点
当前提交
7d8cb064e3
共有 3 个文件被更改,包括 143 次插入3 次删除
  1. 2 1
      app/const/report_defined_properties.js
  2. 121 2
      app/controller/report_controller.js
  3. 20 0
      app/service/rpt_tpl.js

+ 2 - 1
app/const/report_defined_properties.js

@@ -541,5 +541,6 @@ module.exports = {
         ]
     }
     ]
-};
+}
+;
 

+ 121 - 2
app/controller/report_controller.js

@@ -16,6 +16,92 @@ const fs = require('fs');
 const rptCronJob = require('../reports/util/rpt_tmp_file_sweep');
 const RPT_DEF_PROPERTIES = require('../const/report_defined_properties');
 
+const tmpRptIds = [1,2,3,4,5,6,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93];
+const rptFiles = [ 'D:/Temp/计量临时/16_支表02 中期支付证书月报表.js',
+    'D:/Temp/计量临时/17_新增报表模板.js',
+    'D:/Temp/计量临时/18_支表03 清单计量与支付表.js',
+    'D:/Temp/计量临时/19_测试.js',
+    'D:/Temp/计量临时/1_测试模板08_2.js',
+    'D:/Temp/计量临时/20_支表03 清单计量与支付表(分章统计).js',
+    'D:/Temp/计量临时/21_支表13 中间计量表(0号台账).js',
+    'D:/Temp/计量临时/22_支表13-1 中间计量表(总量控制).js',
+    'D:/Temp/计量临时/23_支表14 中间计量支付汇总表(0号台账).js',
+    'D:/Temp/计量临时/24_支表14-1 中间计量支付汇总表(总量控制).js',
+    'D:/Temp/计量临时/25_支表14 中间计量支付汇总表(0号台账).js',
+    'D:/Temp/计量临时/26_支表02 中期支付证书月报表.js',
+    'D:/Temp/计量临时/27_总量控制.js',
+    'D:/Temp/计量临时/28_支表02 .js',
+    'D:/Temp/计量临时/29_支表03.js',
+    'D:/Temp/计量临时/2_测试模板07_1.js',
+    'D:/Temp/计量临时/30_test 中间计量.js',
+    'D:/Temp/计量临时/31_02表.js',
+    'D:/Temp/计量临时/32_B21 中期支付申请表.js',
+    'D:/Temp/计量临时/33_封面.js',
+    'D:/Temp/计量临时/34_支表13-1 中间计量表(总量控制).js',
+    'D:/Temp/计量临时/35_封面2.js',
+    'D:/Temp/计量临时/36_新增报表模板.js',
+    'D:/Temp/计量临时/37_支表1 工程进度表.js',
+    'D:/Temp/计量临时/38_新增报表模板.js',
+    'D:/Temp/计量临时/39_封面.js',
+    'D:/Temp/计量临时/3_测试计量模板09.js',
+    'D:/Temp/计量临时/40_支表5 工程变更一览表.js',
+    'D:/Temp/计量临时/41_支表14 中间计量汇总表.js',
+    'D:/Temp/计量临时/42_03表 付款申请表.js',
+    'D:/Temp/计量临时/43_支表2 中期支付证书.js',
+    'D:/Temp/计量临时/44_B22  中间计量单.js',
+    'D:/Temp/计量临时/45_支表3 清单计量与支付表.js',
+    'D:/Temp/计量临时/46_B22  中间计量单.js',
+    'D:/Temp/计量临时/47_01表 计量支付审批单.js',
+    'D:/Temp/计量临时/48_新增报表模板.js',
+    'D:/Temp/计量临时/49_新增报表模板.js',
+    'D:/Temp/计量临时/4_流水式表模板.js',
+    'D:/Temp/计量临时/50_02表 合同工程月计量申报表.js',
+    'D:/Temp/计量临时/51_03表 付款申请表.js',
+    'D:/Temp/计量临时/52_支表5 工程变更一览表.js',
+    'D:/Temp/计量临时/53_B25 变更台帐汇总表.js',
+    'D:/Temp/计量临时/54_B1表 工程变更令.js',
+    'D:/Temp/计量临时/55_B6 工程变更设计数量计算书.js',
+    'D:/Temp/计量临时/56_B23 工程台帐汇总表.js',
+    'D:/Temp/计量临时/57_B23.1 工程台帐分表一.js',
+    'D:/Temp/计量临时/58_B5表 工程变更数量及金额汇总表.js',
+    'D:/Temp/计量临时/59_B4表 工程变更设计申报表.js',
+    'D:/Temp/计量临时/5_交叉式表模板.js',
+    'D:/Temp/计量临时/60_B25 变更台帐汇总表.js',
+    'D:/Temp/计量临时/61_B25.1  变更台帐分表一.js',
+    'D:/Temp/计量临时/62_封面.js',
+    'D:/Temp/计量临时/63_支表2 中期支付证书.js',
+    'D:/Temp/计量临时/64_支表3 清单计量与支付表.js',
+    'D:/Temp/计量临时/65_01表 计量支付审批单.js',
+    'D:/Temp/计量临时/66_02表 合同工程月计量申报表.js',
+    'D:/Temp/计量临时/67_03表 付款申请表.js',
+    'D:/Temp/计量临时/68_B1表 工程变更令.js',
+    'D:/Temp/计量临时/69_B5表 工程变更数量及金额汇总表.js',
+    'D:/Temp/计量临时/6_账单式表模板.js',
+    'D:/Temp/计量临时/70_B4表 工程变更设计申报表.js',
+    'D:/Temp/计量临时/71_支表14 中间计量汇总表.js',
+    'D:/Temp/计量临时/72_封面.js',
+    'D:/Temp/计量临时/73_封面.js',
+    'D:/Temp/计量临时/74_封面-新.js',
+    'D:/Temp/计量临时/75_支表3 清单计量与支付表.js',
+    'D:/Temp/计量临时/76_156.js',
+    'D:/Temp/计量临时/77_计量111111111.js',
+    'D:/Temp/计量临时/78_新增报表模板.js',
+    'D:/Temp/计量临时/79_新增报表模板.js',
+    'D:/Temp/计量临时/80_新增报表模板.js',
+    'D:/Temp/计量临时/81_null.js',
+    'D:/Temp/计量临时/82_null.js',
+    'D:/Temp/计量临时/83_支表13 中间计量表.js',
+    'D:/Temp/计量临时/84_封面.js',
+    'D:/Temp/计量临时/85_计量与支付会签表.js',
+    'D:/Temp/计量临时/86_累支02 中期支付月报表.js',
+    'D:/Temp/计量临时/87_测试筛选清单.js',
+    'D:/Temp/计量临时/88_支表03-1 清单计量支付台账.js',
+    'D:/Temp/计量临时/89_支表14 中间计量汇总表.js',
+    'D:/Temp/计量临时/90_测试.js',
+    'D:/Temp/计量临时/91_新增报表模板.js',
+    'D:/Temp/计量临时/92_新增报表模板.js',
+    'D:/Temp/计量临时/93_新增报表模板.js' ]
+
 module.exports = app => {
     class ReportController extends app.BaseController {
         /**
@@ -41,6 +127,37 @@ module.exports = app => {
                 const prjAccList = await ctx.service.projectAccount.getAllAccountByProjectId(tender.data.project_id);
                 const roleList = await ctx.service.signatureRole.getSignatureRolesByTenderId(tender.id);
 
+                // const allTpls = await ctx.service.rptTpl.getAllTplByIds(tmpRptIds);
+                // for (const tpl of allTpls) {
+                //     const fName = tpl.id + '_' + tpl.rpt_tpl_name + '.js';
+                //     console.log('fName: ' + fName);
+                //     fsUtil.writeObjToFile(tpl, 'D:/Temp/计量临时/' + fName);
+                // }
+                // 完成历史任务,下一批
+                // const filePath = 'D:/Temp/计量临时/';
+                // const tplFiles = [];
+                // fs.readdir(filePath, (err, files) => {
+                //     if (err) throw err;
+                //     files.forEach(file => {
+                //         const fPath = filePath + file;
+                //         // console.log('\'' + fPath + '\'');
+                //         tplFiles.push(fPath);
+                //     });
+                // });
+                //
+                // setTimeout(function() {
+                //     console.log(tplFiles);
+                // }, 2000);
+                // 下一批
+                // let cnt = 0;
+                // for (const file of rptFiles) {
+                //     const tplObj = JSON.parse(fs.readFileSync(file, 'utf-8'));
+                //     const rst = await ctx.service.rptTpl.insertRptTpl(tplObj);
+                //     cnt++;
+                //     console.log(file);
+                // }
+                // console.log(cnt + ' 完成!');
+
                 // console.log(maxStageAmt[0].maxAmt);
                 // if ((stage === null || stage === undefined) && stageList.length > 0) {
                 //     await ctx.service.stage.checkStage(stageList[stageList.length - 1].id);
@@ -424,11 +541,13 @@ async function getAllPagesCommon(ctx, rptTpl, params, option, outputType, baseDi
         const printCom = JpcEx.createNew();
         if (params.pageSize) rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_PAGE_SIZE] = params.pageSize;
         if (params.orientation && (params.orientation !== 'null')) rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_ORIENTATION] = params.orientation;
+
         // let defProperties = await ctx.service.rptPreDefineCfg.getCfgById('Administrator');
-        // console.log('defProperties: ');
-        // console.log(defProperties[0].defined_content);
         // defProperties = JSON.parse(defProperties[0].defined_content);
         const defProperties = RPT_DEF_PROPERTIES;
+        // console.log('defProperties: ');
+        // console.log(defProperties);
+
         if (params.custCfg) {
             setupCustomizeCfg(params.custCfg, rptTpl, defProperties);
         } else {

+ 20 - 0
app/service/rpt_tpl.js

@@ -66,6 +66,26 @@ module.exports = app => {
             return rst;
         }
 
+        async insertRptTpl(refTpl) {
+            let rst = null;
+            this.transaction = await this.db.beginTransaction();
+            try {
+                const data = {
+                    id: refTpl.id,
+                    rpt_type: refTpl.rpt_type,
+                    rpt_tpl_name: refTpl.rpt_tpl_name,
+                    rpt_content: refTpl.rpt_content
+                };
+                rst = await this.transaction.insert(this.tableName, data);
+                await this.transaction.commit();
+            } catch (ex) {
+                console.log(ex);
+                // 回滚
+                await this.transaction.rollback();
+            }
+            return rst;
+        }
+
         async updateRptTpl(tplId, tplName, tplObj) {
             let rst = null;
             this.transaction = await this.db.beginTransaction();