Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yfs_xcx_server
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
node_server
yfs_xcx_server
Commits
d4102f4d
Commit
d4102f4d
authored
Jul 16, 2025
by
lixinming
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
no message
parent
611857d2
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
288 additions
and
17 deletions
+288
-17
dw.ts
src/biz/dw.ts
+220
-11
partyMember.ts
src/biz/partyMember.ts
+1
-1
dw.ts
src/routers/applet/dw.ts
+63
-5
router.ts
src/routers/router.ts
+4
-0
No files found.
src/biz/dw.ts
View file @
d4102f4d
...
...
@@ -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
src/biz/partyMember.ts
View file @
d4102f4d
...
...
@@ -202,7 +202,7 @@ export async function getStudent(bId:number, pmId:string) {
/**
* 添加党员信息
* @param memberType
* @param memberType
* @param param
* @returns
*/
...
...
src/routers/applet/dw.ts
View file @
d4102f4d
...
...
@@ -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
,
partyPositions
Name
}
=
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
,
department
Name
}
=
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
);
}
src/routers/router.ts
View file @
d4102f4d
...
...
@@ -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
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment