Commit d4102f4d by lixinming

no message

parent 611857d2
......@@ -3,11 +3,14 @@ import * as configEnum from "../config/enum";
import * as clientConfigEnum from "../config/clientEnum";
import { extractData } from "../util/piecemeal";
import * as splitResultConfig from "../config/splitResultConfig";
import { selectData, selectManyTableData } from "../middleware/databaseSuccess";
import { operationalData, selectData, selectManyTableData } from "../middleware/databaseSuccess";
import { OPERATIONALDATATYPE, TABLENAME } from "../config/dbEnum";
import moment = require("moment");
import * as verificationEnumTools from "../util/verificationEnum";
import { getStudent } from "./partyMember";
import { getRandomId, md5PwdStr } from "../tools/system";
import { eccFormParam } from "../util/verificationParam";
import { CreateFZDXConfig, CreateRDJJFZConfig, CreateRDSQConfig, CreateYBDYConfig, CreateZSDYConfig } from "../config/eccFormParamConfig";
const ColorConfig = {
1:"#C62A23",
......@@ -48,7 +51,6 @@ export async function homeData() {
scoreCount += score.currentScore;
});
let branchCount = 4;
let partyNoticeParam = {};
......@@ -151,14 +153,7 @@ export async function partymemberTypeList(bId) {
export async function partymemberSublist(bId:number, name:string) {
let branchName = verificationEnumTools.changeEnumValue(configEnum.BRANCHNAME, bId);
let partyMemberNum = await selectData(OPERATIONALDATATYPE.查询数据量, TABLENAME.党员基础信息表, {bId:{"%like%":bId}}, []); //党员总数
let partyMemberCount = {
key: branchName + "目前党员人数",
value: partyMemberNum || 0
};
export async function partymemberSublist(bId:number, name:string, duration:number, memberType:number, departmentName:number ) {
let param = {bId:{"%like%":bId}}
if (name) param["name"] = {"%like%":name};
let clomun = ["pmId", "name", "etId", "partyPositionsName", "partyJoiningTime", "departmentName"];
......@@ -184,5 +179,218 @@ export async function partymemberSublist(bId:number, name:string) {
nameList.push(changeData);
})
return {nameList, partyMemberCount};
return {nameList};
}
/**
* 添加党员信息
* @param memberType
* @param param
* @returns
*/
export async function addMember(bId, memberType:number, param) {
let addInfo:any = {
pmId:getRandomId("member"),
bId,
etId:memberType,
isAdmin:0,
loginId:param.phone,
};//添加参数
for (let key in param) {
addInfo[key] = param[key];
}
const FuncName = "添加党员";
switch (memberType) {
case configEnum.ENTRYTYPE.正式党员:
eccFormParam(FuncName, CreateZSDYConfig, param);
addInfo.partyJoiningTime =moment(param.partyJoiningTime).format("YYYY-MM-DD");
param.partyPositionsName.forEach(itemId => {
verificationEnumTools.eccEnumValue(FuncName, "partyPositionsName", configEnum.PARTYPOSITIONS, itemId);
});
addInfo.partyPositionsName = JSON.stringify(param.partyPositionsName);
break;
case configEnum.ENTRYTYPE.入党申请:
eccFormParam(FuncName, CreateRDSQConfig, param);
addInfo.askForTime = moment(param.askForTime).format("YYYY-MM-DD");
addInfo.talkTime = moment(param.talkTime).format("YYYY-MM-DD");
break;
case configEnum.ENTRYTYPE.入党积极分子:
eccFormParam(FuncName, CreateRDJJFZConfig, param);
addInfo.askForTime = moment(param.askForTime).format("YYYY-MM-DD");
addInfo.listedAsActivistsTime = moment(param.listedAsActivistsTime).format("YYYY-MM-DD");
break;
case configEnum.ENTRYTYPE.发展对象:
eccFormParam(FuncName, CreateFZDXConfig, param);
addInfo.askForTime = moment(param.askForTime).format("YYYY-MM-DD");
addInfo.fzdxTime = moment(param.fzdxTime).format("YYYY-MM-DD");
break;
case configEnum.ENTRYTYPE.预备党员:
eccFormParam(FuncName, CreateYBDYConfig, param);
addInfo.askForTime = moment(param.askForTime).format("YYYY-MM-DD");
addInfo.yubeiTime = moment(param.yubeiTime).format("YYYY-MM-DD");
break;
}
verificationEnumTools.eccEnumValue(FuncName, "sex", configEnum.SEX, param.sex);
verificationEnumTools.eccEnumValue(FuncName, "levelOfEducation", configEnum.DEGREE, param.levelOfEducation);
verificationEnumTools.eccEnumValue(FuncName, "administrativePositionName", configEnum.ADMINISTRATIVEPOSITION, param.administrativePositionName);
addInfo.birthDate = moment(param.birthDate).format("YYYY-MM-DD");
addInfo.pwd = md5PwdStr(param.phone.slice(param.phone.length-6));
await operationalData(OPERATIONALDATATYPE.增加, TABLENAME.党员基础信息表, addInfo, {});
return {isSuccess:true};
}
export async function partyNoticeList() {
let partyNoticeParam = {};
let partyNoticeList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.党建通知, partyNoticeParam, []);
let dataList = [];
partyNoticeList.forEach(info => {
dataList.push({
title:info.title,
content:info.content,
time:moment(info.dataTime).format("YYYY-MM-DD")
});
});
return { dataList };
}
export async function partyexpensesList(payableYear, payableMonth) {
let param:any = { payableYear, payableMonth };
let manyTableConfig = {};
manyTableConfig[TABLENAME.党员基础信息表] = {column:["name", "etId", "bId", "partyPositionsName", "partyJoiningTime", "departmentName"], where:{etId:1} };
let partyExpensesList = await selectManyTableData(OPERATIONALDATATYPE.多表联查, TABLENAME.党费管理表, param, ["peId", "payType", "payAmount"], manyTableConfig);
let allAmount = 0;
let completed = 0;
let incomplete = 0;
let map = {};
partyExpensesList.forEach(info => {
let {partyMember, payAmount, payType} = info;
if (!map[partyMember.bId]) map[partyMember.bId] = {name:changeEnumValue(configEnum.BRANCHNAMESTR, partyMember.bId), allCount:0, payCount:0};
map[partyMember.bId].allCount += 1;
if (info.payType == configEnum.PAYTYPE.已缴纳) {
allAmount += payAmount;
completed += 1;
map[partyMember.bId].payCount += 1;
} else {
allAmount += payAmount;
incomplete += 1;
}
});
let rate = 0;
if ( (completed + incomplete) ) {
rate = Math.round(completed/(completed + incomplete)*100)
}
let dataList = [];
for (let key in map) {
let info = map[key];
let itemRate = 0;
if ( info.allCount && info.payCount ) {
itemRate = Math.round(info.payCount/info.allCount *100)
}
dataList.push({name:info.name, rate:itemRate, count:info.allCount});
}
return {statisInfo:{rate, allAmount, completed, incomplete }, dataList};
}
export async function partyexpensesBranchList(bId, payType, payableYear, payableMonth) {
let param:any = { bId, payableYear, payableMonth };
// if (payType) param.payType = payType;
let manyTableConfig = {};
manyTableConfig[TABLENAME.党员基础信息表] = {column:["name", "etId", "partyPositionsName", "partyJoiningTime", "departmentName"], where:{etId:1} };
let partyExpensesList = await selectManyTableData(OPERATIONALDATATYPE.多表联查, TABLENAME.党费管理表, param, ["peId", "payType", "payAmount"], manyTableConfig);
let dataList = [];
let allAmount = 0;
let completed = 0;
let incomplete = 0;
partyExpensesList.forEach(info => {
let {partyMember, payAmount} = info;
let item = {
name:partyMember.name,
partyPositionsName:"党员",//党员类型
payType:changeEnumValue(configEnum.PAYTYPE, info.payType),//状态
partyJoiningTime:moment(partyMember.partyJoiningTime).format("YYYY-MM-DD"),
departmentName:changeEnumValue(configEnum.DEDPARTMENT , partyMember.departmentName),
payAmount:payAmount
};
if (payType && info.payType == payType) {
dataList.push(item);
} else {
dataList.push(item);
}
if (info.payType == configEnum.PAYTYPE.已缴纳) {
allAmount += payAmount;
completed += 1;
} else {
allAmount += payAmount;
incomplete += 1;
}
});
let rate = 0;
if ( (completed + incomplete) ) {
rate = Math.round(completed/(completed + incomplete)*100)
}
return {statisInfo:{rate, allAmount, completed, incomplete }, dataList};
}
export async function partyexpensesMemberList(payType:number, bId, name:string, duration:number, departmentName:number) {
let param:any = {payType};
if (bId) param.bId = bId;
// if (duration) param.duration = duration;
if (departmentName) param.departmentName = departmentName;
if (name) param.name = name;
// if (payType) param.payType = payType;
let manyTableConfig = {};
manyTableConfig[TABLENAME.党员基础信息表] = {column:["name", "etId", "partyPositionsName", "partyJoiningTime", "departmentName"], where:{etId:1} };
let partyExpensesList = await selectManyTableData(OPERATIONALDATATYPE.多表联查, TABLENAME.党费管理表, param, ["peId", "payType", "payAmount"], manyTableConfig);
let dataList = [];
partyExpensesList.forEach(info => {
let {partyMember, payAmount} = info;
let item = {
name:partyMember.name,
partyPositionsName:"党员",//党员类型
payType:changeEnumValue(configEnum.PAYTYPE, info.payType),//状态
partyJoiningTime:moment(partyMember.partyJoiningTime).format("YYYY-MM-DD"),
departmentName:changeEnumValue(configEnum.DEDPARTMENT , partyMember.departmentName),
payAmount:payAmount
};
dataList.push(item)
});
return {dataList};
}
\ No newline at end of file
......@@ -202,7 +202,7 @@ export async function getStudent(bId:number, pmId:string) {
/**
* 添加党员信息
* @param memberType
* @param memberType
* @param param
* @returns
*/
......
......@@ -15,9 +15,13 @@ export function setRouter(httpServer) {
httpServer.post('/yfs/dw/member/partymember/list/sublist', checkAppletDWToken, asyncHandler(partymember_sublist));
httpServer.post('/yfs/dw/member/partymember/typelist', checkAppletDWToken, asyncHandler(partymember_type_list));
// httpServer.post('/yfs/dw/member/partymember/typelist/sublist', checkAppletDWToken, asyncHandler());
httpServer.post('/yfs/dw/member/partymember/add', checkAppletDWToken, asyncHandler(partymember_add));
httpServer.post('/yfs/dw/notice/list', checkAppletToken, asyncHandler(party_notice_ist));
// httpServer.post('/yfs/dw/applet/partyexpenses/list', checkAppletDWToken, asyncHandler());
// httpServer.post('/yfs/dw/applet/partyexpenses/statis', checkAppletDWToken, asyncHandler());
httpServer.post('/yfs/dw/applet/partyexpenses/list', checkAppletDWToken, asyncHandler(partyexpenses_list));
httpServer.post('/yfs/dw/applet/partyexpenses/branchlist', checkAppletDWToken, asyncHandler(partyexpenses_branch_list));
httpServer.post('/yfs/dw/applet/partyexpenses/member/paylist', checkAppletDWToken, asyncHandler(partyexpenses_pay_member_list));
httpServer.post('/yfs/dw/applet/partyexpenses/member/notpaylist', checkAppletDWToken, asyncHandler(partyexpenses_notpay_member_list));
// httpServer.post('/yfs/dw/applet/partyexpenses/list', checkAppletDWToken, asyncHandler());
// httpServer.post('/yfs/dw/applet/partyexpenses/list/sublist', checkAppletDWToken, asyncHandler());
......@@ -30,6 +34,9 @@ export function setRouter(httpServer) {
// httpServer.post('/yfs/applet/organizationallife/list', checkAppletToken, asyncHandler(organizationalLifeList));
// httpServer.post('/yfs/applet/organizationallife/add', checkAppletToken, asyncHandler(addDetails));
}
......@@ -66,9 +73,9 @@ async function partymember_list(req, res) {
}
async function partymember_sublist(req, res) {
let reqConf = {bId:'Number', name:"String", partyPositionsName:"Number"};
let {bId, name, partyPositionsName} = eccReqParamater(reqConf, req.body, ["name", "partyPositionsName"]);
let activitiesInfo = await dwBiz.partymemberSublist(bId, name, partyPositionsName );
let reqConf = {bId:'Number', name:"String", partyPositionsName:"Number", duration:"Number", memberType:"Number", departmentName:"Number"};
let {bId, name, duration, memberType, departmentName} = eccReqParamater(reqConf, req.body, ["name", "partyPositionsName"]);
let activitiesInfo = await dwBiz.partymemberSublist(bId, name, duration, memberType, departmentName);
res.success(activitiesInfo);
}
......@@ -85,3 +92,54 @@ async function partymember_type_list(req, res) {
let activitiesInfo = await dwBiz.partymemberTypeList(bId);
res.success(activitiesInfo);
}
async function partymember_add(req, res) {
let reqConf = {bId:'Number', memberType:'Number', param:'Object'};
let {bId, param, memberType} = eccReqParamater(reqConf, req.body);
let activitiesInfo = await dwBiz.addMember(bId, memberType, param);
res.success(activitiesInfo);
}
async function party_notice_ist(req, res) {
let activitiesInfo = await dwBiz.partyNoticeList();
res.success(activitiesInfo);
}
async function partyexpenses_list(req, res) {
let reqConf = {payableYear:'Number', payableMonth:'Number'};
let {payableYear, payableMonth} = eccReqParamater(reqConf, req.body);
let activitiesInfo = await dwBiz.partyexpensesList(payableYear, payableMonth);
res.success(activitiesInfo);
}
async function partyexpenses_branch_list(req, res) {
let reqConf = {payableYear:'Number', payableMonth:'Number', payType:'Number', bId:'Number'};
let {payableYear, payableMonth,payType, bId} = eccReqParamater(reqConf, req.body);
let activitiesInfo = await dwBiz.partyexpensesBranchList(bId, payType, payableYear, payableMonth);
res.success(activitiesInfo);
}
async function partyexpenses_pay_member_list(req, res) {
let reqConf = {bId:"Number", name:"String", duration:"Number", departmentName:"Number"};
let {bId, name, duration, departmentName} = eccReqParamater(reqConf, req.body);
let activitiesInfo = await dwBiz.partyexpensesMemberList(1, bId, name, duration, departmentName);
res.success(activitiesInfo);
}
async function partyexpenses_notpay_member_list(req, res) {
let reqConf = {bId:"Number", name:"String", duration:"Number", departmentName:"Number"};
let {bId, name, duration, departmentName} = eccReqParamater(reqConf, req.body);
let activitiesInfo = await dwBiz.partyexpensesMemberList(2, bId, name, duration, departmentName);
res.success(activitiesInfo);
}
......@@ -16,6 +16,7 @@ import * as memberLearningRouters from '../routers/applet/memberLearning';
import * as publicRouters from '../routers/public';
import * as abiPartyBuildingRouters from './abi/partyBuilding';
import * as abiTargetRouters from './abi/target';
import * as dwRouters from './applet/dw';
export function setRouter(httpServer){
/**小程序端 党员入口 */
......@@ -36,4 +37,6 @@ export function setRouter(httpServer){
/**ABI */
abiPartyBuildingRouters.setRouter(httpServer);
abiTargetRouters.setRouter(httpServer);
dwRouters.setRouter(httpServer);
}
\ 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