diff --git a/src/main/java/com/glxp/api/dao/system/SysMsgTodoMapper.java b/src/main/java/com/glxp/api/dao/system/SysMsgTodoMapper.java new file mode 100644 index 000000000..f881a0145 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/system/SysMsgTodoMapper.java @@ -0,0 +1,20 @@ +package com.glxp.api.dao.system; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.glxp.api.entity.system.SysMsgTodoEntity; +import com.glxp.api.req.system.SysMsgTodoQuery; +import com.glxp.api.vo.system.SysMsgTodoVo; + +import java.util.List; + +/** + * 针对表【sys_msg_todo】的数据库操作Mapper + */ +public interface SysMsgTodoMapper extends BaseMapper { + + List pageOfVo(SysMsgTodoQuery query); +} + + + + diff --git a/src/main/java/com/glxp/api/entity/system/SysMsgTodoController.java b/src/main/java/com/glxp/api/entity/system/SysMsgTodoController.java new file mode 100644 index 000000000..211ae10a5 --- /dev/null +++ b/src/main/java/com/glxp/api/entity/system/SysMsgTodoController.java @@ -0,0 +1,34 @@ +package com.glxp.api.entity.system; + +import cn.hutool.core.bean.BeanUtil; +import com.github.pagehelper.PageInfo; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.req.system.SysMsgTodoQuery; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.service.system.SysMsgTodoService; +import com.glxp.api.vo.system.SysMsgTodoVo; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RestController +@RequiredArgsConstructor +public class SysMsgTodoController { + + private final SysMsgTodoService sysMsgTodoService; + + @PostMapping("/spms/sysMsgTodo/page") + public BaseResponse page(@RequestBody SysMsgTodoQuery query) { + List msgTodoVos = sysMsgTodoService.pageOfVo(query); + PageInfo page = new PageInfo<>(msgTodoVos); + PageSimpleResponse simpleResponse = new PageSimpleResponse<>(); + simpleResponse.setTotal(page.getTotal()); + simpleResponse.setList(BeanUtil.copyToList(msgTodoVos, SysMsgTodoVo.class)); + return ResultVOUtils.success(simpleResponse); + } + +} diff --git a/src/main/java/com/glxp/api/entity/system/SysMsgTodoEntity.java b/src/main/java/com/glxp/api/entity/system/SysMsgTodoEntity.java new file mode 100644 index 000000000..e9d1672fc --- /dev/null +++ b/src/main/java/com/glxp/api/entity/system/SysMsgTodoEntity.java @@ -0,0 +1,98 @@ +package com.glxp.api.entity.system; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.glxp.api.enums.DealStatusEnum; +import com.glxp.api.enums.PushStatusEnum; +import com.glxp.api.enums.TodoMsgTypeEnum; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * + * @TableName sys_msg_todo + */ +@TableName(value ="sys_msg_todo") +@Data +public class SysMsgTodoEntity { + /** + * + */ + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + /** + * 消息编码 + */ + @TableField(value = "code") + private String code; + + /** + * 消息类型(1:入院物资申请;2:单据审核;3:单据发票确认;5.资质审核;6:领用单审核;7:申购单审核;8:采购订单审核;) + */ + @TableField(value = "msgType") + private TodoMsgTypeEnum msgType; + + /** + * 消息内容 + */ + @TableField(value = "msgContent") + private String msgContent; + + /** + * 处理状态 + */ + @TableField(value = "dealStatus") + private DealStatusEnum dealStatus; + + /** + * 推送小程序状态(1:未推送;2:推送成功;3:推送失败 + */ + @TableField(value = "pushStatus") + private PushStatusEnum pushStatus; + + /** + * 跳转地址 + */ + @TableField(value = "toUrl") + private String toUrl; + + /** + * 创建时间 + */ + @TableField(value = "createTime") + private LocalDateTime createTime; + + /** + * 更新人 + */ + @TableField(value = "updateUser") + private String updateUser; + + /** + * 更新时间 + */ + @TableField(value = "updateTime") + private LocalDateTime updateTime; + + /** + * 所属仓库 + */ + @TableField(value = "deptCode") + private String deptCode; + + /** + * 所属仓库 + */ + @TableField(value = "invCode") + private String invCode; + + /** + * 备注 + */ + @TableField(value = "remark") + private String remark; +} diff --git a/src/main/java/com/glxp/api/enums/DealStatusEnum.java b/src/main/java/com/glxp/api/enums/DealStatusEnum.java new file mode 100644 index 000000000..f4f81bf42 --- /dev/null +++ b/src/main/java/com/glxp/api/enums/DealStatusEnum.java @@ -0,0 +1,20 @@ +package com.glxp.api.enums; + +import com.baomidou.mybatisplus.annotation.EnumValue; +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum DealStatusEnum { + + NOT_CONFIRMED("not_confirmed", 1, "未处理"), + + CONFIRMED("confirmed", 2, "已处理"), + ; + + final String key; + @EnumValue + final Integer value; + final String desc; +} diff --git a/src/main/java/com/glxp/api/enums/PushStatusEnum.java b/src/main/java/com/glxp/api/enums/PushStatusEnum.java new file mode 100644 index 000000000..0c9b4797b --- /dev/null +++ b/src/main/java/com/glxp/api/enums/PushStatusEnum.java @@ -0,0 +1,23 @@ +package com.glxp.api.enums; + +import com.baomidou.mybatisplus.annotation.EnumValue; +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum PushStatusEnum { + + NOT_PUSHED("not_pushed", 1, "未推送"), + + PUSH_SUCCESS("push_success", 2, "推送成功"), + PUSH_FAIL("push_fail", 3, "推送失败"), + ; + + final String key; + @EnumValue + final Integer value; + final String desc; + + +} diff --git a/src/main/java/com/glxp/api/enums/TodoMsgTypeEnum.java b/src/main/java/com/glxp/api/enums/TodoMsgTypeEnum.java new file mode 100644 index 000000000..2e0d6588c --- /dev/null +++ b/src/main/java/com/glxp/api/enums/TodoMsgTypeEnum.java @@ -0,0 +1,27 @@ +package com.glxp.api.enums; + +import com.baomidou.mybatisplus.annotation.EnumValue; +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum TodoMsgTypeEnum { + + PUT_IN_APPLY("put_in_apply", 1, "入院物资申请"), + + ORDER_AUDIT("order_audit", 2, "单据审核"), + INVOICE_CONFIRM("invoice_confirm", 3, "单据发票确认"), + CERT_AUDIT("cert_audit", 5, "资质审核"), + USE_AUDIT("use_audit", 6, "领用单审核"), + BUY_APPLY_AUDIT("buy_audit", 7, "申购单审核"), + PROCUREMENT_AUDIT("procurement_audit", 8, "采购单审核"), + ; + + final String key; + @EnumValue + final Integer value; + final String desc; + + +} diff --git a/src/main/java/com/glxp/api/req/system/SysMsgTodoQuery.java b/src/main/java/com/glxp/api/req/system/SysMsgTodoQuery.java new file mode 100644 index 000000000..6d5176638 --- /dev/null +++ b/src/main/java/com/glxp/api/req/system/SysMsgTodoQuery.java @@ -0,0 +1,19 @@ +package com.glxp.api.req.system; + +import com.glxp.api.enums.DealStatusEnum; +import com.glxp.api.enums.PushStatusEnum; +import com.glxp.api.enums.TodoMsgTypeEnum; +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +@Data +public class SysMsgTodoQuery extends ListPageRequest { + + TodoMsgTypeEnum msgType; + PushStatusEnum pushStatus; + DealStatusEnum dealStatus; + + String invCode; + + String deptCode; +} diff --git a/src/main/java/com/glxp/api/service/system/SysMsgTodoService.java b/src/main/java/com/glxp/api/service/system/SysMsgTodoService.java new file mode 100644 index 000000000..471f53375 --- /dev/null +++ b/src/main/java/com/glxp/api/service/system/SysMsgTodoService.java @@ -0,0 +1,16 @@ +package com.glxp.api.service.system; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.glxp.api.entity.system.SysMsgTodoEntity; +import com.glxp.api.req.system.SysMsgTodoQuery; +import com.glxp.api.vo.system.SysMsgTodoVo; + +import java.util.List; + +/** + * 针对表【sys_msg_todo】的数据库操作Service + */ +public interface SysMsgTodoService extends IService { + + List pageOfVo(SysMsgTodoQuery query); +} diff --git a/src/main/java/com/glxp/api/service/system/impl/SysMsgTodoServiceImpl.java b/src/main/java/com/glxp/api/service/system/impl/SysMsgTodoServiceImpl.java new file mode 100644 index 000000000..c77a3f2ee --- /dev/null +++ b/src/main/java/com/glxp/api/service/system/impl/SysMsgTodoServiceImpl.java @@ -0,0 +1,31 @@ +package com.glxp.api.service.system.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.github.pagehelper.PageHelper; +import com.glxp.api.dao.system.SysMsgTodoMapper; +import com.glxp.api.entity.system.SysMsgTodoEntity; +import com.glxp.api.req.system.SysMsgTodoQuery; +import com.glxp.api.service.system.SysMsgTodoService; +import com.glxp.api.vo.system.SysMsgTodoVo; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 针对表【sys_msg_todo】的数据库操作Service实现 + */ +@Service +public class SysMsgTodoServiceImpl extends ServiceImpl + implements SysMsgTodoService { + + @Override + public List pageOfVo(SysMsgTodoQuery query) { + + PageHelper.startPage(query.getPage(), query.getLimit(), true); + return super.baseMapper.pageOfVo(query); + } +} + + + + diff --git a/src/main/java/com/glxp/api/vo/system/SysMsgTodoVo.java b/src/main/java/com/glxp/api/vo/system/SysMsgTodoVo.java new file mode 100644 index 000000000..56d09ee34 --- /dev/null +++ b/src/main/java/com/glxp/api/vo/system/SysMsgTodoVo.java @@ -0,0 +1,37 @@ +package com.glxp.api.vo.system; + +import com.glxp.api.entity.system.SysMsgTodoEntity; +import lombok.Data; + +@Data +public class SysMsgTodoVo extends SysMsgTodoEntity { + + String msgTypeName; + String pushStatusName; + String dealStatusName; + + String invName; + + String deptName; + + public String getMsgTypeName() { + if (super.getMsgType() != null) { + return super.getMsgType().getDesc(); + } + return msgTypeName; + } + + public String getPushStatusName() { + if (super.getPushStatus() != null) { + return super.getPushStatus().getDesc(); + } + return pushStatusName; + } + + public String getDealStatusName() { + if (super.getDealStatus() != null) { + return super.getDealStatus().getDesc(); + } + return dealStatusName; + } +} diff --git a/src/main/resources/mybatis/mapper/system/SysMsgTodoMapper.xml b/src/main/resources/mybatis/mapper/system/SysMsgTodoMapper.xml new file mode 100644 index 000000000..d5e7c543b --- /dev/null +++ b/src/main/resources/mybatis/mapper/system/SysMsgTodoMapper.xml @@ -0,0 +1,30 @@ + + + + + diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index f482a6189..d58bd0d91 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -3874,3 +3874,21 @@ CALL Pro_Temp_ColumnWork('inv_remind_set', 'recentDateTime', CALL Pro_Temp_ColumnWork('inv_remind_set', 'isDateBy', ' tinyint(0) NULL DEFAULT 1 COMMENT ''时间预警填写类型1天2小时''', 1); + + +CREATE TABLE IF NOT EXISTS `sys_msg_todo` ( + `id` int NOT NULL AUTO_INCREMENT, + `code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '消息编码', + `msgType` tinyint DEFAULT NULL COMMENT '消息类型(1:入院物资申请;2:单据审核;3:单据发票确认;5.资质审核;6:领用单审核;7:申购单审核;8:采购订单审核;)', + `msgContent` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '消息内容', + `dealStatus` tinyint DEFAULT NULL COMMENT '处理状态', + `pushStatus` tinyint DEFAULT NULL COMMENT '推送小程序状态(1:未推送;2:推送成功;3:推送失败', + `toUrl` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '跳转地址', + `createTime` datetime DEFAULT NULL COMMENT '创建时间', + `updateUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '更新人', + `updateTime` datetime DEFAULT NULL COMMENT '更新时间', + `deptCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '所属仓库', + `invCode` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '所属仓库', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + PRIMARY KEY (`id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;