Commit ff053674 by chenjinjing

no message

parent 41a1ecc4
...@@ -7,7 +7,7 @@ import moment = require("moment"); ...@@ -7,7 +7,7 @@ import moment = require("moment");
import { getQcc } from "../util/request"; import { getQcc } from "../util/request";
import { OPERATIONALDATATYPE, TABLEID, TABLENAME } from "../config/enum/dbEnum"; import { OPERATIONALDATATYPE, TABLEID, TABLENAME } from "../config/enum/dbEnum";
import { operationalData, selectData } from "../data/operationalData"; import { operationalData, selectData } from "../data/operationalData";
import { getMySqlMs, randomId } from "../tools/system"; import { getMySqlMs, getPinyinInitials, randomId } from "../tools/system";
import { FINANCINGROUNDS, IPRALLTYPE } from "../config/enum/enum"; import { FINANCINGROUNDS, IPRALLTYPE } from "../config/enum/enum";
import { table } from "console"; import { table } from "console";
import { changeEnumValue } from "../util/verificationEnum"; import { changeEnumValue } from "../util/verificationEnum";
...@@ -85,7 +85,7 @@ export async function 统计() { ...@@ -85,7 +85,7 @@ export async function 统计() {
export async function test() { export async function test() {
let uscc = "91310115MADM8EA654"; let uscc = "91310115MADM8EA654";
await 工商信息(uscc); await 工商信息(uscc);
await 软件著作(uscc); await 软件著作查询(uscc);
await 国际专利(uscc); await 国际专利(uscc);
await 专利查询(uscc); await 专利查询(uscc);
await 融资信息核查(uscc); await 融资信息核查(uscc);
...@@ -128,17 +128,40 @@ export async function qccData() { ...@@ -128,17 +128,40 @@ export async function qccData() {
* @param uscc * @param uscc
* @returns * @returns
*/ */
function getReqParam(uscc) { function getReqParam(uscc, isKeyNo?) {
const TimeSpan = Math.round(new Date().valueOf()/ 1000); const TimeSpan = Math.round(new Date().valueOf()/ 1000);
let header = { let header = {
Token:md5(`${systemConfig.qccKey}${TimeSpan}${systemConfig.qccSecretKey}`).toUpperCase(), Token:md5(`${systemConfig.qccKey}${TimeSpan}${systemConfig.qccSecretKey}`).toUpperCase(),
TimeSpan TimeSpan
}; };
let query = { let query = {};
key:systemConfig.qccKey, if (isKeyNo == "isKeyNo") {
searchKey:uscc, query = {
// keyNo:"云合智网(上海)技术有限公司" key:systemConfig.qccKey,
}; keyNo:uscc,
};
} else if (isKeyNo == "Id") {
query = {
key:systemConfig.qccKey,
id:uscc,
};
} else if (isKeyNo == "certId") {
query = {
key:systemConfig.qccKey,
certId:uscc,
};
} else if (isKeyNo == "企业名称") {
query = {
key:systemConfig.qccKey,
keyword:uscc,
}
} else {
query = {
key:systemConfig.qccKey,
searchKey:uscc,
// keyNo:"云合智网(上海)技术有限公司"
};
}
return {header, query}; return {header, query};
} }
...@@ -153,27 +176,223 @@ async function addManyData(tableName, dataList) { ...@@ -153,27 +176,223 @@ async function addManyData(tableName, dataList) {
console.log(tableName, "写入成功"); console.log(tableName, "写入成功");
} }
async function awaitData(uscc:string) { export async function awaitData(uscc:string) {
await 工商信息(uscc); let 商标查询Data = await 商标查询(uscc);
await 软件著作(uscc); let 专利查询Data = await 专利查询(uscc);
await 主要人员(uscc); let 作品著作查询Data = await 作品著作查询(uscc);
await 分支机构(uscc); let 软件著作Data = await 软件著作查询(uscc);
await 行政许可核查(uscc); let 备案网站Data = await 备案网站查询(uscc);
await 空壳扫描(uscc); let 资质证书Data = await 资质证书查询(uscc);
await 准入尽职调查(uscc); // let 工商信息Data = await 工商信息(uscc);
await 融资信息核查(uscc); // let 软件著作Data = await 软件著作(uscc);
await 国际专利(uscc); // let 主要人员Data = await 主要人员(uscc);
await 科创分(uscc); // let 分支机构Data = await 分支机构(uscc);
await 资质证书(uscc); // let 行政许可核查Data = await 行政许可核查(uscc);
await 专利查询(uscc); // let 空壳扫描Data = await 空壳扫描(uscc);
await 失信核查(uscc); // let 准入尽职调查Data = await 准入尽职调查(uscc);
await 严重违法核查(uscc); // let 融资信息核查Data = await 融资信息核查(uscc);
await 企业对外投资核查(uscc); // let 国际专利Data = await 国际专利(uscc);
// let 科创分Data = await 科创分(uscc);
// let 资质证书Data = await 资质证书(uscc);
// let 失信核查Data = await 失信核查(uscc);
// let 严重违法核查Data = await 严重违法核查(uscc);
// let 企业对外投资核查Data = await 企业对外投资核查(uscc);
// let 企业年报信息Data = await 企业年报信息(uscc);
let initData = {
// 工商信息Data,
// 软件著作Data,
// 主要人员Data,
// 分支机构Data,
// 行政许可核查Data,
// 空壳扫描Data,
// 准入尽职调查Data,
// 融资信息核查Data,
// 国际专利Data,
// 科创分Data,
// 资质证书Data,
商标查询Data,
专利查询Data,
作品著作查询Data,
软件著作Data,
备案网站Data,
资质证书Data,
// 失信核查Data,
// 严重违法核查Data,
// 企业对外投资核查Data,
// 企业年报信息Data,
}
console.log("企查查数据同步成功"); console.log("企查查数据同步成功");
return initData;
} }
async function 商标查询(uscc) {
let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId", "enterpriseName"]);
let enterpriseName = enterpriseInfo.enterpriseName;
let {header, query} = getReqParam(enterpriseName, "企业名称");
let 商标查询:any = await getQcc('https://api.qichacha.com/tm/SearchByApplicant', query, header);
if (Array.isArray(商标查询)) {
for (let i = 0; i < 商标查询.length; i++) {
let Id = 商标查询[i].ID;
let qcc商标详情= await 商标详情查询(uscc, Id);
商标查询[i]["qcc商标详情"] = qcc商标详情;
}
}
return 商标查询;
}
async function 商标详情查询(uscc, id) {
let {header, query} = getReqParam(id, "Id");
let qccselectdata:any = await getQcc('https://api.qichacha.com/tm/GetDetails', query, header);
return qccselectdata;
}
async function 专利查询(uscc) {
let {header, query} = getReqParam(uscc);
let qccselectdata:any = await getQcc('https://api.qichacha.com/PatentV4/SearchMultiPatents', query, header);
if (Array.isArray(qccselectdata)) {
let addList = [];
for (let i = 0; i < qccselectdata.length; i++) {
let qcc专利详情 = {};
let info = qccselectdata[i];
let qcc专利Id = info.Id;
qccselectdata[i]["qcc专利详情"] = await 专利详情查询(qcc专利Id);
addList.push({
iprId:randomId(TABLEID.知识产权),
});
}
}
return qccselectdata;
}
async function 专利详情查询(id) {
let {header, query} = getReqParam(id, "Id");
let qccselectdata:any = await getQcc('https://api.qichacha.com/PatentV4/GetDetails', query, header);
return qccselectdata;
}
async function 作品著作查询(uscc) {
let {header, query} = getReqParam(uscc);
let 作品著作查询:any = await getQcc('https://api.qichacha.com/CopyRight/SearchCopyRight', query, header);
if (Array.isArray(作品著作查询)) {
let addList = [];
}
return 作品著作查询;
}
async function 软件著作查询(uscc) {
let {header, query} = getReqParam(uscc);
let 软件著作查询:any = await getQcc('https://api.qichacha.com/CopyRight/SearchSoftwareCr', query, header);
// let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]);
// let eId = enterpriseInfo.eId;
if (Array.isArray(软件著作查询)) {
let addList = [];
// 著作权软著.forEach(info => {
// addList.push({
// iprId:randomId(TABLEID.知识产权),
// eId,
// year:getMySqlMs(info.RegisterDate),
// number:1,
// iprType:IPRALLTYPE.软件著作权,
// iprName:info.Name,
// category:info.Category,
// });
// });
// await addManyData(TABLENAME.知识产权, addList);
}
return 软件著作查询;
}
async function 备案网站查询(uscc) {
let {header, query} = getReqParam(uscc);
let 备案网站查询:any = await getQcc('https://api.qichacha.com/WebSiteV4/GetCompanyWebSite', query, header);
if (Array.isArray(备案网站查询)) {
let addList = [];
}
return 备案网站查询;
}
async function 资质证书查询(uscc) {
let {header, query} = getReqParam(uscc);
let qccselectdata:any = await getQcc('https://api.qichacha.com/ECICertification/SearchCertification', query, header);
// let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]);
// let eId = enterpriseInfo.eId;
if (Array.isArray(qccselectdata)) {
let addList = [];
for (let i = 0; i < qccselectdata.length; i++) {
let qcc资质证书详情 = {};
let info = qccselectdata[i];
let qcc资质证书Id = info.Id;
qccselectdata[i]["qcc资质证书详情"] = await 资质证书详情查询(qcc资质证书Id);
}
// qccselectdata.forEach(info => {
// let addInfo:any = {
// cerId:randomId(TABLEID.资质证书),
// eId,
// name:info.Name,
// type:info.Type,
// no:info.No,
// typeDesc:info.TypeDesc,
// institutionList:info.InstitutionList ? info.InstitutionList[0] :"",
// status:info.Status,
// };
// if (info.StartDate) addInfo.startDate = getMySqlMs(info.StartDate)
// if (info.EndDate) addInfo.endDate = getMySqlMs(info.EndDate)
// addList.push(addInfo);
// });
// await addManyData(TABLENAME.资质证书, addList);
}
return qccselectdata;
}
async function 资质证书详情查询(id) {
let {header, query} = getReqParam(id, "certId");
let qccselectdata:any = await getQcc('https://api.qichacha.com/ECICertification/GetCertificationDetailById', query, header);
return qccselectdata;
}
function 领域补充() { function 领域补充() {
let 企业名单 = onceSheetBecomeOfblockData('科学城在孵企业.xlsx', "Sheet1"); let 企业名单 = onceSheetBecomeOfblockData('科学城在孵企业.xlsx', "Sheet1");
let dataList = 企业名单[0].blockData; let dataList = 企业名单[0].blockData;
...@@ -194,109 +413,124 @@ async function 工商信息(uscc) { ...@@ -194,109 +413,124 @@ async function 工商信息(uscc) {
let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]); let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]);
let eId = enterpriseInfo.eId; let eId = enterpriseInfo.eId;
let pinyinName = getPinyinInitials(工商信息.Name);
let industryList = []; //Industry
let TermStart = moment(工商信息.TermStart).format("YYYY-MM-DD");
let TermEnd = "无固定期限";
if (工商信息.TermEnd) TermEnd = moment(工商信息.TermEnd).format("YYYY-MM-DD");
//企业基础信息
let baseInfo = {
enterpriseName: 工商信息.Name,
pinyinName,
uscc: 工商信息.CreditCode,
zhuCeHao: 工商信息.No, //EntType = 0/1/4/6/7/9/10/11/-1 中国境内企业时:该字段返回工商注册号;EntType = 3 中国香港企业时:该字段返回企业编号;EntType = 5 中国台湾企业时:该字段返回企业编号
zuZhiJiGouDaiMa: 工商信息.OrgNo,
// gengDuoDianHua: 工商信息., //更多电话
// mainBusiness: 工商信息., //主营业务
logonTime: getMySqlMs(工商信息.StartDate), //成立日期
// mail: 工商信息., //邮箱
// isNaturalPersonHolding: 工商信息., //是否自然人控股
// industry: 工商信息., //领域
// moreMail: 工商信息., //更多邮箱
logonAddress: 工商信息.Address, //注册地址
// tongXinDiZhi: 工商信息., //通信地址
// liaison: 工商信息., //联系人
// liaisonPhone: 工商信息., //联系电话
dengJiJiGuan: 工商信息.BelongOrg, //登机机关
// qiYeGuiMo: 工商信息., //企业规模 TagList
RAS: 工商信息.Status, //登记状态
// guanWang: 工商信息., //官网地址
yingYeQiXian: `${TermStart}${TermEnd}`, //营业期限 TermStart至TermEnd
logOffMS: 工商信息.EndDate || null, //注销时间
shijiaoziben: 工商信息.RecCap, //实缴资本
// enterpriseType: 工商信息., //企业机构类型
// jianJie: 工商信息., //简介
zhuceziben: 工商信息.RegistCapi, //注册资本
// naShuiRenZiZhi: 工商信息., //纳税人资质
// operatingAddress: 工商信息., //经营地址
// oldLogonAddress: 工商信息., //迁入前注册地址
// shuiHao: 工商信息., //税号
// shuiWuJu: 工商信息., //税务员
jingYingFanWei: 工商信息.Scope, //经营范围
};
await operationalData(OPERATIONALDATATYPE.修改, TABLENAME.企业基础信息表, baseInfo, {uscc});
//股权结构 // //股权结构
if (工商信息.Partners) { // if (工商信息.Partners) {
let ownershipList = []; // let ownershipList = [];
工商信息.Partners.forEach(info => { // 工商信息.Partners.forEach(info => {
let addInfo:any = { // let addInfo:any = {
owId:randomId(TABLEID.股权结构), // owId:randomId(TABLEID.股权结构),
eId, // eId,
name:info.StockName, // name:info.StockName,
finalBenefitPercent:info.FinalBenefitPercent, // finalBenefitPercent:info.FinalBenefitPercent,
stockPercent:info.StockPercent, // stockPercent:info.StockPercent,
stockType:info.StockType, // stockType:info.StockType,
realCapi:info.RealCapi, // realCapi:info.RealCapi,
paidUpCapitalUnit:info.PaidUpCapitalUnit, // paidUpCapitalUnit:info.PaidUpCapitalUnit,
subscribedCapital:info.SubscribedCapital, // subscribedCapital:info.SubscribedCapital,
subscribedCapitalUnit:info.SubscribedCapitalUnit, // subscribedCapitalUnit:info.SubscribedCapitalUnit,
}; // };
if (info.CapiDate) addInfo.capiDate = getMySqlMs(info.CapiDate); // if (info.CapiDate) addInfo.capiDate = getMySqlMs(info.CapiDate);
if (info.ShoudDate) addInfo.shoudDate = getMySqlMs(info.ShoudDate); // if (info.ShoudDate) addInfo.shoudDate = getMySqlMs(info.ShoudDate);
ownershipList.push(addInfo); // ownershipList.push(addInfo);
}); // });
await addManyData(TABLENAME.股权结构, ownershipList); // await addManyData(TABLENAME.股权结构, ownershipList);
} // }
if (工商信息.TagList) { // if (工商信息.TagList) {
let enterpriseLabelList = []; // let enterpriseLabelList = [];
工商信息.TagList.forEach(info => { // 工商信息.TagList.forEach(info => {
enterpriseLabelList.push({ // enterpriseLabelList.push({
elId:randomId(TABLEID.企业标签表), // elId:randomId(TABLEID.企业标签表),
eId, // eId,
type:info.Type, // type:info.Type,
labelName:info.Name, // labelName:info.Name,
}); // });
}); // });
await addManyData(TABLENAME.企业标签表, enterpriseLabelList); // await addManyData(TABLENAME.企业标签表, enterpriseLabelList);
} // }
if (工商信息.Industry) { // if (工商信息.Industry) {
let industryInfo = { // let industryInfo = {
eiId:randomId(TABLEID.行业信息分类), // eiId:randomId(TABLEID.行业信息分类),
eId, // eId,
industryCode:工商信息.Industry.IndustryCode ,//行业门类code // industryCode:工商信息.Industry.IndustryCode ,//行业门类code
industry:工商信息.Industry.Industry ,//行业门类描述 // industry:工商信息.Industry.Industry ,//行业门类描述
subIndustryCode:工商信息.Industry.SubIndustryCode ,//行业大类code // subIndustryCode:工商信息.Industry.SubIndustryCode ,//行业大类code
subIndustry:工商信息.Industry.SubIndustry ,//行业大类描述 // subIndustry:工商信息.Industry.SubIndustry ,//行业大类描述
middleCategoryCode:工商信息.Industry.MiddleCategoryCode ,//行业中类code // middleCategoryCode:工商信息.Industry.MiddleCategoryCode ,//行业中类code
middleCategory:工商信息.Industry.MiddleCategory ,//行业中类描述 // middleCategory:工商信息.Industry.MiddleCategory ,//行业中类描述
smallCategoryCode:工商信息.Industry.SmallCategoryCode ,//行业小类code // smallCategoryCode:工商信息.Industry.SmallCategoryCode ,//行业小类code
smallCategory:工商信息.Industry.SmallCategory ,//行业小类描述 // smallCategory:工商信息.Industry.SmallCategory ,//行业小类描述
}; // };
await addManyData(TABLENAME.行业信息分类, [industryInfo]); // await addManyData(TABLENAME.行业信息分类, [industryInfo]);
} // }
if (工商信息.ChangeRecords) { // if (工商信息.ChangeRecords) {
let infoupdateList = []; // let infoupdateList = [];
工商信息.ChangeRecords.forEach(info => { // 工商信息.ChangeRecords.forEach(info => {
infoupdateList.push({ // infoupdateList.push({
updateId:randomId(TABLEID.变更信息表), // updateId:randomId(TABLEID.变更信息表),
eId, // eId,
afterContent:info.AfterContent, //变更前 // afterContent:info.AfterContent, //变更前
beforeContent:info.BeforeContent, //变更后 // beforeContent:info.BeforeContent, //变更后
changeDate:getMySqlMs(info.ChangeDate),//变更时间 // changeDate:getMySqlMs(info.ChangeDate),//变更时间
projectName:info.ProjectName,//变更类型 // projectName:info.ProjectName,//变更类型
}); // });
}); // });
await addManyData(TABLENAME.变更信息表, infoupdateList); // await addManyData(TABLENAME.变更信息表, infoupdateList);
} // }
return return 工商信息;
}
async function 软件著作(uscc) {
let {header, query} = getReqParam(uscc);
let 著作权软著:any = await getQcc('https://api.qichacha.com/CopyRight/SearchCopyRight', query, header);
let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]);
let eId = enterpriseInfo.eId;
if (Array.isArray(著作权软著)) {
let addList = [];
著作权软著.forEach(info => {
addList.push({
iprId:randomId(TABLEID.知识产权),
eId,
year:getMySqlMs(info.RegisterDate),
number:1,
iprType:IPRALLTYPE.软件著作权,
iprName:info.Name,
category:info.Category,
});
});
await addManyData(TABLENAME.知识产权, addList);
}
console.log();
} }
async function 主要人员(uscc) { async function 主要人员(uscc) {
...@@ -318,6 +552,7 @@ async function 主要人员(uscc) { ...@@ -318,6 +552,7 @@ async function 主要人员(uscc) {
await addManyData(TABLENAME.主要人员, addList); await addManyData(TABLENAME.主要人员, addList);
} }
return 主要人员数据;
} }
...@@ -340,6 +575,8 @@ async function 分支机构(uscc) { ...@@ -340,6 +575,8 @@ async function 分支机构(uscc) {
}); });
await addManyData(TABLENAME.分支机构, addList); await addManyData(TABLENAME.分支机构, addList);
} }
return 分支机构数据;
} }
...@@ -371,6 +608,8 @@ async function 行政许可核查(uscc) { ...@@ -371,6 +608,8 @@ async function 行政许可核查(uscc) {
await addManyData(TABLENAME.行政许可核查, addList); await addManyData(TABLENAME.行政许可核查, addList);
} }
return 行政许可核查数据;
} }
async function 空壳扫描(uscc) { async function 空壳扫描(uscc) {
...@@ -391,6 +630,8 @@ async function 空壳扫描(uscc) { ...@@ -391,6 +630,8 @@ async function 空壳扫描(uscc) {
}); });
await addManyData(TABLENAME.空壳扫描, addList); await addManyData(TABLENAME.空壳扫描, addList);
} }
return qccselectdata;
} }
async function 准入尽职调查(uscc) { async function 准入尽职调查(uscc) {
...@@ -414,8 +655,11 @@ async function 准入尽职调查(uscc) { ...@@ -414,8 +655,11 @@ async function 准入尽职调查(uscc) {
}); });
await addManyData(TABLENAME.风险, addList); await addManyData(TABLENAME.风险, addList);
} }
return qccselectdata;
} }
function getFinancingRounds(str) { function getFinancingRounds(str) {
if (str.indexOf("天使")) return FINANCINGROUNDS.天使投资; if (str.indexOf("天使")) return FINANCINGROUNDS.天使投资;
if (str.indexOf("种子")) return FINANCINGROUNDS.种子轮; if (str.indexOf("种子")) return FINANCINGROUNDS.种子轮;
...@@ -429,45 +673,49 @@ function getFinancingRounds(str) { ...@@ -429,45 +673,49 @@ function getFinancingRounds(str) {
async function 融资信息核查(uscc) { async function 融资信息核查(uscc) {
let {header, query} = getReqParam(uscc); let {header, query} = getReqParam(uscc);
let qccselectdata:any = await getQcc('https://api.qichacha.com/CompanyFinancingSearch/GetList', query, header); let qccselectdata:any = await getQcc('https://api.qichacha.com/CompanyFinancingSearch/GetList', query, header);
let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]); // let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]);
let eId = enterpriseInfo.eId; // let eId = enterpriseInfo.eId;
if (qccselectdata.Data) { // if (qccselectdata.Data) {
let addList = []; // let addList = [];
qccselectdata.Data.forEach(info => { // qccselectdata.Data.forEach(info => {
addList.push({ // addList.push({
rId:randomId(TABLEID.企业融资), // rId:randomId(TABLEID.企业融资),
eId, // eId,
financingAmount:isNaN(info.Amoun) ? 0 : parseFloat(info.Amount), // financingAmount:isNaN(info.Amoun) ? 0 : parseFloat(info.Amount),
financingRounds:getFinancingRounds(info.Round), // financingRounds:getFinancingRounds(info.Round),
investmentDate:getMySqlMs(info.Date), // investmentDate:getMySqlMs(info.Date),
investmentInstitutionsName:info.Investment, // investmentInstitutionsName:info.Investment,
}); // });
}); // });
await addManyData(TABLENAME.企业融资, addList); // await addManyData(TABLENAME.企业融资, addList);
} // }
return qccselectdata;
} }
async function 国际专利(uscc) { async function 国际专利(uscc) {
let {header, query} = getReqParam(uscc); let {header, query} = getReqParam(uscc);
let qccselectdata:any = await getQcc('https://api.qichacha.com/InternationalPatentCheck/GetList', query, header); let qccselectdata:any = await getQcc('https://api.qichacha.com/InternationalPatentCheck/GetList', query, header);
let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]); // let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]);
let eId = enterpriseInfo.eId; // let eId = enterpriseInfo.eId;
if (qccselectdata.Data) { // if (qccselectdata.Data) {
let addList = []; // let addList = [];
qccselectdata.Data.forEach(info => { // qccselectdata.Data.forEach(info => {
addList.push({ // addList.push({
iprId:randomId(TABLEID.知识产权), // iprId:randomId(TABLEID.知识产权),
eId, // eId,
year:getMySqlMs(info.PublicationDate), // year:getMySqlMs(info.PublicationDate),
number:1, // number:1,
iprType:IPRALLTYPE.海外专利, // iprType:IPRALLTYPE.海外专利,
iprName:info.Title, // iprName:info.Title,
}); // });
}); // });
await addManyData(TABLENAME.知识产权, addList); // await addManyData(TABLENAME.知识产权, addList);
} // }
return qccselectdata;
} }
...@@ -488,61 +736,32 @@ async function 科创分(uscc) { ...@@ -488,61 +736,32 @@ async function 科创分(uscc) {
}; };
await addManyData(TABLENAME.科创分, [addInfo]); await addManyData(TABLENAME.科创分, [addInfo]);
} }
return qccselectdata;
} }
// async function 专利查询(uscc) {
// let {header, query} = getReqParam(uscc);
// let qccselectdata:any = await getQcc('https://api.qichacha.com/PatentV4/Search', query, header);
// let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]);
// let eId = enterpriseInfo.eId;
async function 资质证书(uscc) { // if (Array.isArray(qccselectdata)) {
let {header, query} = getReqParam(uscc); // console.log();
let qccselectdata:any = await getQcc('https://api.qichacha.com/ECICertification/SearchCertification', query, header); // //todo 没有做
let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]); // let addList = [];
let eId = enterpriseInfo.eId; // qccselectdata.forEach(info => {
// addList.push({
if (Array.isArray(qccselectdata)) { // iprId:randomId(TABLEID.知识产权),
let addList = [];
qccselectdata.forEach(info => {
let addInfo:any = {
cerId:randomId(TABLEID.资质证书),
eId,
name:info.Name,
type:info.Type,
no:info.No,
typeDesc:info.TypeDesc,
institutionList:info.InstitutionList ? info.InstitutionList[0] :"",
status:info.Status,
};
if (info.StartDate) addInfo.startDate = getMySqlMs(info.StartDate)
if (info.EndDate) addInfo.endDate = getMySqlMs(info.EndDate)
addList.push(addInfo);
});
await addManyData(TABLENAME.资质证书, addList);
}
}
async function 专利查询(uscc) {
let {header, query} = getReqParam(uscc);
let qccselectdata:any = await getQcc('https://api.qichacha.com/PatentV4/Search', query, header);
let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]);
let eId = enterpriseInfo.eId;
if (Array.isArray(qccselectdata)) {
console.log();
//todo 没有做
let addList = [];
qccselectdata.forEach(info => {
addList.push({
iprId:randomId(TABLEID.知识产权),
}); // });
}); // });
} // }
console.log(); // return qccselectdata;
} // }
async function 失信核查(uscc) { async function 失信核查(uscc) {
...@@ -572,6 +791,8 @@ async function 失信核查(uscc) { ...@@ -572,6 +791,8 @@ async function 失信核查(uscc) {
}); });
await addManyData(TABLENAME.失信核查, addList); await addManyData(TABLENAME.失信核查, addList);
} }
return qccselectdata;
} }
...@@ -600,6 +821,8 @@ async function 严重违法核查(uscc) { ...@@ -600,6 +821,8 @@ async function 严重违法核查(uscc) {
}); });
await addManyData(TABLENAME.严重违法犯罪, addList); await addManyData(TABLENAME.严重违法犯罪, addList);
} }
return qccselectdata;
} }
...@@ -635,33 +858,34 @@ async function 企业对外投资核查(uscc) { ...@@ -635,33 +858,34 @@ async function 企业对外投资核查(uscc) {
}); });
await addManyData(TABLENAME.对外投资, addList); await addManyData(TABLENAME.对外投资, addList);
} }
return qccselectdata;
} }
async function 企业年报信息(uscc) {
let {header, query} = getReqParam(uscc, "isKeyNo");
// async function 企业年报信息(uscc, query, header) { let 企业年报信息:any = await getQcc('https://api.qichacha.com/AR/GetAnnualReport', query, header);
// let qccselectdata:any = await getQcc('https://api.qichacha.com/AR/GetAnnualReport', query, header); // let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]);
// let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]); // let eId = enterpriseInfo.eId;
// let eId = enterpriseInfo.eId;
// if (企业年报信息.Data) {
// if (qccselectdata.Data) { // let addList = [];
// let addList = []; // 企业年报信息.Data.forEach(info => {
// qccselectdata.Data.forEach(info => { // addList.push({
// addList.push({ // stemId:randomId(TABLENAME.知识产权),
// stemId:randomId(TABLENAME.知识产权), // eId,
// eId, // industry:info.Industry,
// industry:info.Industry, // subIndustry:info.SubIndustry,
// subIndustry:info.SubIndustry, // industryRanking:info.IndustryRanking,
// industryRanking:info.IndustryRanking, // score:info.Score,
// score:info.Score, // });
// }); // });
// });
// }
// }
return 企业年报信息;
// console.log(); }
// }
......
import { OPERATIONALDATATYPE, TABLEID, TABLENAME } from "../config/enum/dbEnum";
import { operationalData, selectData } from "../data/operationalData";
import { systemConfig } from "../config/serverConfig";
import { getQcc } from "../util/request";
import { getMySqlMs, getPinyinInitials, randomId } from "../tools/system";
import moment = require("moment");
const md5 = require("md5");
/**
* 获取数据库所有企业uscc,进行企查查数据同步
*/
export async function qccData() {
let enterpriseList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业基础信息表, {}, ["eId", "uscc", "enterpriseName"]);
for (let i = 0; i < enterpriseList.length; i++) {
let info = enterpriseList[i];
console.log("开始同步企查查数据");
await awaitData(info.uscc, info.eId);
console.log(`${info.enterpriseName} 同步成功, eId:${info.eId},下标 ${i}`);
}
}
async function awaitData(uscc, eId) {
await 工商信息(uscc, eId);
await 专利查询(uscc, eId);
// await 软件著作(uscc);
// await 主要人员(uscc);
// await 分支机构(uscc);
// await 行政许可核查(uscc);
// await 空壳扫描(uscc);
// await 准入尽职调查(uscc);
// await 融资信息核查(uscc);
// await 国际专利(uscc);
// await 科创分(uscc);
// await 资质证书(uscc);
// await 专利查询(uscc);
// await 失信核查(uscc);
// await 严重违法核查(uscc);
// await 企业对外投资核查(uscc);
console.log("企查查数据同步成功");
}
/**
* 封装了一个请求方法
* @param uscc
* @returns
*/
function getReqParam(uscc, isKeyNo?) {
const TimeSpan = Math.round(new Date().valueOf()/ 1000);
let header = {
Token:md5(`${systemConfig.qccKey}${TimeSpan}${systemConfig.qccSecretKey}`).toUpperCase(),
TimeSpan
};
let query = {};
if (isKeyNo == "isKeyNo") {
query = {
key:systemConfig.qccKey,
keyNo:uscc,
};
} else if (isKeyNo == "qcc专利Id") {
query = {
key:systemConfig.qccKey,
id:uscc,
};
} else {
query = {
key:systemConfig.qccKey,
searchKey:uscc,
// keyNo:"云合智网(上海)技术有限公司"
};
}
return {header, query};
}
async function 工商信息(uscc, eId) {
let {header, query} = getReqParam(uscc);
let 工商信息:any = await getQcc('https://api.qichacha.com/ECIInfoVerify/GetInfo', query, header);//获取工商信息
let pinyinName = getPinyinInitials(工商信息.Name);
let industryList = []; //Industry
let TermStart = moment(工商信息.TermStart).format("YYYY-MM-DD");
let TermEnd = "无固定期限";
if (工商信息.TermEnd) TermEnd = moment(工商信息.TermEnd).format("YYYY-MM-DD");
//企业基础信息
let baseInfo = {
enterpriseName: 工商信息.Name,
pinyinName,
uscc: 工商信息.CreditCode,
zhuCeHao: 工商信息.No, //EntType = 0/1/4/6/7/9/10/11/-1 中国境内企业时:该字段返回工商注册号;EntType = 3 中国香港企业时:该字段返回企业编号;EntType = 5 中国台湾企业时:该字段返回企业编号
zuZhiJiGouDaiMa: 工商信息.OrgNo,
// gengDuoDianHua: 工商信息., //更多电话
// mainBusiness: 工商信息., //主营业务
logonTime: getMySqlMs(工商信息.StartDate), //成立日期
mail: 工商信息.ContactInfo.Email, //邮箱
// isNaturalPersonHolding: 工商信息., //是否自然人控股
// industry: 工商信息., //领域
// moreMail: 工商信息., //更多邮箱
logonAddress: 工商信息.Address, //注册地址
// tongXinDiZhi: 工商信息., //通信地址
// liaison: 工商信息., //联系人
liaisonPhone: 工商信息.ContactInfo.PhoneNumber, //联系电话
dengJiJiGuan: 工商信息.BelongOrg, //登机机关
qiYeGuiMo: 工商信息.TagList[0].Name, //企业规模 TagList
RAS: 工商信息.Status, //登记状态
guanWang: 工商信息.ContactInfo.WebSite[0].Url, //官网地址
yingYeQiXian: `${TermStart}${TermEnd}`, //营业期限 TermStart至TermEnd
logOffMS: 工商信息.EndDate || null, //注销时间
shijiaoziben: 工商信息.RecCap, //实缴资本
// enterpriseType: 工商信息., //企业机构类型
// jianJie: 工商信息., //简介
zhuceziben: 工商信息.RegistCapi, //注册资本
// naShuiRenZiZhi: 工商信息., //纳税人资质
// operatingAddress: 工商信息., //经营地址
// oldLogonAddress: 工商信息., //迁入前注册地址
// shuiHao: 工商信息., //税号
// shuiWuJu: 工商信息., //税务员
jingYingFanWei: 工商信息.Scope, //经营范围
};
await operationalData(OPERATIONALDATATYPE.修改, TABLENAME.企业基础信息表, baseInfo, {uscc, eId});
//股权结构
if (工商信息.Partners) {
//删除历史记录数据
await operationalData(OPERATIONALDATATYPE.删除, TABLENAME.股权结构, null, {eId});
//同步最新记录
let ownershipList = [];
工商信息.Partners.forEach(info => {
let addInfo:any = {
owId:randomId(TABLEID.股权结构),
eId,
name:info.StockName,
finalBenefitPercent:info.FinalBenefitPercent,
stockPercent:info.StockPercent,
stockType:info.StockType,
realCapi:info.RealCapi,
paidUpCapitalUnit:info.PaidUpCapitalUnit,
subscribedCapital:info.SubscribedCapital,
subscribedCapitalUnit:info.SubscribedCapitalUnit,
};
if (info.CapiDate) addInfo.capiDate = getMySqlMs(info.CapiDate);
if (info.ShoudDate) addInfo.shoudDate = getMySqlMs(info.ShoudDate);
ownershipList.push(addInfo);
});
await operationalData(OPERATIONALDATATYPE.增加, TABLENAME.股权结构, ownershipList, null);
}
//企业标签表
if (工商信息.TagList) {
//删除历史记录数据
await operationalData(OPERATIONALDATATYPE.删除, TABLENAME.企业标签表, null, {eId});
//同步最新记录
let enterpriseLabelList = [];
工商信息.TagList.forEach(info => {
enterpriseLabelList.push({
elId:randomId(TABLEID.企业标签表),
eId,
type:info.Type,
labelName:info.Name,
});
});
await operationalData(OPERATIONALDATATYPE.增加, TABLENAME.企业标签表, enterpriseLabelList, null);
}
if (工商信息.Industry) {
//删除历史记录数据
await operationalData(OPERATIONALDATATYPE.删除, TABLENAME.行业信息分类, null, {eId});
//同步最新记录
let industryInfo = {
eiId:randomId(TABLEID.行业信息分类),
eId,
industryCode:工商信息.Industry.IndustryCode ,//行业门类code
industry:工商信息.Industry.Industry ,//行业门类描述
subIndustryCode:工商信息.Industry.SubIndustryCode ,//行业大类code
subIndustry:工商信息.Industry.SubIndustry ,//行业大类描述
middleCategoryCode:工商信息.Industry.MiddleCategoryCode ,//行业中类code
middleCategory:工商信息.Industry.MiddleCategory ,//行业中类描述
smallCategoryCode:工商信息.Industry.SmallCategoryCode ,//行业小类code
smallCategory:工商信息.Industry.SmallCategory ,//行业小类描述
};
await operationalData(OPERATIONALDATATYPE.增加, TABLENAME.行业信息分类, [industryInfo], null);
}
if (工商信息.ChangeRecords) {
//删除历史记录数据
await operationalData(OPERATIONALDATATYPE.删除, TABLENAME.变更信息表, null, {eId});
//同步最新记录
let infoupdateList = [];
工商信息.ChangeRecords.forEach(info => {
infoupdateList.push({
updateId:randomId(TABLEID.变更信息表),
eId,
afterContent:info.AfterContent, //变更前
beforeContent:info.BeforeContent, //变更后
changeDate:getMySqlMs(info.ChangeDate),//变更时间
projectName:info.ProjectName,//变更类型
});
});
await operationalData(OPERATIONALDATATYPE.增加, TABLENAME.变更信息表, infoupdateList, null);
}
return
}
async function 商标查询(uscc) {
let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId", "enterpriseName"]);
let enterpriseName = enterpriseInfo.enterpriseName;
let {header, query} = getReqParam(enterpriseName, "企业名称");
let 商标查询:any = await getQcc('https://api.qichacha.com/tm/SearchByApplicant', query, header);
if (Array.isArray(商标查询)) {
for (let i = 0; i < 商标查询.length; i++) {
let Id = 商标查询[i].ID;
let qcc商标详情= await 商标详情查询(uscc, Id);
商标查询[i]["qcc商标详情"] = qcc商标详情;
}
}
return 商标查询;
}
async function 商标详情查询(uscc, id) {
let {header, query} = getReqParam(id, "Id");
let qccselectdata:any = await getQcc('https://api.qichacha.com/tm/GetDetails', query, header);
return qccselectdata;
}
async function 软件著作(uscc) {
let {header, query} = getReqParam(uscc);
let 著作权软著:any = await getQcc('https://api.qichacha.com/CopyRight/SearchCopyRight', query, header);
let enterpriseInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.企业基础信息表, {uscc}, ["eId"]);
let eId = enterpriseInfo.eId;
if (Array.isArray(著作权软著)) {
let addList = [];
著作权软著.forEach(info => {
addList.push({
iprId:randomId(TABLEID.知识产权),
eId,
year:getMySqlMs(info.RegisterDate),
number:1,
iprType:IPRALLTYPE.软件著作权,
iprName:info.Name,
category:info.Category,
});
});
await addManyData(TABLENAME.知识产权, addList);
}
return 著作权软著;
}
async function 专利查询(uscc) {
let {header, query} = getReqParam(uscc);
let qccselectdata:any = await getQcc('https://api.qichacha.com/PatentV4/SearchMultiPatents', query, header);
if (Array.isArray(qccselectdata)) {
console.log();
//todo 没有做
let addList = [];
for (let i = 0; i < qccselectdata.length; i++) {
let info = qccselectdata[i];
let qcc专利Id = info.Id;
let 专利详情 = await 专利详情查询(uscc, qcc专利Id);
addList.push({
iprId:randomId(TABLEID.知识产权),
});
}
}
return qccselectdata;
}
async function 专利详情查询(uscc, id) {
let {header, query} = getReqParam(id, "qcc专利Id");
let qccselectdata:any = await getQcc('https://api.qichacha.com/PatentV4/GetDetails', query, header);
return qccselectdata;
}
...@@ -15,7 +15,7 @@ import { eccFormParam } from "../util/verificationParam"; ...@@ -15,7 +15,7 @@ import { eccFormParam } from "../util/verificationParam";
export async function gardenNoticeList(keywords:string, page:number) { export async function gardenNoticeList(keywords:string, page:number) {
let selectParam:any = {}; let selectParam:any = {};
if (keywords) selectParam.content = {"%like%":keywords}; if (keywords) selectParam.content = {"%like%":keywords};
let filesList = ["gnId", "title", "isPublished", "publishTime", "content"]; let filesList = ["gnId", "title", "isPublished", "publishStartTime", "publishEndTime", "content"];
// let resList = await selectData(OPERATIONALDATATYPE.分页查询, TABLENAME.园区通知表, {}, filesList, page); // let resList = await selectData(OPERATIONALDATATYPE.分页查询, TABLENAME.园区通知表, {}, filesList, page);
let resList = await selectData(OPERATIONALDATATYPE.分页查询, TABLENAME.园区通知表, selectParam, filesList, page); let resList = await selectData(OPERATIONALDATATYPE.分页查询, TABLENAME.园区通知表, selectParam, filesList, page);
...@@ -27,7 +27,7 @@ export async function gardenNoticeList(keywords:string, page:number) { ...@@ -27,7 +27,7 @@ export async function gardenNoticeList(keywords:string, page:number) {
title:info.title, title:info.title,
content:info.content, content:info.content,
isPublished:info.isPublished, isPublished:info.isPublished,
publishTime:moment(info.publishTime).format("YYYY-MM-DD") publishTime:`${moment(info.publishStartTime).format("YYYY-MM-DD")}-${moment(info.publishEndTime).format("YYYY-MM-DD")}`
}); });
}); });
...@@ -36,7 +36,7 @@ export async function gardenNoticeList(keywords:string, page:number) { ...@@ -36,7 +36,7 @@ export async function gardenNoticeList(keywords:string, page:number) {
export async function gardenNoticeInfo(gnId:string) { export async function gardenNoticeInfo(gnId:string) {
let filesList = ["gnId", "title", "isPublished", "content", "publishTime", "relatedEnterprise"]; let filesList = ["gnId", "title", "isPublished", "content", "publishStartTime", "publishEndTime", "relatedEnterprise"];
let resInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.园区通知表, {gnId}, filesList); let resInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.园区通知表, {gnId}, filesList);
let dataInfo = { let dataInfo = {
...@@ -44,7 +44,8 @@ export async function gardenNoticeInfo(gnId:string) { ...@@ -44,7 +44,8 @@ export async function gardenNoticeInfo(gnId:string) {
title:resInfo.title,//标题 title:resInfo.title,//标题
content:resInfo.content,//内容 content:resInfo.content,//内容
isPublished:resInfo.isPublished,//是否发布(1:是,0:否) isPublished:resInfo.isPublished,//是否发布(1:是,0:否)
publishTime:resInfo.publishTime,//发布时间 publishStartTime:resInfo.publishStartTime,//发布时间
publishEndTime:resInfo.publishEndTime,//发布时间
relatedEnterprise:JSON.parse(resInfo.relatedEnterprise || '[]'),//关联企业 relatedEnterprise:JSON.parse(resInfo.relatedEnterprise || '[]'),//关联企业
}; };
return {dataInfo} return {dataInfo}
...@@ -54,12 +55,13 @@ export async function gardenNoticeInfo(gnId:string) { ...@@ -54,12 +55,13 @@ export async function gardenNoticeInfo(gnId:string) {
export async function gardenNoticeUpdate(gnId:string, param) { export async function gardenNoticeUpdate(gnId:string, param) {
const FuncName = "修改园区通知" const FuncName = "修改园区通知"
eccFormParam(FuncName, GardenNoticeUpdateConfig, param ); eccFormParam(FuncName, GardenNoticeUpdateConfig, param );
let filesList = ["gnId", "title", "isPublished", "content", "publishTime", "relatedEnterprise"]; let filesList = ["gnId", "title", "isPublished", "content", "publishStartTime", "publishEndTime", "relatedEnterprise"];
let resInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.园区通知表, {gnId}, filesList); let resInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.园区通知表, {gnId}, filesList);
if (!resInfo.gnId) throw new BizError(ERRORENUM.数据不存在); if (!resInfo.gnId) throw new BizError(ERRORENUM.数据不存在);
param.publishTime = getMySqlMs(param.publishTime); param.publishStartTime = getMySqlMs(param.publishStartTime);
param.publishEndTime = getMySqlMs(param.publishEndTime);
param.relatedEnterprise = JSON.stringify(param.relatedEnterprise); param.relatedEnterprise = JSON.stringify(param.relatedEnterprise);
await operationalData(OPERATIONALDATATYPE.修改, TABLENAME.园区通知表, param, {gnId}); await operationalData(OPERATIONALDATATYPE.修改, TABLENAME.园区通知表, param, {gnId});
...@@ -71,7 +73,8 @@ export async function gardenNoticeAdd(param) { ...@@ -71,7 +73,8 @@ export async function gardenNoticeAdd(param) {
eccFormParam(FuncName, GardenNoticeUpdateConfig, param ); eccFormParam(FuncName, GardenNoticeUpdateConfig, param );
param.gnId = randomId(TABLEID.园区通知表); param.gnId = randomId(TABLEID.园区通知表);
param.publishTime = getMySqlMs(param.publishTime); param.publishStartTime = getMySqlMs(param.publishStartTime);
param.publishEndTime = getMySqlMs(param.publishEndTime);
param.relatedEnterprise = JSON.stringify(param.relatedEnterprise); param.relatedEnterprise = JSON.stringify(param.relatedEnterprise);
await operationalData(OPERATIONALDATATYPE.增加, TABLENAME.园区通知表, param, {}); await operationalData(OPERATIONALDATATYPE.增加, TABLENAME.园区通知表, param, {});
......
...@@ -10,7 +10,9 @@ export const GardenNoticeUpdateConfig = { ...@@ -10,7 +10,9 @@ export const GardenNoticeUpdateConfig = {
title:{type:"String"},// 标题 title:{type:"String"},// 标题
content:{type:"String"},// 内容 content:{type:"String"},// 内容
isPublished:{type:"Number"},// 是否发布(1:是,0:否) isPublished:{type:"Number"},// 是否发布(1:是,0:否)
publishTime:{type:"Number"},// 发布时间 // publishTime:{type:"Number"},// 发布时间
publishStartTime:{type:"Number"}, //发布开始时间
publishEndTime:{type:"Number"}, //发布结束时间
relatedEnterprise:{type:"[String]"},// 关联企业 relatedEnterprise:{type:"[String]"},// 关联企业
} }
......
...@@ -130,8 +130,8 @@ export enum FOLLOWUPSTATUS { ...@@ -130,8 +130,8 @@ export enum FOLLOWUPSTATUS {
*/ */
export enum NEEDCATEGORY { export enum NEEDCATEGORY {
// 物业服务 = 1, // 物业服务 = 1,
工商税务 = 2, // 工商税务 = 2,
代理记账, 代理记账 = 3,
贷款服务, 贷款服务,
法律服务, 法律服务,
知识产权, 知识产权,
......
import { awaitData } from "../biz/dataInit";
import { OPERATIONALDATATYPE, TABLENAME } from "../config/enum/dbEnum";
import { selectData } from "./operationalData";
// 初始化数据文件结构
async function initDataFile() {
let enterpriseList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.企业基础信息表, {}, ["eId", "uscc", "enterpriseName"]);
let currentData = {};
let usccData = await awaitData("91310115MADM8EA654");
currentData["91310115MADM8EA654"] = usccData;
for (let i = 0; i < enterpriseList.length; i++) {
let info = enterpriseList[i];
console.log("开始同步企查查数据");
let usccData = await awaitData(info.uscc);
currentData[info.uscc] = usccData;
console.log(`${info.enterpriseName} 同步成功, eId:${info.eId},下标 ${i}`);
}
console.log("刷新缓存数据结束")
}
/**
* 接口更新
* 设置定时器,每天刷新一次数据
*/
export async function initApiDataStorage() {
await initDataFile();
setInterval(async function () {
await initDataFile();
}, 3600 * 1000 * 24);
}
import { awaitData } from "./biz/dataInit";
import { initConfig, systemConfig } from "./config/serverConfig"; import { initConfig, systemConfig } from "./config/serverConfig";
import { initApiDataStorage } from "./data/dataInterfaceWithCache";
import { httpServer } from "./net/http_server"; import { httpServer } from "./net/http_server";
async function lanuch() { async function lanuch() {
await initConfig(); await initConfig();
httpServer.createServer(systemConfig.port); httpServer.createServer(systemConfig.port);
console.log('This indicates that the server is started successfully.'); console.log('This indicates that the server is started successfully.');
// await initApiDataStorage();
} }
......
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