Commit 8005239e by lixinming

no message

parent 086ee686
...@@ -11,6 +11,13 @@ let typeEnum = { ...@@ -11,6 +11,13 @@ let typeEnum = {
"双轴多柱状数据":1, "双轴多柱状数据":1,
} }
function changeDataName(str) {
let result = str.replace(/[()""“”()]/, "_");
for (let i =0; i < 10; i++) {
result = result.replace(/[()""“”()]/, "_");
}
return result;
}
let createBizAndDataConfigMap = { let createBizAndDataConfigMap = {
// "page1": { // "page1": {
...@@ -49,7 +56,7 @@ function createConfig() { ...@@ -49,7 +56,7 @@ function createConfig() {
let pageName = valueList[0]; let pageName = valueList[0];
let sheetName = valueList[1]; let sheetName = valueList[1];
let type = valueList[2]; let type = valueList[2];
let dataName = valueList[3]; let dataName = changeDataName(valueList[3]);
let title = valueList[4]; let title = valueList[4];
let unit = valueList[5]; let unit = valueList[5];
let total = valueList[6]; let total = valueList[6];
...@@ -156,23 +163,24 @@ function getBizStr(apiList, sheetName) { ...@@ -156,23 +163,24 @@ function getBizStr(apiList, sheetName) {
let ${dataName}DataAndUnit = objKeyReplace(excelData.${dataName});`; let ${dataName}DataAndUnit = objKeyReplace(excelData.${dataName});`;
if (unit == 'inData') { if (unit == 'inData') {
subStr += ` subStr += `
ret["${apiName}"] = getKeyValue("${dataName}", ${dataName}DataAndUnit.dataMap, ${dataName}DataAndUnit.unitMap, ${total}, ${percent} )`; ret["${apiName}"] = getKeyValue("${dataName}", ${dataName}DataAndUnit.dataMap, ${dataName}DataAndUnit.unitMap, ${total}, ${percent} );`;
} else { } else {
subStr += ` subStr += `
ret["${apiName}"] = getKeyValue("${dataName}", ${dataName}DataAndUnit.dataMap, ${typeof unit == 'boolean' ? unit : `'${unit}'`}, ${total}, ${percent} )`; ret["${apiName}"] = getKeyValue("${dataName}", ${dataName}DataAndUnit.dataMap, ${typeof unit == 'boolean' ? unit : `'${unit}'`}, ${total}, ${percent} );`;
} }
break; break;
case "柱状数据": case "柱状数据":
let chartUnit = typeof unit == 'boolean' ? unit : `'${unit}'`;
subStr = ` subStr = `
ret["${apiName}"] = getChartData("${dataName}", excelData.${dataName}, '${unit}', ${percent} )`; ret["${apiName}"] = getChartData("${dataName}", excelData.${dataName}, ${chartUnit}, ${percent} );`;
break; break;
case "列表数据": case "列表数据":
subStr = ` subStr = `
ret["${apiName}"] = getListData("${dataName}",excelData.${dataName},${titleList},${titleValueObj})`; ret["${apiName}"] = getListData("${dataName}",excelData.${dataName},${titleList},${titleValueObj});`;
break; break;
case "单轴多柱状数据": case "单轴多柱状数据":
subStr = ` subStr = `
ret["${apiName}"] = getSingleYAndMoreData("${dataName}", excelData.${dataName}, ${percent}, '${unit}')`; ret["${apiName}"] = getSingleYAndMoreData("${dataName}", excelData.${dataName}, ${percent}, '${unit}');`;
break; break;
case "双轴多柱状数据": case "双轴多柱状数据":
subStr = ` subStr = `
...@@ -202,24 +210,21 @@ function createRouter() { ...@@ -202,24 +210,21 @@ function createRouter() {
for (let pageName in createBizAndDataConfigMap) { for (let pageName in createBizAndDataConfigMap) {
importName+=` importName+=`
import * as ${pageName}Biz from '../biz/${pageName}'; import * as ${pageName}Biz from '../biz/${pageName}';`;
`;
routergetName+=` routergetName+=`
httpServer.get('/${pageName}', asyncHandler(${pageName}Biz.getData)); httpServer.get('/${pageName}', asyncHandler(${pageName}Biz.getData));`;
`;
routerpostName+=` routerpostName+=`
httpServer.post('/${pageName}', asyncHandler(${pageName}Biz.getData)); httpServer.post('/${pageName}', asyncHandler(${pageName}Biz.getData));`;
`;
} }
let str=` let str=`
import * as asyncHandler from 'express-async-handler' import * as asyncHandler from 'express-async-handler'
${importName} ${importName}
export function setRouter(httpServer){ export function setRouter(httpServer){
${routergetName} ${routergetName}
${routerpostName} ${routerpostName}
}`; }`;
let path = `./routers/router.ts`; let path = `./routers/router.ts`;
fs.access(path, (err) => { fs.access(path, (err) => {
......
...@@ -87,7 +87,18 @@ function separateDataAndUint(str) { ...@@ -87,7 +87,18 @@ function separateDataAndUint(str) {
} }
//object key替换 带单位 //object key替换 带单位
export function objKeyReplace(object, keyInfo = {}) { export function objKeyReplace(object, keyInfo = {}, isString = true) {
if (isString) {
//校验字符
for (let key in object) {
if (!object[key]) object[key] = '';
}
} else {
//校验数字
for (let key in object) {
if (!object[key]) object[key] = '0';
}
}
let unitMap = {}; let unitMap = {};
let dataMap = {}; let dataMap = {};
for(let key in object) { for(let key in object) {
...@@ -288,3 +299,9 @@ export function getAgeByBirthday(birthday:string) { ...@@ -288,3 +299,9 @@ export function getAgeByBirthday(birthday:string) {
else if (age > 50) return "50岁以上"; else if (age > 50) return "50岁以上";
else return '其他'; else return '其他';
} }
export function analysisAddOrRMData(str) {
let checkStr = str.replace(/增加/, "+");
let result = checkStr.replace(/减少/, "-");
return result;
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment