Commit 0dcf6974 by lixinming

no message

parent 01c2a029
......@@ -23,10 +23,12 @@ export async function expensesList(state:number, payableMonth:number, name:strin
eccEnumValue(FuncName, 'state', PAYTYPE, state );
let selectParam:any = {payType:state};
if (payableMonth) selectParam.payableMonth = getMySqlMs(payableMonth);
if (name) selectParam.name = {"%like%":name};
let includeConf = {};
let column = ["peId", "bId", "payableMonth", "payTime", "payAmount"];
includeConf[TABLENAME.党员基础信息表] = ["name"];
includeConf[TABLENAME.党员基础信息表] = {colum:["name"], where:{} };
if (name) includeConf[TABLENAME.党员基础信息表].where["name"] = {"%like%":name};
let tableData = await selectManyTableData(OPERATIONALDATATYPE.多表分页, TABLENAME.党费管理表, selectParam, column, includeConf, pageNumber );
let dataCount = await selectData(OPERATIONALDATATYPE.查询数据量, TABLENAME.党费管理表, selectParam, null );
......@@ -52,13 +54,14 @@ export async function expensesList(state:number, payableMonth:number, name:strin
* @returns
*/
export async function expensesInfo(peId:number) {
let column = ["peId", "payableMonth", "payAmount"];
let column = ["peId", "payableMonth", "payAmount", "pmId"];
let includeConf = {};
includeConf[TABLENAME.党员基础信息表] = ["name"];
includeConf[TABLENAME.党员基础信息表] = {colum:["name"], where:{} };
let dbExpensesInfo = await selectManyTableData(OPERATIONALDATATYPE.多表单个, TABLENAME.党费管理表, { peId }, column, includeConf );
return {
expensesInfo:{
pmId:dbExpensesInfo.pmId,
name:dbExpensesInfo.partyMember.name,
peId:dbExpensesInfo.peId,
payableMonth:getClientMs(dbExpensesInfo.payableMonth),
......@@ -187,14 +190,18 @@ export async function bulkChangeToPaid(userInfo, peIdList, payAmount:number) {
const FuncName = "批量缴纳";
if (!userInfo.isSuperAdmin) throw new BizError(ERRORENUM.权限不足, `${userInfo.userId}尝试${FuncName}`);
let selectParam = {peId:{"%in%":peIdList }};
let expensesInfoList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.党费管理表, selectParam, ["peId", "payType"] );
let expensesInfoList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.党费管理表, selectParam, ["peId", "payType", "payableMonth"] );
if (!payAmount) throw new BizError(ERRORENUM.修改金额不能为0, `${userInfo.userId}${FuncName}金额为${payAmount}` );
let checkMonth = "";
expensesInfoList.forEach(info => {
let {peId, payType} = info;
if (payType == PAYTYPE.已缴纳) {
throw new BizError(ERRORENUM.目标数据已缴纳, `${userInfo.userId}尝试${FuncName}${peId}`);
}
let itemDataMonth = moment(info.payableMonth).format("YYYY-MM");
if (!checkMonth) checkMonth = itemDataMonth;
else if (itemDataMonth != checkMonth) throw new BizError(ERRORENUM.批量导入不可跨月份, `${userInfo.userId}尝试${FuncName}`);
});
let updateInfo = {
payTime:getMySqlMs(),
......@@ -217,7 +224,7 @@ export async function getUnpaidInfo(userInfo, peId:number) {
if (!userInfo.isSuperAdmin) throw new BizError(ERRORENUM.权限不足, `${userInfo.userId}尝试${FuncName}`);
let column = ["peId", "payableMonth", "payAmount", "bId"];
let includeConf = {};
includeConf[TABLENAME.党员基础信息表] = ["name"];
includeConf[TABLENAME.党员基础信息表] = {colum:["name"], where:{} };
let dbExpensesInfo = await selectManyTableData(OPERATIONALDATATYPE.多表单个, TABLENAME.党费管理表, { peId }, column, includeConf );
if (!dbExpensesInfo || !dbExpensesInfo.peId) throw new BizError(ERRORENUM.目标数据不存在, FuncName, `${peId}不存在`);
......@@ -247,9 +254,30 @@ export async function delUnpaidInfo(userInfo, peId:number) {
const FuncName = "录入缴纳信息";
if (!userInfo.isSuperAdmin) throw new BizError(ERRORENUM.权限不足, `${userInfo.userId}尝试${FuncName}`);
let column = ["peId", "payableMonth", "payAmount", "bId"];
let dbExpensesInfo = await selectData(OPERATIONALDATATYPE.多表单个, TABLENAME.党费管理表, { peId }, column );
let dbExpensesInfo = await selectData(OPERATIONALDATATYPE.查询单个, TABLENAME.党费管理表, { peId }, column );
if (!dbExpensesInfo || !dbExpensesInfo.peId) throw new BizError(ERRORENUM.目标数据不存在, FuncName, `${peId}不存在`);
await operationalData(OPERATIONALDATATYPE.删除, TABLENAME.党费管理表, null, { peId } );
return { isSuccess:true};
}
/**
* 获取所有用户列表
* @returns
*/
export async function memberList() {
let column = ["pmId", "name"];
let memberList = await selectData(OPERATIONALDATATYPE.查询多个, TABLENAME.党员基础信息表, { }, column );
let dataList = [];
memberList.forEach(info => {
let {pmId, name} = info;
dataList.push({
key:name,
value:pmId
});
});
return {dataList};
}
\ No newline at end of file
......@@ -408,4 +408,4 @@ export async function deleteMember(userInfo, pmId:string) {
await operationalData(OPERATIONALDATATYPE.删除, TABLENAME.党员基础信息表, null, {pmId});
return {isSuccess:true};
}
\ No newline at end of file
}
......@@ -25,7 +25,7 @@ export enum ERRORENUM {
修改金额不能为0,
不能补录已经存在的数据,
目标数据已缴纳,
批量导入不可跨月份
}
export enum ERRORCODEENUM {
......
......@@ -78,7 +78,7 @@ export async function selectData(url, tableName, param, column, pageNumber?, pa
* @returns
*/
export async function selectManyTableData(url, tableName, param, column, includeConf, pageNumber?, pageSize?) {
if (url != OPERATIONALDATATYPE.多表联查 && url != OPERATIONALDATATYPE.多表分页) {
if (url != OPERATIONALDATATYPE.多表联查 && url != OPERATIONALDATATYPE.多表分页 && url != OPERATIONALDATATYPE.多表单个) {
throw new BizError(ERRORENUM.该方法仅可进行联合查询操作, '该方法仅可进行联合查询操作');
}
let header = {table:tableName, sign:systemConfig.sign};
......
......@@ -9,7 +9,7 @@ async function lanuch() {
/**创建http服务 */
httpServer.createServer(systemConfig.port);
await test()
// await test()
// await smsTask();
console.log('This indicates that the server is started successfully.');
}
......
......@@ -11,7 +11,7 @@ export function setRouter(httpServer) {
httpServer.post('/yfs/admin/expenses/unpaid/info', checkToken, asyncHandler(unPaidInfo));
httpServer.post('/yfs/admin/expenses/unpaid/del', checkToken, asyncHandler(delUnPaid));
httpServer.post('/yfs/admin/expenses/paid/memberlist', checkToken, asyncHandler(memberList));
httpServer.post('/yfs/admin/expenses/paid/list', checkToken, asyncHandler(paidList));
httpServer.post('/yfs/admin/expenses/paid/info', checkToken, asyncHandler(paidInfo));
httpServer.post('/yfs/admin/expenses/paid/update', checkToken, asyncHandler(updatePaid));
......@@ -192,3 +192,11 @@ async function delUnPaid(req, res) {
res.success(result);
}
async function memberList(req, res) {
let userInfo = req.userInfo;
let result = await partyExpensesBiz.memberList();
res.success(result);
}
\ No newline at end of file
......@@ -11,6 +11,7 @@ export function getUserToken(loginId:string) {
export function getMySqlMs(time?) {
time = time || new Date().valueOf();
time += (8*3600*1000);
return moment(time).format("YYYY-MM-DD HH:mm:ss");
}
......
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