Commit de2d7592 by lixinming
parents f282c25b bde287af
......@@ -19,7 +19,7 @@ import { checkChange, extractData } from "../../../util/piecemeal";
import { enterpriseLabelEvent } from "../../label";
import { findFuHuaQiByUSCC } from "../../../data/fuHuaQi/fuhuaqi";
import { LABELEVENT } from "../../../config/enum/labelEnum";
import * as leaseData from "../../../data/lease";
/**
* 添加新注册企业
......@@ -40,6 +40,16 @@ export async function registerEnterprise(uscc:string, param) {
let dataBaseInfo = await enterpriseData.findEnterpriseByUscc(param.uscc);
if ( dataBaseInfo&& dataBaseInfo.uscc) throw new BizError(ERRORENUM.该企业已存在, `${param.uscc}已经在库中存在`);
if (param.jiaSu == 1 || param.jiaSu == 2) {
//判断
if (param.jiaSu == 1 && !param.jiaSuZiZhi) {
throw new BizError(ERRORENUM.参数错误, "加速企业缺失加速资质");
} else if (param.jiaSu == 1 && param.jiaSuZiZhi.indexOf(configEnum.JIASUZIZHI.其他) >-1 && !param.jiaSuZiZhiDesc) {
throw new BizError(ERRORENUM.参数错误, "加速企业的加速资质选了其他但是没填写内容");
}
} else throw new BizError(ERRORENUM.参数错误, "加速企业不符合1或2", param.jiaSu);
/**添加新注册企业标识 */
param.draftId = sysTools.getDraftId(uscc);//草稿箱id
param.isCreate = true;//标识此次操作是否是新注册企业并不是迁入企业
......@@ -47,6 +57,42 @@ export async function registerEnterprise(uscc:string, param) {
param.state = configEnum.FUHUASTATE.实体孵化;
await enterpriseData.createEnterprise(uscc, TaskId, param);
//2025新加内容
let leaseInfo = await leaseData.findOnceData({uscc:param});
if (leaseInfo && leaseInfo.uscc) { //
leaseInfo.enterpriseName = param.name;
leaseInfo.contractStartTime = param.contractStartTime;
leaseInfo.contractEndTime = param.contractEndTime;
leaseInfo.price = param.price;//单价
leaseInfo.area = param.leasedArea;//租赁面积
leaseInfo.address = param.leaseAddress;
leaseInfo.rentPayment = [
{
payStartTime:param.payStartTime,
payLong:param.payLong
}
];
await leaseInfo.save();
} else {
let addLease = {
uscc:param.uscc,
enterpriseName:param.name,
contractStartTime:param.contractStartTime,
contractEndTime:param.contractEndTime,
price:param.price,//单价
area:param.leasedArea,//租赁面积
rentPayment : [
{
payStartTime:param.payStartTime,
payLong:param.payLong
}
],
address:param.leaseAddress,//地址
};
await leaseData.findOnceData(addLease);
}
return {isSuccess:true};
}
......@@ -79,6 +125,15 @@ export async function updateRegisterEnterprise(uscc:string, param) {
throw new BizError(ERRORENUM.不能修改过期任务数据, `修改新注册企业的表单 ${uscc} 违法操作`);
}
if (param.jiaSu == 1 || param.jiaSu == 2) {
//判断
if (param.jiaSu == 1 && !param.jiaSuZiZhi) {
throw new BizError(ERRORENUM.参数错误, "加速企业缺失加速资质");
} else if (param.jiaSu == 1 && param.jiaSuZiZhi.indexOf(configEnum.JIASUZIZHI.其他) > -1 && !param.jiaSuZiZhiDesc) {
throw new BizError(ERRORENUM.参数错误, "加速企业的加速资质选了其他但是没填写内容");
}
} else throw new BizError(ERRORENUM.参数错误, "加速企业不符合1或2", param.jiaSu);
/**修改字段 */
let changeList = checkChange(param, dataBaseInfo);
if ( !changeList.length ) throw new BizError(ERRORENUM.数据无更新, `${param.uscc}数据无更新`);
......@@ -88,6 +143,23 @@ export async function updateRegisterEnterprise(uscc:string, param) {
await dataBaseInfo.save();
let leaseInfo = await leaseData.findOnceData({uscc:param.uscc});
if (leaseInfo && leaseInfo.uscc) { //
leaseInfo.enterpriseName = param.name;
leaseInfo.contractStartTime = param.contractStartTime;
leaseInfo.contractEndTime = param.contractEndTime;
leaseInfo.price = param.price;//单价
leaseInfo.area = param.leasedArea;//租赁面积
leaseInfo.address = param.leaseAddress;
leaseInfo.rentPayment = [
{
payStartTime:param.payStartTime,
payLong:param.payLong
}
];
await leaseInfo.save();
}
return {isSuccess:true};
}
......@@ -112,6 +184,15 @@ export async function moveInEnterprise(uscc:string, param) {
let dataBaseInfo = await enterpriseData.findEnterpriseByUscc(param.uscc);
if ( dataBaseInfo && dataBaseInfo.uscc && dataBaseInfo.state != configEnum.FUHUASTATE.迁出) throw new BizError(ERRORENUM.该企业已存在, `${param.uscc}已经在库中存在`);
if (param.jiaSu == 1 || param.jiaSu == 2) {
//判断
if (param.jiaSu == 1 && !param.jiaSuZiZhi) {
throw new BizError(ERRORENUM.参数错误, "加速企业缺失加速资质");
} else if (param.jiaSu == 1 && param.jiaSuZiZhi.indexOf(configEnum.JIASUZIZHI.其他) > -1 && !param.jiaSuZiZhiDesc) {
throw new BizError(ERRORENUM.参数错误, "加速企业的加速资质选了其他但是没填写内容");
}
} else throw new BizError(ERRORENUM.参数错误, "加速企业不符合1或2", param.jiaSu);
const TaskId = taskTool.getTaskId(uscc);
if ( dataBaseInfo && dataBaseInfo.state && dataBaseInfo.state == configEnum.FUHUASTATE.迁出) {
......@@ -145,6 +226,41 @@ export async function moveInEnterprise(uscc:string, param) {
await enterpriseData.createEnterprise(uscc, TaskId, param);
}
//2025新加内容
let leaseInfo = await leaseData.findOnceData({uscc:param});
if (leaseInfo && leaseInfo.uscc) { //
leaseInfo.enterpriseName = param.name;
leaseInfo.contractStartTime = param.contractStartTime;
leaseInfo.contractEndTime = param.contractEndTime;
leaseInfo.price = param.price;//单价
leaseInfo.area = param.leasedArea;//租赁面积
leaseInfo.address = param.leaseAddress;
leaseInfo.rentPayment = [
{
payStartTime:param.payStartTime,
payLong:param.payLong
}
];
await leaseInfo.save();
} else {
let addLease = {
uscc:param.uscc,
enterpriseName:param.name,
contractStartTime:param.contractStartTime,
contractEndTime:param.contractEndTime,
price:param.price,//单价
area:param.leasedArea,//租赁面积
rentPayment : [
{
payStartTime:param.payStartTime,
payLong:param.payLong
}
],
address:param.leaseAddress,//地址
};
await leaseData.findOnceData(addLease);
}
return {isSuccess:true};
}
......@@ -178,6 +294,16 @@ export async function updateMoveInEnterprise(uscc:string, param) {
throw new BizError(ERRORENUM.不能修改过期任务数据, `修改新注册企业的表单 ${uscc} 违法操作`);
}
if (param.jiaSu == 1 || param.jiaSu == 2) {
//判断
if (param.jiaSu == 1 && !param.jiaSuZiZhi) {
throw new BizError(ERRORENUM.参数错误, "加速企业缺失加速资质");
} else if (param.jiaSu == 1 && param.jiaSuZiZhi.indexOf(configEnum.JIASUZIZHI.其他) > -1 && !param.jiaSuZiZhiDesc) {
throw new BizError(ERRORENUM.参数错误, "加速企业的加速资质选了其他但是没填写内容");
}
} else throw new BizError(ERRORENUM.参数错误, "加速企业不符合1或2", param.jiaSu);
/**修改数据 */
let changeList = checkChange(param, dataBaseInfo);
if ( !changeList.length ) throw new BizError(ERRORENUM.数据无更新, `${param.uscc}数据无更新`);
......@@ -186,6 +312,23 @@ export async function updateMoveInEnterprise(uscc:string, param) {
});
await dataBaseInfo.save();
let leaseInfo = await leaseData.findOnceData({uscc:param.uscc});
if (leaseInfo && leaseInfo.uscc) { //
leaseInfo.enterpriseName = param.name;
leaseInfo.contractStartTime = param.contractStartTime;
leaseInfo.contractEndTime = param.contractEndTime;
leaseInfo.price = param.price;//单价
leaseInfo.area = param.leasedArea;//租赁面积
leaseInfo.address = param.leaseAddress;
leaseInfo.rentPayment = [
{
payStartTime:param.payStartTime,
payLong:param.payLong
}
];
await leaseInfo.save();
}
return {isSuccess:true};
}
......@@ -207,6 +350,15 @@ export async function getEnterpriseByDraftId(draftId:string) {
if (dataBaseInfo.isCreate) data = extractData(splitResultConfig.EnterpriseInfoConfig, dataBaseInfo, false);
else data = extractData(splitResultConfig.EnterpriseMoveInInfoConfig, dataBaseInfo, false);
let leaseInfo = await leaseData.findOnceData({uscc:dataBaseInfo.uscc});
data.price = leaseInfo.price;
data.contractStartTime = leaseInfo.contractStartTime;
data.contractEndTime = leaseInfo.contractEndTime;
let rentPaymentInfo = leaseInfo.rentPayment[0];
data.payStartTime = rentPaymentInfo.payStartTime;
data.payLong = rentPaymentInfo.payLong;
return {data};
}
......
/**
* 重点企业
*/
import moment = require("moment");
import { ENTERPRISECHANGETYPE } from "../../../config/enum";
import * as dynamicsData from "../../../data/enterprise/dynamics";
import * as enterpriseData from "../../../data/enterprise/enterprise";
import * as labelData from "../../../data/label";
import { changeEnumValue } from "../../../util/verificationEnum";
import { LABELGOAL } from "../../../config/enum/labelEnum";
import { BizError } from "../../../util/bizError";
import { ERRORENUM } from "../../../config/errorEnum";
export async function keynoteDynamicsHomeList(fuHuaQiUscc:string) {
let notRedCount = await dynamicsData.findCountByParam({fuHuaQiUscc, isRead:false});
let dbList = await dynamicsData.findByParam({fuHuaQiUscc});
let dataList = [];
dbList.forEach(item => {
let addInfo = {
changeType:changeEnumValue(ENTERPRISECHANGETYPE, item.changeType),
content:item.content,
id:item.id
};
dataList.push(addInfo);
});
let followCount = await enterpriseData.findEnterpriseCount({fuHuaQiUscc, follow:true});
return {dataList, notRedCount, followCount}
}
export async function keynoteDynamicsList(fuHuaQiUscc:string, type:number) {
let param:any = {};
if (type == 1) {
param.isRead = true;
} else {
param.isRead = false;
}
let dbList = await dynamicsData.findByParam({fuHuaQiUscc});
let dataList = [];
dbList.forEach(item => {
let addInfo = {
enterpriseName:item.enterpriseName,
changeType:changeEnumValue(ENTERPRISECHANGETYPE, item.changeType),
id:item.id,
uscc:item.uscc
};
dataList.push(addInfo);
});
return {dataList}
}
export async function keynoteDynamicsEnterprise( uscc:string) {
let dbList = await dynamicsData.findByParam({uscc});
let enterpriseName = "";
let dataList = [];
dbList.forEach(item => {
enterpriseName = item.enterpriseName;
let addInfo = {
changeType:changeEnumValue(ENTERPRISECHANGETYPE, item.changeType),
oldContent:item.oldContent || "",
newContent:item.content || "",
time:moment(item.createTime)
};
dataList.push(addInfo);
});
return {dataList, enterpriseName}
}
export async function keynoteList(fuHuaQiUscc:string, str:string, labels) {
let param:any = {fuHuaQiUscc};
if (str) param.name = {"$regex":str}
let dbList = await enterpriseData.findEnterpriseList(param);
let labelMap = await labelData.getLabelNamMap(LABELGOAL.企业);
let dynamicsList = await dynamicsData.findByParam({fuHuaQiUscc, isRead:false});
let dynamicsMap = {};
dynamicsList.forEach(item => {
if (!dynamicsMap[item.uscc]) dynamicsMap[item.uscc] = 0;
dynamicsMap[item.uscc] += 1;
})
let dataList = [];
dbList.forEach(item => {
let label = [];
if (item.labels) {
item.labels.forEach(labelItem => {
if (labelItem.state) {
label.push(labelMap[labelItem.labelId]);
}
})
}
dataList.push({
enterpriseName:item.name,
label,
isFollow:item.follow,
dynamicsCount:dynamicsMap[item.uscc]
});
});
return {dataList}
}
export async function changeEnterpriseFollow(uscc:string, followState) {
let enterpriseInfo = await enterpriseData.findEnterpriseByUscc(uscc);
if (!enterpriseInfo) throw new BizError(ERRORENUM.目标数据不存在);
enterpriseInfo.follow = followState;
await enterpriseInfo.save();
return {isSuccess:true}
}
\ No newline at end of file
......@@ -23,6 +23,7 @@ import { findBusinessDataByUsccAndYear } from "../../../data/enterprise/quarterT
import { selectRepleishData } from "../../../data/enterprise/replenish";
import { enterpriseLabelEvent } from "../../label";
import { findFuHuaQiByUSCC } from "../../../data/fuHuaQi/fuhuaqi";
import * as leaseData from "../../../data/lease";
import { LABELEVENT } from "../../../config/enum/labelEnum";
......@@ -399,6 +400,15 @@ export async function replenishMyEnterpriseInPutInfo(fuHuaQiUscc:string, param)
let dataBaseInfo = await enterpriseData.findEnterpriseByUscc(param.uscc);
if ( dataBaseInfo && dataBaseInfo.uscc && dataBaseInfo.state != configEnum.FUHUASTATE.迁出) throw new BizError(ERRORENUM.该企业已存在, `${param.uscc}已经在库中存在`);
if (param.jiaSu == 1 || param.jiaSu == 2) {
//判断
if (param.jiaSu == 1 && !param.jiaSuZiZhi) {
throw new BizError(ERRORENUM.参数错误, "加速企业缺失加速资质");
} else if (param.jiaSu == 1 && param.jiaSuZiZhi.indexOf(configEnum.JIASUZIZHI.其他) > -1 && !param.jiaSuZiZhiDesc) {
throw new BizError(ERRORENUM.参数错误, "加速企业的加速资质选了其他但是没填写内容");
}
} else throw new BizError(ERRORENUM.参数错误, "加速企业不符合1或2", param.jiaSu);
/**添加新注册企业标识 */
if ( dataBaseInfo && dataBaseInfo.state && dataBaseInfo.state == configEnum.FUHUASTATE.迁出) {
dataBaseInfo.fuHuaQiUscc = fuHuaQiUscc;
......@@ -436,6 +446,43 @@ export async function replenishMyEnterpriseInPutInfo(fuHuaQiUscc:string, param)
let enterpriseInfo = await enterpriseData.findEnterpriseByUscc(param.uscc);
await enterpriseLabelEvent(enterpriseInfo, LABELEVENT.入孵, fuHuaQiInfo.operationName);
//2025新加内容
let leaseInfo = await leaseData.findOnceData({uscc:param});
if (leaseInfo && leaseInfo.uscc) { //
leaseInfo.enterpriseName = param.name;
leaseInfo.contractStartTime = param.contractStartTime;
leaseInfo.contractEndTime = param.contractEndTime;
leaseInfo.price = param.price;//单价
leaseInfo.area = param.leasedArea;//租赁面积
leaseInfo.address = param.leaseAddress;
leaseInfo.rentPayment = [
{
payStartTime:param.payStartTime,
payLong:param.payLong
}
];
await leaseInfo.save();
} else {
let addLease = {
uscc:param.uscc,
enterpriseName:param.name,
contractStartTime:param.contractStartTime,
contractEndTime:param.contractEndTime,
price:param.price,//单价
area:param.leasedArea,//租赁面积
rentPayment : [
{
payStartTime:param.payStartTime,
payLong:param.payLong
}
],
address:param.leaseAddress,//地址
};
await leaseData.findOnceData(addLease);
}
return {isSuccess:true};
}
......@@ -463,6 +510,15 @@ export async function replenishMyEnterpriseCreateInfo(fuHuaQiUscc:string, param)
param.isCreate = true;//标识此次操作是否是迁入企业并不是新注册企业
param.state = configEnum.FUHUASTATE.实体孵化;
if (param.jiaSu == 1 || param.jiaSu == 2) {
//判断
if (param.jiaSu == 1 && !param.jiaSuZiZhi) {
throw new BizError(ERRORENUM.参数错误, "加速企业缺失加速资质");
} else if (param.jiaSu == 1 && param.jiaSuZiZhi.indexOf(configEnum.JIASUZIZHI.其他) > -1 && !param.jiaSuZiZhiDesc) {
throw new BizError(ERRORENUM.参数错误, "加速企业的加速资质选了其他但是没填写内容");
}
} else throw new BizError(ERRORENUM.参数错误, "加速企业不符合1或2", param.jiaSu);
await enterpriseData.replenishEnterpriseData(fuHuaQiUscc, param);
addFuHuaQiPoint(fuHuaQiUscc, FUHUAQINODEENUM.我的企业_补录企业, param.uscc, '新注册' );
......@@ -478,6 +534,42 @@ export async function replenishMyEnterpriseCreateInfo(fuHuaQiUscc:string, param)
let enterpriseInfo = await enterpriseData.findEnterpriseByUscc(param.uscc);
await enterpriseLabelEvent(enterpriseInfo, LABELEVENT.入孵, fuHuaQiInfo.operationName);
//2025新加内容
let leaseInfo = await leaseData.findOnceData({uscc:param});
if (leaseInfo && leaseInfo.uscc) { //
leaseInfo.enterpriseName = param.name;
leaseInfo.contractStartTime = param.contractStartTime;
leaseInfo.contractEndTime = param.contractEndTime;
leaseInfo.price = param.price;//单价
leaseInfo.area = param.leasedArea;//租赁面积
leaseInfo.address = param.leaseAddress;
leaseInfo.rentPayment = [
{
payStartTime:param.payStartTime,
payLong:param.payLong
}
];
await leaseInfo.save();
} else {
let addLease = {
uscc:param.uscc,
enterpriseName:param.name,
contractStartTime:param.contractStartTime,
contractEndTime:param.contractEndTime,
price:param.price,//单价
area:param.leasedArea,//租赁面积
rentPayment : [
{
payStartTime:param.payStartTime,
payLong:param.payLong
}
],
address:param.leaseAddress,//地址
};
await leaseData.findOnceData(addLease);
}
return {isSuccess:true};
}
......
......@@ -614,3 +614,25 @@ export async function gwhVisitLogList(year:number) {
return {dataList}
}
export async function gwhVisitHomeStatis() {
let startMs = moment().startOf("m").valueOf();
let shengYuCount = await visitData.findCountByParam({ visitTime:{"$gt":startMs}, state:VISITSTATE.走访安排});
let leiJiCount = await visitData.findCountByParam({ visitTime:{"$gt":startMs}, state:{"$ne":VISITSTATE.走访安排}});
let thisMonthCount = shengYuCount + leiJiCount;
let rate = 0;
if (leiJiCount && thisMonthCount) {
rate = Math.ceil(leiJiCount / thisMonthCount * 100)
}
let dataInfo = {
shengYuCount,
leiJiCount,
rate
};
return {dataInfo};
}
\ No newline at end of file
......@@ -99,6 +99,16 @@ export const EnterpriseParamFormConfig = {
leasedArea:"Number",//租赁面积(平方米)
mainBusiness:"String",//主营业务
draftId:"String",//草稿id
jiaSu:{type:"Number"},//加速企业 是=1 否 =2
jiaSuZiZhi:{type:"[Number]", notMustHave:true},//加速资质
jiaSuZiZhiDesc:{type:"String", notMustHave:true},//加速资质其他
leaseAddress:{type:"String"},//租赁地址
price:{type:"Number"},//单价
contractStartTime:{type:"Number"},//合同开始时间
contractEndTime:{type:"Number"},//合同结束时间
payStartTime:{type:"Number"},//租金缴纳时间
payLong:{type:"Number"},//缴纳时长
}
......@@ -121,6 +131,16 @@ export const EnterpriseInPutParamFormConfig = {
timeOfImmigration:"Number",//迁入时间
mainBusiness:"String",//主营业务
draftId:"String",//草稿id
jiaSu:{type:"Number"},//加速企业 是=1 否 =2
jiaSuZiZhi:{type:"[Number]", notMustHave:true},//加速资质
jiaSuZiZhiDesc:{type:"String", notMustHave:true},//加速资质其他
leaseAddress:{type:"String"},//租赁地址
price:{type:"Number"},//单价
contractStartTime:{type:"Number"},//合同开始时间
contractEndTime:{type:"Number"},//合同结束时间
payStartTime:{type:"Number"},//租金缴纳时间
payLong:{type:"Number"},//缴纳时长
}
......@@ -140,6 +160,16 @@ export const RegisterEnterpriseParamConfig = {
operatingAddress:{type:"Address"},//经营地址 2.1修改
leasedArea:{type:"Number"},//租赁面积(平方米)
mainBusiness:{type:"String"},//主营业务
jiaSu:{type:"Number"},//加速企业 是=1 否 =2
jiaSuZiZhi:{type:"[Number]", notMustHave:true},//加速资质
jiaSuZiZhiDesc:{type:"String", notMustHave:true},//加速资质其他
leaseAddress:{type:"String"},//租赁地址
price:{type:"Number"},//单价
contractStartTime:{type:"Number"},//合同开始时间
contractEndTime:{type:"Number"},//合同结束时间
payStartTime:{type:"Number"},//租金缴纳时间
payLong:{type:"Number"},//缴纳时长
};
......@@ -161,6 +191,16 @@ export const MoveInEnterpriseParamConfig = {
operatingAddress:"Address",//经营地址 2.1修改
leasedArea:"Number",//租赁面积(平方米)
mainBusiness:"String",//主营业务
jiaSu:{type:"Number"},//加速企业 是=1 否 =2
jiaSuZiZhi:{type:"[Number]", notMustHave:true},//加速资质
jiaSuZiZhiDesc:{type:"String", notMustHave:true},//加速资质其他
leaseAddress:{type:"String"},//租赁地址
price:{type:"Number"},//单价
contractStartTime:{type:"Number"},//合同开始时间
contractEndTime:{type:"Number"},//合同结束时间
payStartTime:{type:"Number"},//租金缴纳时间
payLong:{type:"Number"},//缴纳时长
};
......@@ -251,6 +291,16 @@ export const ReplenishMyEnterpriseInPutDataConfig = {
leasedArea:{type:"Number"},//租赁面积(平方米)
timeOfImmigration:{type:"Number"},//迁入时间
oldLogonAddress:{type:"Address"},//迁入前注册地址
jiaSu:{type:"Number"},//加速企业 是=1 否 =2
jiaSuZiZhi:{type:"[Number]", notMustHave:true},//加速资质
jiaSuZiZhiDesc:{type:"String", notMustHave:true},//加速资质其他
leaseAddress:{type:"String"},//租赁地址
price:{type:"Number"},//单价
contractStartTime:{type:"Number"},//合同开始时间
contractEndTime:{type:"Number"},//合同结束时间
payStartTime:{type:"Number"},//租金缴纳时间
payLong:{type:"Number"},//缴纳时长
}
......@@ -270,6 +320,16 @@ export const ReplenishMyEnterpriseCreateDataConfig = {
logonAddress:{type:"Address"},//注册地址
operatingAddress:{type:"Address"},//经营地址
leasedArea:{type:"Number"},//租赁面积(平方米)
jiaSu:{type:"Number"},//加速企业 是=1 否 =2
jiaSuZiZhi:{type:"[Number]", notMustHave:true},//加速资质
jiaSuZiZhiDesc:{type:"String", notMustHave:true},//加速资质其他
leaseAddress:{type:"String"},//租赁地址
price:{type:"Number"},//单价
contractStartTime:{type:"Number"},//合同开始时间
contractEndTime:{type:"Number"},//合同结束时间
payStartTime:{type:"Number"},//租金缴纳时间
payLong:{type:"Number"},//缴纳时长
}
......
......@@ -599,3 +599,22 @@ export enum ACTIVITYLABEL {
政策,
人才服务
}
export enum ENTERPRISECHANGETYPE {
注册地址变更 = 1,
高新技术认定,
企业认定,
股东
}
export enum JIASUZIZHI {
区级毕业 = 1,
市级毕业,
高新技术,
专精特新,
小巨人,
融资超1000,
连续两年营收1000万以上,
其他
}
\ No newline at end of file
......@@ -51,6 +51,10 @@ export const EnterpriseInfoConfig = {
operatingAddress:{key:"经营地址"},//
leasedArea:{key:"租赁面积(平方米)"},
mainBusiness:{key:"主营业务"},//主营业务
jiaSu:{key:"是否是加速企业"},//
jiaSuZiZhi:{key:"加速资质"},//
jiaSuZiZhiDesc:{key:"选其他时"},//
leaseAddress:{key:"租赁地址"},//
};
......@@ -73,6 +77,10 @@ export const EnterpriseMoveInInfoConfig = {
timeOfImmigration:{key:"迁入时间", changeDate:true},//
oldLogonAddress:{key:"迁入前注册地址"},//
mainBusiness:{key:"主营业务"},//主营业务
jiaSu:{key:"是否是加速企业"},//
jiaSuZiZhi:{key:"加速资质"},//
jiaSuZiZhiDesc:{key:"选其他时"},//
leaseAddress:{key:"租赁地址"},//
};
......
import {Schema} from 'mongoose';
import { baseDB } from '../../db/mongo/dbInit';
import { BUSINESSDATATYPE } from '../../config/enum';
const dynamicsSchema = new Schema({
id:String,
uscc:{type:String, index:true},//
enterpriseName:String,//企业名称
fuHuaQiUscc:String,
changeType:Number, //ENTERPRISECHANGETYPE
content:String,
oldContent:String,//变更前信息
createTime:Number,
isRead:{type:Boolean, default:false}
});
var dynamicsModel;
export function initModel(){
dynamicsModel = baseDB.model('dynamics', dynamicsSchema);
dynamicsModel.selectOnceData = async function (paramater:object) {
let selectInfo = await dynamicsModel.findOne(paramater).exec();
if (selectInfo) {
if (!selectInfo.runSave) {
selectInfo.runSave = selectInfo.save;
selectInfo.save = save.bind(selectInfo)
}
}
return selectInfo;
}
}
export async function save(throwError=false) {
if (!this.isModified()) return;
await this.runSave({validateBeforeSave:false}).catch(err=>{
console.log(err);
});
}
export async function findOne(param) {
return await dynamicsModel.selectOnceData(param);
}
export async function findByParam(param) {
return await dynamicsModel.find(param);
}
export async function findCountByParam(param) {
return await dynamicsModel.find(param).countDocuments();
}
export async function createDataByParam(param) {
return await dynamicsModel.create(param);
}
export async function removeOneData(id:string) {
return await dynamicsModel.deleteOne({id});
}
\ No newline at end of file
......@@ -140,9 +140,11 @@ const enterpriseSchema = new Schema({
oldLng:String,//经度
oldLat:String,//纬度
follow:Boolean,//是否关注
leaseInfo:{type:leaseScheme, default:{}},//租赁信息
jiaSu:{type:Boolean, default:false},//是否是加速企业
jiaSuZiZhi:{type:[Number], default:[]},//加速资质
jiaSuZiZhiDesc:String,//选其他时
leaseAddress:String,//租赁地址
});
var enterpriseModel;
......
......@@ -44,6 +44,7 @@ import * as visitModel from "../../data/fuHuaQi/visit";
import * as demandModel from "../../data/fuHuaQi/demand";
import * as trackModel from "../../data/fuHuaQi/track";
import * as activityModel from "../../data/activity";
import * as dynamicsModel from "../../data/enterprise/dynamics";
......@@ -92,4 +93,6 @@ export async function initTable() {
demandModel.initModel();
trackModel.initModel();
activityModel.initModel();
dynamicsModel.initModel();
}
\ No newline at end of file
......@@ -15,6 +15,9 @@ export function setRouter(httpServer) {
httpServer.post('/guanweihui/visit/update/state', checkFuHuaQiToken, asyncHandler(gwh_visit_update_state));
httpServer.post('/guanweihui/visit/log/statis', checkFuHuaQiToken, asyncHandler(gwh_visit_log_statis));
httpServer.post('/guanweihui/visit/log/list', checkFuHuaQiToken, asyncHandler(gwh_visit_log_list));
//首页
httpServer.post('/guanweihui/visit/home/statis', checkFuHuaQiToken, asyncHandler(gwh_visit_home_statis));//新加
}
......@@ -81,3 +84,9 @@ async function gwh_visit_log_list(req, res) {
let userInfo = await visitBiz.gwhVisitLogList( year);
res.success(userInfo);
}
async function gwh_visit_home_statis(req, res) {
let userInfo = await visitBiz.gwhVisitHomeStatis();
res.success(userInfo);
}
\ No newline at end of file
......@@ -16,19 +16,9 @@ export function setRouter(httpServer) {
httpServer.post('/fuhuaqi/business/deletereport', checkFuHuaQiToken, asyncHandler(deletereportBusiness));
httpServer.post('/fuhuaqi/business/select', checkFuHuaQiToken, asyncHandler(selectBusiness));
//重点企业
// httpServer.post('/fuhuaqi/keynote/dynamics/list', checkFuHuaQiToken, asyncHandler(keynote_dynamics_list));//动态
// httpServer.post('/fuhuaqi/keynote/dynamics/unread', checkFuHuaQiToken, asyncHandler(keynote_dynamics_unread));//未读
// httpServer.post('/fuhuaqi/keynote/dynamics/read', checkFuHuaQiToken, asyncHandler(keynote_dynamics_read));//已读
// httpServer.post('/fuhuaqi/keynote/dynamics/enterprise', checkFuHuaQiToken, asyncHandler(keynote_dynamics_enterprise));//企业动态
// httpServer.post('/fuhuaqi/keynote/list', checkFuHuaQiToken, asyncHandler(keynote_list));//企业列表
// httpServer.post('/fuhuaqi/keynote/add', checkFuHuaQiToken, asyncHandler(keynote_add));//添加企业
// httpServer.post('/fuhuaqi/keynote/del', checkFuHuaQiToken, asyncHandler(keynote_add));//取消重点企业
}
/**
* 展示孵化器经营数据
* @param req
......
/**
* 小程序端 孵化器入口 月度报表功能路由
* 小程序端 孵化器入口 月度报表功能路由(出租率)
*/
import * as asyncHandler from 'express-async-handler';
......
......@@ -4,6 +4,7 @@
import * as asyncHandler from 'express-async-handler';
import * as myEnterpriseBiz from '../../biz/mobileFuHuaQi/enterprise/myEnterprise';
import * as keynoteBiz from '../../biz/mobileFuHuaQi/enterprise/keynote';
import { checkFuHuaQiToken } from '../../middleware/user';
import { eccReqParamater } from '../../util/verificationParam';
import { FUHUASTATE } from '../../config/enum';
......@@ -25,8 +26,68 @@ export function setRouter(httpServer) {
httpServer.post('/fuhuaqi/myenterprise/teaminfo/select', checkFuHuaQiToken, asyncHandler(myEnterpriseTeamInfo));
// httpServer.post('/fuhuaqi/myenterprise/team/info', checkFuHuaQiToken, asyncHandler(myEnterpriseTeamInfo));
httpServer.post('/fuhuaqi/myenterprise/businessdata/select', checkFuHuaQiToken, asyncHandler(myEnterpriseBusinessData));
//重点企业
httpServer.post('/fuhuaqi/keynote/dynamics/homelist', checkFuHuaQiToken, asyncHandler(keynote_dynamics_home_list));//动态
httpServer.post('/fuhuaqi/keynote/dynamics/list', checkFuHuaQiToken, asyncHandler(keynote_dynamics_list));//未读
httpServer.post('/fuhuaqi/keynote/dynamics/enterprise', checkFuHuaQiToken, asyncHandler(keynote_dynamics_enterprise));//企业动态
httpServer.post('/fuhuaqi/keynote/list', checkFuHuaQiToken, asyncHandler(keynote_list));//企业列表
httpServer.post('/fuhuaqi/keynote/add', checkFuHuaQiToken, asyncHandler(keynote_add));//添加企业
httpServer.post('/fuhuaqi/keynote/del', checkFuHuaQiToken, asyncHandler(keynote_del));//取消重点企业
}
async function keynote_dynamics_home_list(req, res) {
const Uscc = req.headers.uscc;
let result = await keynoteBiz.keynoteDynamicsHomeList(Uscc);
res.success(result);
}
async function keynote_dynamics_list(req, res) {
const Uscc = req.headers.uscc;
let reqConf = {type: 'Number' };
let { type } = eccReqParamater(reqConf, req.body);
let result = await keynoteBiz.keynoteDynamicsList(Uscc, type);
res.success(result);
}
async function keynote_dynamics_enterprise(req, res) {
let reqConf = {uscc: 'String' };
let { uscc } = eccReqParamater(reqConf, req.body);
let result = await keynoteBiz.keynoteDynamicsEnterprise( uscc);
res.success(result);
}
async function keynote_list(req, res) {
let reqConf = {label: '[String]' , selectStr: 'String'};
let { label, selectStr } = eccReqParamater(reqConf, req.body,["label", "selectStr"]);
const FuHuaQiUscc = req.headers.uscc;
let result = await keynoteBiz.keynoteList( FuHuaQiUscc, selectStr, label);
res.success(result);
}
async function keynote_add(req, res) {
let reqConf = {uscc: 'String'};
let { uscc } = eccReqParamater(reqConf, req.body);
const FuHuaQiUscc = req.headers.uscc;
let result = await keynoteBiz.changeEnterpriseFollow( uscc, true);
res.success(result);
}
async function keynote_del(req, res) {
let reqConf = {uscc: 'String'};
let { uscc } = eccReqParamater(reqConf, req.body);
const FuHuaQiUscc = req.headers.uscc;
let result = await keynoteBiz.changeEnterpriseFollow( uscc, false);
res.success(result);
}
......
......@@ -3,7 +3,7 @@
*/
import * as asyncHandler from 'express-async-handler';
import { ZLSTATISTYPE, CONTRACTTYPE, RENTTYPE, ZLSTATETYPE, VISITSTATE, VISITENTERPRISETYPE, VISITDEMAND, RESEARCHTYPE, ACTIVITYLABEL, FUHUAQILV, INSTITUTIONALNATURE, FUHUAINDUSTRY, INDUSTRY, FUHUAQILNVESTMENTSTYLE, OPERATIONMODEL, TEAM, DEGREE, FINANCINGROUNDS, INSIDESTATE, VIRTUALCAUSE, MOVEOUTTYPE, MOVEOUTCAUSECLIENT, MOVEOUTCAUSENOTCLIENT, MOVEOUTTRACE, ENTERPRISETEAM, LISTINGSITUATION, BUSINESSDATATYPE, COOPERATIONMODE, SPECIALITY, TEACHERLV, ZJBEYONDLAYOUTOPERATIONMODE, CYCXFX, CYCSRBJ, FUHUAQICUSTOMTASKTYPE } from '../config/enum';
import { ZLSTATISTYPE, CONTRACTTYPE, RENTTYPE, ZLSTATETYPE, VISITSTATE, VISITENTERPRISETYPE, VISITDEMAND, RESEARCHTYPE, JIASUZIZHI, ENTERPRISECHANGETYPE, ACTIVITYLABEL, FUHUAQILV, INSTITUTIONALNATURE, FUHUAINDUSTRY, INDUSTRY, FUHUAQILNVESTMENTSTYLE, OPERATIONMODEL, TEAM, DEGREE, FINANCINGROUNDS, INSIDESTATE, VIRTUALCAUSE, MOVEOUTTYPE, MOVEOUTCAUSECLIENT, MOVEOUTCAUSENOTCLIENT, MOVEOUTTRACE, ENTERPRISETEAM, LISTINGSITUATION, BUSINESSDATATYPE, COOPERATIONMODE, SPECIALITY, TEACHERLV, ZJBEYONDLAYOUTOPERATIONMODE, CYCXFX, CYCSRBJ, FUHUAQICUSTOMTASKTYPE } from '../config/enum';
import { selectLabelList } from '../data/label';
import { GUANWEIHUIMANANGENTERPRISELABEL, LABELTYPE, LABELGOAL, FHQSYSTEMLABEL } from '../config/enum/labelEnum';
import { NOTZHIBUTYPEENUM, ZHIBUTYPEENUM } from '../config/enum/dangJianEnum';
......@@ -58,6 +58,37 @@ export function setRouter(httpServer) {
httpServer.post('/public/visitdemand', asyncHandler(visitdemand) );
httpServer.post('/public/researchtype', asyncHandler(researchtype) );
httpServer.post('/public/activitylabel', asyncHandler(activitylabel) );
httpServer.post('/public/enterprisechangetype', asyncHandler(enterprisechangetype) );
httpServer.post('/public/jiasuzizhi', asyncHandler(jiasuzizhi) );
}
async function enterprisechangetype(req, res) {
let dataList = [];
for (let key in ENTERPRISECHANGETYPE) {
let anyKey:any = key;
if (isNaN(anyKey)) {
let keyStr = key;
dataList.push({key:keyStr, value:ENTERPRISECHANGETYPE[key]});
}
}
res.success({dataList});
}
async function jiasuzizhi(req, res) {
let dataList = [];
for (let key in JIASUZIZHI) {
let anyKey:any = key;
if (isNaN(anyKey)) {
let keyStr = key;
dataList.push({key:keyStr, value:JIASUZIZHI[key]});
}
}
res.success({dataList});
}
......
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