diff --git a/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/info/MemberPersonalInfoMaintainController.java b/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/info/MemberPersonalInfoMaintainController.java index c61a4da..88f1ecc 100644 --- a/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/info/MemberPersonalInfoMaintainController.java +++ b/src/main/java/com/budwk/app/zhgh/staffmanage/member/controller/info/MemberPersonalInfoMaintainController.java @@ -96,7 +96,7 @@ public class MemberPersonalInfoMaintainController { */ @At @SaCheckPermission(value = {"member.info.maintain", "member.info.group"}, mode = SaMode.OR) - public Result saveChildren(String userId, @Param("children") String childrenJson) { + public Result saveChildren(String userId, String marriage, @Param("children") String childrenJson) { try { // 保存前复用详情权限校验,防止绕过列表入口修改无权限会员的子女信息。 memberInfoService.getPersonalMaintainInfo(userId); @@ -104,6 +104,7 @@ public class MemberPersonalInfoMaintainController { if (Strings.isNotBlank(childrenJson)) { children = Json.fromJsonAsList(MemberChild.class, childrenJson); } + memberInfoService.savePersonalMaintainMarriage(userId, marriage); memberChildService.saveUserChildren(userId, children); return Result.success(); } catch (RuntimeException e) { diff --git a/src/main/java/com/budwk/app/zhgh/staffmanage/member/service/MemberInfoService.java b/src/main/java/com/budwk/app/zhgh/staffmanage/member/service/MemberInfoService.java index 8420f6d..a929b27 100644 --- a/src/main/java/com/budwk/app/zhgh/staffmanage/member/service/MemberInfoService.java +++ b/src/main/java/com/budwk/app/zhgh/staffmanage/member/service/MemberInfoService.java @@ -43,6 +43,14 @@ public interface MemberInfoService extends BaseService { */ NutMap getPersonalMaintainInfo(String userId); + /** + * 保存个人信息维护中允许编辑的婚姻状况字段,其他会员原始字段不在此方法中更新。 + * + * @param userId 用户ID + * @param marriage 婚姻状况字典值 + */ + void savePersonalMaintainMarriage(String userId, String marriage); + /** * 获取会员历史 * @param pageForm diff --git a/src/main/java/com/budwk/app/zhgh/staffmanage/member/service/impl/MemberInfoServiceImpl.java b/src/main/java/com/budwk/app/zhgh/staffmanage/member/service/impl/MemberInfoServiceImpl.java index 31d67c4..fd1e750 100644 --- a/src/main/java/com/budwk/app/zhgh/staffmanage/member/service/impl/MemberInfoServiceImpl.java +++ b/src/main/java/com/budwk/app/zhgh/staffmanage/member/service/impl/MemberInfoServiceImpl.java @@ -195,6 +195,19 @@ public class MemberInfoServiceImpl extends BaseServiceImpl implements return Lang.obj2nutmap(user); } + /** + * 保存个人信息维护开放编辑的婚姻状况字段,权限校验复用详情查询口径。 + * + * @param userId 用户ID + * @param marriage 婚姻状况字典值 + */ + @Override + public void savePersonalMaintainMarriage(String userId, String marriage) { + // 先执行详情权限校验,确保非系统管理员不能通过保存接口修改其他人员婚姻状况。 + getPersonalMaintainInfo(userId); + dao().update(Sys_user.class, Chain.make("marriage", marriage), Cnd.where("id", "=", userId)); + } + @Override public Sql getMemberHistorySql(MemberInfoPageForm pageForm) { diff --git a/src/main/resources/views/platform/zhgh/staffmanage/member/info/maintain/edit.html b/src/main/resources/views/platform/zhgh/staffmanage/member/info/maintain/edit.html index d6135a6..1f00f9d 100644 --- a/src/main/resources/views/platform/zhgh/staffmanage/member/info/maintain/edit.html +++ b/src/main/resources/views/platform/zhgh/staffmanage/member/info/maintain/edit.html @@ -84,7 +84,7 @@ layout("/layouts/platform.html"){ - + @@ -184,6 +184,7 @@ layout("/layouts/platform.html"){ }).then(() => { this.$axios.post("/platform/member/info/maintain/saveChildren", { userId: this.userId, + marriage: this.formData.marriage, children: JSON.stringify(cleanedChildren) }).then((res) => { if (res.code === 0) {