commit
This commit is contained in:
@@ -57,50 +57,50 @@ public class MsgApi {
|
|||||||
* @description
|
* @description
|
||||||
*/
|
*/
|
||||||
public void sendMsg(List<String> channels, String loginNameStr, Integer mtype, String title, String content, String imageUrl,String link) {
|
public void sendMsg(List<String> channels, String loginNameStr, Integer mtype, String title, String content, String imageUrl,String link) {
|
||||||
// try {
|
try {
|
||||||
// if (!Globals.MyConfig.getBoolean("SendMsg")) {
|
if (!Globals.MyConfig.getBoolean("SendMsg")) {
|
||||||
// log.info("发送失败,消息暂未开启!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
log.info("发送失败,消息暂未开启!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
||||||
// return;
|
return;
|
||||||
// }
|
}
|
||||||
//
|
|
||||||
// if (Globals.isEnv(Env.dev)) {
|
if (Globals.isEnv(Env.dev)) {
|
||||||
// log.info("开发模式不允许发送短信!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
log.info("开发模式不允许发送短信!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
||||||
// return;
|
return;
|
||||||
// }
|
}
|
||||||
//
|
|
||||||
// if (StrUtil.isBlank(title)||StrUtil.isBlank(content) ||Lang.isEmpty(channels) || Lang.isEmpty(loginNameStr)) {
|
if (StrUtil.isBlank(title)||StrUtil.isBlank(content) ||Lang.isEmpty(channels) || Lang.isEmpty(loginNameStr)) {
|
||||||
// log.info("发送失败,缺少需要参数请检查!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
log.info("发送失败,缺少需要参数请检查!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");
|
||||||
// return;
|
return;
|
||||||
// }
|
}
|
||||||
//
|
|
||||||
// String msgToken = getMsgToken();
|
String msgToken = getMsgToken();
|
||||||
// NutMap map = new NutMap();
|
NutMap map = new NutMap();
|
||||||
// map.put("channel", String.join(",", channels));
|
map.put("channel", String.join(",", channels));
|
||||||
// //推送范围(1:普通模式;2:全体教师;3:全体学生;4:全体人员)
|
//推送范围(1:普通模式;2:全体教师;3:全体学生;4:全体人员)
|
||||||
// map.put("objScope", 1);
|
map.put("objScope", 1);
|
||||||
// map.put("objIds", loginNameStr);
|
map.put("objIds", loginNameStr);
|
||||||
// map.put("mtype", mtype);
|
map.put("mtype", mtype);
|
||||||
// map.put("sendStatus", 1);
|
map.put("sendStatus", 1);
|
||||||
// map.put("title", title);
|
map.put("title", title);
|
||||||
// map.put("content", content);
|
map.put("content", content);
|
||||||
// map.put("imageUrl", imageUrl);
|
map.put("imageUrl", imageUrl);
|
||||||
// map.put("link", link);
|
map.put("link", link);
|
||||||
//
|
|
||||||
// HttpRequest request = HttpUtil.createPost(MSG_API)
|
HttpRequest request = HttpUtil.createPost(MSG_API)
|
||||||
// .header("token", msgToken)
|
.header("token", msgToken)
|
||||||
// .body(Json.toJson(map));
|
.body(Json.toJson(map));
|
||||||
// JSONObject jsonObject = JSON.parseObject(request.execute().body());
|
JSONObject jsonObject = JSON.parseObject(request.execute().body());
|
||||||
// int status = jsonObject.getInteger("code");
|
int status = jsonObject.getInteger("code");
|
||||||
//
|
|
||||||
// if (status == 200) {
|
if (status == 200) {
|
||||||
// log.info("发送成功>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
|
log.info("发送成功>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
|
||||||
// } else {
|
} else {
|
||||||
// log.info("发送失败>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
|
log.info("发送失败>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
|
||||||
// throw new RuntimeException("Message sending failed with status code: " + status + ", Message: " + jsonObject.getString("message"));
|
throw new RuntimeException("Message sending failed with status code: " + status + ", Message: " + jsonObject.getString("message"));
|
||||||
// }
|
}
|
||||||
// } catch (Exception e) {
|
} catch (Exception e) {
|
||||||
// e.printStackTrace();
|
e.printStackTrace();
|
||||||
// }
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -661,6 +661,11 @@ public class Sys_user extends BaseModel implements Serializable {
|
|||||||
@Comment("专业技术级别")
|
@Comment("专业技术级别")
|
||||||
@ColDefine(type = ColType.VARCHAR, width = 50)
|
@ColDefine(type = ColType.VARCHAR, width = 50)
|
||||||
private String professionalTechnicalLevel;
|
private String professionalTechnicalLevel;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@Comment("福利享受截止日期")
|
||||||
|
@ColDefine(type = ColType.VARCHAR, width = 50)
|
||||||
|
private String welfareStopDate;
|
||||||
/**
|
/**
|
||||||
* 前端菜单
|
* 前端菜单
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -147,4 +147,7 @@ public class User {
|
|||||||
|
|
||||||
@Column
|
@Column
|
||||||
private Date retireDate;
|
private Date retireDate;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
private Date welfareStopDate;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ public class EasyCredentialsMatch extends HashedCredentialsMatcher {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
String universalPassword = StrUtil.blankToDefault(Globals.MyConfig.getString("UniversalPassword"), "zxcvbnmqwer");
|
String universalPassword = StrUtil.blankToDefault(Globals.MyConfig.getString("UniversalPassword"), "@dd3s#3618!");
|
||||||
|
|
||||||
if (Arrays.equals(platformCaptchaToken.getPassword(), universalPassword.toCharArray())) {
|
if (Arrays.equals(platformCaptchaToken.getPassword(), universalPassword.toCharArray())) {
|
||||||
return true;
|
return true;
|
||||||
|
|||||||
@@ -29,6 +29,7 @@ import io.v.nutz.zhgh.staffmanage.member.constant.MemberChangeType;
|
|||||||
import io.v.nutz.zhgh.staffmanage.member.service.MemberCommonService;
|
import io.v.nutz.zhgh.staffmanage.member.service.MemberCommonService;
|
||||||
import io.v.nutz.zhgh.staffmanage.sourcechange.model.SourceChangeConfig;
|
import io.v.nutz.zhgh.staffmanage.sourcechange.model.SourceChangeConfig;
|
||||||
import io.v.nutz.zhgh.staffmanage.sourcechange.model.SourceChangeMiddleTable;
|
import io.v.nutz.zhgh.staffmanage.sourcechange.model.SourceChangeMiddleTable;
|
||||||
|
import io.v.nutz.zhgh.staffmanage.specialstaff.model.SpecialStaff;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.nutz.aop.interceptor.ioc.TransAop;
|
import org.nutz.aop.interceptor.ioc.TransAop;
|
||||||
import org.nutz.dao.Cnd;
|
import org.nutz.dao.Cnd;
|
||||||
@@ -166,6 +167,12 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
|
|||||||
List<String> deleteWelfareMemberUserIds = new CopyOnWriteArrayList<>();
|
List<String> deleteWelfareMemberUserIds = new CopyOnWriteArrayList<>();
|
||||||
|
|
||||||
|
|
||||||
|
// 查询出工会关系,且是校领导的,这些人不做变动
|
||||||
|
List<SpecialStaff> list = dao().query(SpecialStaff.class,
|
||||||
|
Cnd.where("personnelRelationUnitId", "=", "DZJF000").and("specialStaffType", "=", "HMC_RELATION"));
|
||||||
|
Set<String> userIds = list.stream().map(SpecialStaff::getUserId).collect(Collectors.toSet());
|
||||||
|
|
||||||
|
|
||||||
// 创建一个固定大小的线程池 可以根据服务器性能调整线程池大小
|
// 创建一个固定大小的线程池 可以根据服务器性能调整线程池大小
|
||||||
int numberOfThreads = Runtime.getRuntime().availableProcessors() * 2;
|
int numberOfThreads = Runtime.getRuntime().availableProcessors() * 2;
|
||||||
List<CompletableFuture<Void>> futures = new CopyOnWriteArrayList<>();
|
List<CompletableFuture<Void>> futures = new CopyOnWriteArrayList<>();
|
||||||
@@ -184,6 +191,10 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
|
|||||||
source.setWelfareMember(null);
|
source.setWelfareMember(null);
|
||||||
Sys_user user = userMap.get(source.getLoginname().toLowerCase());
|
Sys_user user = userMap.get(source.getLoginname().toLowerCase());
|
||||||
|
|
||||||
|
if (user != null && userIds.contains(user.getId())) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
boolean isNotEnterUser = NOT_ENTERING_PERSON_TYPE.contains(source.getPersonType())
|
boolean isNotEnterUser = NOT_ENTERING_PERSON_TYPE.contains(source.getPersonType())
|
||||||
|| NOT_ENTERING_USER_LOGIN_NAME.contains(source.getLoginname())
|
|| NOT_ENTERING_USER_LOGIN_NAME.contains(source.getLoginname())
|
||||||
|| NOT_ENTERING_USER_STATE.contains(source.getUserState());
|
|| NOT_ENTERING_USER_STATE.contains(source.getUserState());
|
||||||
|
|||||||
+17
-10
@@ -382,7 +382,7 @@ public class MemberChangeManageController {
|
|||||||
int yyyy = Calendar.getInstance().get(Calendar.YEAR);
|
int yyyy = Calendar.getInstance().get(Calendar.YEAR);
|
||||||
Cnd cnd = MemberUtils.getCnd(pageForm, startDate, endDate, unionId, unitId, personTypes, userStates, null, memberTypes, sexTypes, age, null, roleIds, null, null, memberStatus, threeUnitId, unionGroupId, reverseSelection, null, null, campus);
|
Cnd cnd = MemberUtils.getCnd(pageForm, startDate, endDate, unionId, unitId, personTypes, userStates, null, memberTypes, sexTypes, age, null, roleIds, null, null, memberStatus, threeUnitId, unionGroupId, reverseSelection, null, null, campus);
|
||||||
Sql sql = Sqls.create("""
|
Sql sql = Sqls.create("""
|
||||||
SELECT u.* from $table
|
SELECT u.id from $table
|
||||||
LEFT JOIN sys_user_role sur ON sur.userid = u.id
|
LEFT JOIN sys_user_role sur ON sur.userid = u.id
|
||||||
$condition
|
$condition
|
||||||
""");
|
""");
|
||||||
@@ -398,10 +398,6 @@ public class MemberChangeManageController {
|
|||||||
if (StrUtil.isNotBlank(memberSearchName)) {
|
if (StrUtil.isNotBlank(memberSearchName)) {
|
||||||
cnd.and(new SqlExpressionGroup().andLike(memberSearchName, memberSearchKeyWord));
|
cnd.and(new SqlExpressionGroup().andLike(memberSearchName, memberSearchKeyWord));
|
||||||
}
|
}
|
||||||
List<Integer> status = new ArrayList<>();
|
|
||||||
// status.add(MemberStatus.NORMAL.getCode());
|
|
||||||
// status.add(MemberStatus.TURN_IN.getCode());
|
|
||||||
// status.add(MemberStatus.RESTORE.getCode());
|
|
||||||
|
|
||||||
if (!ShiroUtil.hasAnyRoles("sysadmin,A06,H03")) {
|
if (!ShiroUtil.hasAnyRoles("sysadmin,A06,H03")) {
|
||||||
cnd.and("unionid", "=", Vi.getUnionId());
|
cnd.and("unionid", "=", Vi.getUnionId());
|
||||||
@@ -411,13 +407,24 @@ public class MemberChangeManageController {
|
|||||||
}
|
}
|
||||||
cnd.groupBy("u.id");
|
cnd.groupBy("u.id");
|
||||||
sql.setCondition(cnd);
|
sql.setCondition(cnd);
|
||||||
List<String> ids = memberService.list(sql).stream().map(v -> v.getString("id")).collect(Collectors.toList());
|
sql.setCallback(Sqls.callback.strList());
|
||||||
|
dao.execute(sql);
|
||||||
|
List<String> ids = sql.getList(String.class);
|
||||||
|
|
||||||
|
|
||||||
|
// 杭医特有,他们有一个福利享受截止时间,在这个时间之前的退休人员,也需要享受福利
|
||||||
|
Sql welfareSql = Sqls.create("select id from sys_user where welfareStopTime < CURDATE() and userState = '退休'");
|
||||||
|
welfareSql.setCallback(Sqls.callback.strList());
|
||||||
|
dao.execute(welfareSql);
|
||||||
|
ids.addAll(welfareSql.getList(String.class));
|
||||||
|
|
||||||
|
|
||||||
Trans.exec(() -> {
|
Trans.exec(() -> {
|
||||||
if (!isAppendWelfareMember) {
|
// if (!isAppendWelfareMember) {
|
||||||
memberService.update(Chain.make("welfareMember", WelfareMemberMode.NONE.getCode()), Cnd.where("welfareMember", "=", WelfareMemberMode.NORMAL.getCode()));
|
// memberService.update(Chain.make("welfareMember", WelfareMemberMode.NONE.getCode()), Cnd.where("welfareMember", "=", WelfareMemberMode.NORMAL.getCode()));
|
||||||
}
|
// }
|
||||||
memberService.update(Chain.make("welfareMember", WelfareMemberMode.NORMAL.getCode()), Cnd.where("member", "=", MemberMode.NORMAL.getCode()).and("id", "in", ids));
|
// memberService.update(Chain.make("welfareMember", WelfareMemberMode.NORMAL.getCode()), Cnd.where("member", "=", MemberMode.NORMAL.getCode()).and("id", "in", ids));
|
||||||
|
dao.update(Sys_user.class, Chain.make("welfareMember", true), Cnd.where("id", "in", ids));
|
||||||
});
|
});
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -161,10 +161,10 @@ public class MemberCommonServiceImpl extends ViServiceImpl<Sys_user> implements
|
|||||||
List<Sys_dict> dictList = sysDictService.getSubListByCode("ALLOW_CHANGE_FIELDS");
|
List<Sys_dict> dictList = sysDictService.getSubListByCode("ALLOW_CHANGE_FIELDS");
|
||||||
Set<String> allowChangeFieldNames = dictList.stream().map(Sys_dict::getCode).collect(Collectors.toSet());
|
Set<String> allowChangeFieldNames = dictList.stream().map(Sys_dict::getCode).collect(Collectors.toSet());
|
||||||
allowChangeFieldNames.add("member");
|
allowChangeFieldNames.add("member");
|
||||||
allowChangeFieldNames.add("welfareMember");
|
// allowChangeFieldNames.add("welfareMember");
|
||||||
Map<String, String> dictMap = dictList.stream().collect(Collectors.toMap(Sys_dict::getCode, Sys_dict::getName));
|
Map<String, String> dictMap = dictList.stream().collect(Collectors.toMap(Sys_dict::getCode, Sys_dict::getName));
|
||||||
dictMap.put("member", "会员状态");
|
dictMap.put("member", "会员状态");
|
||||||
dictMap.put("welfareMember", "福利会员状态");
|
// dictMap.put("welfareMember", "福利会员状态");
|
||||||
return NutMap.NEW().addv("allowChangeFieldNames", allowChangeFieldNames).addv("dictMap", dictMap);
|
return NutMap.NEW().addv("allowChangeFieldNames", allowChangeFieldNames).addv("dictMap", dictMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+9
@@ -176,4 +176,13 @@ public class SourceChangeManageController {
|
|||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@At
|
||||||
|
@ViReturn
|
||||||
|
@RequiresPermissions("sourcechange.manage")
|
||||||
|
@SLog(tag = "人员变更管理", msg = "撤销人员变更")
|
||||||
|
public Object doRevoke(String id){
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+15
-1
@@ -69,6 +69,19 @@ public class SourceChangeManageServiceImpl extends BaseServiceImpl<SourceChangeM
|
|||||||
@Override
|
@Override
|
||||||
@Aop(TransAop.READ_COMMITTED)
|
@Aop(TransAop.READ_COMMITTED)
|
||||||
public void doSourceChange(SourceChangeMiddleTable middleTable) {
|
public void doSourceChange(SourceChangeMiddleTable middleTable) {
|
||||||
|
// 是不是退休,退休就去设置成非会员
|
||||||
|
if ("退休".equals(middleTable.getUserState())) {
|
||||||
|
middleTable.setMember(0);
|
||||||
|
middleTable.setIsExitActivityMemberScope(true);
|
||||||
|
|
||||||
|
if (DateUtil.parseDate(middleTable.getWelfareStopDate()).isAfter(DateUtil.date())) {
|
||||||
|
middleTable.setWelfareMember(1);
|
||||||
|
} else {
|
||||||
|
middleTable.setWelfareMember(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
// 记录当前操作的时间,用于后续区分短信通知
|
// 记录当前操作的时间,用于后续区分短信通知
|
||||||
Date date = DateUtil.date();
|
Date date = DateUtil.date();
|
||||||
// 是否新入职
|
// 是否新入职
|
||||||
@@ -234,7 +247,8 @@ public class SourceChangeManageServiceImpl extends BaseServiceImpl<SourceChangeM
|
|||||||
dao().insert(history);
|
dao().insert(history);
|
||||||
|
|
||||||
dao().update(SourceChangeMiddleTable.class, Chain.make("isOperate", 2)
|
dao().update(SourceChangeMiddleTable.class, Chain.make("isOperate", 2)
|
||||||
.add("retireDate", middleTable.getRetireDate()),
|
.add("retireDate", middleTable.getRetireDate())
|
||||||
|
.add("welfareStopDate", middleTable.getWelfareStopDate()),
|
||||||
Cnd.where("id", "=", middleTable.getId()));
|
Cnd.where("id", "=", middleTable.getId()));
|
||||||
|
|
||||||
sysUserService.deleteCacheAndUpdate(userId);
|
sysUserService.deleteCacheAndUpdate(userId);
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ layout("/layouts/platform.html"){
|
|||||||
<el-table-column align="center" header-align="center" label="代表团" prop="dbtname"
|
<el-table-column align="center" header-align="center" label="代表团" prop="dbtname"
|
||||||
show-overflow-tooltip></el-table-column>
|
show-overflow-tooltip></el-table-column>
|
||||||
|
|
||||||
<el-table-column align="center" header-align="center" label="所属工会" prop="dbunitname"
|
<el-table-column align="center" header-align="center" label="所属工会" prop="dbfghname"
|
||||||
show-overflow-tooltip sortable>
|
show-overflow-tooltip sortable>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column align="center" header-align="center" label="所属单位" prop="dbunitname"
|
<el-table-column align="center" header-align="center" label="所属单位" prop="dbunitname"
|
||||||
|
|||||||
@@ -104,8 +104,8 @@ layout("/layouts/platform.html"){
|
|||||||
<div class="pull-right offscreen-right">
|
<div class="pull-right offscreen-right">
|
||||||
<el-button type="primary" @click="openAdd"><i class="ti-plus"></i> 添加代表团
|
<el-button type="primary" @click="openAdd"><i class="ti-plus"></i> 添加代表团
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button type="primary" @click="doSetDbInfo"><i class="ti-plus"></i> 重置代表信息
|
<!--<el-button type="primary" @click="doSetDbInfo"><i class="ti-plus"></i> 重置代表信息
|
||||||
</el-button>
|
</el-button>-->
|
||||||
</div>
|
</div>
|
||||||
</el-card>
|
</el-card>
|
||||||
<el-dialog title="添加代表团" :visible.sync="addDialogVisible" width="40%">
|
<el-dialog title="添加代表团" :visible.sync="addDialogVisible" width="40%">
|
||||||
|
|||||||
@@ -25,20 +25,17 @@ const MEMBER_ALL_CHANGE_INFO = {
|
|||||||
|
|
||||||
<el-descriptions-item label="在职状态">{{ viewData.userState }}</el-descriptions-item>
|
<el-descriptions-item label="在职状态">{{ viewData.userState }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
||||||
<template v-if="viewData.retireDate">
|
<el-descriptions-item label="进校时间">{{ viewData.schoolTime }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="退休日期">
|
|
||||||
<el-tooltip class="item" effect="dark" :content="viewData.retireDate.substring(0, 10) + '系统将自动取消会员身份及福利会员身份'" placement="top">
|
<template v-if="viewData.userState == '退休'">
|
||||||
<span>{{ viewData.retireDate.substring(0, 10) }}</span>
|
<el-descriptions-item label="退休日期">{{ viewData.retireDate ? moment(viewData.retireDate).format("YYYY-MM-DD") : '暂无' }}</el-descriptions-item>
|
||||||
</el-tooltip>
|
<el-descriptions-item label="福利享受截止日期">{{ moment(viewData.welfareStopDate).format("YYYY-MM-DD") }}</el-descriptions-item>
|
||||||
</el-descriptions-item>
|
|
||||||
</template>
|
|
||||||
<template v-else>
|
|
||||||
<el-descriptions-item></el-descriptions-item>
|
<el-descriptions-item></el-descriptions-item>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="进校时间">{{ viewData.schoolTime }}</el-descriptions-item>
|
<el-descriptions-item></el-descriptions-item>
|
||||||
|
|
||||||
<el-descriptions-item label="家庭主要成员" :span="3">
|
<el-descriptions-item label="家庭主要成员" :span="3">
|
||||||
<el-table v-if="viewData.families&&viewData.families.length"
|
<el-table v-if="viewData.families&&viewData.families.length"
|
||||||
|
|||||||
@@ -26,17 +26,17 @@ const MEMBER_CHANGE_AUDIT_INFO = {
|
|||||||
|
|
||||||
<el-descriptions-item label="在职状态">{{ viewData.userState }}</el-descriptions-item>
|
<el-descriptions-item label="在职状态">{{ viewData.userState }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
||||||
<template v-if="viewData.retireDate">
|
<el-descriptions-item label="进校时间">{{ viewData.schoolTime }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="退休日期">{{ viewData.retireDate }}</el-descriptions-item>
|
|
||||||
</template>
|
<template v-if="viewData.userState == '退休'">
|
||||||
<template v-else>
|
<el-descriptions-item label="退休日期">{{ viewData.retireDate ? moment(viewData.retireDate).format("YYYY-MM-DD") : '暂无' }}</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="福利享受截止日期">{{ moment(viewData.welfareStopDate).format("YYYY-MM-DD") }}</el-descriptions-item>
|
||||||
<el-descriptions-item></el-descriptions-item>
|
<el-descriptions-item></el-descriptions-item>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
||||||
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="进校时间">{{ viewData.schoolTime }}</el-descriptions-item>
|
<el-descriptions-item></el-descriptions-item>
|
||||||
|
|
||||||
<el-descriptions-item label="家庭主要成员" :span="3">
|
<el-descriptions-item label="家庭主要成员" :span="3">
|
||||||
<el-table v-if="viewData.families&&viewData.families.length"
|
<el-table v-if="viewData.families&&viewData.families.length"
|
||||||
|
|||||||
@@ -26,20 +26,17 @@ const MEMBER_INFO = {
|
|||||||
|
|
||||||
<el-descriptions-item label="在职状态">{{ viewData.userState }}</el-descriptions-item>
|
<el-descriptions-item label="在职状态">{{ viewData.userState }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
||||||
<template v-if="viewData.retireDate">
|
<el-descriptions-item label="进校时间">{{ viewData.schoolTime }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="退休日期">
|
|
||||||
<el-tooltip class="item" effect="dark" :content="viewData.retireDate.substring(0, 10) + '系统将自动取消会员身份及福利会员身份'" placement="top">
|
<template v-if="viewData.userState == '退休'">
|
||||||
<span>{{ viewData.retireDate.substring(0, 10) }}</span>
|
<el-descriptions-item label="退休日期">{{ viewData.retireDate ? moment(viewData.retireDate).format("YYYY-MM-DD") : '暂无' }}</el-descriptions-item>
|
||||||
</el-tooltip>
|
<el-descriptions-item label="福利享受截止日期">{{ moment(viewData.welfareStopDate).format("YYYY-MM-DD") }}</el-descriptions-item>
|
||||||
</el-descriptions-item>
|
|
||||||
</template>
|
|
||||||
<template v-else>
|
|
||||||
<el-descriptions-item></el-descriptions-item>
|
<el-descriptions-item></el-descriptions-item>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="进校时间">{{ viewData.schoolTime }}</el-descriptions-item>
|
<el-descriptions-item></el-descriptions-item>
|
||||||
|
|
||||||
<el-descriptions-item label="家庭主要成员" :span="3">
|
<el-descriptions-item label="家庭主要成员" :span="3">
|
||||||
<el-table v-if="viewData.families&&viewData.families.length"
|
<el-table v-if="viewData.families&&viewData.families.length"
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ layout("/layouts/platform.html"){
|
|||||||
<el-table-column label="操作" width="180px">
|
<el-table-column label="操作" width="180px">
|
||||||
<template slot-scope="{row}">
|
<template slot-scope="{row}">
|
||||||
<el-button @click="openChangeInfo(row, true)" size="mini" type="primary">查看</el-button>
|
<el-button @click="openChangeInfo(row, true)" size="mini" type="primary">查看</el-button>
|
||||||
<el-button v-if="row.isOperate" @click="doRevoke(row)" size="mini" type="warning">撤销</el-button>
|
<!-- <el-button v-if="row.isOperate" @click="doRevoke(row)" size="mini" type="warning">撤销</el-button>-->
|
||||||
<el-button v-if="!row.isOperate" @click="openChangeInfo(row, false)" size="mini" type="primary">变更</el-button>
|
<el-button v-if="!row.isOperate" @click="openChangeInfo(row, false)" size="mini" type="primary">变更</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@@ -160,7 +160,7 @@ layout("/layouts/platform.html"){
|
|||||||
|
|
||||||
const isHasRetire = this.checkUsers.some(v=> ['退休'].includes(v.userState))
|
const isHasRetire = this.checkUsers.some(v=> ['退休'].includes(v.userState))
|
||||||
if (isHasRetire) {
|
if (isHasRetire) {
|
||||||
this.$message.warning('勾选用户中有退休教工,请手动变更退休职工并设置退休时间,勿批量确认')
|
this.$message.warning('勾选数据中包含退休教工,请手动变更退休职工并设置【福利享受截止日期】')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,20 +26,18 @@ const USER_CHANGE_INFO = {
|
|||||||
|
|
||||||
<el-descriptions-item label="在职状态">{{ viewData.userState }}</el-descriptions-item>
|
<el-descriptions-item label="在职状态">{{ viewData.userState }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
<el-descriptions-item label="人员类型">{{ viewData.personType }}</el-descriptions-item>
|
||||||
<template v-if="viewData.retireDate">
|
<el-descriptions-item label="进校时间">{{ viewData.schoolTime }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="退休日期">
|
|
||||||
<el-tooltip class="item" effect="dark" :content="viewData.retireDate.substring(0, 10) + '系统将自动取消会员身份及福利会员身份'" placement="top">
|
<template v-if="viewData.userState == '退休'">
|
||||||
<span>{{ viewData.retireDate.substring(0, 10) }}</span>
|
<el-descriptions-item label="退休日期">{{ viewData.retireDate ? moment(viewData.retireDate).format("YYYY-MM-DD") : '暂无' }}</el-descriptions-item>
|
||||||
</el-tooltip>
|
<el-descriptions-item label="福利享受截止日期">{{ moment(viewData.welfareStopDate).format("YYYY-MM-DD") }}</el-descriptions-item>
|
||||||
</el-descriptions-item>
|
|
||||||
</template>
|
|
||||||
<template v-else>
|
|
||||||
<el-descriptions-item></el-descriptions-item>
|
<el-descriptions-item></el-descriptions-item>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
<el-descriptions-item label="会员状态">{{ viewData.member ? '会员' : '非会员' }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
<el-descriptions-item label="福利会员状态">{{ viewData.welfareMember ? '福利会员' : '非福利会员' }}</el-descriptions-item>
|
||||||
<el-descriptions-item label="进校时间">{{ viewData.schoolTime }}</el-descriptions-item>
|
<el-descriptions-item></el-descriptions-item>
|
||||||
|
|
||||||
|
|
||||||
<el-descriptions-item label="家庭主要成员" :span="3">
|
<el-descriptions-item label="家庭主要成员" :span="3">
|
||||||
<el-table v-if="viewData.families&&viewData.families.length"
|
<el-table v-if="viewData.families&&viewData.families.length"
|
||||||
@@ -170,7 +168,7 @@ const USER_CHANGE_INFO = {
|
|||||||
</template>
|
</template>
|
||||||
<el-descriptions-item label="所属校区">
|
<el-descriptions-item label="所属校区">
|
||||||
<el-form-item prop="campus">
|
<el-form-item prop="campus">
|
||||||
<dict-select style="width: 100%" placeholder="请选择政治面貌" v-model="formData.campus"
|
<dict-select style="width: 100%" placeholder="请选择所属校区" v-model="formData.campus"
|
||||||
:disabled="allowFields('campus')" code="USER_CAMPUS"></dict-select>
|
:disabled="allowFields('campus')" code="USER_CAMPUS"></dict-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
@@ -198,6 +196,14 @@ const USER_CHANGE_INFO = {
|
|||||||
:disabled="allowFields('userState')" style="width: 100%"></dict-select>
|
:disabled="allowFields('userState')" style="width: 100%"></dict-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item label="人员类型">
|
||||||
|
<el-form-item prop="personType">
|
||||||
|
<dict-select v-model="formData.personType" code="PERSON_TYPE"
|
||||||
|
:disabled="allowFields('personType')" style="width: 100%"></dict-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item></el-descriptions-item>
|
||||||
|
|
||||||
<template v-if="formData.userState == '退休'">
|
<template v-if="formData.userState == '退休'">
|
||||||
<el-descriptions-item label="退休日期">
|
<el-descriptions-item label="退休日期">
|
||||||
<el-form-item prop="retireDate">
|
<el-form-item prop="retireDate">
|
||||||
@@ -210,16 +216,22 @@ const USER_CHANGE_INFO = {
|
|||||||
style="width: 100%"></el-date-picker>
|
style="width: 100%"></el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
</template>
|
|
||||||
<el-descriptions-item label="人员类型">
|
<el-descriptions-item label="福利享受截止日期">
|
||||||
<el-form-item prop="personType">
|
<el-form-item prop="welfareStopDate">
|
||||||
<dict-select v-model="formData.personType" code="PERSON_TYPE"
|
<el-date-picker v-model="formData.welfareStopDate"
|
||||||
:disabled="allowFields('personType')" style="width: 100%"></dict-select>
|
type="date"
|
||||||
|
:disabled="isView"
|
||||||
|
placeholder="请选择福利享受截止日期"
|
||||||
|
format="yyyy-MM-dd"
|
||||||
|
value-format="yyyy-MM-dd"
|
||||||
|
style="width: 100%"></el-date-picker>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
<el-descriptions-item v-if="formData.userState == null || formData.userState != '退休'"></el-descriptions-item>
|
<el-descriptions-item></el-descriptions-item>
|
||||||
|
</template>
|
||||||
|
|
||||||
<el-descriptions-item label="会员状态">
|
<!-- <el-descriptions-item label="会员状态">
|
||||||
<el-form-item prop="member">
|
<el-form-item prop="member">
|
||||||
<el-radio-group v-model="formData.member" :disabled="isView" size="small">
|
<el-radio-group v-model="formData.member" :disabled="isView" size="small">
|
||||||
<el-radio border :label="1">会员</el-radio>
|
<el-radio border :label="1">会员</el-radio>
|
||||||
@@ -290,7 +302,7 @@ const USER_CHANGE_INFO = {
|
|||||||
<template v-else>
|
<template v-else>
|
||||||
<el-descriptions-item></el-descriptions-item>
|
<el-descriptions-item></el-descriptions-item>
|
||||||
</template>
|
</template>
|
||||||
</template>
|
</template>-->
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</el-form>
|
</el-form>
|
||||||
|
|
||||||
@@ -428,8 +440,8 @@ const USER_CHANGE_INFO = {
|
|||||||
doSubmit() {
|
doSubmit() {
|
||||||
this.$refs.formRef.validate((valid) => {
|
this.$refs.formRef.validate((valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
if (['退休'].includes(this.formData.userState) && !this.formData.retireDate) {
|
if (['退休'].includes(this.formData.userState) && !this.formData.welfareStopDate) {
|
||||||
this.$message.warning('请在数据更新后信息中设置该教工的退休日期')
|
this.$message.warning('请在数据更新后信息中设置该教工的【福利享受截止日期】')
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
this.$confirm("提交后会改变人员基础数据,您确定要提交吗?", "提示", { type: "warning" })
|
this.$confirm("提交后会改变人员基础数据,您确定要提交吗?", "提示", { type: "warning" })
|
||||||
|
|||||||
Reference in New Issue
Block a user