Commit 137dd952 by 孙香冬

2.0

parent d93495f2
......@@ -12,5 +12,6 @@
<appId>wxbfc5695971b3e395</appId>
<!-- 获取小程序的openId地址 -->
<getOpenIdUrl>https://api.weixin.qq.com/sns/jscode2session</getOpenIdUrl>
<imgUrl>http://123.207.147.179:7079/</imgUrl>
</config>
\ No newline at end of file
......@@ -6,6 +6,7 @@
import * as partyMemberData from '../../data/partyMember';
import * as partyInformationData from '../../data/partyInformation';
import * as configEnum from "../../config/enum";
import * as clientConfigEnum from "../../config/clientEnum";
import * as splitResultConfig from "../../config/splitResultConfig";
import { extractData } from '../../util/piecemeal';
import { changeEnumValue, eccEnumValue } from '../../util/verificationEnum';
......@@ -16,6 +17,7 @@ import { systemConfig } from '../../config/systemConfig';
/**
* 主页基础数据
* 小程序端 1.0
* @param branchName 支部id
* @returns {支部名称, 党员总数, 党建指令指数, 党内职务人员列表}
*/
......@@ -26,10 +28,10 @@ export async function homeData(branchName) {
let massIndex = 87.6; //党建指令指数
let partyPositions = []; //党内职务人员
for (let key in configEnum.PARTYPOSITIONS) {
for (let key in clientConfigEnum.PARTYPOSITIONS) {
let anyKey:any = key;
if (isNaN(anyKey)) { //枚举key key = string
const EnumValue = parseInt(configEnum.PARTYPOSITIONS[key])
const EnumValue = parseInt(clientConfigEnum.PARTYPOSITIONS[key])
let dataBaseList = await partyMemberData.getBaseListByPartyPositions( [EnumValue], [branchName] );
let nameList = [];
......@@ -54,9 +56,10 @@ export async function homeData(branchName) {
/**
* 根据资讯类型查询党建资讯列表
* 小程序端 1.0
* @param informationType 党建资讯类型
* @param branchName 支部id
* @returns
* @returns dataList:[返回字段参考splitResultConfig文件中的partyInformamtionConfig配置]
*/
export async function informationData(informationType:number, branchName) {
if (informationType) eccEnumValue("党建资讯列表查询", "资讯类型", configEnum.INFORMATIONTYPE, informationType);
......
/**
* 小程序
* 支部制度
*/
import * as branchSystemData from '../../../data/branchSystem';
import { extractData } from "../../../util/piecemeal";
import * as verificationEnumTools from "../../../util/verificationEnum";
import * as splitResultConfig from "../../../config/splitResultConfig";
import * as configEnum from "../../../config/enum";
import { eccFormParam } from '../../../util/verificationParam';
import * as eccFormParamConfig from "../../../config/eccFormParamConfig";
import moment = require('moment');
/**
* 支部制度列表信息
* 小程序端 2.0
* @param systemTitle 制度标题
* @param branchName 所属支部
* @returns data:[返回字段参考splitResultConfig文件中的branchSystemConfig配置] 根据制度名称、所属支部 返回支部制度的列表
*/
export async function getBranchSystem(systemTitle:string, branchName) {
let selectParam = {};
if (systemTitle) selectParam["systemTitle"] = systemTitle;
selectParam["branchName"] = {$in: branchName};
let branchSystemInfo = await branchSystemData.findBranchSystemList(selectParam);
let data = [];
/**截取返回字段 */
branchSystemInfo.forEach (info => {
let changeData:any = extractData(splitResultConfig.branchSystemConfig, info, true);
data.push(changeData);
})
return data;
}
/**
* 支部制度详细信息
* 小程序端 2.0
* @param bId 支部制度id
* @returns changeData:[返回字段参考splitResultConfig文件中的branchSystemDetailsConfig配置] 根据支部制度id 返回支部制度的详细信息
*/
export async function getBranchSystemDetsils(bId:number) {
let branchSystemInfo = await branchSystemData.findBranchSystemById(bId);
/**截取返回字段 */
let changeData:any = extractData(splitResultConfig.branchSystemDetailsConfig, branchSystemInfo, true);
if (changeData.branchName) changeData.branchName = verificationEnumTools.changeEnumValue(configEnum.BRANCHNAMETYPE, changeData.branchName);
if (changeData.periodOfValidity) changeData.periodOfValidity = moment(changeData.periodOfValidity).format("YYYY-MM-DD");
if (changeData.releaseTime) changeData.releaseTime = moment(changeData.releaseTime).format("YYYY-MM-DD");
return changeData;
}
/**
* 添加制度
* 小程序端 2.0
* @param branchName 支部名称
* @param param 添加支部制度表单
* 表单参数说明查看config/eccFormParamConfig文件里的CreateBranchSystemConfig配置
* @returns {isSuccess: true} 是否创建成功
*/
export async function createBranchSystem(branchName, param) {
/**校验表单参数 */
eccFormParam("添加制度", eccFormParamConfig.CreateBranchSystemConfig, param);
if (branchName && branchName.length > 0) verificationEnumTools.eccEnumValue("新增支部制度", "支部名称", configEnum.BRANCHNAMETYPE, branchName);
param.branchName = branchName;
await branchSystemData.createBranchSystem(param);
return {isSuccess: true};
}
\ No newline at end of file
......@@ -18,12 +18,14 @@ import { ERRORENUM } from "../../../config/errorEnum";
moment.suppressDeprecationWarnings = true;
/**
* 组织生活列表
* 小程序端 1.0
* @param type 组织生活活动类型
* @param partyActivityType 活动名称(党建活动类型)
* @param branchName 支部名称
* @returns 根据传入的活动状态返回不同的列表
* @returns data:[返回字段参考splitResultConfig文件中的moveAboutInfoConfig配置] 根据传入的活动状态返回不同的列表
*/
export async function getOrganizationalLifeList(type:number, partyActivityType:number, branchName) {
/**将枚举值转为枚举文本 */
......@@ -42,8 +44,8 @@ export async function getOrganizationalLifeList(type:number, partyActivityType:n
let dbList = await organizationalLifeData.findOrganizationalLifeList(selectParam);
/**格式化结果 */
let data = [];
/**截取返回字段 */
dbList.forEach(info => {
let changeData:any = extractData(splitResultConfig.moveAboutInfoConfig, info, true);
changeData.partyActivityType = verificationEnumTools.changeEnumValue(configEnum.ACTIVITYTYPE, info.partyActivityType);
......@@ -60,11 +62,14 @@ export async function getOrganizationalLifeList(type:number, partyActivityType:n
/**
* 创建组织生活活动
* @param param {党建活动类型, 活动开始时间, 活动结束时间, 活动地点, 活动主持人, 活动记录人, 请假党员, 参与党员, 活动记录}
* 参数类型 { number, number, number, string, [string], [string], [number], [number], string}
* @returns {isSuccess: true}
* 小程序端 1.0
* @param branchName 支部名称
* @param param 创建组织生活活动表单
* 表单参数说明查看config/eccFormParamConfig文件里的CreateActivityConfig配置
* @returns {isSuccess: true} 是否创建成功
*/
export async function createOrganizationalLife(branchName, param) {
/**校验表单参数 */
eccFormParam("创建组织生活活动", eccFormParamConfig.CreateActivityConfig, param)
if (branchName && branchName.length > 0) verificationEnumTools.eccEnumValue("创建组织生活活动", "支部名称", configEnum.BRANCHNAMETYPE, branchName);
verificationEnumTools.eccEnumValue('创建组织生活活动的党建活动类型', 'partyActivityType', configEnum.ACTIVITYTYPE, param.partyActivityType);
......@@ -77,8 +82,9 @@ export async function createOrganizationalLife(branchName, param) {
/**
* 组织生活详细信息
* 小程序端 1.0
* @param oId 编号
* @returns changeData:{返回字段参考 splitResultConfig文件中的组织生活详细信息配置}
* @returns changeData:{返回字段参考splitResultConfig文件中的组织生活详细信息配置} 根据传入的组织生活oId返回详细信息
*/
export async function getOrganizationalLifeById(oId:number) {
let activityInfo = await organizationalLifeData.findEventDetails(oId);
......@@ -94,9 +100,10 @@ export async function getOrganizationalLifeById(oId:number) {
/**
* 修改组织生活活动详情
* 小程序端 1.0
* @param oId 组织生活id 修改对应oId的组织生活信息
* @param param {党建活动类型, 活动开始时间, 活动结束时间, 活动地点, 活动主持人, 活动记录人, 请假党员, 参与党员, 活动记录}
* 参数类型 { number, number, number, string, [string], [string], [number], [number], string}
* @param param 修改组织生活活动详情表单
* 表单参数说明查看config/eccFormParamConfig文件里的UpdateActivityFormConfig配置
* @returns {isSuccess: true}
*/
export async function updateOrganizationalLife(oId:number, param) {
......@@ -122,10 +129,12 @@ export async function updateOrganizationalLife(oId:number, param) {
/**
* 创建/修改组织生活选择党员
* 小程序端 1.0
* 在使用枚举的情况下 参数中不能出现枚举以外的值
* @param type 组织生活活动类型
* @param name 党员姓名 用于输入党员姓名查询
* @returns 根据传入的type返回不同党员信息
* @returns data:[返回字段参考splitResultConfig文件中的partyMemberConfig配置] 根据传入的type返回不同党员信息
* 停用
*/
export async function getPartyMemberNameList(type:number, name:string) {
let selectParam:any = {};
......@@ -140,6 +149,7 @@ export async function getPartyMemberNameList(type:number, name:string) {
}
let data = [];
/**截取返回字段 */
partyMemberList.forEach( info => {
let changeData:any = extractData(splitResultConfig.partyMemberConfig, info, false);
changeData.partyPositions = verificationEnumTools.changeEnumValue(configEnum.PARTYPOSITIONS, info.partyPositions);
......@@ -151,11 +161,13 @@ export async function getPartyMemberNameList(type:number, name:string) {
/**
* 创建/修改组织生活选择党员
* @returns 返回所有党员信息
* 小程序端 1.0
* @returns data:[返回字段参考splitResultConfig文件中的organizationallifeConfig配置] 返回所有党员信息
*/
export async function getAllPartyMember() {
let partyMemberList = await partyMemberData.findPartyMemberAll({});
let data = [];
/**截取返回字段 */
partyMemberList.forEach( info => {
let changeData:any = extractData(splitResultConfig.organizationallifeConfig, info, false);
switch (changeData.entryType) {
......@@ -173,7 +185,6 @@ export async function getAllPartyMember() {
break;
}
// changeData.partyPositions = verificationEnumTools.changeEnumValue(configEnum.PARTYPOSITIONSICON, changeData.partyPositions);
data.push(changeData);
})
......@@ -183,6 +194,7 @@ export async function getAllPartyMember() {
/**
* 删除组织生活活动
* 小程序端 1.0
* @param oId 活动id
* @returns {isSuccess:true}
*/
......@@ -198,6 +210,7 @@ export async function deleteOrganizationalLife(oId:number) {
/**
* 组织生活活动状态
* 小程序端 1.0
* 活动状态 1:正在进行、2:即将开展、3:已经开展
* @param activityStartTime 活动开始时间
* @param activityEndTime 活动结束时间
......
......@@ -12,11 +12,14 @@ import * as configEnum from "../../../config/enum";
/**
* 创建党建资讯
* @param param {informationType: 党建资讯类型, title: "资讯标题", branchName: "支部名称", informationTime: 资讯时间, detailedInformation: "资讯详细", img: "资讯图片"}
* 小程序端 1.0
* @param param 创建党建资讯表单
* 表单参数说明查看config/eccFormParamConfig文件里的CreatePartyInformation配置
* @return {isSuccess: true}
*/
export async function createPartyInformation(param) {
eccFormParam("创建党建资讯", eccFormParamConfig.createPartyInformation, param)
/**校验表单参数 */
eccFormParam("创建党建资讯", eccFormParamConfig.CreatePartyInformation, param)
let partyInformation = await partyInformationData.createPartyInformation(param);
verificationEnumTools.eccEnumValue('党建资讯类型', 'informationType', configEnum.INFORMATIONTYPE, param.informationType);
......
......@@ -18,8 +18,9 @@ import { ERRORENUM } from "../../../config/errorEnum";
/**
* 获取党员名册
* 小程序端 2.0
* @param branchName 支部id
* @returns
* @returns 返回格式 {nameList:[返回字段参考splitResultConfig文件中的partyMemberConfig配置], partyMemberCount:{目前党员人数}}
*/
export async function getPartyMemberName(branchName) {
let partyBranchName = verificationEnumTools.changeEnumValue(configEnum.BRANCHNAMETYPE, branchName);
......@@ -32,6 +33,7 @@ export async function getPartyMemberName(branchName) {
let partyMemberList = await partyMemberData.findPartyMemberAll({branchName:{$in: branchName }});
let nameList = [];
/**截取返回字段 */
partyMemberList.forEach( info => {
let changeData:any = extractData(splitResultConfig.partyMemberConfig, info, false);
switch (changeData.entryType) {
......@@ -62,22 +64,51 @@ export async function getPartyMemberName(branchName) {
/**
* 创建党员基础信息
* @param param {name: "姓名", sex: 性别, birthDate: 出生年月, phone: "手机号码", levelOfEducation: "文化程度", partyJoiningTime: 入党时间, administrativePosition: 行政职务,
* remarks: "备注", entryType: 名册录入类型, partyPositions: [党内职务, ...], listedAsActivistsTime: 列为积极份子时间, talkTime: 谈话时间, loginId: "登录账号"}
* 小程序端 2.0
* @param param 创建党员基础信息表单
* 名册录入类型为正式党员 表单参数依据config/eccFormParamConfig文件里的CreateEntryTypeOneFormConfig配置
* 名册录入类型为入党积极分子 表单参数依据config/eccFormParamConfig文件里的CreateEntryTypeTwoFormConfig配置
* 名册录入类型为预备党员 表单参数依据config/eccFormParamConfig文件里的CreateEntryTypeThreeFormConfig配置
* @param entryType 名册录入类型
* @param branchName 支部名称
* @return {isSuccess: true}
*/
export async function createPartyMember(param, entryType, branchName) {
eccFormParam("创建正式党员录入", eccFormParamConfig.CreatePartyMemberFormConfig, param);
verificationEnumTools.eccEnumValue('正式党员录入性别', 'partyActivityType', configEnum.SEX, param.sex);
verificationEnumTools.eccEnumValue('正式党员录入文化程度', 'levelOfEducation', configEnum.DEGREE, param.levelOfEducation);
verificationEnumTools.eccEnumValue('正式党员录入行政职务', 'administrativePosition', configEnum.ADMINISTRATIVEPOSITION, param.administrativePosition);
verificationEnumTools.eccEnumValue('正式党员录入党内职务', 'partyPositions', configEnum.PARTYPOSITIONS, param.partyPositions);
/**校验表单参数 */
if (entryType == configEnum.ENTRYTYPE.正式党员) {
eccFormParam("创建正式党员录入", eccFormParamConfig.CreateEntryTypeOneFormConfig, param);
if(!param.partyPositions) param.partyPositions.push(configEnum.PARTYPOSITIONSICON.党员);
verificationEnumTools.eccEnumValue('正式党员录入党内职务', 'partyPositions', configEnum.PARTYPOSITIONSICON, param.partyPositions);
param.entryType = configEnum.ENTRYTYPE.正式党员;
param.partyState = configEnum.PARTYSTATE.在党;
} else if (entryType == configEnum.ENTRYTYPE.入党积极分子) {
eccFormParam("创建入党积极分子录入", eccFormParamConfig.CreateEntryTypeTwoFormConfig, param);
if (!param.partyPositions || param.partyPositions.length < 1) param.partyPositions.push(configEnum.PARTYPOSITIONSICON.入党积极分子);
// let partyPositions = [configEnum.PARTYPOSITIONSICON.入党积极分子];
// if (param.partyPositions.toString() != partyPositions.toString()) throw new BizError(ERRORENUM.参数不符合规则, `${param.partyPositions} 创建入党积极分子的党内职务人员类型不符合规则`);
verificationEnumTools.eccEnumValue('入党积极分子录入党内职务', 'partyPositions', configEnum.PARTYPOSITIONSICON, param.partyPositions);
param.entryType = configEnum.ENTRYTYPE.入党积极分子;
} else if (entryType == configEnum.ENTRYTYPE.预备党员) {
eccFormParam("创建预备党员录入", eccFormParamConfig.CreateEntryTypeThreeFormConfig, param);
if (!param.partyPositions || param.partyPositions.length < 1) param.partyPositions.push(configEnum.PARTYPOSITIONSICON.预备党员);
// let partyPositions = [configEnum.PARTYPOSITIONSICON.预备党员];
// if (param.partyPositions.toString() != partyPositions.toString() ) throw new BizError(ERRORENUM.参数不符合规则, `${param.partyPositions} 创建预备党员的党内职务人员类型不符合规则`);
verificationEnumTools.eccEnumValue('预备党员录入党内职务', 'partyPositions', configEnum.PARTYPOSITIONSICON, param.partyPositions);
param.entryType = configEnum.ENTRYTYPE.预备党员;
}
verificationEnumTools.eccEnumValue('正式党员录入所属科室', 'department', configEnum.DEDPARTMENT, param.department);
verificationEnumTools.eccEnumValue('正式党员录入行政职务', 'administrativePosition', configEnum.ADMINISTRATIVEPOSITION, param.administrativePosition);
verificationEnumTools.eccEnumValue('正式党员录入文化程度', 'levelOfEducation', configEnum.DEGREE, param.levelOfEducation);
verificationEnumTools.eccEnumValue('正式党员录入性别', 'partyActivityType', configEnum.SEX, param.sex);
verificationEnumTools.eccEnumValue('正式党员名册录入类型', 'entryType', configEnum.ENTRYTYPE, entryType);
if (entryType) param.entryType = entryType;
if (branchName) param.branchName = branchName;
let partyMemberInfo:any = await partyMemberData.createPartyMember(param);
......@@ -96,12 +127,15 @@ export async function getPartyMemberName(branchName) {
/**
* 党员详情
* 小程序端 2.0
* @param id 党员id
* @return
* @returns changeData:{返回字段参考splitResultConfig文件中的partyMemberDetailsConfig配置} 根据党员id返回党员详细信息
*/
export async function partyMemberDetails(id:number) {
let partyMemberList = await partyMemberData.findPartyMemberById(id);
let changeData:any = {};
/**截取返回字段 */
partyMemberList.forEach( info => {
changeData = extractData(splitResultConfig.partyMemberDetailsConfig, info, false);
switch (changeData.entryType) {
......@@ -122,9 +156,11 @@ export async function partyMemberDetails(id:number) {
changeData.sex = verificationEnumTools.changeEnumValue(configEnum.SEX, info.sex);
changeData.administrativePosition = verificationEnumTools.changeEnumValue(configEnum.ADMINISTRATIVEPOSITION, info.administrativePosition);
changeData.partyState = verificationEnumTools.changeEnumValue(configEnum.PARTYSTATE, info.partyState);
changeData.levelOfEducation = verificationEnumTools.changeEnumValue(configEnum.DEGREE, info.levelOfEducation);
changeData.birthDate = moment(info.birthDate).format("YYYY年MM月DD日");
changeData.partyJoiningTime = moment(info.partyJoiningTime).format("YYYY年MM月DD日");
//changeData.study 学习相关数据,暂时写死假数据
changeData.study = [
{key:"学习排名", value:getValueByLength(1)},
{key:"学习课时", value:getValueByLength(2)},
......@@ -143,6 +179,7 @@ export async function partyMemberDetails(id:number) {
/**
* 删除党员
* 小程序端 2.0
* @param id 党员id
* @returns {isSuccess:true}
*/
......@@ -158,9 +195,6 @@ export async function partyMemberDetails(id:number) {
/**
* 随机数生成假数据
* @param length 假数据长度
......
......@@ -17,9 +17,10 @@ import { BizError } from '../../../util/bizError';
/**
* 党建先锋列表信息
* 小程序端 2.0
* @param honorName 荣誉名称
* @param branchName 所属支部
* @returns vanguardList:[] 根据荣誉名称、所属支部 返回党建先锋的荣誉列表
* @returns vanguardList:[返回字段参考splitResultConfig文件中的partyVanguardConfig配置] 根据荣誉名称、所属支部 返回党建先锋的荣誉列表
*/
export async function getPartyVanguard(honorName:string, branchName) {
let selectParam = {};
......@@ -27,6 +28,7 @@ import { BizError } from '../../../util/bizError';
selectParam["branchName"] = {$in: branchName};
let partyVanguardInfo = await partyVanguardData.findPartyVanguardeList(selectParam);
let vanguardList = [];
/**截取返回字段 */
partyVanguardInfo.forEach (info => {
let changeData:any = extractData(splitResultConfig.partyVanguardConfig, info, true);
......@@ -53,12 +55,14 @@ import { BizError } from '../../../util/bizError';
/**
* 党建先锋 荣誉详细信息
* 小程序端 2.0
* @param pvId 党建先锋id
* @returns changeData:{} 根据id返回对应的荣誉详细信息
* @returns changeData:{返回字段参考splitResultConfig文件中的partyVanguardConfig配置} 根据id返回对应的荣誉详细信息
*/
export async function getPartyVanguardDetsils(pvId:number) {
let partyVanguardInfo = await partyVanguardData.findPartyVanguardById(pvId);
let changeData:any = {};
/**截取返回字段 */
changeData = extractData(splitResultConfig.partyVanguardConfig, partyVanguardInfo, true);
if (partyVanguardInfo.awardTime) changeData.awardTime = moment(partyVanguardInfo.awardTime).format("YYYY-MM-DD");
......@@ -71,14 +75,16 @@ import { BizError } from '../../../util/bizError';
/**
* 党建先锋 新增支部先锋荣誉
* @param param {荣誉级别, 荣誉名称, 授予单位, 获奖时间, 荣誉简介}
* 参数类型 {number, string, string, number, string }
* 小程序端 2.0
* @param param 新增党建支部先锋的支部先锋荣誉表单
* 表单参数说明查看config/eccFormParamConfig文件里的CreateBranchPioneerConfig配置
* @returns {isSuccess: true}
*/
export async function createBranchPioneer(branchName, param) {
/**校验表单参数 */
eccFormParam("新增支部先锋荣誉", eccFormParamConfig.CreateBranchPioneerConfig, param)
if (branchName && branchName.length > 0) verificationEnumTools.eccEnumValue("新增支部先锋荣誉", "支部名称", configEnum.BRANCHNAMETYPE, branchName);
verificationEnumTools.eccEnumValue('新增支部先锋荣誉级别类型', 'honorLevel', configEnum.HONORLEVEL, param.honorLevel);
verificationEnumTools.eccEnumValue('新增支部先锋荣誉级别类型', 'honorLevel', configEnum.HONORLEVEL, param.honorLevel);
param.honorType = configEnum.HONORTYPE.支部先锋;
param.branchName = branchName;
......@@ -90,15 +96,16 @@ import { BizError } from '../../../util/bizError';
/**
* 党建先锋 新建模范党员荣誉
* @param param {模范类型, 授予党员, 授予时间, 授予原因}
* 参数类型 { number, [string], number, string }
* 小程序端 2.0
* @param param 新增党先锋的模范党员荣誉表单
* 表单参数说明查看config/eccFormParamConfig文件里的CreateModelPartyConfig配置
* @returns {isSuccess: true}
*/
export async function createModelParty(branchName, param) {
/**校验表单参数 */
eccFormParam("新增模范党员荣誉", eccFormParamConfig.CreateModelPartyConfig, param)
if (branchName && branchName.length > 0) verificationEnumTools.eccEnumValue("新增模范党员荣誉", "支部名称", configEnum.BRANCHNAMETYPE, branchName);
// verificationEnumTools.eccEnumValue('新增支部先锋荣誉级别类型', 'honorLevel', configEnum.HONORLEVEL, param.honorLevel);
verificationEnumTools.eccEnumValue('新增支部先锋模范类型', 'modelType', configEnum.MODELTYPE, param.modelType);
verificationEnumTools.eccEnumValue('新增模范党员的模范类型', 'modelType', configEnum.MODELTYPE, param.modelType);
param.honorType = configEnum.HONORTYPE.模范党员;
param.branchName = branchName;
......@@ -110,19 +117,21 @@ import { BizError } from '../../../util/bizError';
/**
* 党建先锋 修改党建先锋荣誉
* 小程序端 2.0
* @param pvId 党建先锋id 修改对应pvId的荣誉信息
* @param honorType 荣誉类型
* @param param 修改党建先锋表单
* @returns
* 荣誉类型为支部先锋 表单参数依据config/eccFormParamConfig文件里的UpdateBranchPioneerConfig配置
* 荣誉类型为模范党员 表单参数依据config/eccFormParamConfig文件里的UpdateModelPartyConfig配置
* @returns {isSuccess:true}
*/
export async function updatePartyVanguard(pvId:number, honorType:number, param) {
/**校验表单参数 */
if (honorType == configEnum.HONORTYPE.支部先锋) {
eccFormParam("党建先锋荣誉表单修改", eccFormParamConfig.UpdataBranchPioneerConfig, param );
// verificationEnumTools.eccEnumValue('修改党建先锋荣誉', 'honorType', configEnum.HONORTYPE, param.honorType);
eccFormParam("党建先锋荣誉表单修改", eccFormParamConfig.UpdateBranchPioneerConfig, param );
verificationEnumTools.eccEnumValue('修改党建先锋的支部先锋', 'honorLevel', configEnum.HONORLEVEL, param.honorLevel);
} else if (honorType == configEnum.HONORTYPE.模范党员) {
eccFormParam("党建先锋荣誉表单修改", eccFormParamConfig.UpdataModelPartyConfig, param );
eccFormParam("党建先锋荣誉表单修改", eccFormParamConfig.UpdateModelPartyConfig, param );
verificationEnumTools.eccEnumValue('修改党建先锋的模范党员', 'modelType', configEnum.MODELTYPE, param.modelType);
}
......@@ -144,6 +153,7 @@ export async function updatePartyVanguard(pvId:number, honorType:number, param)
/**
* 删除荣誉
* 小程序端 2.0
* @param pvId 荣誉id
* @returns {isSuccess:true}
*/
......
......@@ -3,20 +3,20 @@
*/
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';
/**
* 党员入口登录
* 小程序端 1.0
* @param loginId 登录账号
* @param pwd 登录密码 md5之后的
* @returns loginUserInfo: {userid, firstLogin, token} 登录后的信息
*/
export async function login(loginId:string, pwd:string) {
let loginInfo = await partyMemberData.findPartyMemberByLoginId(loginId);
if (!loginInfo) throw new BizError(ERRORENUM.账号不存在);
if (!loginInfo) throw new BizError(ERRORENUM.账号不存在, `${loginId}账号非党员账号`);
// 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.密码错误);
......@@ -41,6 +41,7 @@ export async function login(loginId:string, pwd:string) {
/**
* 首次登录修改密码
* 未使用
* @param loginId 登录账号
* @param pwd 新密码
* @param confirmPwd 确认密码
......@@ -64,7 +65,7 @@ export async function firstLoginChangePwd(loginId:string, pwd:string, confirmPwd
/**
* 修改密码
* 小程序端 2.0
* 未使用
* @param uscc 信用代码
* @param pwd 原密码 md5之后的
* @param newPwd 新密码 未md5
......
......@@ -19,3 +19,17 @@ let config = {}//配置
入党积极分子录入,
入党申请录入
}
/**
* 党内职务 partyPositions
*/
export enum PARTYPOSITIONS {
支部书记 = 9,
支部副书记,
纪检委员,
统战委员,
组织委员,
宣传委员,
}
\ No newline at end of file
......@@ -10,7 +10,7 @@
/**
* 使用端: 小程序端_党员入口
* 场景: 创建组织生活活动表单
* 备注: 全部非必填
* 备注: 1.0
*/
export const CreateActivityConfig = {
partyActivityType:{type:"Number", notMustHave:true},//党建活动类型
......@@ -29,7 +29,7 @@ export const CreateActivityConfig = {
/**
* 使用端: 小程序端_党员入口
* 场景: 修改组织生活活动表单
* 备注: 全部非必填
* 备注: 1.0
*/
export const UpdateActivityFormConfig = {
partyActivityType:{type:"Number", notMustHave:true},//党建活动类型
......@@ -44,27 +44,65 @@ export const UpdateActivityFormConfig = {
}
/**
* 使用端: 小程序端_党员入口
* 场景: 创建正式党员录入表单
* 备注:
* 备注: 2.0
*/
export const CreatePartyMemberFormConfig = {
export const CreateEntryTypeOneFormConfig = {
name:{type:"String"},//姓名
sex:{type:"Number"},//性别
// enterType:{type:"Number"},//名册录入类型
birthDate:{type:"Number"},//出生年月
phone:{type:"String"},//手机号码
levelOfEducation:{type:"Number"},//文化程度
levelOfEducation:{type:"Number", notMustHave:true},//文化程度
partyJoiningTime:{type:"Number"},//入党时间
administrativePosition:{type:"Number", notMustHave:true},//行政职务
partyPositions:{type:"[Number]", notMustHave:true},//党内职务
department:{type:"[Number]", notMustHave:true},//所属科室 2.0
remarks:{type:"String", notMustHave:true},//备注
partyPositions:{type:"[Number]"},//党内职务
loginId:{type:"String", notMustHave:true},//登录账号
pwd:{type:"String", notMustHave:true},//密码
}
/**
* 使用端: 小程序端_党员入口
* 场景: 创建入党积极分子录入表单
* 备注: 2.0
*/
export const CreateEntryTypeTwoFormConfig = {
name:{type:"String"},//姓名
sex:{type:"Number"},//性别
birthDate:{type:"Number"},//出生年月
phone:{type:"String"},//手机号码
levelOfEducation:{type:"Number", notMustHave:true},//文化程度
administrativePosition:{type:"Number", notMustHave:true},//行政职务
partyPositions:{type:"[Number]", notMustHave:true},//党内职务
department:{type:"[Number]", notMustHave:true},//所属科室 2.0
askForTime: {type:"Number", notMustHave:true}, //申请入党时间
listedAsActivistsTime:{type:"Number", notMustHave:true},//列为积极份子时间
remarks:{type:"String", notMustHave:true},//备注
loginId:{type:"String", notMustHave:true},//登录账号
pwd:{type:"String", notMustHave:true},//密码
}
/**
* 使用端: 小程序端_党员入口
* 场景: 创建预备党员录入表单
* 备注: 2.0
*/
export const CreateEntryTypeThreeFormConfig = {
name:{type:"String"},//姓名
sex:{type:"Number"},//性别
birthDate:{type:"Number"},//出生年月
phone:{type:"String"},//手机号码
levelOfEducation:{type:"Number", notMustHave:true},//文化程度
administrativePosition:{type:"Number", notMustHave:true},//行政职务
partyPositions:{type:"[Number]", notMustHave:true},//党内职务
department:{type:"[Number]", notMustHave:true},//所属科室 2.0
talkTime:{type:"Number", notMustHave:true},//谈话时间
remarks:{type:"String", notMustHave:true},//备注
loginId:{type:"String", notMustHave:true},//登录账号
pwd:{type:"String", notMustHave:true},//密码
}
......@@ -73,9 +111,9 @@ export const UpdateActivityFormConfig = {
/**
* 使用端: 小程序端_党员入口
* 场景: 创建党建资讯录入表单
* 备注: 全部非必填
* 备注: 2.0
*/
export const createPartyInformation = {
export const CreatePartyInformation = {
informationType: {type:"Number", notMustHave:true}, //党建资讯类型
title: {type:"String", notMustHave:true}, //资讯标题
branchName: {type:"[Number]", notMustHave:true}, //支部名称
......@@ -88,50 +126,66 @@ export const createPartyInformation = {
/**
* 使用端: 小程序端_党建先锋
* 场景: 新增荣誉 支部先锋表单
* 备注: 全部非必填
* 备注: 2.0
*/
export const CreateBranchPioneerConfig = {
honorLevel: {type:"Number", notMustHave:true}, //荣誉级别
honorName: {type:"String", notMustHave:true}, //荣誉名称
grantingUnit: {type:"String", notMustHave:true}, //授予单位
awardTime: {type:"Number", notMustHave:true}, //获奖时间
honorsIntroduction: {type:"String", notMustHave:true}, //荣誉简介
honorLevel: {type:"Number"}, //荣誉级别
honorName: {type:"String"}, //荣誉名称
grantingUnit: {type:"String"}, //授予单位
awardTime: {type:"Number"}, //获奖时间
honorsIntroduction: {type:"String"}, //荣誉简介
};
/**
* 使用端: 小程序端_党建先锋
* 场景: 新增荣誉 模范党员表单
* 备注: 全部非必填
* 备注: 2.0
*/
export const CreateModelPartyConfig = {
modelType: {type:"Number", notMustHave:true}, //模范类型
grantParty: {type:"[String]", notMustHave:true}, //授予党员
grantTime: {type:"Number", notMustHave:true}, //授予时间
grantReason: {type:"String", notMustHave:true}, //授予原因
modelType: {type:"Number"}, //模范类型
grantParty: {type:"[String]"}, //授予党员
grantTime: {type:"Number"}, //授予时间
grantReason: {type:"String"}, //授予原因
};
/**
* 使用端: 小程序端_党建先锋
* 场景: 添加制度 支部制度表单
* 备注: 全部非必填
* 备注: 2.0
*/
export const CreateBranchSystemConfig = {
systemTitle: {type:"String", notMustHave:true}, //制度标题
periodOfValidity: {type:"Number", notMustHave:true}, //制度有效期
releaseTime: {type:"Number", notMustHave:true}, //发布时间
systemContent: {type:"String", notMustHave:true}, //制度内容
branchName: {type:"[Number]", notMustHave:true}, //支部名称
systemTitle: {type:"String"}, //制度标题
periodOfValidity: {type:"Number"}, //制度有效期
releaseTime: {type:"Number"}, //发布时间
systemContent: {type:"String"}, //制度内容
// branchName: {type:"[Number]"}, //支部名称
}
/**
* 使用端: 小程序端_党建先锋
* 场景: 添加制度 支部制度表单
* 备注: 2.0
*/
export const CreateBranchSystem = {
bId: {type:"Number"}, //支部制度id
systemTitle: {type:"String"}, //制度标题
periodOfValidity: {type:"Number"}, //制度有效期
releaseTime: {type:"Number"}, //发布时间
systemContent: {type:"String"}, //制度内容
branchName: {type:"[Number]"}, //支部名称
}
/**
* 使用端: 小程序端_党建先锋
* 场景: 修改荣誉制度 支部先锋表单
* 备注: 全部非必填
* 备注: 2.0
*/
export const UpdataBranchPioneerConfig = {
export const UpdateBranchPioneerConfig = {
honorLevel: {type:"Number", notMustHave:true}, //荣誉级别
honorName: {type:"String", notMustHave:true}, //荣誉名称
grantingUnit: {type:"String", notMustHave:true}, //授予单位
......@@ -143,9 +197,9 @@ export const UpdataBranchPioneerConfig = {
/**
* 使用端: 小程序端_党建先锋
* 场景: 修改荣誉制度 模范党员表单
* 备注: 全部非必填
* 备注: 2.0
*/
export const UpdataModelPartyConfig = {
export const UpdateModelPartyConfig = {
modelType: {type:"Number", notMustHave:true}, //模范类型
grantParty: {type:"[String]", notMustHave:true}, //授予党员
grantTime: {type:"Number", notMustHave:true}, //授予时间
......
......@@ -18,14 +18,20 @@ export enum BRANCHNAMETYPE {
* 党内职务 partyPositions
*/
export enum PARTYPOSITIONSICON {
支部书记 = 1,
党员 = 1,
入党积极分子,
预备党员,
党总支书记,
党总支副书记,
党总支宣传委员,
党总支统战委员,
党总支纪检委员,
支部书记,
支部副书记,
纪检委员,
统战委员,
组织委员,
宣传委员,
党员,
入党积极分子,
预备党员,
}
......@@ -33,11 +39,17 @@ export enum PARTYPOSITIONSICON {
* 党内职务 partyPositions
*/
export enum PARTYPOSITIONS {
支部书记 = 1,
党总支书记 = 4,
党总支副书记,
党总支宣传委员,
党总支统战委员,
党总支纪检委员,
支部书记,
支部副书记,
纪检委员,
统战委员,
组织委员,
宣传委员
宣传委员,
}
......@@ -46,10 +58,37 @@ export enum PARTYPOSITIONSICON {
*/
export enum ADMINISTRATIVEPOSITION {
职员 = 1,
办公室主任,
办公室副主任,
财务科副科长,
副所长,
口腔种植科主任,
副主任护师,
副主任医师,
工会主席,
口腔技术室主任,
护理部主任,
护师,
护士,
技师,
技士,
康健分所主任,
口腔颌面外科副主任,
医务科副科长
口腔修复科副主任,
口腔正畸科主任,
口腔综合科副主任,
人事科科长,
项目管理工程师,
牙体牙髓科副主任,
牙周科主任,
医师,
医务科副科长,
预防口腔,
儿童口腔科主任,
执行所长,
主管护师,
主管技师,
主治医师,
}
......@@ -121,13 +160,37 @@ export enum CODETYPE {
* 所属科室 department
*/
export enum DEDPARTMENT {
口腔科 = 1,
正畸科,
口腔恢复科,
颁面外科,
办公室 = 1,
财务科,
放射科,
工会,
技术室,
颌面外科,
护理,
护理部,
检验科,
康健分所,
科教科,
口腔颌面外科,
口腔科,
口腔修复科,
口腔正畸科,
口腔综合科,
人事科,
特需,
信息科,
修复科,
牙体牙髓科,
牙周科,
儿童口腔科
药房,
医务科,
预防科,
预防口腔,
儿童口腔科,
院部,
种植科,
正畸科,
综合科,
}
......
......@@ -12,7 +12,8 @@ export enum ERRORENUM {
地址数据不完整,
身份验证失败,
非法登录,
非党员账号
非党员账号,
参数不符合规则
}
export enum ERRORCODEENUM {
......
/**
* 支部制度表
*/
import { Schema } from "mongoose";
import {yfsDB} from '../db/dbInit';
var autoIncrement = require('mongoose-auto-increment');
const branchSystemSchema = new Schema({
bId: {type:Number, index:{unique: true}}, //自增的支部制度id
systemTitle: String, //制度标题
periodOfValidity: Number, //制度有效期
releaseTime: Number, //发布时间
systemContent: String, //制度内容
branchName: {type:[Number], default:[]}, //支部名称
})
var branchSystemModel;
export function initModel(){
branchSystemSchema.plugin(autoIncrement.plugin, {
model: 'branchSystemSchema',
field: 'bId',
startAt: 1, //初始化id从1开始
incrementBy: 1 //每次自增1
});
branchSystemModel = yfsDB.model('branchSystem', branchSystemSchema);
branchSystemModel.selectOnceData = async function (paramater:object) {
let selectInfo = await branchSystemModel.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);
});
}
/**
* 获取符合条件的支部制度列表
* @param param 查询参数
* @returns
*/
export async function findBranchSystemList(param:object) {
return await branchSystemModel.find(param);
}
/**
* 新增 支部制度
* @param param 所添加表单 需要提前验证
*/
export async function createBranchSystem(param:object) {
return await branchSystemModel.create(param);
}
/**
* 获取符合条件的支部制度数量
* @param param 查询参数
* @returns number 数据数量
*/
export async function groupFindBranchSystemCount(param:object) {
return await branchSystemModel.find(param).countDocuments();
}
/**
* 根据id获取符合条件的支部制度
* @param param 查询参数
* @returns
*/
export async function findBranchSystemById(bId:number) {
return await branchSystemModel.findOne({bId});
}
......@@ -69,3 +69,13 @@ export async function findPartyInformationListByType(informationType:number, bra
export async function createPartyInformation(param:object) {
return await partyInformationModel.create(param);
}
/**
* 获取符合条件的党建资讯数量
* @param param 查询参数
* @returns number 数据数量
*/
export async function groupFindpartyInformationCount(param:object) {
return await partyInformationModel.find(param).countDocuments();
}
\ No newline at end of file
......@@ -12,9 +12,9 @@ const partyMemberSchema = new Schema({
sex: Number, //性别 1:男、2:女
birthDate: Number, //出生年月
phone: String, //手机号码
levelOfEducation: String, //文化程度
partyJoiningTime: Number, //入党时间
administrativePosition: {type:Number, default:1}, //行政职务 1:职员、2:
levelOfEducation: Number, //文化程度
partyJoiningTime: Number, //入党时间 --正式党员录入
administrativePosition: {type:Number, default:1}, //行政职务 1:职员、2:护理部主任、3:康健分所主任、4:口腔颌面外科副主任、5:医务科副科长
remarks: String, //备注
entryType: Number, //名册录入类型 1:正式党员录入、2:入党积极分子录入、3:入党申请录入
partyPositions: {type:[Number], default:[]}, //党内职务 多选 --正式党员录入 1:书记、2:副书记、3:纪检委员、4:组织委员、5:宣传委员
......@@ -23,7 +23,7 @@ const partyMemberSchema = new Schema({
talkTime: Number, //谈话时间 --入党申请录入
branchName: {type:[Number], default:[]}, //支部名称
department: {type:[Number], default:[]}, //所属科室 1:口腔科、2:正畸科、3:口腔修复科、4:颁面外科, 5:牙体牙髓科、6:牙周科、7儿童口腔科
partyState: Number,
partyState: Number, //党员状态 1:在党、2:退党
/**-----用户相关----- */
loginId: {type: String, index: true}, //登录账号
......@@ -39,7 +39,7 @@ export function initModel(){
partyMemberSchema.plugin(autoIncrement.plugin, {
model: 'partyMemberSchema',
field: 'id',
startAt: 1000, //初始化id从1开始
startAt: 1, //初始化id从1开始
incrementBy: 1 //每次自增1
});
......
/**
* 学习表
* 未使用
*/
import { Schema } from "mongoose";
import {yfsDB} from '../db/dbInit';
var autoIncrement = require('mongoose-auto-increment');
const studySchema = new Schema({
sId: {type:Number, index:{unique: true}}, //自增的id
honorType: Number, //荣誉类型 1:支部先锋、2:模范党员
})
var studyModel;
export function initModel(){
studySchema.plugin(autoIncrement.plugin, {
model: 'studySchema',
field: 'sId',
startAt: 1, //初始化id从1开始
incrementBy: 1 //每次自增1
});
studyModel = yfsDB.model('study', studySchema);
studyModel.selectOnceData = async function (paramater:object) {
let selectInfo = await studyModel.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);
});
}
\ No newline at end of file
import moment = require("moment");
import { initConfig, systemConfig} from "./config/systemConfig";
import { initDB } from "./db/dbInit";
import { httpServer } from "./net/http_server";
import { initBasicData } from "./tools/dataInit";
import { getPwdMd5, getToken, md5PwdStr } from "./tools/system";
async function lanuch() {
......@@ -9,15 +11,18 @@ async function lanuch() {
await initConfig();
/**初始化数据库 */
await initDB();
/**初始化底表数据 */
await initBasicData();
/**创建http服务 */
httpServer.createServer(systemConfig.port);
console.log('This indicates that the server is started successfully.');
}
function test() {
let p = md5PwdStr("364792");
let pwd = getPwdMd5("18372364792", "d15285439a37af6194be4686ea1fed84");
let token = getToken("364764");
let time = moment(560016000000).format("YYYY-MM-DD");
let p = md5PwdStr("946885");
let pwd = getPwdMd5("15821946885", "bdcb05781f14e7bf275a7b51d554f045");
let token = getToken("946885");
console.log();
}
......
/**
* 小程序端 党员入口 支部制度
*/
import * as branchSystemBiz from '../../biz/applet/partyMember/branchSystem';
import * as asyncHandler from 'express-async-handler';
import { eccReqParamater } from '../../util/verificationParam';
import { checkAppletToken } from '../../middleware/user';
export function setRouter(httpServer) {
httpServer.post('/partymember/branchsystem/list', checkAppletToken, asyncHandler(getBranchSystem));
httpServer.post('/partymember/branchsystem/detsils', checkAppletToken, asyncHandler(getBranchSystemDetsils));
httpServer.post('/partymember/branchsystem/create', checkAppletToken, asyncHandler(createBranchSystem));
}
/**
* 支部制度 制度列表
* @param req
* @param res
*/
async function getBranchSystem(req, res) {
let reqConf = {systemTitle:'String'};
let {systemTitle} = eccReqParamater(reqConf, req.body, ["systemTitle"]);
let branchidData = req.headers.branchid;
let branchName = [];
branchidData = branchidData.slice(1, branchidData.length-1);
branchName = branchidData.split(',');
let result = await branchSystemBiz.getBranchSystem(systemTitle, branchName);
res.success(result);
}
/**
* 支部制度 制度细则
* @param req
* @param res
*/
async function getBranchSystemDetsils(req, res) {
let reqConf = {bId: 'Number'};
let {bId} = eccReqParamater(reqConf, req.body);
let result = await branchSystemBiz.getBranchSystemDetsils(bId);
res.success(result);
}
/**
* 支部制度 添加制度
* @param req
* @param res
*/
async function createBranchSystem(req, res) {
let reqConf = {form:'Object'};
let {form} = eccReqParamater(reqConf, req.body);
let branchidData = req.headers.branchid;
let branchName = [];
branchidData = branchidData.slice(1, branchidData.length-1);
branchName = branchidData.split(',');
let result = await branchSystemBiz.createBranchSystem(branchName, form);
res.success(result);
}
\ No newline at end of file
......@@ -8,10 +8,10 @@ import { eccReqParamater } from '../../util/verificationParam';
import { checkAppletToken } from '../../middleware/user';
export function setRouter(httpServer) {
httpServer.post('/partymember/partymember/partymembername', asyncHandler(getPartyMemberName));
httpServer.post('/partymember/partymember/create', asyncHandler(createPartyMenber));
httpServer.post('/partymember/partymember/detsils', asyncHandler(partyDetsils));
httpServer.post('/partymember/partymember/delete', asyncHandler(deletePartyMember));
httpServer.post('/partymember/partymember/partymembername', checkAppletToken, asyncHandler(getPartyMemberName));
httpServer.post('/partymember/partymember/create', checkAppletToken, asyncHandler(createPartyMenber));
httpServer.post('/partymember/partymember/detsils', checkAppletToken, asyncHandler(partyDetsils));
httpServer.post('/partymember/partymember/delete', checkAppletToken, asyncHandler(deletePartyMember));
}
......
......@@ -5,14 +5,15 @@
import * as partyVanguardBiz from '../../biz/applet/partyMember/partyVanguard';
import * as asyncHandler from 'express-async-handler';
import { eccReqParamater } from '../../util/verificationParam';
import { checkAppletToken } from '../../middleware/user';
export function setRouter(httpServer) {
httpServer.post('/partymember/partyvanguard/list', asyncHandler(getPartyVanguard));
httpServer.post('/partymember/partyvanguard/detsils', asyncHandler(getPartyVanguardDetsils));
httpServer.post('/partymember/partyvanguard/createbranchpioneer', asyncHandler(createBranchPioneer));
httpServer.post('/partymember/partyvanguard/createmodelparty', asyncHandler(createModelParty));
httpServer.post('/partymember/partyvanguard/update', asyncHandler(updatePartyVanguard));
httpServer.post('/partymember/partyvanguard/delete', asyncHandler(deletePartyVanguard));
httpServer.post('/partymember/partyvanguard/list', checkAppletToken, asyncHandler(getPartyVanguard));
httpServer.post('/partymember/partyvanguard/detsils', checkAppletToken, asyncHandler(getPartyVanguardDetsils));
httpServer.post('/partymember/partyvanguard/createbranchpioneer', checkAppletToken, asyncHandler(createBranchPioneer));
httpServer.post('/partymember/partyvanguard/createmodelparty', checkAppletToken, asyncHandler(createModelParty));
httpServer.post('/partymember/partyvanguard/update', checkAppletToken, asyncHandler(updatePartyVanguard));
httpServer.post('/partymember/partyvanguard/delete', checkAppletToken, asyncHandler(deletePartyVanguard));
}
......
......@@ -17,6 +17,9 @@ export function setRouter(httpServer) {
httpServer.post('/public/administrativeposition', asyncHandler(administrativePosition));
httpServer.post('/public/department', asyncHandler(department));
httpServer.post('/public/degreetype', asyncHandler(degreeType));
httpServer.post('/public/honortype', asyncHandler(honorType));
httpServer.post('/public/honorlevel', asyncHandler(honorLevel));
httpServer.post('/public/modeltype', asyncHandler(modelType));
}
......@@ -119,6 +122,39 @@ function department(req, res) {
}
/**
* 荣誉类型
* @param req
* @param res
*/
function honorType(req, res) {
let dataList = getEnumList(configEnum.HONORTYPE);
res.success(dataList);
}
/**
* 荣誉级别
* @param req
* @param res
*/
function honorLevel(req, res) {
let dataList = getEnumList(configEnum.HONORLEVEL);
res.success(dataList);
}
/**
* 模范类型
* @param req
* @param res
*/
function modelType(req, res) {
let dataList = getEnumList(configEnum.MODELTYPE);
res.success(dataList);
}
function getEnumList(enumData) {
let dataList= [];
for (let key in enumData) {
......
......@@ -7,6 +7,9 @@ import * as appletBaseRouters from '../routers/applet/base';
import * as appletOrganizationalLifeRouters from '../routers/applet/organizationalLife';
import * as appletPartyMemberRouters from '../routers/applet/partyMember';
import * as appletPartyInforMationRouters from '../routers/applet/partyInforMation';
import * as appletPartyVanguardRouters from '../routers/applet/partyVanguard';
import * as appletBranchSystemRouters from '../routers/applet/branchSystem';
import * as publicRouters from '../routers/public';
import * as abiOrganizationalLifeRouters from '../routers/abi/organizationalLife';
......@@ -18,6 +21,8 @@ export function setRouter(httpServer){
appletPartyMemberRouters.setRouter(httpServer);
appletPartyMemberRouters.setRouter(httpServer);
appletPartyInforMationRouters.setRouter(httpServer);
appletPartyVanguardRouters.setRouter(httpServer);
appletBranchSystemRouters.setRouter(httpServer);
/**小程序端 公共资源 */
publicRouters.setRouter(httpServer);
......
......@@ -4,6 +4,7 @@ import { getPwdMd5 } from "./system";
import { createActivity, groupFindActivityCount } from "../data/organizationalLife";
import { createPartyVanguard, groupFindPartyVanguardCount } from "../data/partyVanguard";
import { createBranchSystem, groupFindBranchSystemCount } from "../data/branchSystem";
import { createPartyInformation, groupFindpartyInformationCount } from "../data/partyInformation";
const xlsx = require('node-xlsx');
const path = require('path');
......@@ -11,14 +12,20 @@ const md5 = require("md5");
const PartyPositionsChangeConfig = {
"支部书记": enums.PARTYPOSITIONSICON.支部书记,
"支部副书记": enums.PARTYPOSITIONSICON.支部副书记,
"纪检委员": enums.PARTYPOSITIONSICON.纪检委员,
"组织委员": enums.PARTYPOSITIONSICON.组织委员,
"宣传委员": enums.PARTYPOSITIONSICON.宣传委员,
"党员":enums.PARTYPOSITIONSICON.党员,
"入党积极分子":enums.PARTYPOSITIONSICON.入党积极分子,
"预备党员":enums.PARTYPOSITIONSICON.预备党员,
"党员": enums.PARTYPOSITIONSICON.党员,
"入党积极分子": enums.PARTYPOSITIONSICON.入党积极分子,
"预备党员": enums.PARTYPOSITIONSICON.预备党员,
"党总支书记": enums.PARTYPOSITIONSICON.党总支书记,
"党总支副书记": enums.PARTYPOSITIONSICON.党总支副书记,
"党总支宣传委员":enums.PARTYPOSITIONSICON.党总支宣传委员,
"党总支统战委员":enums.PARTYPOSITIONSICON.党总支统战委员,
"党总支纪检委员":enums.PARTYPOSITIONSICON.党总支纪检委员,
"支部书记":enums.PARTYPOSITIONSICON.支部书记,
"支部副书记":enums.PARTYPOSITIONSICON.支部副书记,
"纪检委员":enums.PARTYPOSITIONSICON.纪检委员,
"统战委员":enums.PARTYPOSITIONSICON.统战委员,
"组织委员":enums.PARTYPOSITIONSICON.组织委员,
"宣传委员":enums.PARTYPOSITIONSICON.宣传委员,
}
const BranchNameChangeConfig = {
......@@ -30,13 +37,37 @@ const BranchNameChangeConfig = {
}
const DepartmentConfig = {
"办公室": enums.DEDPARTMENT.办公室,
"财务科": enums.DEDPARTMENT.财务科,
"放射科": enums.DEDPARTMENT.放射科,
"工会": enums.DEDPARTMENT.工会,
"技术室": enums.DEDPARTMENT.技术室,
"颌面外科": enums.DEDPARTMENT.颌面外科,
"护理": enums.DEDPARTMENT.护理,
"护理部": enums.DEDPARTMENT.护理部,
"检验科": enums.DEDPARTMENT.检验科,
"康健分所": enums.DEDPARTMENT.康健分所,
"科教科": enums.DEDPARTMENT.科教科,
"口腔颌面外科": enums.DEDPARTMENT.口腔颌面外科,
"口腔科": enums.DEDPARTMENT.口腔科,
"正畸科": enums.DEDPARTMENT.正畸科,
"口腔恢复科": enums.DEDPARTMENT.口腔恢复科,
"颁面外科": enums.DEDPARTMENT.颁面外科,
"口腔修复科": enums.DEDPARTMENT.口腔修复科,
"口腔正畸科": enums.DEDPARTMENT.口腔正畸科,
"口腔综合科": enums.DEDPARTMENT.口腔综合科,
"人事科": enums.DEDPARTMENT.人事科,
"特需": enums.DEDPARTMENT.特需,
"信息科": enums.DEDPARTMENT.信息科,
"修复科": enums.DEDPARTMENT.修复科,
"牙体牙髓科": enums.DEDPARTMENT.牙体牙髓科,
"牙周科": enums.DEDPARTMENT.牙周科,
"药房": enums.DEDPARTMENT.药房,
"医务科": enums.DEDPARTMENT.医务科,
"预防科": enums.DEDPARTMENT.预防科,
"预防口腔": enums.DEDPARTMENT.预防口腔,
"儿童口腔科": enums.DEDPARTMENT.儿童口腔科,
"院部": enums.DEDPARTMENT.院部,
"种植科": enums.DEDPARTMENT.种植科,
"正畸科": enums.DEDPARTMENT.正畸科,
"综合科": enums.DEDPARTMENT.综合科,
}
export async function initBasicData() {
......@@ -44,8 +75,13 @@ export async function initBasicData() {
await initOrganizationalLife();
await initPartyVanguard();
await initBranchSystem();
await initInforMation();
}
/**
* 党员基础信息初始化
*/
async function initPartyMember() {
let count = await groupFindPartyMemberCount({});
if (count > 5) {
......@@ -68,10 +104,11 @@ async function initPartyMember() {
"8": "entryType", //名册录入类型
"9": "partyPositions", //党内职务
"10": "listedAsActivistsTime", //列为积极份子时间(入党积极份子填写)
"11": "talkTime", //谈话时间(入党申请填写)
"12": "branchName", //支部名称
"13": "department", //所属科室
"14": "partyState", //党员状态
"11": "askForTime", //申请入党时间(入党申请填写)
"12": "talkTime", //谈话时间(入党申请填写)
"13": "branchName", //支部名称
"14": "department", //所属科室
"15": "partyState", //党员状态
}
let utc = new Date();
......@@ -82,7 +119,7 @@ async function initPartyMember() {
firstLoginIsChangePwd:false,
}
for (let i = 0; i <= 14; i++) {
for (let i = 0; i <= 15; i++) {
let item =subList[i];
let key = titleMap[i];
let value = item;
......@@ -98,6 +135,9 @@ async function initPartyMember() {
else addDataInfo.pwd = getPwdMd5(itemStr, addDataInfo.pwd);
addDataInfo.loginId = itemStr;
}
if (i == 4) {
value = enums.DEGREE[item] || 1;
}
if (i == 5 && item) {
value = new Date(item).valueOf();
}
......@@ -124,7 +164,10 @@ async function initPartyMember() {
if (i == 11 && item) {
value = new Date(item).valueOf();
}
if (i == 12) {
if (i == 12 && item) {
value = new Date(item).valueOf();
}
if (i == 13) {
value = [];
if (item) {
let oldList = item.split(',');
......@@ -134,7 +177,7 @@ async function initPartyMember() {
});
};
}
if (i == 13) {
if (i == 14) {
value = [];
if (item) {
let oldList = item.split(',');
......@@ -145,8 +188,8 @@ async function initPartyMember() {
};
}
if (i == 14) {
value = enums.PARTYSTATE[item] || 1;
if (i == 15) {
value = enums.PARTYSTATE[item] || 0;
}
addDataInfo[key] = value;
}
......@@ -163,7 +206,9 @@ const HonorLevelConfig = {
"市级荣誉": enums.HONORLEVEL.市级荣誉,
}
/**
* 党建先锋初始化
*/
async function initPartyVanguard() {
let count = await groupFindPartyVanguardCount({});
if (count > 1) {
......@@ -243,6 +288,9 @@ async function initPartyVanguard() {
}
/**
* 组织生活初始化
*/
async function initOrganizationalLife() {
let count = await groupFindActivityCount({});
if (count > 1) {
......@@ -346,10 +394,13 @@ async function initOrganizationalLife() {
}
/**
* 支部制度初始化
*/
async function initBranchSystem() {
let count = await groupFindBranchSystemCount({});
if (count > 1) {
console.log("***** 党建先锋数据 无需初始化 *****");
console.log("***** 支部制度数据 无需初始化 *****");
return;
}
......@@ -402,6 +453,65 @@ async function initBranchSystem() {
}
/**
* 党建资讯
*/
async function initInforMation() {
let count = await groupFindpartyInformationCount({});
if (count > 1) {
console.log("***** 党建资讯数据 无需初始化 *****");
return;
}
let {sheetMap} = getExcel(path.join(__dirname.substring(0, __dirname.indexOf("out")), "res", "牙防所基础数据收集.xlsx"));
let dataList = sheetMap["党建资讯"];
let titleMap = {
"0": "informationType", //党建资讯类型
"1": "title", //资讯列表
"2": "informationTime", //资讯时间
"3": "detailedInformation", //资讯详细
"4": "img", //图片
"5": "branchName", //支部名称
};
let addList = [];
dataList.forEach( (subList, index) => {
if (!index) return; //跳过表头
let addDataInfo:any = {
firstLoginIsChangePwd:false,
}
for (let i = 0; i <= 5; i++) {
let item =subList[i];
let key = titleMap[i];
let value = item;
if (i == 0) {
value = enums.INFORMATIONTYPE[item] || 0;
}
if (i == 2 && item) {
value = new Date(item).valueOf();
}
if (i == 5) {
value = [];
if (item) {
let oldList = item.split(',');
oldList.forEach(oldStr => {
let valueNum = BranchNameChangeConfig[oldStr.trim()];
if (valueNum) value.push(valueNum);
});
};
}
if (value) addDataInfo[key] = value;
}
addList.push(addDataInfo);
})
await createPartyInformation(addList);
console.log("---> 党建资讯信息 初始化成功");
}
/**
* 获取单个excel文件数据
......
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