This commit is contained in:
JyuHsin
2026-05-18 16:47:28 +08:00
parent ba33a89cee
commit fa4ac246b5
3 changed files with 26 additions and 21 deletions
@@ -36,10 +36,7 @@ import io.v.nutz.zhgh.staffmanage.sourcechange.model.SourceChangeConfig;
import io.v.nutz.zhgh.staffmanage.sourcechange.model.SourceChangeMiddleTable;
import lombok.extern.slf4j.Slf4j;
import org.nutz.aop.interceptor.ioc.TransAop;
import org.nutz.dao.Cnd;
import org.nutz.dao.Dao;
import org.nutz.dao.FieldFilter;
import org.nutz.dao.Sqls;
import org.nutz.dao.*;
import org.nutz.dao.sql.Sql;
import org.nutz.dao.util.Daos;
import org.nutz.ioc.aop.Aop;
@@ -335,7 +332,8 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
/**
* 判断自动更新的会员和福利会员
* @param config 人员更新的配置
*
* @param config 人员更新的配置
* @param source
* @param user
* @param addMemberUserIds
@@ -344,13 +342,13 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
* @param deleteWelfareMemberUserIds
*/
private void checkMemberOrWelfareMember(SourceChangeConfig config, UserSource source, Sys_user user,
List<String> addMemberUserIds, List<String> deleteMemberUserIds,
List<String> addWelfareMemberUserIds, List<String> deleteWelfareMemberUserIds){
List<String> addMemberUserIds, List<String> deleteMemberUserIds,
List<String> addWelfareMemberUserIds, List<String> deleteWelfareMemberUserIds) {
if (StrUtil.isBlank(source.getUserState())) {
return;
}
if (user != null && ObjectUtil.equals(user.getMember(), 1) && List.of("退休", "离职", "辞职").contains(source.getUserState())) {
if (user != null && ObjectUtil.equals(user.getMember(), 1) && List.of("退休", "离职", "辞职", "死亡", "调出").contains(source.getUserState())) {
deleteMemberUserIds.add(user.getId());
deleteWelfareMemberUserIds.add(user.getId());
}
@@ -395,6 +393,7 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
/**
* 用于人工操作,不自动更新,不改变数据库数据
* 待人工手动调整后,变更数据库
*
* @param source
* @param user
* @param dictMap
@@ -455,6 +454,7 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
/**
* 自动更新,创建历史记录
* 会直接改变数据库
*
* @param source
* @param user
* @param dictMap
@@ -484,7 +484,7 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
// 变更记录
List<NutMap> changeList = new ArrayList<>();
for (String fieldName : allowChangeFieldNames) {
if (List.of("retireDate", "welfareStopDate", "personalStatus").contains(fieldName)) {
if (List.of("retireDate", "welfareStopDate", "personalStatus","welfareMember").contains(fieldName)) {
continue;
}
memberCommonService.extractChange(newMap, sourceMap, fieldName, dictMap, changeList);
@@ -508,11 +508,12 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
/**
* 比较变更类型公共方法
*
* @param source
* @param user
* @param changeTypes
*/
private void commonCompareChange(UserSource source, Sys_user user, List<String> changeTypes){
private void commonCompareChange(UserSource source, Sys_user user, List<String> changeTypes) {
changeTypes.add(MemberChangeType.BASIC_CHANGE.getType());
if (!ObjectUtil.equals(user.getUserState(), source.getUserState())) {
@@ -523,7 +524,7 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
}
}
if (source.getMember() != null && !ObjectUtil.equals(user.getMember(), source.getMember())){
if (source.getMember() != null && !ObjectUtil.equals(user.getMember(), source.getMember())) {
if (source.getMember() == 1) {
changeTypes.add(MemberChangeType.RESTORE.getType());
} else {
@@ -539,6 +540,7 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
/**
* 添加会员
*
* @param addMemberUserIds
* @param isJoinMemberActivityScope
*/
@@ -568,15 +570,17 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
/**
* 删除会员
*
* @param deleteMemberUserIds
* @param isDeleteMemberActivityScope
*/
private void deleteMemberUser(List<String> deleteMemberUserIds, Boolean isDeleteMemberActivityScope){
private void deleteMemberUser(List<String> deleteMemberUserIds, Boolean isDeleteMemberActivityScope) {
if (Lang.isNotEmpty(deleteMemberUserIds)) {
dao().clear(Sys_user_role.class, Cnd.where("userId", "in", deleteMemberUserIds).and("roleId", "=", Roles.MEMBER));
/* if (isDeleteMemberActivityScope) {
dao().clear(ActivityUserScope.class, Cnd.where("userId", "in", deleteMemberUserIds).and("groupId", "=", 1));
}*/
dao().update(Sys_user.class, Chain.make("member", 0).add("welfareMember", 0), Cnd.where("id", "in", deleteMemberUserIds));
if (isDeleteMemberActivityScope) {
dao().clear(ActivityUserScope.class, Cnd.where("userId", "in", deleteMemberUserIds).and("groupId", "=", 4));
}
}
}
@@ -586,7 +590,7 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
public void dailyScheduledUpdates() {
pullSourceData(true);
Date pullTime = (Date) dao().func2(UserSource.class, "max", "pullTime");
updateSysUser(DateUtil.formatDateTime(pullTime), "add",null,null,null,false);
updateSysUser(DateUtil.formatDateTime(pullTime), "add", null, null, null, false);
DateTime agoWeekDate = DateUtil.offsetWeek(new Date(), -1);
String formatAgoWeekDate = DateUtil.format(agoWeekDate, "yyyy-MM-dd");
@@ -597,9 +601,10 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
/**
* 数据大批量更新
*
* @param needDoUpdateList 需要更新的数据
* @param isPart 是否部分更新
* @param filterColumnDao 部分更新传递(部分更新存在过滤字段)
* @param isPart 是否部分更新
* @param filterColumnDao 部分更新传递(部分更新存在过滤字段)
*/
private void massUpdatesAsync(List<Sys_user> needDoUpdateList, Boolean isPart, AtomicReference<Dao> filterColumnDao) {
// 创建一个CPU核心数的2倍的线程池
@@ -53,7 +53,7 @@ public class SourceChangeConfigController {
List<String> list = (List<String>) siftValue;
System.out.println(list);
}
return null;
return config;
}
@@ -71,9 +71,9 @@
<script src="${base!}/assets/platform/js/v.js?v=1.0.5"></script>
<script src="${base!}/assets/platform/plugins/wangeditor/wangEditor.js"></script>
<!-- <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/wangeditor@4.6.15/dist/wangEditor.min.js"></script>-->
<script type="text/javascript"
<!-- <script type="text/javascript"
src="https://webapi.amap.com/maps?v=1.4.15&key=6ab3452804ba35050880b5e047436853&plugin=AMap.PolyEditor,AMap.PlaceSearch"></script>
-->
<!--viewer-->
<script src="${base!}/assets/platform/plugins/viewer/viewer.min.js"></script>
<script src="${base!}/assets/platform/plugins/viewer/jquery-viewer.min.js"></script>