/** * Created by Tony on 2016/12/24. */ var JV = require('../rpt_component/Jpc_ValueDefine'); var Template = require('../models/rpt_template'); var TemplateData = require('../models/rpt_temp_data'); var JpcEx = require('../rpt_component/JpcEx'); var cacheController = require('./cacheController'); //统一回调函数 var callback = function(req, res, err, data){ if(err){ //res.send({success: false, error: err}); res.json({success: false, error: err}); } else{ //res.send({success: true, data: data}); res.json({success:true, data: data}); } } module.exports = { getReportAllPages: function(req, res){ var grp_id = req.body.grp_id; var tpl_id = req.body.tpl_id; var pageSize = req.body.pageSize; Template.get(grp_id, tpl_id, function(err, rptTpl){ if (rptTpl) { TemplateData.get(tpl_id, function(err, tplData){ if (tplData) { var printCom = JpcEx.createNew(); rptTpl[JV.NODE_MAIN_INFO][JV.NODE_PAGE_INFO][JV.PROP_PAGE_SIZE] = pageSize; var dftControls = cacheController.getCache("common_ctrls"); var dftFonts = cacheController.getCache("common_fonts"); var dftStyles = cacheController.getCache("common_styles"); var defProperties = {ctrls: dftControls, fonts: dftFonts, styles: dftStyles}; printCom.initialize(rptTpl); printCom.analyzeData(rptTpl, tplData, defProperties); var maxPages = printCom.totalPages; var pageRst = printCom.outputAsSimpleJSONPageArray(rptTpl, tplData, 1, maxPages, defProperties); if (pageRst) { callback(req, res, err, pageRst); } else { callback(req, res, "Have errors while on going...", null); } //callback(req, res, err, tplData); } else { callback(req, res, err, null); } }) } else { callback(req, res, err, null); } }); }, getReportByPage: function(req, res){ }, getDefaultControls: function(req, res){ }, getDefaultFonts: function(req, res){ }, getDefaultStyles: function(req, res){ }, remove: function(req, res){ } }