/**
* Created by Tony on 2017/12/8.
*/
let rpt_tpl_cfg_helper = {
reportCfg: null,
getReportTplCfg: function() {
let me = this, params = {};
params.userId = userID;
CommonAjax.postEx("report_tpl_api/getUserRptCfg", params, 20000, true, function(result){
me.reportCfg = result;
me.refreshRptCfgs();
}, null, null
);
},
refreshRptCfgs: function () {
let me = this;
if (me.reportCfg) {
me.reportCfg.borderArr = [];
for (let style of me.reportCfg.styles) {
me.reportCfg.borderArr.push(style.ID);
$("#borderStyles").append("");
$("#elementBorders").append("");
}
me.reportCfg.fontArr = [];
for (let font of me.reportCfg.fonts) {
if (font.CfgDispName) {
me.reportCfg.fontArr.push(font.ID);
$("#elementFonts").append("");
} else {
// me.reportCfg.fontArr.push("dummy font");
}
}
me.reportCfg.fontArr.push('自定义');
$("#elementFonts").append("");
me.reportCfg.controlArr = [];
for (let control of me.reportCfg.ctrls) {
if (control.CfgDispName) {
me.reportCfg.controlArr.push(control.ID);
$("#elementControls").append("");
} else {
me.reportCfg.controlArr.push("dummy control");
}
}
}
let pf = $("#pageFrequency");
pf.append("");
pf.append("");
pf.append("");
pf.append("");
pf.append("");
pf.append("");
pf.append("");
pf.append("");
let ba = $("#bandAlignment");
ba.append("");
ba.append("");
ba.append("");
ba.append("");
ba.append("");
let ha = $("#elementAlignmentHorizon");
ha.append("");
ha.append("");
ha.append("");
let va = $("#elementAlignmentVertical");
va.append("");
va.append("");
va.append("");
},
checkAndSetSelectedNodeCfg: function (treeNode) {
let me = rpt_tpl_cfg_helper;
if (treeNode[JV.PROP_AREA]) {
$("#element_font")[0].style.display = "";
$("#element_border")[0].style.display = "";
$("#element_control")[0].style.display = "";
$("#element_area_1")[0].style.display = "";
// $("#element_area_2")[0].style.display = "";
if (treeNode[JV.PROP_FIELD_ID] || treeNode[JV.PROP_PARAM_ID]) {
$("#element_pre_suff")[0].style.display = "";
if (treeNode[JV.PROP_PREFIX]) {
$("#elePrefix").get(0).value = treeNode[JV.PROP_PREFIX];
} else {
$("#elePrefix").get(0).value = "";
}
if (treeNode[JV.PROP_SUFFIX]) {
$("#eleSuffix").get(0).value = treeNode[JV.PROP_SUFFIX];
} else {
$("#eleSuffix").get(0).value = "";
}
if (treeNode[JV.PROP_FORMAT]) {
$("#eleFormat").get(0).value = treeNode[JV.PROP_FORMAT];
} else {
$("#eleFormat").get(0).value = "";
}
if (treeNode[JV.PROP_DFT_VALUE]) {
$("#eleDftValue").get(0).value = treeNode[JV.PROP_DFT_VALUE];
} else {
$("#eleDftValue").get(0).value = "";
}
} else {
$("#element_pre_suff")[0].style.display = "none";
}
//setup auto height
if (treeNode[JV.PROP_IS_AUTO_HEIGHT]) {
$("#eleAutoHeight").get(0).checked = true;
} else {
$("#eleAutoHeight").get(0).checked = false;
}
//setup font
let fontDom = $("#elementFonts").get(0);
fontDom.removeAttribute("disabled");
let fontAttr = treeNode[JV.PROP_FONT];
if (typeof treeNode[JV.PROP_FONT] !== "string") {
fontAttr = "自定义";
}
let idx = me.reportCfg.fontArr.indexOf(fontAttr);
fontDom.selectedIndex = idx;
me.fontChange(fontDom);
//setup border
let borderDom = $("#elementBorders").get(0);
let borderAttr = treeNode[JV.PROP_STYLE];
idx = me.reportCfg.borderArr.indexOf(borderAttr);
borderDom.selectedIndex = idx;
me.borderChange(borderDom);
//setup control
let ctrlDom = $("#elementControls").get(0);
let ctrlAttr = treeNode[JV.PROP_CONTROL];
idx = me.reportCfg.controlArr.indexOf(ctrlAttr);
ctrlDom.selectedIndex = idx;
me.controlChange(ctrlDom);
//setup area
me.private_setup_area(treeNode);
} else {
$("#elementFonts").get(0).disabled = "disabled" ;
$("#element_font")[0].style.display = "none";
$("#element_border")[0].style.display = "none";
$("#element_control")[0].style.display = "none";
$("#element_area_1")[0].style.display = "none";
// $("#element_area_2")[0].style.display = "none";
$("#element_pre_suff")[0].style.display = "none";
}
},
fontChange: function(dom) {
let me = rpt_tpl_cfg_helper, fontAttr = dom.value;
//dataInfoMapTreeOprObj.currentNode
if (fontAttr === "自定义") {
fontAttr = dataInfoMapTreeOprObj.currentNode[JV.PROP_FONT];
if (typeof fontAttr === "string") {
fontAttr = {};
fontAttr[JV.FONT_PROPS[0]] = "宋体";
fontAttr[JV.FONT_PROPS[1]] = 12;
fontAttr[JV.FONT_PROPS[2]] = "BLACK";
fontAttr[JV.FONT_PROPS[3]] = "F"; //bold
fontAttr[JV.FONT_PROPS[4]] = "F"; //italic
fontAttr[JV.FONT_PROPS[5]] = "F"; //underline
fontAttr[JV.FONT_PROPS[6]] = "F"; //strikeout
fontAttr[JV.FONT_PROPS[7]] = 0; //angle
dataInfoMapTreeOprObj.currentNode[JV.PROP_FONT] = fontAttr;
}
} else {
dataInfoMapTreeOprObj.currentNode[JV.PROP_FONT] = fontAttr;
}
me.private_setup_font(fontAttr);
},
private_setup_font: function(fontAttr) {
let me = rpt_tpl_cfg_helper;
if (typeof fontAttr === "string" && fontAttr !== "自定义") {
$("#eleFontName").get(0).disabled = "disabled" ;
$("#eleFontSize").get(0).disabled = "disabled" ;
$("#eleFontBold").get(0).disabled = "disabled" ;
$("#eleFontItalic").get(0).disabled = "disabled" ;
$("#eleFontUnderline").get(0).disabled = "disabled" ;
let idx = me.reportCfg.fontArr.indexOf(fontAttr);
$("#elementFonts").get(0).selectedIndex = idx;
let font = me.reportCfg.fonts[idx];
$("#eleFontName").get(0).value = font.Name;
$("#eleFontSize").get(0).value = parseInt(font.FontHeight);
$("#eleFontBold").get(0).checked = stringUtil.convertStrToBoolean(font.FontBold);
$("#eleFontItalic").get(0).checked = stringUtil.convertStrToBoolean(font.FontItalic);
$("#eleFontUnderline").get(0).checked = stringUtil.convertStrToBoolean(font.FontUnderline);
} else {
//$("#elementFonts").get(0).selectedIndex = idx;
$("#eleFontName").get(0).removeAttribute("disabled");
$("#eleFontSize").get(0).removeAttribute("disabled");
$("#eleFontBold").get(0).removeAttribute("disabled");
$("#eleFontItalic").get(0).removeAttribute("disabled");
$("#eleFontUnderline").get(0).removeAttribute("disabled");
$("#eleFontName").get(0).value = fontAttr.Name;
$("#eleFontSize").get(0).value = parseInt(fontAttr.FontHeight);
$("#eleFontBold").get(0).checked = stringUtil.convertStrToBoolean(fontAttr.FontBold);
$("#eleFontItalic").get(0).checked = stringUtil.convertStrToBoolean(fontAttr.FontItalic);
$("#eleFontUnderline").get(0).checked = stringUtil.convertStrToBoolean(fontAttr.FontUnderline);
}
},
private_setup_area: function (treeNode) {
$("#elementArea_Left").get(0).value = parseFloat(treeNode[JV.PROP_AREA][JV.PROP_LEFT]);
$("#elementArea_Right").get(0).value = parseFloat(treeNode[JV.PROP_AREA][JV.PROP_RIGHT]);
$("#elementArea_Top").get(0).value = parseFloat(treeNode[JV.PROP_AREA][JV.PROP_TOP]);
$("#elementArea_Bottom").get(0).value = parseFloat(treeNode[JV.PROP_AREA][JV.PROP_BOTTOM]);
if (typeof treeNode[JV.PROP_AREA][JV.PROP_H_CALCULATION] === "string") {
$("#isPercentage_Left").get(0).checked = treeNode[JV.PROP_AREA][JV.PROP_H_CALCULATION] === "percentage";
$("#isPercentage_Right").get(0).checked = treeNode[JV.PROP_AREA][JV.PROP_H_CALCULATION] === "percentage";
} else {
$("#isPercentage_Left").get(0).checked = treeNode[JV.PROP_AREA][JV.PROP_H_CALCULATION][JV.PROP_LEFT] === "percentage";
$("#isPercentage_Right").get(0).checked = treeNode[JV.PROP_AREA][JV.PROP_H_CALCULATION][JV.PROP_RIGHT] === "percentage";
}
if (typeof treeNode[JV.PROP_AREA][JV.PROP_V_CALCULATION] === "string") {
$("#isPercentage_Top").get(0).checked = treeNode[JV.PROP_AREA][JV.PROP_V_CALCULATION] === "percentage";
$("#isPercentage_Bottom").get(0).checked = treeNode[JV.PROP_AREA][JV.PROP_V_CALCULATION] === "percentage";
} else {
$("#isPercentage_Top").get(0).checked = treeNode[JV.PROP_AREA][JV.PROP_V_CALCULATION][JV.PROP_TOP] === "percentage";
$("#isPercentage_Bottom").get(0).checked = treeNode[JV.PROP_AREA][JV.PROP_V_CALCULATION][JV.PROP_BOTTOM] === "percentage";
}
},
fontNameChange: function(dom){
let font = dataInfoMapTreeOprObj.currentNode[JV.PROP_FONT];
font[JV.FONT_PROPS[0]] = dom.value;
},
fontSizeChange: function(dom) {
let font = dataInfoMapTreeOprObj.currentNode[JV.PROP_FONT];
font[JV.FONT_PROPS[1]] = dom.value;
},
fontBoldChange: function(dom) {
let font = dataInfoMapTreeOprObj.currentNode[JV.PROP_FONT];
font[JV.FONT_PROPS[3]] = dom.checked?'T':'F';
},
fontItalicChange: function(dom) {
let font = dataInfoMapTreeOprObj.currentNode[JV.PROP_FONT];
font[JV.FONT_PROPS[4]] = dom.checked?'T':'F';
},
fontUnderlineChange: function(dom) {
let font = dataInfoMapTreeOprObj.currentNode[JV.PROP_FONT];
font[JV.FONT_PROPS[5]] = dom.checked?'T':'F';
},
borderChange: function(dom) {
if (dataInfoMapTreeOprObj.currentNode) {
let me = this, borderAttr = dom.value;
let idx = me.reportCfg.borderArr.indexOf(borderAttr);
let border = me.reportCfg.styles[idx];
dataInfoMapTreeOprObj.currentNode[JV.PROP_STYLE] = borderAttr;
$("#eleBorderLeft").get(0).value = border[JV.PROP_BORDER_STYLE][JV.IDX_LEFT][JV.PROP_LINE_WEIGHT];
$("#eleBorderRight").get(0).value = border[JV.PROP_BORDER_STYLE][JV.IDX_RIGHT][JV.PROP_LINE_WEIGHT];
$("#eleBorderTop").get(0).value = border[JV.PROP_BORDER_STYLE][JV.IDX_TOP][JV.PROP_LINE_WEIGHT];
$("#eleBorderBottom").get(0).value = border[JV.PROP_BORDER_STYLE][JV.IDX_BOTTOM][JV.PROP_LINE_WEIGHT];
}
},
controlChange: function(dom) {
if (dataInfoMapTreeOprObj.currentNode) {
let me = this, ctrlAttr = dom.value;
let idx = me.reportCfg.controlArr.indexOf(ctrlAttr);
let ctrl = me.reportCfg.ctrls[idx];
dataInfoMapTreeOprObj.currentNode[JV.PROP_CONTROL] = ctrlAttr;
$("#elementAlignmentHorizon").get(0).selectedIndex = JV.OUTPUT_ALIGN.H.indexOf(ctrl[JV.CONTROL_PROPS[2]]);
$("#elementAlignmentVertical").get(0).selectedIndex = JV.OUTPUT_ALIGN.V.indexOf(ctrl[JV.CONTROL_PROPS[3]]);
$("#eleShrink").get(0).checked = stringUtil.convertStrToBoolean(ctrl[JV.CONTROL_PROPS[0]]);
$("#eleShowZero").get(0).checked = stringUtil.convertStrToBoolean(ctrl[JV.CONTROL_PROPS[1]]);
$("#eleAutoWrap").get(0).checked = stringUtil.convertStrToBoolean(ctrl[JV.CONTROL_PROPS[4]]);
}
},
changeAlignment: function(dom, type) {
let ctrl = dataInfoMapTreeOprObj.currentNode[JV.PROP_CONTROL];
if (type === "horizon") {
ctrl[JV.CONTROL_PROPS[2]] = JV.OUTPUT_ALIGN[dom.selectedIndex];
} else {
ctrl[JV.CONTROL_PROPS[3]] = JV.OUTPUT_ALIGN[dom.selectedIndex];
}
},
changeArea: function(dom, typeStr) {
if (dataInfoMapTreeOprObj.currentNode) {
dataInfoMapTreeOprObj.currentNode[JV.PROP_AREA][typeStr] = dom.value;
}
},
changeAreaCalcType: function (dom, typeStr) {
if (dataInfoMapTreeOprObj.currentNode) {
let otherSideStr = "", caclStr = "";
switch (typeStr) {
case JV.PROP_LEFT:
caclStr = JV.PROP_H_CALCULATION;
otherSideStr = JV.PROP_RIGHT;
break;
case JV.PROP_RIGHT:
caclStr = JV.PROP_H_CALCULATION;
otherSideStr = JV.PROP_LEFT;
break;
case JV.PROP_TOP:
caclStr = JV.PROP_V_CALCULATION;
otherSideStr = JV.PROP_BOTTOM;
break;
case JV.PROP_BOTTOM:
caclStr = JV.PROP_V_CALCULATION;
otherSideStr = JV.PROP_TOP;
break;
}
if (typeof dataInfoMapTreeOprObj.currentNode[JV.PROP_AREA][caclStr] === "string") {
let bk_type = dataInfoMapTreeOprObj.currentNode[JV.PROP_AREA][caclStr];
dataInfoMapTreeOprObj.currentNode[JV.PROP_AREA][caclStr] = {};
dataInfoMapTreeOprObj.currentNode[JV.PROP_AREA][caclStr][typeStr] = dom.checked?JV.CAL_TYPE[0]:JV.CAL_TYPE[1];
dataInfoMapTreeOprObj.currentNode[JV.PROP_AREA][caclStr][otherSideStr] = bk_type;
} else {
dataInfoMapTreeOprObj.currentNode[JV.PROP_AREA][caclStr][typeStr] = dom.checked?JV.CAL_TYPE[0]:JV.CAL_TYPE[1];
}
}
},
changePreSuff: function (dom, typeStr) {
if (dataInfoMapTreeOprObj.currentNode) {
dataInfoMapTreeOprObj.currentNode[typeStr] = dom.value;
}
},
changeFormat: function (dom) {
if (dataInfoMapTreeOprObj.currentNode) {
dataInfoMapTreeOprObj.currentNode[JV.PROP_FORMAT] = dom.value;
}
},
changeDftValue: function (dom) {
if (dataInfoMapTreeOprObj.currentNode) {
dataInfoMapTreeOprObj.currentNode[JV.PROP_DFT_VALUE] = dom.value;
}
},
changeAutoHeight: function(dom) {
if (dataInfoMapTreeOprObj.currentNode) {
dataInfoMapTreeOprObj.currentNode[JV.PROP_IS_AUTO_HEIGHT] = dom.checked;
}
}
};