mirror of https://gitee.com/stylefeng/roses
【8.0.5】【notice】更新编辑通知接口
parent
48d8bb464e
commit
84ed045a8b
|
@ -16,12 +16,17 @@ public enum SysNoticeExceptionEnum implements AbstractExceptionEnum {
|
||||||
/**
|
/**
|
||||||
* 查询结果不存在
|
* 查询结果不存在
|
||||||
*/
|
*/
|
||||||
SYS_NOTICE_NOT_EXISTED(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + "10001", "查询结果不存在"),
|
SYS_NOTICE_NOT_EXISTED(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + "10001", "通知不存在"),
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 通知范围不能为空
|
* 通知范围不能为空
|
||||||
*/
|
*/
|
||||||
SYS_NOTICE_SCOPE_EMPTY(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + "10002", "通知范围不能为空");
|
SYS_NOTICE_SCOPE_EMPTY(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + "10002", "通知范围不能为空"),
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通知已经发布,无法修改
|
||||||
|
*/
|
||||||
|
SYS_NOTICE_CANT_EDIT(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + "10003", "通知已经发布,无法修改");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 错误编码
|
* 错误编码
|
||||||
|
|
|
@ -35,18 +35,10 @@ public class SysNoticeServiceImpl extends ServiceImpl<SysNoticeMapper, SysNotice
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void add(SysNoticeRequest sysNoticeRequest) {
|
public void add(SysNoticeRequest sysNoticeRequest) {
|
||||||
|
|
||||||
// 1. 判断通知人员范围不能为空
|
// 1. 校验通知的人员范围是否为空
|
||||||
NoticeUserScope noticeUserScope = sysNoticeRequest.getNoticeUserScope();
|
this.validateUserScope(sysNoticeRequest);
|
||||||
if (noticeUserScope == null) {
|
|
||||||
throw new ServiceException(SysNoticeExceptionEnum.SYS_NOTICE_SCOPE_EMPTY);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 2. 通知的人员和部门不能同时为空
|
// 2. 存储基础信息
|
||||||
if (ObjectUtil.isEmpty(noticeUserScope.getPointOrgList()) && ObjectUtil.isEmpty(noticeUserScope.getPointUserList())) {
|
|
||||||
throw new ServiceException(SysNoticeExceptionEnum.SYS_NOTICE_SCOPE_EMPTY);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 3. 存储基础信息
|
|
||||||
SysNotice sysNotice = new SysNotice();
|
SysNotice sysNotice = new SysNotice();
|
||||||
BeanUtil.copyProperties(sysNoticeRequest, sysNotice);
|
BeanUtil.copyProperties(sysNoticeRequest, sysNotice);
|
||||||
|
|
||||||
|
@ -70,7 +62,20 @@ public class SysNoticeServiceImpl extends ServiceImpl<SysNoticeMapper, SysNotice
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void edit(SysNoticeRequest sysNoticeRequest) {
|
public void edit(SysNoticeRequest sysNoticeRequest) {
|
||||||
|
|
||||||
|
// 1. 校验通知的人员范围是否为空
|
||||||
|
this.validateUserScope(sysNoticeRequest);
|
||||||
|
|
||||||
|
// 2. 如果当前的通知是已经发布了,则不允许修改
|
||||||
SysNotice sysNotice = this.querySysNotice(sysNoticeRequest);
|
SysNotice sysNotice = this.querySysNotice(sysNoticeRequest);
|
||||||
|
if (sysNotice == null) {
|
||||||
|
throw new ServiceException(SysNoticeExceptionEnum.SYS_NOTICE_NOT_EXISTED);
|
||||||
|
}
|
||||||
|
if (NoticePublishStatusEnum.ALREADY.getCode().equals(sysNotice.getPublishStatus())) {
|
||||||
|
throw new ServiceException(SysNoticeExceptionEnum.SYS_NOTICE_CANT_EDIT);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3. 修改通知信息
|
||||||
BeanUtil.copyProperties(sysNoticeRequest, sysNotice);
|
BeanUtil.copyProperties(sysNoticeRequest, sysNotice);
|
||||||
this.updateById(sysNotice);
|
this.updateById(sysNotice);
|
||||||
}
|
}
|
||||||
|
@ -142,4 +147,23 @@ public class SysNoticeServiceImpl extends ServiceImpl<SysNoticeMapper, SysNotice
|
||||||
return queryWrapper;
|
return queryWrapper;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 校验通知的人员范围是否为空
|
||||||
|
*
|
||||||
|
* @author fengshuonan
|
||||||
|
* @since 2024-01-12 17:03
|
||||||
|
*/
|
||||||
|
private void validateUserScope(SysNoticeRequest sysNoticeRequest) {
|
||||||
|
// 1. 判断通知人员范围不能为空
|
||||||
|
NoticeUserScope noticeUserScope = sysNoticeRequest.getNoticeUserScope();
|
||||||
|
if (noticeUserScope == null) {
|
||||||
|
throw new ServiceException(SysNoticeExceptionEnum.SYS_NOTICE_SCOPE_EMPTY);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2. 通知的人员和部门不能同时为空
|
||||||
|
if (ObjectUtil.isEmpty(noticeUserScope.getPointOrgList()) && ObjectUtil.isEmpty(noticeUserScope.getPointUserList())) {
|
||||||
|
throw new ServiceException(SysNoticeExceptionEnum.SYS_NOTICE_SCOPE_EMPTY);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue