123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- let JV = require("./jpc_value_define");
- let JpcCommonHelper = require("./helper/jpc_helper_common");
- let JpcBandHelper = require("./helper/jpc_helper_band");
- let JpcBand = {
- createNew: function (rptTpl, defProperties) {
- let me = this;
- let JpcBandResult = {};
- if (rptTpl[JV.NODE_BAND_COLLECTION]) {
- for (let i = 0; i < rptTpl[JV.NODE_BAND_COLLECTION].length; i++) {
- me.createSingle(
- rptTpl[JV.NODE_BAND_COLLECTION][i],
- JpcBandResult,
- rptTpl,
- defProperties
- );
- }
- }
- return JpcBandResult;
- },
- createSingle: function (bandNode, parentObj, rptTpl, defProperties) {
- let me = this;
- if (bandNode && bandNode[JV.BAND_PROP_NAME]) {
- let item = { Left: 0, Right: 0, Top: 0, Bottom: 0 };
- item[JV.BAND_PROP_STYLE] = JpcCommonHelper.getStyle(
- bandNode[JV.BAND_PROP_STYLE],
- defProperties.styles,
- null
- );
- item[JV.BAND_PROP_CONTROL] = JpcCommonHelper.getControl(
- bandNode[JV.BAND_PROP_CONTROL],
- defProperties.ctrls,
- null
- );
- if (bandNode[JV.BAND_PROP_HEIGHT]) {
- item[JV.BAND_PROP_HEIGHT] = 1.0 * bandNode[JV.BAND_PROP_HEIGHT];
- } else {
- item[JV.BAND_PROP_HEIGHT] = 0.0;
- }
- if (bandNode[JV.BAND_PROP_WIDTH]) {
- item[JV.BAND_PROP_WIDTH] = 1.0 * bandNode[JV.BAND_PROP_WIDTH];
- } else {
- item[JV.BAND_PROP_WIDTH] = 0.0;
- }
- item[JV.BAND_PROP_DISPLAY_TYPE] = JpcBandHelper.getBandTypeValByString(
- bandNode[JV.BAND_PROP_DISPLAY_TYPE]
- );
- item[JV.BAND_PROP_ALIGNMENT] = JpcCommonHelper.getLayoutAlignment(
- bandNode[JV.BAND_PROP_ALIGNMENT]
- );
- item[JV.PROP_CALCULATION] = JpcCommonHelper.getPosCalculationType(
- bandNode[JV.PROP_CALCULATION]
- );
- if (bandNode.hasOwnProperty(JV.PROP_BAND_NORMAL_ONLY)) {
- item[JV.PROP_BAND_NORMAL_ONLY] = JpcCommonHelper.getBoolean(
- bandNode[JV.PROP_BAND_NORMAL_ONLY]
- );
- }
- if (bandNode.hasOwnProperty(JV.PROP_BAND_EX_ONLY)) {
- item[JV.PROP_BAND_EX_ONLY] = JpcCommonHelper.getBoolean(
- bandNode[JV.PROP_BAND_EX_ONLY]
- );
- }
- if (bandNode[JV.BAND_PROP_MERGE_BORDER]) {
- item[JV.BAND_PROP_MERGE_BORDER] = bandNode[JV.BAND_PROP_MERGE_BORDER];
- }
- if (bandNode[JV.BAND_PROP_SUB_BANDS]) {
- for (let i = 0; i < bandNode[JV.BAND_PROP_SUB_BANDS].length; i++) {
- me.createSingle(
- bandNode[JV.BAND_PROP_SUB_BANDS][i],
- parentObj,
- rptTpl,
- defProperties
- );
- }
- }
- parentObj[bandNode[JV.BAND_PROP_NAME]] = item;
- if (
- item[JV.BAND_PROP_MERGE_BORDER] !== null &&
- item[JV.BAND_PROP_MERGE_BORDER] !== undefined &&
- item[JV.BAND_PROP_MERGE_BORDER] === "T"
- ) {
- parentObj[JV.BAND_PROP_MERGE_BAND] = item;
- }
- }
- },
- };
- module.exports = JpcBand;
|