This commit is contained in:
JyuHsin
2025-09-04 11:52:05 +08:00
parent efae7b48b9
commit 5e757b204d
2 changed files with 18 additions and 12 deletions
@@ -259,17 +259,19 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
}
if (Lang.isNotEmpty(history.getChangeTypes()) && history.getChangeTypes().contains(MemberChangeType.NEW.getType())) {
needInitUserList.add(u);
histories.add(history);
}
} else {
SourceChangeMiddleTable table = createSourceChangeMiddleTable(source, user, dictMap, allowChangeFieldNames);
if (Lang.isEmpty(table)) {
continue;
}
if (user != null && Lang.isNotEmpty(table.getChangeTypes())) {
if (user != null) {
middleTables.add(table);
}
if (Lang.isNotEmpty(table.getChangeTypes()) && table.getChangeTypes().contains(MemberChangeType.NEW.getType())) {
needInitUserList.add(u);
middleTables.add(table);
}
}
}
@@ -527,7 +529,7 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
// 新入职教职工
if (user == null) {
changeTypes.add(MemberChangeType.NEW.getType());
table.setChangeTypes(RESIGN_AND_OUT_WORK.contains(source.getUserState()) ? changeTypes : null);
table.setChangeTypes(RESIGN_AND_OUT_WORK.contains(source.getUserState()) ? null : changeTypes);
table.setChangeInfosStr("新入职");
return table;
}
@@ -552,7 +554,8 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
return null;
}
String changeInfos = changeList.stream().map(v -> {
return v.getString("fieldName") + "" + HtmlUtil.cleanHtmlTag(v.getString("sourceValue")) + "—>" + HtmlUtil.cleanHtmlTag(v.getString("newValue"));
return v.getString("fieldName") + "" + HtmlUtil.cleanHtmlTag(ObjectUtil.defaultIfBlank(v.getString("sourceValue"), ""))
+ "—>" + HtmlUtil.cleanHtmlTag(ObjectUtil.defaultIfBlank(v.getString("newValue"), ""));
}).collect(Collectors.joining(""));
// 比较变更数据
@@ -583,7 +586,7 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
history.setChangeOrigin(MemberChangeOrigin.SYSTEM.name());
if (user == null) {
changeTypes.add(MemberChangeType.NEW.getType());
history.setChangeTypes(RESIGN_AND_OUT_WORK.contains(source.getUserState()) ? changeTypes : null);
history.setChangeTypes(RESIGN_AND_OUT_WORK.contains(source.getUserState()) ? null : changeTypes);
return history;
}
// 获取变更记录
@@ -603,7 +606,8 @@ public class SourceUserServiceImpl extends ViServiceImpl<UserSource> implements
return null;
}
String changeInfos = changeList.stream().map(v -> {
return v.getString("fieldName") + "" + HtmlUtil.cleanHtmlTag(v.getString("sourceValue")) + "—>" + HtmlUtil.cleanHtmlTag(v.getString("newValue"));
return v.getString("fieldName") + "" + HtmlUtil.cleanHtmlTag(ObjectUtil.defaultIfBlank(v.getString("sourceValue"), ""))
+ "—>" + HtmlUtil.cleanHtmlTag(ObjectUtil.defaultIfBlank(v.getString("newValue"), ""));
}).collect(Collectors.joining(""));
// 比较变更数据
commonCompareChange(source, user, changeTypes);
@@ -72,15 +72,16 @@ public class SourceChangeManageServiceImpl extends BaseServiceImpl<SourceChangeM
@Aop(TransAop.READ_COMMITTED)
public void doSourceChange(SourceChangeMiddleTable middleTable) {
// 是不是退休,退休就去设置成非会员
if ("退休".equals(middleTable.getUserState())) {
if (List.of("退休", "离职", "辞职").contains(middleTable.getUserState())) {
middleTable.setMember(0);
middleTable.setWelfareMember(0);
middleTable.setIsExitActivityMemberScope(true);
if (DateUtil.parseDate(middleTable.getWelfareStopDate()).isAfter(DateUtil.date())) {
middleTable.setWelfareMember(1);
} else {
middleTable.setWelfareMember(0);
}
// if (DateUtil.parseDate(middleTable.getWelfareStopDate()).isAfter(DateUtil.date())) {
// middleTable.setWelfareMember(1);
// } else {
// middleTable.setWelfareMember(0);
// }
}
@@ -231,7 +232,8 @@ public class SourceChangeManageServiceImpl extends BaseServiceImpl<SourceChangeM
history.setChangeInfos(changeList);
if (Lang.isNotEmpty(changeList)) {
String changeInfos = changeList.stream().map(v -> {
return v.getString("fieldName") + "" + HtmlUtil.cleanHtmlTag(v.getString("sourceValue")) + "->" + HtmlUtil.cleanHtmlTag(v.getString("newValue"));
return v.getString("fieldName") + "" + HtmlUtil.cleanHtmlTag(ObjectUtil.defaultIfBlank(v.getString("sourceValue"), ""))
+ "—>" + HtmlUtil.cleanHtmlTag(ObjectUtil.defaultIfBlank(v.getString("newValue"), ""));
}).collect(Collectors.joining(""));
if (isNewTeacher) {
changeInfos = changeInfos + ";新入职";