mirror of https://gitee.com/stylefeng/roses
【7.6.0】【sys】整理notice的包依赖
parent
05800d60f5
commit
6365ec535d
|
@ -32,8 +32,8 @@ import cn.stylefeng.roses.kernel.scanner.api.annotation.ApiResource;
|
|||
import cn.stylefeng.roses.kernel.scanner.api.annotation.GetResource;
|
||||
import cn.stylefeng.roses.kernel.scanner.api.annotation.PostResource;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.notice.entity.SysNotice;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.notice.pojo.SysNoticeRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.notice.service.SysNoticeService;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.notice.SysNoticeRequest;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
|
|
@ -0,0 +1,66 @@
|
|||
/*
|
||||
* Copyright [2020-2030] [https://www.stylefeng.cn]
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* Guns采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
|
||||
*
|
||||
* 1.请不要删除和修改根目录下的LICENSE文件。
|
||||
* 2.请不要删除和修改Guns源码头部的版权声明。
|
||||
* 3.请保留源码和相关描述文件的项目出处,作者声明等。
|
||||
* 4.分发源码时候,请注明软件出处 https://gitee.com/stylefeng/guns
|
||||
* 5.在修改包名,模块名称,项目代码等时,请注明软件出处 https://gitee.com/stylefeng/guns
|
||||
* 6.若您的项目无法满足以上几点,可申请商业授权
|
||||
*/
|
||||
package cn.stylefeng.roses.kernel.sys.modular.notice.exceptions;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.constants.RuleConstants;
|
||||
import cn.stylefeng.roses.kernel.rule.exception.AbstractExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.api.constants.SysConstants;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 通知管理相关异常枚举
|
||||
*
|
||||
* @author liuhanqing
|
||||
* @since 2021/1/9 16:11
|
||||
*/
|
||||
@Getter
|
||||
public enum NoticeExceptionEnum implements AbstractExceptionEnum {
|
||||
|
||||
/**
|
||||
* 通知不存在
|
||||
*/
|
||||
NOTICE_NOT_EXIST(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "41", "通知不存在,id为:{}"),
|
||||
|
||||
/**
|
||||
* 通知范围不允许修改
|
||||
*/
|
||||
NOTICE_SCOPE_NOT_EDIT(RuleConstants.USER_OPERATION_ERROR_TYPE_CODE + SysConstants.SYS_EXCEPTION_STEP_CODE + "42", "通知范围不允许修改");
|
||||
|
||||
/**
|
||||
* 错误编码
|
||||
*/
|
||||
private final String errorCode;
|
||||
|
||||
/**
|
||||
* 提示用户信息
|
||||
*/
|
||||
private final String userTip;
|
||||
|
||||
NoticeExceptionEnum(String errorCode, String userTip) {
|
||||
this.errorCode = errorCode;
|
||||
this.userTip = userTip;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,102 @@
|
|||
/*
|
||||
* Copyright [2020-2030] [https://www.stylefeng.cn]
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
* Guns采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
|
||||
*
|
||||
* 1.请不要删除和修改根目录下的LICENSE文件。
|
||||
* 2.请不要删除和修改Guns源码头部的版权声明。
|
||||
* 3.请保留源码和相关描述文件的项目出处,作者声明等。
|
||||
* 4.分发源码时候,请注明软件出处 https://gitee.com/stylefeng/guns
|
||||
* 5.在修改包名,模块名称,项目代码等时,请注明软件出处 https://gitee.com/stylefeng/guns
|
||||
* 6.若您的项目无法满足以上几点,可申请商业授权
|
||||
*/
|
||||
package cn.stylefeng.roses.kernel.sys.modular.notice.pojo;
|
||||
|
||||
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
|
||||
import cn.stylefeng.roses.kernel.rule.pojo.request.BaseRequest;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 系统通知参数
|
||||
*
|
||||
* @author liuhanqing
|
||||
* @since 2021/1/8 21:53
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
public class SysNoticeRequest extends BaseRequest {
|
||||
|
||||
/**
|
||||
* 通知id
|
||||
*/
|
||||
@NotNull(message = "noticeId不能为空", groups = {edit.class, delete.class, detail.class})
|
||||
@ChineseDescription("通知id")
|
||||
private Long noticeId;
|
||||
|
||||
/**
|
||||
* 通知标题
|
||||
*/
|
||||
@NotBlank(message = "通知标题不能为空", groups = {add.class, edit.class})
|
||||
@ChineseDescription("通知标题")
|
||||
private String noticeTitle;
|
||||
|
||||
/**
|
||||
* 通知摘要
|
||||
*/
|
||||
@ChineseDescription("通知摘要")
|
||||
private String noticeSummary;
|
||||
|
||||
/**
|
||||
* 通知优先级
|
||||
*/
|
||||
@ChineseDescription("通知优先级")
|
||||
private String priorityLevel;
|
||||
|
||||
|
||||
/**
|
||||
* 通知开始时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ChineseDescription("通知开始时间")
|
||||
private Date noticeBeginTime;
|
||||
|
||||
|
||||
/**
|
||||
* 通知结束时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ChineseDescription("通知结束时间")
|
||||
private Date noticeEndTime;
|
||||
|
||||
/**
|
||||
* 通知内容
|
||||
*/
|
||||
@ChineseDescription("通知内容")
|
||||
@NotBlank(message = "通知内容不能为空", groups = {add.class, edit.class})
|
||||
private String noticeContent;
|
||||
|
||||
/**
|
||||
* 通知范围
|
||||
*/
|
||||
@ChineseDescription("通知范围")
|
||||
private String noticeScope;
|
||||
|
||||
}
|
|
@ -26,8 +26,7 @@ package cn.stylefeng.roses.kernel.sys.modular.notice.service;
|
|||
|
||||
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.notice.entity.SysNotice;
|
||||
import cn.stylefeng.roses.kernel.system.api.NoticeServiceApi;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.notice.SysNoticeRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.notice.pojo.SysNoticeRequest;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
|
||||
import java.util.List;
|
||||
|
@ -38,7 +37,7 @@ import java.util.List;
|
|||
* @author liuhanqing
|
||||
* @since 2021/1/8 19:56
|
||||
*/
|
||||
public interface SysNoticeService extends IService<SysNotice>, NoticeServiceApi {
|
||||
public interface SysNoticeService extends IService<SysNotice> {
|
||||
|
||||
/**
|
||||
* 添加系统应用
|
||||
|
|
|
@ -35,12 +35,12 @@ import cn.stylefeng.roses.kernel.message.api.MessageApi;
|
|||
import cn.stylefeng.roses.kernel.message.api.enums.MessageBusinessTypeEnum;
|
||||
import cn.stylefeng.roses.kernel.message.api.pojo.request.MessageSendRequest;
|
||||
import cn.stylefeng.roses.kernel.rule.enums.YesOrNotEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.api.exception.SysException;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.notice.entity.SysNotice;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.notice.exceptions.NoticeExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.notice.mapper.SysNoticeMapper;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.notice.pojo.SysNoticeRequest;
|
||||
import cn.stylefeng.roses.kernel.sys.modular.notice.service.SysNoticeService;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.SystemModularException;
|
||||
import cn.stylefeng.roses.kernel.system.api.exception.enums.notice.NoticeExceptionEnum;
|
||||
import cn.stylefeng.roses.kernel.system.api.pojo.notice.SysNoticeRequest;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
|
@ -96,7 +96,7 @@ public class SysNoticeServiceImpl extends ServiceImpl<SysNoticeMapper, SysNotice
|
|||
|
||||
// 通知范围不允许修改, 如果通知范围不同抛出异常
|
||||
if (!sysNoticeRequest.getNoticeScope().equals(sysNotice.getNoticeScope())) {
|
||||
throw new SystemModularException(NoticeExceptionEnum.NOTICE_SCOPE_NOT_EDIT);
|
||||
throw new SysException(NoticeExceptionEnum.NOTICE_SCOPE_NOT_EDIT);
|
||||
}
|
||||
|
||||
// 获取通知范围,如果为空则设置为all
|
||||
|
@ -142,7 +142,7 @@ public class SysNoticeServiceImpl extends ServiceImpl<SysNoticeMapper, SysNotice
|
|||
private SysNotice querySysNoticeById(SysNoticeRequest sysNoticeRequest) {
|
||||
SysNotice sysNotice = this.getById(sysNoticeRequest.getNoticeId());
|
||||
if (ObjectUtil.isNull(sysNotice)) {
|
||||
throw new SystemModularException(NoticeExceptionEnum.NOTICE_NOT_EXIST, sysNoticeRequest.getNoticeId());
|
||||
throw new SysException(NoticeExceptionEnum.NOTICE_NOT_EXIST, sysNoticeRequest.getNoticeId());
|
||||
}
|
||||
return sysNotice;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue