Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yfsxcx
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
yfsxcx
Commits
42da2466
Commit
42da2466
authored
Apr 28, 2023
by
孙香冬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
no message
parent
aa5487db
Hide whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
298 additions
and
195 deletions
+298
-195
organizationalLife.ts
src/biz/abi/organizationalLife.ts
+28
-0
base.ts
src/biz/applet/base.ts
+32
-25
organizationalLife.ts
src/biz/applet/partyMember/organizationalLife.ts
+26
-27
partyInforMation.ts
src/biz/applet/partyMember/partyInforMation.ts
+2
-2
partyMember.ts
src/biz/applet/partyMember/partyMember.ts
+3
-3
user.ts
src/biz/applet/user.ts
+9
-7
clientEnum.ts
src/config/clientEnum.ts
+17
-13
eccFormParamConfig.ts
src/config/eccFormParamConfig.ts
+9
-8
enum.ts
src/config/enum.ts
+22
-10
errorEnum.ts
src/config/errorEnum.ts
+2
-1
splitResultConfig.ts
src/config/splitResultConfig.ts
+10
-9
systemClass.ts
src/config/systemClass.ts
+0
-8
organizationalLife.ts
src/data/organizationalLife.ts
+17
-39
partyInformation.ts
src/data/partyInformation.ts
+6
-4
partyMember.ts
src/data/partyMember.ts
+11
-10
main.ts
src/main.ts
+20
-5
user.ts
src/middleware/user.ts
+7
-5
organizationalLife.ts
src/routers/abi/organizationalLife.ts
+17
-0
base.ts
src/routers/applet/base.ts
+8
-5
organizationalLife.ts
src/routers/applet/organizationalLife.ts
+27
-10
partyInforMation.ts
src/routers/applet/partyInforMation.ts
+2
-1
partyMember.ts
src/routers/applet/partyMember.ts
+2
-1
public.ts
src/routers/public.ts
+3
-2
router.ts
src/routers/router.ts
+5
-0
verificationParam.ts
src/util/verificationParam.ts
+13
-0
No files found.
src/biz/abi/organizationalLife.ts
0 → 100644
View file @
42da2466
/**
* ABI_智慧党建管理分析平台
* 组织生活
*/
import
*
as
organizationalLifeData
from
"../../data/organizationalLife"
;
import
*
as
configEnum
from
"../../config/enum"
;
/**
* ABI 组织生活
* @returns {activityCount:"活动开展次数", dataList:"组织生活扇形图"}
*/
export
async
function
getActivityCount
()
{
let
activityCount
=
await
organizationalLifeData
.
groupFindActivityCount
({});
let
activityList
=
[];
for
(
let
key
in
configEnum
.
ACTIVITYTYPE
)
{
let
anyKey
:
any
=
key
;
if
(
isNaN
(
anyKey
))
{
let
keyStr
=
key
;
let
partyActivityType
=
configEnum
.
ACTIVITYTYPE
[
key
];
let
count
=
await
organizationalLifeData
.
groupFindActivityCount
({
partyActivityType
});
activityList
.
push
({
key
:
keyStr
,
value
:
count
});
}
}
return
{
activityCount
:{
title
:
"活动开展次数"
,
value
:
activityCount
},
dataList
:{
title
:
"组织生活扇形图"
,
list
:
activityList
}};
}
src/biz/applet/base.ts
View file @
42da2466
...
...
@@ -9,59 +9,66 @@ import * as configEnum from "../../config/enum";
import
*
as
splitResultConfig
from
"../../config/splitResultConfig"
;
import
{
extractData
}
from
'../../util/piecemeal'
;
import
{
changeEnumValue
,
eccEnumValue
}
from
'../../util/verificationEnum'
;
import
moment
=
require
(
'moment'
);
import
{
BizError
}
from
'../../util/bizError'
;
import
{
ERRORENUM
}
from
'../../config/errorEnum'
;
/**
* 主页基础数据
* @param branchName 支部id
* @returns {支部名称, 党员总数, 党建指令指数, 党内职务人员列表}
*/
export
async
function
homeData
(
uId
:
number
)
{
let
partyMemberNum
=
await
partyMemberData
.
groupFindPartyMemberCount
({});
//党员总数
export
async
function
homeData
(
branchName
:
number
)
{
if
(
branchName
)
eccEnumValue
(
"党建资讯列表查询"
,
"支部名称"
,
configEnum
.
BRANCHNAMETYPE
,
branchName
);
let
branch
=
changeEnumValue
(
configEnum
.
BRANCHNAMETYPE
,
branchName
);
//支部名称
let
partyMemberNum
=
await
partyMemberData
.
groupFindPartyMemberCount
({
branchName
});
//党员总数
let
massIndex
=
87.6
;
//党建指令指数
let
partyPositions
=
[];
//党内职务人员
for
(
let
key
in
configEnum
.
PARTYPOSITIONS
)
{
let
anyKey
:
any
=
key
;
if
(
key
!=
"党员"
&&
key
!=
"入党积极分子"
&&
key
!=
"预备党员"
)
{
if
(
isNaN
(
anyKey
))
{
//枚举key key = string
const
EnumValue
=
parseInt
(
configEnum
.
PARTYPOSITIONS
[
key
])
let
dataBaseList
=
await
partyMemberData
.
getBaseListByPartyPositions
(
[
EnumValue
]
);
let
nameList
=
[];
dataBaseList
.
forEach
(
info
=>
{
nameList
.
push
(
info
.
name
);
});
partyPositions
.
push
({
key
,
list
:
nameList
});
if
(
isNaN
(
anyKey
))
{
//枚举key key = string
const
EnumValue
=
parseInt
(
configEnum
.
PARTYPOSITIONS
[
key
])
let
dataBaseList
=
await
partyMemberData
.
getBaseListByPartyPositions
(
[
EnumValue
],
branchName
);
}
let
nameList
=
[];
dataBaseList
.
forEach
(
info
=>
{
nameList
.
push
(
info
.
name
);
});
if
(
nameList
.
length
<=
0
)
nameList
.
push
(
"暂无数据"
);
partyPositions
.
push
({
key
,
list
:
nameList
});
}
}
return
{
partyMemberNum
,
massIndex
,
partyPositions
};
return
{
branch
,
partyMemberNum
,
massIndex
,
partyPositions
};
}
/**
* 根据资讯类型查询党建资讯列表
* @param informationType 党建资讯类型
* @param branchName 支部id
* @returns
*/
export
async
function
informationData
(
informationType
:
number
)
{
export
async
function
informationData
(
informationType
:
number
,
branchName
:
number
)
{
if
(
informationType
)
eccEnumValue
(
"党建资讯列表查询"
,
"资讯类型"
,
configEnum
.
INFORMATIONTYPE
,
informationType
);
if
(
branchName
)
eccEnumValue
(
"党建资讯列表查询"
,
"支部名称"
,
configEnum
.
BRANCHNAMETYPE
,
branchName
);
let
partyInformationInfo
=
await
partyInformationData
.
findPartyInformationListByType
(
informationType
);
let
partyInformationInfo
=
await
partyInformationData
.
findPartyInformationListByType
(
informationType
,
branchName
);
if
(
!
partyInformationInfo
)
throw
new
BizError
(
ERRORENUM
.
未找到数据
,
`库中不存在党建资讯类型为
${
informationType
}
, 支部为
${
branchName
}
的党建资讯列表`
);
let
dataList
=
[];
partyInformationInfo
.
forEach
(
info
=>
{
let
changeData
:
any
=
extractData
(
splitResultConfig
.
partyInformationConfig
,
info
,
false
);
changeData
.
informationType
=
changeEnumValue
(
configEnum
.
INFORMATIONTYPE
,
changeData
.
informationType
);
changeData
.
informationTime
=
moment
(
changeData
.
informationTime
).
format
(
"YYYY.MM.DD HH:mm"
);
let
changeData
:
any
=
extractData
(
splitResultConfig
.
partyInformationConfig
,
info
,
true
);
changeData
.
informationType
=
changeEnumValue
(
configEnum
.
INFORMATIONTYPE
,
info
.
informationType
);
changeData
.
branchName
=
changeEnumValue
(
configEnum
.
BRANCHNAMETYPE
,
info
.
branchName
);
dataList
.
push
(
changeData
);
})
...
...
src/biz/applet/partyMember/organizationalLife.ts
View file @
42da2466
...
...
@@ -6,6 +6,7 @@
import
moment
=
require
(
"moment"
);
import
*
as
organizationalLifeData
from
"../../../data/organizationalLife"
;
import
*
as
configEnum
from
"../../../config/enum"
;
import
*
as
clientConfigEnum
from
"../../../config/clientEnum"
;
import
{
eccFormParam
}
from
"../../../util/verificationParam"
;
import
*
as
eccFormParamConfig
from
"../../../config/eccFormParamConfig"
;
import
*
as
verificationEnumTools
from
"../../../util/verificationEnum"
;
...
...
@@ -21,24 +22,23 @@ moment.suppressDeprecationWarnings = true;
* 组织生活列表
* todo 接口协议不对
* @param status 活动状态 全部、正在进行、即将开展、已经开展
* @return data
* @return
s
data
* 返回说明 根据传入的活动状态返回不同的列表
*/
export
async
function
getOrganizationalLifeList
(
type
:
number
,
partyActivityType
:
number
)
{
export
async
function
getOrganizationalLifeList
(
type
:
number
,
partyActivityType
:
number
,
branchName
:
number
)
{
/**将枚举值转为枚举文本 */
let
partyActivityTypeStr
=
verificationEnumTools
.
changeEnumValue
(
configEnum
.
TYPE
,
type
);
let
partyActivityTypeStr
=
verificationEnumTools
.
changeEnumValue
(
c
lientC
onfigEnum
.
TYPE
,
type
);
const
NowMs
=
new
Date
().
valueOf
();
/**拼接查询参数 */
let
selectParam
=
{};
if
(
type
!=
c
onfigEnum
.
TYPE
.
全部
)
{
if
(
type
==
configEnum
.
TYPE
.
即将开展
)
selectParam
=
{
"activityStartTime"
:{
"$gt"
:
NowMs
}};
else
if
(
type
==
configEnum
.
TYPE
.
已经开展
)
selectParam
=
{
"activityEndTime"
:{
"$lt"
:
NowMs
}};
if
(
type
!=
c
lientConfigEnum
.
TYPE
.
全部活动
)
{
if
(
type
==
c
lientC
onfigEnum
.
TYPE
.
即将开展
)
selectParam
=
{
"activityStartTime"
:{
"$gt"
:
NowMs
}};
else
if
(
type
==
c
lientC
onfigEnum
.
TYPE
.
已经开展
)
selectParam
=
{
"activityEndTime"
:{
"$lt"
:
NowMs
}};
else
selectParam
=
{
"$and"
:[
{
"activityStartTime"
:{
"$lt"
:
NowMs
}},
{
"activityEndTime"
:{
"$gt"
:
NowMs
}}
]}
}
else
partyActivityTypeStr
=
""
;
if
(
partyActivityType
)
{
selectParam
[
"partyActivityType"
]
=
partyActivityType
;
}
if
(
partyActivityType
)
selectParam
[
"partyActivityType"
]
=
partyActivityType
;
if
(
branchName
)
selectParam
[
"branchName"
]
=
branchName
;
let
dbList
=
await
organizationalLifeData
.
findOrganizationalLifeList
(
selectParam
);
...
...
@@ -62,12 +62,13 @@ export async function getOrganizationalLifeList(type:number, partyActivityType:n
* 创建组织生活活动
* @param param {党建活动类型, 活动开始时间, 活动结束时间, 活动地点, 活动主持人, 活动记录人, 请假党员, 参与党员, 活动记录}
* 参数类型 { number, number, number, string, [string], [string], [number], [number], string}
* @return {isSuccess: true}
* @return
s
{isSuccess: true}
*/
export
async
function
createOrganizationalLife
(
param
)
{
export
async
function
createOrganizationalLife
(
branchName
:
number
,
param
)
{
eccFormParam
(
"创建组织生活活动"
,
eccFormParamConfig
.
CreateActivityConfig
,
param
)
if
(
branchName
)
verificationEnumTools
.
eccEnumValue
(
"创建组织生活活动"
,
"支部名称"
,
configEnum
.
BRANCHNAMETYPE
,
branchName
);
verificationEnumTools
.
eccEnumValue
(
'创建组织生活活动的党建活动类型'
,
'partyActivityType'
,
configEnum
.
ACTIVITYTYPE
,
param
.
partyActivityType
);
param
.
branchName
=
branchName
;
await
organizationalLifeData
.
createActivity
(
param
);
return
{
isSuccess
:
true
};
...
...
@@ -77,20 +78,16 @@ export async function createOrganizationalLife(param) {
/**
* 组织生活详细信息
* @param oId 编号
* @returns
* @returns
changeData:{返回字段参考 splitResultConfig文件中的组织生活详细信息配置}
*/
export
async
function
getOrganizationalLifeById
(
oId
:
number
)
{
let
activityInfo
=
await
organizationalLifeData
.
findEventDetails
(
oId
);
/**截取返回字段 */
let
changeData
:
any
=
extractData
(
splitResultConfig
.
activityInfoConfig
,
activityInfo
,
false
);
changeData
.
partyActivityType
=
verificationEnumTools
.
changeEnumValue
(
configEnum
.
ACTIVITYTYPE
,
activityInfo
.
partyActivityType
);
changeData
.
activityStartTime
=
moment
(
activityInfo
.
activityStartTime
).
format
(
"YYYY.MM.DD HH:mm"
);
changeData
.
activityEndTime
=
moment
(
activityInfo
.
activityEndTime
).
format
(
"YYYY.MM.DD HH:mm"
);
//todo 参与人员和请假人员要 存名称
let
changeData
:
any
=
extractData
(
splitResultConfig
.
activityInfoConfig
,
activityInfo
,
true
);
changeData
.
title
=
verificationEnumTools
.
changeEnumValue
(
configEnum
.
ACTIVITYTYPE
,
activityInfo
.
partyActivityType
);
changeData
.
activityStatus
=
getActivityStatus
(
activityInfo
.
activityStartTime
,
activityInfo
.
activityEndTime
);
return
changeData
;
}
...
...
@@ -100,7 +97,7 @@ export async function getOrganizationalLifeById(oId:number) {
* @param oId 组织生活id 修改对应oId的组织生活信息
* @param param {党建活动类型, 活动开始时间, 活动结束时间, 活动地点, 活动主持人, 活动记录人, 请假党员, 参与党员, 活动记录}
* 参数类型 { number, number, number, string, [string], [string], [number], [number], string}
* @returns
* @returns
{isSuccess: true}
*/
export
async
function
updateOrganizationalLife
(
oId
:
number
,
param
)
{
/**校验表单参数 */
...
...
@@ -111,7 +108,7 @@ export async function updateOrganizationalLife(oId:number, param) {
if
(
!
activityInfo
)
throw
new
BizError
(
ERRORENUM
.
未找到数据
,
`库中不存在id为
${
oId
}
的组织活动`
);
let
changeList
=
checkChange
(
param
,
activityInfo
);
if
(
!
changeList
.
length
)
throw
new
BizError
(
ERRORENUM
.
数据无更新
,
`
${
oId
}
数据无更新`
);
//
if ( !changeList.length ) throw new BizError(ERRORENUM.数据无更新, `${oId}数据无更新`);
changeList
.
forEach
(
key
=>
{
activityInfo
[
key
]
=
param
[
key
];
...
...
@@ -125,8 +122,8 @@ export async function updateOrganizationalLife(oId:number, param) {
/**
* 创建/修改组织生活选择党员
*
todo
在使用枚举的情况下 参数中不能出现枚举以外的值
* @param type
* 在使用枚举的情况下 参数中不能出现枚举以外的值
* @param type
组织生活活动类型
* @param name 党员姓名 用于输入党员姓名查询
* @returns 根据传入的type返回不同党员信息
*/
...
...
@@ -134,7 +131,7 @@ export async function getPartyMemberNameList(type:number, name:string) {
let
selectParam
:
any
=
{};
let
partyMemberList
;
if
(
type
!=
4
)
{
//todo 不规范
if
(
type
!=
clientConfigEnum
.
TYPE
.
全部活动
)
{
selectParam
.
entryType
=
type
;
if
(
name
.
length
)
selectParam
.
name
=
name
;
partyMemberList
=
await
partyMemberData
.
getPartyMemberListByEntryType
(
selectParam
);
...
...
@@ -161,16 +158,18 @@ export async function getAllPartyMember() {
let
data
=
[];
partyMemberList
.
forEach
(
info
=>
{
let
changeData
:
any
=
extractData
(
splitResultConfig
.
partyMemberConfig
,
info
,
false
);
changeData
.
partyPositions
=
verificationEnumTools
.
changeEnumValue
(
configEnum
.
PARTYPOSITIONS
,
info
.
partyPositions
);
switch
(
changeData
.
entryType
)
{
case
1
:
changeData
.
color
=
"#C62A23"
;
changeData
.
partyPositions
=
verificationEnumTools
.
changeEnumValue
(
configEnum
.
PARTYPOSITIONSICON
,
info
.
partyPositions
);
break
;
case
2
:
changeData
.
color
=
"#3549B0"
;
changeData
.
partyPositions
=
verificationEnumTools
.
changeEnumValue
(
configEnum
.
ENTRYTYPE
,
info
.
entryType
);
break
;
case
3
:
changeData
.
color
=
"#E4B386"
;
changeData
.
partyPositions
=
verificationEnumTools
.
changeEnumValue
(
configEnum
.
ENTRYTYPE
,
info
.
entryType
);
break
;
}
data
.
push
(
changeData
);
...
...
@@ -183,11 +182,11 @@ export async function getAllPartyMember() {
/**
* 删除组织生活活动
* @param oId 活动id
* @returns
* @returns
{isSuccess:true}
*/
export
async
function
deleteOrganizationalLife
(
oId
:
number
)
{
let
activityInfo
=
await
organizationalLifeData
.
findEventDetails
(
oId
);
if
(
activityInfo
)
throw
new
BizError
(
ERRORENUM
.
未找到数据
,
`库中不存在id为
${
oId
}
的组织活动`
);
if
(
!
activityInfo
)
throw
new
BizError
(
ERRORENUM
.
未找到数据
,
`库中不存在id为
${
oId
}
的组织活动`
);
await
organizationalLifeData
.
deleteActivity
(
oId
);
...
...
src/biz/applet/partyMember/partyInforMation.ts
View file @
42da2466
...
...
@@ -12,11 +12,11 @@ import * as configEnum from "../../../config/enum";
/**
* 创建党建资讯
* @param param {informationType: 党建资讯类型, title: "资讯标题", branch: "支部名称", informationTime: 资讯时间, detailedInformation: "资讯详细", img: "资讯图片"}
* @param param {informationType: 党建资讯类型, title: "资讯标题", branch
Name
: "支部名称", informationTime: 资讯时间, detailedInformation: "资讯详细", img: "资讯图片"}
* @return {isSuccess: true}
*/
export
async
function
createPartyInformation
(
param
)
{
eccFormParam
(
"创建党建资讯"
,
eccFormParamConfig
.
CreatePartyMemberFormConfig
,
param
)
eccFormParam
(
"创建党建资讯"
,
eccFormParamConfig
.
createPartyInformation
,
param
)
let
partyInformation
=
await
partyInformationData
.
createPartyInformation
(
param
);
verificationEnumTools
.
eccEnumValue
(
'党建资讯类型'
,
'informationType'
,
configEnum
.
INFORMATIONTYPE
,
param
.
informationType
);
...
...
src/biz/applet/partyMember/partyMember.ts
View file @
42da2466
...
...
@@ -5,8 +5,6 @@
import
*
as
partyMemberData
from
"../../../data/partyMember"
;
import
*
as
configEnum
from
"../../../config/enum"
;
import
{
extractData
}
from
"../../../util/piecemeal"
;
import
*
as
splitResultConfig
from
"../../../config/splitResultConfig"
;
import
*
as
verificationEnumTools
from
"../../../util/verificationEnum"
;
import
{
eccFormParam
}
from
"../../../util/verificationParam"
;
import
*
as
eccFormParamConfig
from
"../../../config/eccFormParamConfig"
;
...
...
@@ -22,11 +20,13 @@ import { getPwdMd5, getToken } from "../../../tools/system";
export
async
function
createPartyMember
(
param
)
{
eccFormParam
(
"创建正式党员录入"
,
eccFormParamConfig
.
CreatePartyMemberFormConfig
,
param
);
verificationEnumTools
.
eccEnumValue
(
'正式党员录入性别'
,
'partyActivityType'
,
configEnum
.
SEX
,
param
.
partyActivityType
);
verificationEnumTools
.
eccEnumValue
(
'正式党员录入党内职务图例'
,
'partyPositionsIcon'
,
configEnum
.
PARTYPOSITIONSICON
,
param
.
partyPositions
);
verificationEnumTools
.
eccEnumValue
(
'正式党员录入党内职务'
,
'partyPositions'
,
configEnum
.
PARTYPOSITIONS
,
param
.
partyPositions
);
verificationEnumTools
.
eccEnumValue
(
'正式党员名册录入类型'
,
'entryType'
,
configEnum
.
ENTRYTYPE
,
param
.
entryType
);
let
partyMemberInfo
:
any
=
await
partyMemberData
.
createPartyMember
(
param
);
partyMemberInfo
.
pwd
=
getPwdMd5
(
param
.
phone
,
param
.
phone
.
slice
(
5
,
11
));
if
(
!
param
.
pwd
)
partyMemberInfo
.
pwd
=
getPwdMd5
(
param
.
phone
,
param
.
phone
.
slice
(
5
,
11
));
else
partyMemberInfo
.
pwd
=
getPwdMd5
(
param
.
phone
,
param
.
pwd
);
partyMemberInfo
.
token
=
getToken
(
param
.
phone
);
partyMemberInfo
.
tokenMs
=
new
Date
().
valueOf
();
...
...
src/biz/applet/user.ts
View file @
42da2466
...
...
@@ -3,6 +3,7 @@
*/
import
{
ERRORENUM
}
from
'../../config/errorEnum'
;
import
*
as
configEnum
from
"../../config/enum"
;
import
*
as
partyMemberData
from
'../../data/partyMember'
;
import
*
as
sysTools
from
"../../tools/system"
;
import
{
BizError
}
from
'../../util/bizError'
;
...
...
@@ -10,22 +11,23 @@ import { BizError } from '../../util/bizError';
/**
* 党员入口登录
* @param loginId 登录账号
* @param pwd 登录密码
* @returns loginUserInfo: {
loginI
d, firstLogin, token} 登录后的信息
* @param pwd 登录密码
md5之后的
* @returns loginUserInfo: {
useri
d, firstLogin, token} 登录后的信息
*/
export
async
function
login
(
loginId
:
string
,
pwd
:
string
)
{
let
loginInfo
=
await
partyMemberData
.
findPartyMemberByLoginId
(
loginId
);
if
(
!
loginInfo
)
throw
new
BizError
(
ERRORENUM
.
账号不存在
);
// if (loginInfo.entryType != configEnum.ENTRYTYPE.正式党员) throw new BizError(ERRORENUM.非党员账号, `${loginId}账号非党员账号`);
let
checkPwd
=
sysTools
.
getPwdMd5
(
loginInfo
.
loginId
,
pwd
);
if
(
loginInfo
.
pwd
!=
checkPwd
)
throw
new
BizError
(
ERRORENUM
.
密码错误
);
const
Token
=
sysTools
.
getToken
(
loginId
);
let
loginUserInfo
=
{
loginId
:
loginInfo
.
loginI
d
,
userid
:
loginInfo
.
i
d
,
firstLogin
:
!
loginInfo
.
firstLoginIsChangePwd
,
token
:
Token
token
:
Token
,
branchid
:
loginInfo
.
branchName
,
};
loginInfo
.
token
=
Token
;
...
...
@@ -67,7 +69,7 @@ export async function firstLoginChangePwd(loginId:string, pwd:string, confirmPwd
* @param pwd 原密码 md5之后的
* @param newPwd 新密码 未md5
* @param confirmPwd 确认新密码 未md5
* @returns {isSuccess:true
/false
}
* @returns {isSuccess:true}
*/
export
async
function
changePassword
(
loginId
:
string
,
pwd
:
string
,
newPwd
:
string
,
confirmPwd
:
string
)
{
if
(
newPwd
!=
confirmPwd
)
throw
new
BizError
(
ERRORENUM
.
密码不一致
);
...
...
@@ -81,7 +83,7 @@ export async function firstLoginChangePwd(loginId:string, pwd:string, confirmPwd
if
(
partyMemberInfo
.
pwd
!=
checkPwd
)
throw
new
BizError
(
ERRORENUM
.
密码错误
);
/**考虑到如果前端把新密码也md5 就不可以验证是不是符合规则 所以前端传的是明文
* 我们初始化密码的时候 有两次加密 第一次是密码md5 然后再和
uscc
进行md5
* 我们初始化密码的时候 有两次加密 第一次是密码md5 然后再和
loginId
进行md5
* 于是这里也要如此操作
*/
partyMemberInfo
.
pwd
=
sysTools
.
getPwdMd5
(
loginId
,
sysTools
.
md5PwdStr
(
newPwd
));
...
...
src/config/clientEnum.ts
View file @
42da2466
let
config
=
{}
//配置
/**
*
党内职务 Party positions
*
组织生活活动类型
*/
export
enum
PARTYPOSITIONS
{
全部
=
1
,
支部书记
,
支部副书记
,
纪检委员
,
组织委员
,
宣传委员
,
党员
,
入党积极分子
,
预备党员
,
}
\ No newline at end of file
export
enum
TYPE
{
全部活动
=
1
,
正在进行
,
即将开展
,
已经开展
,
}
/**
* 名册录入类型
*/
export
enum
ENTRYTYPE
{
正式党员录入
=
1
,
入党积极分子录入
,
入党申请录入
}
src/config/eccFormParamConfig.ts
View file @
42da2466
...
...
@@ -19,9 +19,10 @@ export const CreateActivityConfig = {
activityAdd
:{
type
:
"String"
,
notMustHave
:
true
},
//活动地点
activityHost
:{
type
:
"[String]"
,
notMustHave
:
true
},
//活动主持人
activityNoteTaker
:{
type
:
"[String]"
,
notMustHave
:
true
},
//活动记录人
leavePartyMember
:{
type
:
"[
Number
]"
,
notMustHave
:
true
},
//请假党员
participatingPartyMember
:{
type
:
"[
Number
]"
,
notMustHave
:
true
},
//参与党员
leavePartyMember
:{
type
:
"[
String
]"
,
notMustHave
:
true
},
//请假党员
participatingPartyMember
:{
type
:
"[
String
]"
,
notMustHave
:
true
},
//参与党员
participationRecord
:{
type
:
"String"
,
notMustHave
:
true
},
//活动记录
branchName
:{
type
:
"Number"
,
notMustHave
:
true
},
//支部名称
};
...
...
@@ -37,8 +38,8 @@ export const UpdateActivityFormConfig = {
activityAdd
:{
type
:
"String"
,
notMustHave
:
true
},
//活动地点
activityHost
:{
type
:
"[String]"
,
notMustHave
:
true
},
//活动主持人
activityNoteTaker
:{
type
:
"[String]"
,
notMustHave
:
true
},
//活动记录人
leavePartyMember
:{
type
:
"[
Number
]"
,
notMustHave
:
true
},
//请假党员
participatingPartyMember
:{
type
:
"[
Number
]"
,
notMustHave
:
true
},
//参与党员
leavePartyMember
:{
type
:
"[
String
]"
,
notMustHave
:
true
},
//请假党员
participatingPartyMember
:{
type
:
"[
String
]"
,
notMustHave
:
true
},
//参与党员
participationRecord
:{
type
:
"String"
,
notMustHave
:
true
},
//活动记录
}
...
...
@@ -47,7 +48,7 @@ export const UpdateActivityFormConfig = {
/**
* 使用端: 小程序端_党员入口
* 场景: 创建正式党员录入表单
* 备注:
全部非必填
* 备注:
*/
export
const
CreatePartyMemberFormConfig
=
{
name
:{
type
:
"String"
},
//姓名
...
...
@@ -73,11 +74,10 @@ export const UpdateActivityFormConfig = {
* 备注: 全部非必填
*/
export
const
createPartyInformation
=
{
pid
:{
type
:
"Number"
,
notMustHave
:
true
},
informationType
:{
type
:
"Number"
,
notMustHave
:
true
},
title
:{
type
:
"String"
,
notMustHave
:
true
},
branch
:{
type
:
"String
"
,
notMustHave
:
true
},
infor
M
ationTime
:{
type
:
"Number"
,
notMustHave
:
true
},
branch
Name
:{
type
:
"Number
"
,
notMustHave
:
true
},
infor
m
ationTime
:{
type
:
"Number"
,
notMustHave
:
true
},
detailedInformation
:{
type
:
"String"
,
notMustHave
:
true
},
img
:{
type
:
"String"
,
notMustHave
:
true
}
}
\ No newline at end of file
src/config/enum.ts
View file @
42da2466
...
...
@@ -3,9 +3,20 @@ export let clientEnumConfig = {
/**
* 支部名称 branchName
*/
export
enum
BRANCHNAMETYPE
{
牙防所第一支部
=
1
,
牙防所第二支部
,
牙防所第三支部
,
牙防所第四支部
}
/**
* 党内职务 Party positions
*/
export
enum
PARTYPOSITIONS
{
export
enum
PARTYPOSITIONS
ICON
{
支部书记
=
1
,
支部副书记
,
纪检委员
,
...
...
@@ -17,13 +28,14 @@ export enum PARTYPOSITIONS {
}
/**
*
组织生活活动类型
*
党内职务 Party positions
*/
export
enum
TYPE
{
正在进行
=
1
,
即将开展
,
已经开展
,
全部
export
enum
PARTYPOSITIONS
{
支部书记
=
1
,
支部副书记
,
纪检委员
,
组织委员
,
宣传委员
}
...
...
@@ -31,9 +43,9 @@ export enum TYPE {
* 名册录入类型
*/
export
enum
ENTRYTYPE
{
正式党员
录入
=
1
,
入党积极分子
录入
,
入党申请录入
正式党员
=
1
,
入党积极分子
,
预备党员
}
...
...
src/config/errorEnum.ts
View file @
42da2466
...
...
@@ -11,7 +11,8 @@ export enum ERRORENUM {
数据无更新
,
地址数据不完整
,
身份验证失败
,
非法登录
非法登录
,
非党员账号
}
export
enum
ERRORCODEENUM
{
...
...
src/config/splitResultConfig.ts
View file @
42da2466
...
...
@@ -11,11 +11,11 @@
* 备注:
*/
export
const
partyInformationConfig
=
{
id
:{
key
:
"i
d"
},
pId
:{
key
:
"pI
d"
},
informationType
:{
key
:
"党建资讯类型"
},
title
:{
key
:
"资讯标题"
},
branch
:{
key
:
"支部
"
},
informationTime
:{
key
:
"资讯时间"
},
branch
Name
:{
key
:
"支部名称
"
},
informationTime
:{
key
:
"资讯时间"
,
changeDate
:
true
},
img
:
{
key
:
"图片"
}
};
...
...
@@ -26,9 +26,10 @@ export const partyInformationConfig = {
* 备注:
*/
export
const
activityInfoConfig
=
{
partyActivityType
:{
key
:
"党建活动类型"
},
activityStartTime
:{
key
:
"活动开始时间"
},
activityEndTime
:{
key
:
"活动结束时间"
},
title
:{
key
:
"党建活动类型"
},
partyActivityType
:{
key
:
"党建活动类型id"
},
activityStartTime
:{
key
:
"活动开始时间"
,
changeDate
:
true
},
activityEndTime
:{
key
:
"活动结束时间"
,
changeDate
:
true
},
activityAdd
:{
key
:
"活动地点"
},
activityHost
:
{
key
:
"活动主持人"
},
activityNoteTaker
:{
key
:
"活动记录人"
},
...
...
@@ -45,10 +46,10 @@ export const activityInfoConfig = {
* 备注:
*/
export
const
moveAboutInfoConfig
=
{
id
:{
key
:
"i
d"
},
oId
:{
key
:
"oI
d"
},
partyActivityType
:{
key
:
"党建活动类型"
},
activityStartTime
:{
key
:
"活动时间"
},
activityEndTime
:{
key
:
"活动结束时间"
},
activityStartTime
:{
key
:
"活动时间"
,
changeDate
:
true
},
activityEndTime
:{
key
:
"活动结束时间"
,
changeDate
:
true
},
activityAdd
:{
key
:
"活动地点"
},
activityStatus
:{
key
:
"活动状态"
}
}
...
...
src/config/systemClass.ts
View file @
42da2466
...
...
@@ -11,11 +11,4 @@ export class ServerConfig {
/**小程序相关配置 */
getOpenIdUrl
:
string
;
appId
:
string
;
/**短信相关配置 */
smsSDKId
:
number
;
smsAppKey
:
string
;
smsSign
:
string
;
smsModelChangePwd
:
number
;
smsModelPointOut
:
number
;
smsModelInitPointOut
:
number
;
}
\ No newline at end of file
src/data/organizationalLife.ts
View file @
42da2466
...
...
@@ -15,9 +15,10 @@ const organizationalLifeSchema = new Schema({
activityAdd
:
String
,
//活动地点
activityHost
:
{
type
:[
String
],
default
:[]},
//活动主持人
activityNoteTaker
:{
type
:[
String
],
default
:[]},
//活动记录人
leavePartyMember
:
[
Number
]
,
//请假党员 非必填
participatingPartyMember
:
[
Number
]
,
//参与党员
leavePartyMember
:
{
type
:[
String
],
default
:[]}
,
//请假党员 非必填
participatingPartyMember
:
{
type
:[
String
],
default
:[]}
,
//参与党员
participationRecord
:
String
,
//活动记录
branchName
:
Number
,
//支部名称
})
...
...
@@ -61,50 +62,16 @@ export async function save(throwError=false) {
* @param param 查询参数
* @returns
*/
export
async
function
findOrganizationalLifeList
(
param
)
{
export
async
function
findOrganizationalLifeList
(
param
:
object
)
{
return
await
organizationalLifeModel
.
find
(
param
);
}
/**
* 获取正在进行的组织生活列表
* 开始时间小于当前时间,结束时间大于当前时间
* gt:大于某个值的数据、lt:小于某个值的数据
* @returns
*/
export
async
function
findAfootActivityList
(
partyActivityType
:
number
)
{
let
nowTime
=
new
Date
().
valueOf
();
return
await
organizationalLifeModel
.
find
({
"$and"
:[
{
"activityStartTime"
:{
"$lt"
:(
nowTime
)}},
{
"activityEndTime"
:{
"$gt"
:(
nowTime
)}},
{
partyActivityType
}
]});
}
/**
* 获取即将开展的组织生活列表
* 开始时间大于当前时间
* @returns
*/
export
async
function
findBeginInActivityList
(
partyActivityType
:
number
)
{
let
nowTime
=
new
Date
().
valueOf
();
return
await
organizationalLifeModel
.
find
({
"activityStartTime"
:{
"$gt"
:(
nowTime
)},
partyActivityType
});
}
/**
* 获取已经开展的组织生活列表
* 结束时间小于当前时间
* @returns
*/
export
async
function
findStartedActivityList
(
partyActivityType
:
number
)
{
let
nowTime
=
new
Date
().
valueOf
();
return
await
organizationalLifeModel
.
find
({
"activityEndTime"
:{
"$lt"
:(
nowTime
)},
partyActivityType
});
}
/**
* 创建活动
* @param param 所添加表单 需要提前验证
*/
export
async
function
createActivity
(
param
)
{
export
async
function
createActivity
(
param
:
object
)
{
await
organizationalLifeModel
.
create
(
param
);
}
...
...
@@ -114,7 +81,7 @@ export async function createActivity(param) {
* @param id id 唯一标识
* @returns
*/
export
async
function
findEventDetails
(
oId
)
{
export
async
function
findEventDetails
(
oId
:
number
)
{
return
await
organizationalLifeModel
.
findOne
({
oId
});
}
...
...
@@ -126,4 +93,14 @@ export async function findEventDetails(oId) {
*/
export
async
function
deleteActivity
(
oId
:
number
)
{
return
await
organizationalLifeModel
.
deleteOne
({
oId
}).
exec
();
}
/**
* 获取符合条件的组织生活活动数量
* @param param 查询参数
* @returns number 数据数量
*/
export
async
function
groupFindActivityCount
(
param
:
object
)
{
return
await
organizationalLifeModel
.
find
(
param
).
countDocuments
();
}
\ No newline at end of file
src/data/partyInformation.ts
View file @
42da2466
...
...
@@ -11,7 +11,7 @@ const partyInformationSchema = new Schema({
pId
:
{
type
:
Number
,
index
:{
unique
:
true
}},
//自增的id
informationType
:
Number
,
//党建资讯类型 1:医院文化、2:精神文明、3:科普知识、4、先进典型
title
:
String
,
//资讯标题
branch
:
String
,
//支部
branch
Name
:
Number
,
//支部名称
informationTime
:
Number
,
//资讯时间
detailedInformation
:
String
,
//资讯详细
img
:
{
type
:
String
,
data
:
Buffer
},
//图片
...
...
@@ -53,10 +53,11 @@ export async function save(throwError=false) {
/**
* 根据党建资讯类型查询的党建资讯列表
* @param informationType 党建资讯类型 1:医院文化、2:精神文明、3:科普知识、4、先进典型
* @param branchName 支部id
* @returns
*/
export
async
function
findPartyInformationListByType
(
informationType
:
number
)
{
return
await
partyInformationModel
.
find
({
informationType
});
export
async
function
findPartyInformationListByType
(
informationType
:
number
,
branchName
:
number
)
{
return
await
partyInformationModel
.
find
({
informationType
,
branchName
});
}
...
...
@@ -65,6 +66,6 @@ export async function findPartyInformationListByType(informationType:number) {
* @param param 所添加表单 需要提前验证
* @returns
*/
export
async
function
createPartyInformation
(
param
)
{
export
async
function
createPartyInformation
(
param
:
object
)
{
return
await
partyInformationModel
.
create
(
param
);
}
\ No newline at end of file
src/data/partyMember.ts
View file @
42da2466
...
...
@@ -17,10 +17,11 @@ const partyMemberSchema = new Schema({
administrativePosition
:
Number
,
//行政职务 1:
remarks
:
String
,
//备注
entryType
:
Number
,
//名册录入类型 1:正式党员录入、2:入党积极分子录入、3:入党申请录入
partyPositions
:
[
Number
],
//党内职务 多选 --正式党员录入 1:书记、2:副书记、3:纪检委员、4:组织委员、5:宣传委员
、6:党员、7:入党积极分子、8:预备党员
partyPositions
:
[
Number
],
//党内职务 多选 --正式党员录入 1:书记、2:副书记、3:纪检委员、4:组织委员、5:宣传委员
listedAsActivistsTime
:
Number
,
//列为积极份子时间 --入党积极份子录入
talkTime
:
Number
,
//谈话时间 --入党申请录入
branchName
:
Number
,
//支部名称
/**-----用户相关----- */
loginId
:
{
type
:
String
,
index
:
true
},
//登录账号
pwd
:
String
,
//密码
...
...
@@ -67,7 +68,7 @@ export async function save(throwError=false) {
* @param param 查询参数
* @returns
*/
export
async
function
findPartyMemberAll
(
param
)
{
export
async
function
findPartyMemberAll
(
param
:
object
)
{
return
await
partyMemberModel
.
find
(
param
);
}
...
...
@@ -88,7 +89,7 @@ export async function findPartyMemberByLoginId(loginId:string) {
* @returns number 数据数量
*/
export
async
function
groupFindPartyMemberCount
(
param
:
object
)
{
return
await
partyMemberModel
.
find
(
param
).
count
();
return
await
partyMemberModel
.
find
(
param
).
count
Documents
();
}
...
...
@@ -97,14 +98,14 @@ export async function groupFindPartyMemberCount(param:object) {
* @param partyPositions 党内职务 [1, 2]
* @returns
*/
export
async
function
getBaseListByPartyPositions
(
partyPositions
)
{
return
await
partyMemberModel
.
find
({
partyPositions
:{
$in
:
partyPositions
}});
export
async
function
getBaseListByPartyPositions
(
partyPositions
:[
number
],
branchName
:
number
)
{
return
await
partyMemberModel
.
find
({
partyPositions
:{
$in
:
partyPositions
}
,
branchName
});
}
/**
*
* @param id
根据id查询党员名称
*
根据id查询党员名称
* @param id
党员id
* @returns
*/
export
async
function
getNameById
(
id
:
number
)
{
...
...
@@ -117,7 +118,7 @@ export async function getNameById(id:number) {
* @param param entryType 党员类型
* @returns
*/
export
async
function
getPartyMemberListByEntryType
(
param
)
{
export
async
function
getPartyMemberListByEntryType
(
param
:
object
)
{
return
await
partyMemberModel
.
find
(
param
);
}
...
...
@@ -126,6 +127,6 @@ export async function getPartyMemberListByEntryType(param) {
* 创建正式党员信息
* @param param 所添加表单 需要提前验证
*/
export
async
function
createPartyMember
(
param
)
{
export
async
function
createPartyMember
(
param
:
object
)
{
return
await
partyMemberModel
.
create
(
param
);
}
src/main.ts
View file @
42da2466
import
{
initConfig
,
systemConfig
}
from
"./config/systemConfig"
;
import
{
initDB
}
from
"./db/dbInit"
;
import
{
httpServer
}
from
"./net/http_server"
;
import
{
getPwdMd5
,
getToken
}
from
"./tools/system"
;
import
{
getPwdMd5
,
getToken
,
md5PwdStr
}
from
"./tools/system"
;
async
function
lanuch
()
{
// test();
...
...
@@ -15,9 +15,24 @@ async function lanuch() {
}
function
test
()
{
let
pwd
=
getPwdMd5
(
"13572364589"
,
"364589"
);
let
token
=
getToken
(
"13572364589"
);
let
p
=
md5PwdStr
(
"364792"
);
let
pwd
=
getPwdMd5
(
"18372364792"
,
"d15285439a37af6194be4686ea1fed84"
);
let
token
=
getToken
(
"364764"
);
console
.
log
();
}
lanuch
();
\ No newline at end of file
lanuch
();
let
a
=
[
// "36dea1f3c44ab89798d3b3f7fb14667d",
// "f7be11973c1671079e702ae0adb661f1",
// "68ab8ceeed13831c7f8c09e24cce4f55",
// "f18a042255cfab614fad98bd45ab35b3",
// "952b91f0ce058bb282320bfac470adbf",
// "c1addb426c051200a141132c8344288e",
// "42fb19781c7c4b49cc1b688ba6c44502",
// "8841d2865336f378e07c7c7e292ab66c",
// "c0b6b38cdfacae5e511b4efababe7a0b",
// "c35caf37f74eb90ed8c79cb87be4d57b",
// "5a7f12ce6a584d35cac5b76c8b4fbd5a",
// "ee160a40b5f85883a5c89e6cc469108f"
]
\ No newline at end of file
src/middleware/user.ts
View file @
42da2466
...
...
@@ -14,13 +14,14 @@ export async function checkAppletToken(req, res, next) {
if
(
!
req
.
headers
)
req
.
headers
=
{};
const
reqToken
=
req
.
headers
.
token
;
const
loginId
=
req
.
headers
.
loginI
d
||
""
;
const
userId
=
req
.
headers
.
useri
d
||
""
;
if
(
!
loginId
)
return
next
(
new
BizError
(
ERRORENUM
.
身份验证失败
,
`loginId:
${
login
Id
}
token:
${
reqToken
}
`
));
if
(
!
userId
)
return
next
(
new
BizError
(
ERRORENUM
.
身份验证失败
,
`loginId:
${
user
Id
}
token:
${
reqToken
}
`
));
let
partyMemberInfo
=
await
findPartyMemberAll
({
login
Id
});
if
(
!
partyMemberInfo
)
return
next
(
new
BizError
(
ERRORENUM
.
非法登录
,
`loginId:
${
login
Id
}
token:
${
reqToken
}
`
));
let
partyMemberInfo
=
await
findPartyMemberAll
({
id
:
user
Id
});
if
(
!
partyMemberInfo
)
return
next
(
new
BizError
(
ERRORENUM
.
非法登录
,
`loginId:
${
user
Id
}
token:
${
reqToken
}
`
));
//todo req.headers.userid = 唯一标识 partyMemberInfo.id
req
.
headers
.
userid
=
partyMemberInfo
.
id
;
next
();
}
\ No newline at end of file
src/routers/abi/organizationalLife.ts
0 → 100644
View file @
42da2466
/**
* 公共资源路由
*/
import
*
as
organizationalLifeBiz
from
'../../biz/abi/organizationalLife'
;
import
*
as
asyncHandler
from
'express-async-handler'
;
export
function
setRouter
(
httpServer
)
{
httpServer
.
post
(
'/abi/activity'
,
asyncHandler
(
activity
));
}
async
function
activity
(
req
,
res
)
{
let
result
=
await
organizationalLifeBiz
.
getActivityCount
();
res
.
success
(
result
);
}
\ No newline at end of file
src/routers/applet/base.ts
View file @
42da2466
...
...
@@ -5,10 +5,11 @@
import
*
as
baseBiz
from
'../../biz/applet/base'
;
import
*
as
asyncHandler
from
'express-async-handler'
;
import
{
eccReqParamater
}
from
'../../util/verificationParam'
;
import
{
checkAppletToken
}
from
'../../middleware/user'
;
export
function
setRouter
(
httpServer
)
{
httpServer
.
post
(
'/partymember/home'
,
asyncHandler
(
homeBase
));
httpServer
.
post
(
'/partymember/information'
,
asyncHandler
(
informationBase
));
httpServer
.
post
(
'/partymember/home'
,
checkAppletToken
,
asyncHandler
(
homeBase
));
httpServer
.
post
(
'/partymember/information'
,
checkAppletToken
,
asyncHandler
(
informationBase
));
}
...
...
@@ -18,8 +19,8 @@ export function setRouter(httpServer) {
* @param res
*/
async
function
homeBase
(
req
,
res
)
{
let
uId
=
req
.
headers
.
userid
;
let
baseInfo
=
await
baseBiz
.
homeData
(
uId
);
let
branchName
=
parseInt
(
req
.
headers
.
branchid
)
;
let
baseInfo
=
await
baseBiz
.
homeData
(
branchName
);
res
.
success
(
baseInfo
);
}
...
...
@@ -30,9 +31,10 @@ async function homeBase(req, res) {
* @param res
*/
async
function
informationBase
(
req
,
res
)
{
let
branchName
=
req
.
headers
.
branchid
;
let
reqConf
=
{
informationType
:
'Number'
};
let
{
informationType
}
=
eccReqParamater
(
reqConf
,
req
.
body
);
let
informationInfo
=
await
baseBiz
.
informationData
(
informationType
);
let
informationInfo
=
await
baseBiz
.
informationData
(
informationType
,
branchName
);
res
.
success
(
informationInfo
);
}
\ No newline at end of file
src/routers/applet/organizationalLife.ts
View file @
42da2466
...
...
@@ -4,15 +4,17 @@
import
*
as
organizationalLifeBiz
from
'../../biz/applet/partyMember/organizationalLife'
;
import
*
as
asyncHandler
from
'express-async-handler'
;
import
{
eccReqParamater
}
from
'../../util/verificationParam'
;
import
{
eccReqParamater
,
testEccReqParamater
}
from
'../../util/verificationParam'
;
import
{
checkAppletToken
}
from
'../../middleware/user'
;
export
function
setRouter
(
httpServer
)
{
httpServer
.
post
(
'/partymember/organizationallife/list'
,
asyncHandler
(
organizationalLifeList
));
httpServer
.
post
(
'/partymember/organizationallife/create'
,
asyncHandler
(
createOrganizationalLife
));
httpServer
.
post
(
'/partymember/organizationallife/details'
,
asyncHandler
(
detailsList
));
httpServer
.
post
(
'/partymember/organizationallife/update'
,
asyncHandler
(
updateOrganizationalLife
));
httpServer
.
post
(
'/partymember/organizationallife/list'
,
checkAppletToken
,
asyncHandler
(
organizationalLifeList
));
httpServer
.
post
(
'/partymember/organizationallife/create'
,
checkAppletToken
,
asyncHandler
(
createOrganizationalLife
));
httpServer
.
post
(
'/partymember/organizationallife/details'
,
checkAppletToken
,
asyncHandler
(
detailsList
));
httpServer
.
post
(
'/partymember/organizationallife/update'
,
checkAppletToken
,
asyncHandler
(
updateOrganizationalLife
));
// httpServer.post('/applet/organizationallife/partymembernamelist', asyncHandler(getPartyMemberNameList));
httpServer
.
post
(
'/partymember/organizationallife/partymembernamelist'
,
asyncHandler
(
getAllPartyMember
));
httpServer
.
post
(
'/partymember/organizationallife/partymembernamelist'
,
checkAppletToken
,
asyncHandler
(
getAllPartyMember
));
httpServer
.
post
(
'/partymember/organizationalllife/delete'
,
checkAppletToken
,
asyncHandler
(
deleteOrganizationalLife
));
}
...
...
@@ -24,8 +26,9 @@ export function setRouter(httpServer) {
async
function
organizationalLifeList
(
req
,
res
)
{
let
reqConf
=
{
type
:
'Number'
,
name
:
'Number'
};
let
{
type
,
name
}
=
eccReqParamater
(
reqConf
,
req
.
body
,
[
"name"
]);
let
branchName
=
req
.
headers
.
branchid
;
let
result
=
await
organizationalLifeBiz
.
getOrganizationalLifeList
(
type
,
name
);
let
result
=
await
organizationalLifeBiz
.
getOrganizationalLifeList
(
type
,
name
,
branchName
);
res
.
success
(
result
);
}
...
...
@@ -38,8 +41,9 @@ async function organizationalLifeList(req, res) {
async
function
createOrganizationalLife
(
req
,
res
)
{
let
reqConf
=
{
form
:
'Object'
};
let
{
form
}
=
eccReqParamater
(
reqConf
,
req
.
body
);
let
branchName
=
req
.
headers
.
branchid
;
let
result
=
await
organizationalLifeBiz
.
createOrganizationalLife
(
form
);
let
result
=
await
organizationalLifeBiz
.
createOrganizationalLife
(
branchName
,
form
);
res
.
success
(
result
);
}
...
...
@@ -95,4 +99,18 @@ async function getPartyMemberNameList(req, res) {
async
function
getAllPartyMember
(
req
,
res
)
{
let
result
=
await
organizationalLifeBiz
.
getAllPartyMember
();
res
.
success
(
result
);
}
\ No newline at end of file
}
/**
* 删除组织生活活动详情
* @param req
* @param res
*/
async
function
deleteOrganizationalLife
(
req
,
res
)
{
let
reqConf
=
{
oId
:
"Number"
};
let
{
oId
}
=
eccReqParamater
(
reqConf
,
req
.
body
);
let
result
=
await
organizationalLifeBiz
.
deleteOrganizationalLife
(
oId
);
res
.
success
(
result
);
}
src/routers/applet/partyInforMation.ts
View file @
42da2466
...
...
@@ -5,9 +5,10 @@
import
*
as
partyInforMationBiz
from
'../../biz/applet/partyMember/partyInforMation'
;
import
*
as
asyncHandler
from
'express-async-handler'
;
import
{
eccReqParamater
}
from
'../../util/verificationParam'
;
import
{
checkAppletToken
}
from
'../../middleware/user'
;
export
function
setRouter
(
httpServer
)
{
httpServer
.
post
(
'/partymember/partyInforMation/create'
,
asyncHandler
(
createPartyInformation
));
httpServer
.
post
(
'/partymember/partyInforMation/create'
,
checkAppletToken
,
asyncHandler
(
createPartyInformation
));
}
...
...
src/routers/applet/partyMember.ts
View file @
42da2466
...
...
@@ -5,9 +5,10 @@
import
*
as
partyMemberBiz
from
'../../biz/applet/partyMember/partyMember'
;
import
*
as
asyncHandler
from
'express-async-handler'
;
import
{
eccReqParamater
}
from
'../../util/verificationParam'
;
import
{
checkAppletToken
}
from
'../../middleware/user'
;
export
function
setRouter
(
httpServer
)
{
httpServer
.
post
(
'/partymember/partymember/create'
,
asyncHandler
(
createPartyMenber
));
httpServer
.
post
(
'/partymember/partymember/create'
,
checkAppletToken
,
asyncHandler
(
createPartyMenber
));
}
...
...
src/routers/public.ts
View file @
42da2466
...
...
@@ -4,6 +4,7 @@
import
*
as
asyncHandler
from
'express-async-handler'
;
import
*
as
configEnum
from
"../config/enum"
;
import
*
as
clientConfigEnum
from
"../config/clientEnum"
;
export
function
setRouter
(
httpServer
)
{
httpServer
.
post
(
'/public/partypositions'
,
asyncHandler
(
partyPositions
));
...
...
@@ -39,11 +40,11 @@ function partyPositions(req, res) {
*/
function
type
(
req
,
res
)
{
let
dataList
=
[];
for
(
let
key
in
configEnum
.
TYPE
)
{
for
(
let
key
in
c
lientC
onfigEnum
.
TYPE
)
{
let
anyKey
:
any
=
key
;
if
(
isNaN
(
anyKey
))
{
let
keyStr
=
key
;
dataList
.
push
({
key
:
keyStr
,
value
:
configEnum
.
TYPE
[
key
]});
dataList
.
push
({
key
:
keyStr
,
value
:
c
lientC
onfigEnum
.
TYPE
[
key
]});
}
}
res
.
success
(
dataList
);
...
...
src/routers/router.ts
View file @
42da2466
...
...
@@ -8,6 +8,7 @@ import * as appletOrganizationalLifeRouters from '../routers/applet/organization
import
*
as
appletPartyMemberRouters
from
'../routers/applet/partyMember'
;
import
*
as
appletPartyInforMationRouters
from
'../routers/applet/partyInforMation'
;
import
*
as
publicRouters
from
'../routers/public'
;
import
*
as
abiOrganizationalLifeRouters
from
'../routers/abi/organizationalLife'
;
export
function
setRouter
(
httpServer
){
/**小程序端 党员入口 */
...
...
@@ -20,4 +21,7 @@ export function setRouter(httpServer){
/**小程序端 公共资源 */
publicRouters
.
setRouter
(
httpServer
);
/**ABI */
abiOrganizationalLifeRouters
.
setRouter
(
httpServer
);
}
\ No newline at end of file
src/util/verificationParam.ts
View file @
42da2466
...
...
@@ -205,3 +205,15 @@ export function eccReqParamater(conf:object, param, skipKeys?) {
}
return
param
;
}
export
function
testEccReqParamater
(
conf
:
object
,
param
,
skipKeys
?)
{
skipKeys
=
skipKeys
||
[];
let
confKey
=
[];
for
(
let
key
in
conf
)
{
confKey
.
push
(
key
);
}
return
param
;
}
\ 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