Commit b03980d1 by chenjinjing

no message

parent 512382e2
<config>
<port>40015</port>
<dbPort>9096</dbPort>
<dbHost>192.168.0.105</dbHost>
<dbHost>192.168.0.71</dbHost>
<sign>xxx90909082fsdahfjosadjfpoiwausjorip2hjklrhn1ioud0u124rx0qwejfokasjfolksaujfoas</sign>
<!-- <imgPath>http://127.0.0.1:4980/yuyi/viewpage</imgPath> -->
<imgPath>http://192.168.0.189:40015</imgPath>
......
/**
* 公共资源
*/
import * as enumConfig from '../config/enum';
const config = {
"/public/selectparam":enumConfig.SELECTPARAM, //企业搜索下拉框选择
}
export function publicRouter(req, res) {
let ret:any = {};
ret['selectparam'] = getEnumItf(config['/public/selectparam']);
res.send(ret);
}
/**
*
* @param req
* @param res
*/
function getEnumItf(enumCof) {
let dataList = [];
for (let key in enumCof) {
let anyKey:any = key;
if (isNaN(anyKey)) {
dataList.push({key, value:enumCof[key]});
}
}
return dataList;
}
\ No newline at end of file
import { log } from 'console';
import { systemConfig } from '../config/serverConfig';
import { getZhyy } from '../data/db/zhyy';
import { zhyyTableData } from '../data/table/zhyyData';
import { doubleYBarCharPackage, keyValuePackage, onceYBarChartPackage, rankPackage, tablePackage } from '../dataPackage/inFrontOut';
import { getDoubleYBarChartOut, getKeyValueOut, getOnceYBarChartOut, getTableOut } from '../dataPackage/out';
/* 智慧运营 */
export async function getData(req, res) {
let excelData = zhyyTableData();
let dbData = await getZhyy();
let ret: any = {};
let yqgkPackageData = keyValuePackage(dbData['园区概况'].dataList);
ret['yqgk'] = getKeyValueOut('园区概况', yqgkPackageData);
let zfqysjPackageData = keyValuePackage(dbData['在孵企业数据'].dataList);
ret['zfqysj'] = getKeyValueOut('在孵企业数据', zfqysjPackageData);
let rzqybhqsPackageData = onceYBarChartPackage(dbData['入驻企业变化趋势'], '', '');
ret['rzqybhqs'] = getOnceYBarChartOut('入驻企业变化趋势', rzqybhqsPackageData);
let rzqyhylxPackageData = keyValuePackage(dbData['入驻企业行业类型'].dataList);
ret['rzqyhylx'] = getKeyValueOut('入驻企业行业类型', rzqyhylxPackageData);
let fhyyPackageData = keyValuePackage(dbData['孵化运营'].dataList);
ret['fhyy'] = getKeyValueOut('孵化运营', fhyyPackageData);
let fhmjbhqsPackageData = onceYBarChartPackage(dbData['孵化面积变化趋势'], '', '');
ret['fhmjbhqs'] = getOnceYBarChartOut('孵化面积变化趋势', fhmjbhqsPackageData);
// let zfqybhqsPackageData = onceYBarChartPackage( excelData['在孵企业变化趋势'], '','');
let zfqybhqsPackageData = onceYBarChartPackage(dbData["在孵企业变化趋势"], '', '');
ret['zfqybhqs'] = getOnceYBarChartOut('在孵企业变化趋势', zfqybhqsPackageData);
// let byqybhqsPackageData = onceYBarChartPackage( excelData['毕业企业变化趋势'], '','');
let byqybhqsPackageData = onceYBarChartPackage(dbData["毕业企业变化趋势"], '', '');
ret['byqybhqs'] = getOnceYBarChartOut('毕业企业变化趋势', byqybhqsPackageData);
let rzqyPackageData = onceYBarChartPackage(dbData['融资企业变化趋势'], '', '');
ret['rzqy'] = getOnceYBarChartOut('融资企业变化趋势', rzqyPackageData);
let ryzzPackageData = keyValuePackage(dbData['荣誉资质'].dataList);
ret['ryzz'] = getKeyValueOut('荣誉资质', ryzzPackageData);
// let ryzztp = dbData["荣誉资质图片"];
// // let ryzztpList = [];
// // for (let i = 0; i < ryzztp.length; i++) {
// // ryzztpList.push(`${systemConfig.imgPath}/${ryzztp[i][0]}`);//systemConfig.imgFileUrl = imgFileUrl[0];
// // }
// ret['ryzztp'] = { title: "荣誉资质图片", dataList: ryzztp };
let zhyyhzsjPackageData = keyValuePackage(dbData['智慧运营汇总数据'].dataList);
ret['zhyyhzsj'] = getKeyValueOut('智慧运营汇总数据', zhyyhzsjPackageData);
let dtTableData = tablePackage(excelData["地图"].headerList[0], excelData["地图"].bodyList);
let dt = { dataList: [], titleList: dtTableData.titleList };
dtTableData.dataList.forEach(info => {
let { D } = info;
let imgUrl = `${systemConfig.imgPath}/${D}`;
info["D"] = imgUrl;
dt.dataList.push(info);
})
ret['dt'] = getTableOut('地图', dt);
// let jyfxPackageData = keyValuePackage(excelData['就业分析'].dataList);
// ret['jyfx'] = getKeyValueOut('就业分析', jyfxPackageData);
let jyfxPackageData = keyValuePackage(dbData['就业分析'].dataList);
ret['jyfx'] = getKeyValueOut('就业分析', jyfxPackageData);
let jdjyrsqsfxPackageData = onceYBarChartPackage(dbData['年度就业人数趋势分析'], '', '');
ret['jdjyrsqsfx'] = getOnceYBarChartOut('年度就业人数趋势分析', jdjyrsqsfxPackageData);
let cygmfxPackageData = keyValuePackage(excelData['产业规模分析'].dataList);
ret['cygmfx'] = getKeyValueOut('产业规模分析', cygmfxPackageData);
let zfqyyszbPackageData = keyValuePackage(dbData['在孵企业营收占比'].dataList);
ret['zfqyyszb'] = getKeyValueOut('在孵企业营收占比', zfqyyszbPackageData);
let qyfwPackageData = keyValuePackage(dbData['企业服务'].dataList);
ret['qyfw'] = getKeyValueOut('企业服务', qyfwPackageData);
let qyfwlxPackageData = keyValuePackage(dbData['企业服务类型'].dataList);
ret['qyfwlx'] = getKeyValueOut('企业服务类型', qyfwlxPackageData);
let fwzlTableData = tablePackage(excelData["服务质量"].headerList[0], excelData["服务质量"].bodyList);//todo111
ret['fwzl'] = getTableOut('服务质量', fwzlTableData);
let yysrqsPackageData = onceYBarChartPackage(excelData['运营收入趋势'], '', '');
ret['yysrqs'] = getOnceYBarChartOut('运营收入趋势', yysrqsPackageData);
let cyzcPackageData = keyValuePackage(excelData['产业政策'].dataList);
ret['cyzc'] = getKeyValueOut('产业政策', cyzcPackageData);
let cyzcxxPackageData = keyValuePackage(excelData['产业政策详细'].dataList);
ret['cyzcxx'] = getKeyValueOut('产业政策详细', cyzcxxPackageData);
let yqhdPackageData = keyValuePackage(excelData['园区活动'].dataList);
let yqhd = [];
yqhdPackageData.forEach(info => {
let { key, value } = info;
info.value = `${systemConfig.imgPath}/${value}`;
yqhd.push(info);
})
ret['yqhd'] = getKeyValueOut('园区活动', yqhd);
let yqxwPackageData = keyValuePackage(excelData['园区新闻'].dataList);
let yqxw = [];
yqxwPackageData.forEach(info => {
let { key, value } = info;
info.value = `${systemConfig.imgPath}/${value}`;
yqxw.push(info);
})
ret['yqxw'] = getKeyValueOut('园区新闻', yqxw);
res.send(ret);
}
\ No newline at end of file
import { OPERATIONALDATATYPE, TABLENAME } from "../../config/enum";
import { ERRORENUM } from "../../config/errorEnum";
import { systemConfig } from "../../config/serverConfig";
import { BizError } from "../../util/bizError";
import { post } from "../../util/request";
/**
* 操作数据库 新增 修改 删除
* @param url url地址 根据枚举获取值
* @param tableName 表名
* @param data 数据
* @param param 条件
*/
export async function operationalData(url:string, tableName:string, data, param) {
let header = {table:tableName, sign:systemConfig.sign};
let queray:any = {};
if (url == OPERATIONALDATATYPE.增加) {
queray.data = data;
} else if (url == OPERATIONALDATATYPE.修改) {
queray.data = data;
queray.param = param;
} else if (url == OPERATIONALDATATYPE.删除) {
queray.param = param;
} else {
throw new BizError(ERRORENUM.该方法仅可进行数据操作, '使用操作数据库的方法进行查询调用');
}
let result:any = await post(`${systemConfig.dbPath}${url}`, queray, header );
if (result.code != 200) throw new BizError(ERRORENUM.数据操作失败, result.code);
if (!result.data || !result.data.isSuccess) throw new BizError(ERRORENUM.数据操作失败, JSON.stringify(result.data));
return true;
}
/**
* 查询
* @param url url地址 根据枚举获取值
* @param tableName 表名
* @param param 条件
* @param pageNumber 分页传入的页数 非分页可不传
* @param pageSize 分页传入的单页大小 非分页可不传
*/
export async function selectData(url, tableName, param, column, pageNumber?, pageSize?) {
if (url != OPERATIONALDATATYPE.查询单个 && url != OPERATIONALDATATYPE.查询多个 && url != OPERATIONALDATATYPE.查询数据量 && url != OPERATIONALDATATYPE.分页查询) {
throw new BizError(ERRORENUM.该方法仅可进行查询操作, '该方法仅可进行查询操作');
}
let header = {table:tableName, sign:systemConfig.sign};
let queray:any = {param};
if (column && column.length) {
queray.column = column;
}
if (url == OPERATIONALDATATYPE.分页查询) {
if (!pageNumber) throw new BizError(ERRORENUM.分页请设置当前页数, `pageNumber:${pageNumber};pageSize:${pageSize}`);
queray.pageNumber = pageNumber;
queray.pageSize = pageSize || 10;
}
let result:any = await post(`${systemConfig.dbPath}${url}`, queray, header );
if (result.code != 200) throw new BizError(ERRORENUM.数据查询失败, result.code);
if (!result.data || result.data.data == null || result.data.data == undefined) throw new BizError(ERRORENUM.数据查询失败, JSON.stringify(result.data));
return result.data.data;
}
/**
* 多表联查
* @param url
* @param tableName
* @param param
* @param column
* @param includeConf
* @param pageNumber
* @param pageSize
* @returns
*/
export async function selectManyTableData(url, tableName, param, column, includeConf, pageNumber?, pageSize?) {
if (url != OPERATIONALDATATYPE.多表联查 && url != OPERATIONALDATATYPE.多表分页 && url != OPERATIONALDATATYPE.多表单个) {
throw new BizError(ERRORENUM.该方法仅可进行联合查询操作, '该方法仅可进行联合查询操作');
}
let header = {table:tableName, sign:systemConfig.sign};
let queray:any = {param, includeConf};
if (column && column.length) {
queray.column = column;
}
if (url == OPERATIONALDATATYPE.多表分页) {
if (!pageNumber) throw new BizError(ERRORENUM.分页请设置当前页数, `pageNumber:${pageNumber};pageSize:${pageSize}`);
queray.pageNumber = pageNumber;
queray.pageSize = pageSize || 10;
}
let result:any = await post(`${systemConfig.dbPath}${url}`, queray, header );
if (result.code != 200) throw new BizError(ERRORENUM.数据联合查询失败, result.code);
if (!result.data || !result.data.data) throw new BizError(ERRORENUM.数据联合查询失败, JSON.stringify(result.data));
return result.data.data;
}
\ No newline at end of file
import moment = require("moment");
export function getKeyValue(data) {
let result = [];
for (let key in data) {
result.push({key, value:data[key]});
}
return result;
}
export function getChart(data) {
let result = [];
for(let key in data) {
result.push({name:key, data:data[key]})
}
return result;
}
export function getMonthList() {
// 获取当前时间
const currentTime = moment();
// 获取6个月前的时间
const sixMonthsAgo = currentTime.clone().subtract(6, 'months');
// 创建一个数组来存储每个月份的第一天
const monthsArray = [];
// 使用moment的range函数(如果可用)或者手动循环来遍历月份
// 注意:moment.js的官方库中并没有直接的range函数用于月份遍历,
// 但我们可以使用.month()和.date(1)结合循环来实现。
// 由于moment没有内置的range函数用于月份,我们需要手动处理
let currentMonth = sixMonthsAgo.clone();
while (currentMonth.isBefore(currentTime) || currentMonth.isSame(currentTime, 'month')) {
// 获取当前循环月份的第一天
const firstDayOfMonth = currentMonth.clone().date(1);
// 将月份添加到数组中
monthsArray.push(moment(firstDayOfMonth.clone().toDate()).format("YY/MM")); // 如果你需要Date对象
// monthsArray.push(firstDayOfMonth.format('YYYY-MM-DD')); // 如果你需要格式化字符串
// 移动到下一个月
currentMonth.add(1, 'months');
}
return monthsArray;
}
export function getYearList() {
// 获取当前年份
const currentTime = moment();
const sixMonthsAgo = currentTime.clone().subtract(6, 'year');
const currentYear = new Date().getFullYear();
// 初始化一个空数组来存储年份
const years = [];
// 使用一个循环来添加当前年份到6年后的每一个年份到数组中
for (let i = 0; i <= 6; i++) {
years.push(currentYear - i);
}
years.sort((a, b) => {
return a - b;
})
return years;
}
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