init
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.cai.domain.SysPush;
|
||||
import com.ruoyi.cai.service.SysPushService;
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.annotation.RepeatSubmit;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.core.validate.AddGroup;
|
||||
import com.ruoyi.common.core.validate.EditGroup;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* 推送系统消息
|
||||
*
|
||||
* @author 77
|
||||
* @date 2024-01-28
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/cai/sysPush")
|
||||
public class SysPushController extends BaseController {
|
||||
|
||||
private final SysPushService sysPushService;
|
||||
|
||||
/**
|
||||
* 查询推送系统消息列表
|
||||
*/
|
||||
@SaCheckPermission("cai:sysPush:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<SysPush> list(SysPush bo, PageQuery pageQuery) {
|
||||
Page<SysPush> page = sysPushService.page(pageQuery.build(), Wrappers.lambdaQuery(bo));
|
||||
return TableDataInfo.build(page);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取推送系统消息详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("cai:sysPush:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<SysPush> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable Long id) {
|
||||
return R.ok(sysPushService.getById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增推送系统消息
|
||||
*/
|
||||
@SaCheckPermission("cai:sysPush:add")
|
||||
@Log(title = "推送系统消息", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody SysPush bo) {
|
||||
return toAjax(sysPushService.save(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改推送系统消息
|
||||
*/
|
||||
@SaCheckPermission("cai:sysPush:edit")
|
||||
@Log(title = "推送系统消息", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody SysPush bo) {
|
||||
return toAjax(sysPushService.updateById(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除推送系统消息
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("cai:sysPush:remove")
|
||||
@Log(title = "推送系统消息", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable Long[] ids) {
|
||||
return toAjax(sysPushService.removeBatchByIds(Arrays.asList(ids)));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,95 @@
|
||||
package com.ruoyi.cai.controller;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.cai.domain.SysPushLog;
|
||||
import com.ruoyi.cai.service.SysPushLogService;
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.annotation.RepeatSubmit;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.core.validate.AddGroup;
|
||||
import com.ruoyi.common.core.validate.EditGroup;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* 推送系统消息记录
|
||||
*
|
||||
* @author 77
|
||||
* @date 2024-01-28
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/cai/sysPushLog")
|
||||
public class SysPushLogController extends BaseController {
|
||||
|
||||
private final SysPushLogService sysPushLogService;
|
||||
|
||||
/**
|
||||
* 查询推送系统消息记录列表
|
||||
*/
|
||||
@SaCheckPermission("cai:sysPushLog:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<SysPushLog> list(SysPushLog bo, PageQuery pageQuery) {
|
||||
Page<SysPushLog> page = sysPushLogService.page(pageQuery.build(), Wrappers.lambdaQuery(bo));
|
||||
return TableDataInfo.build(page);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取推送系统消息记录详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("cai:sysPushLog:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<SysPushLog> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable Long id) {
|
||||
return R.ok(sysPushLogService.getById(id));
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增推送系统消息记录
|
||||
*/
|
||||
@SaCheckPermission("cai:sysPushLog:add")
|
||||
@Log(title = "推送系统消息记录", businessType = BusinessType.INSERT)
|
||||
@RepeatSubmit()
|
||||
@PostMapping()
|
||||
public R<Void> add(@Validated(AddGroup.class) @RequestBody SysPushLog bo) {
|
||||
return toAjax(sysPushLogService.save(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改推送系统消息记录
|
||||
*/
|
||||
@SaCheckPermission("cai:sysPushLog:edit")
|
||||
@Log(title = "推送系统消息记录", businessType = BusinessType.UPDATE)
|
||||
@RepeatSubmit()
|
||||
@PutMapping()
|
||||
public R<Void> edit(@Validated(EditGroup.class) @RequestBody SysPushLog bo) {
|
||||
return toAjax(sysPushLogService.updateById(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除推送系统消息记录
|
||||
*
|
||||
* @param ids 主键串
|
||||
*/
|
||||
@SaCheckPermission("cai:sysPushLog:remove")
|
||||
@Log(title = "推送系统消息记录", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{ids}")
|
||||
public R<Void> remove(@NotEmpty(message = "主键不能为空")
|
||||
@PathVariable Long[] ids) {
|
||||
return toAjax(sysPushLogService.removeBatchByIds(Arrays.asList(ids)));
|
||||
}
|
||||
}
|
||||
80
ruoyi-cai/src/main/java/com/ruoyi/cai/domain/SysPush.java
Normal file
80
ruoyi-cai/src/main/java/com/ruoyi/cai/domain/SysPush.java
Normal file
@@ -0,0 +1,80 @@
|
||||
package com.ruoyi.cai.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 推送系统消息对象 cai_sys_push
|
||||
*
|
||||
* @author 77
|
||||
* @date 2024-01-28
|
||||
*/
|
||||
@Data
|
||||
@TableName("cai_sys_push")
|
||||
public class SysPush implements Serializable {
|
||||
|
||||
private static final long serialVersionUID=1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@TableId(value = "id",type = IdType.AUTO)
|
||||
private Long id;
|
||||
/**
|
||||
* 群体类型: 0=单个用户,1=全部用户,2=男用户,3=女用户, 4 =认证女神
|
||||
*/
|
||||
private Integer groupId;
|
||||
/**
|
||||
* 消息类型:0=纯文字消息,1=文本消息,2=单图文消息,3=多图文消息
|
||||
*/
|
||||
private Integer type;
|
||||
/**
|
||||
* 用户id,仅在group_id=单个用户时生效
|
||||
*/
|
||||
private Long userId;
|
||||
private String usercode;
|
||||
/**
|
||||
* 标题
|
||||
*/
|
||||
private String title;
|
||||
/**
|
||||
* 内容
|
||||
*/
|
||||
private String content;
|
||||
/**
|
||||
* 前端参数
|
||||
*/
|
||||
private String params;
|
||||
/**
|
||||
* 备注说明
|
||||
*/
|
||||
private String remark;
|
||||
/**
|
||||
* 发送类型:0=手动发送,1=定时发送
|
||||
*/
|
||||
private Integer sendTimeType;
|
||||
/**
|
||||
* 发送时间
|
||||
*/
|
||||
private LocalDateTime sendTime;
|
||||
/**
|
||||
* 已推送人数
|
||||
*/
|
||||
private Integer num;
|
||||
/**
|
||||
* 状态:0=未执行,1=执行中,2队列执行中,3=已完成
|
||||
*/
|
||||
private Integer status;
|
||||
/**
|
||||
* 完成时间
|
||||
*/
|
||||
private LocalDateTime endTime;
|
||||
private LocalDateTime createTime;
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
}
|
||||
64
ruoyi-cai/src/main/java/com/ruoyi/cai/domain/SysPushLog.java
Normal file
64
ruoyi-cai/src/main/java/com/ruoyi/cai/domain/SysPushLog.java
Normal file
@@ -0,0 +1,64 @@
|
||||
package com.ruoyi.cai.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* 推送系统消息记录对象 cai_sys_push_log
|
||||
*
|
||||
* @author 77
|
||||
* @date 2024-01-28
|
||||
*/
|
||||
@Data
|
||||
@TableName("cai_sys_push_log")
|
||||
public class SysPushLog implements Serializable {
|
||||
|
||||
private static final long serialVersionUID=1L;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@TableId(value = "id",type = IdType.AUTO)
|
||||
private Long id;
|
||||
/**
|
||||
* 系统推送id
|
||||
*/
|
||||
private Long sysPushId;
|
||||
/**
|
||||
* 推送到的用户id
|
||||
*/
|
||||
private String userJson;
|
||||
/**
|
||||
* 推送人数
|
||||
*/
|
||||
private Integer num;
|
||||
/**
|
||||
* 推送状态:0=未推送,1=推送中,2=推送失败,3=推送成功
|
||||
*/
|
||||
private Integer status;
|
||||
/**
|
||||
* 推送返回的结果
|
||||
*/
|
||||
private String result;
|
||||
/**
|
||||
* 重试次数
|
||||
*/
|
||||
private Integer retry;
|
||||
/**
|
||||
* 开始发送时间
|
||||
*/
|
||||
private LocalDateTime beginTime;
|
||||
/**
|
||||
* 完成时间
|
||||
*/
|
||||
private LocalDateTime endTime;
|
||||
|
||||
private LocalDateTime createTime;
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.ruoyi.cai.enums.systempush;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
public enum SystemPushGroupIdEnum {
|
||||
// 群体类型: 0=单个用户,1=全部用户,2=男用户,3=女用户, 4 =认证女神
|
||||
ONE_USER(0,"单个用户"),
|
||||
ALL_USER(1,"全部用户"),
|
||||
MEN_USER(2,"男用户"),
|
||||
WOMEN_USER(3,"女用户"),
|
||||
ANCHOR_USER(4,"认证女神"),
|
||||
;
|
||||
private final Integer code;
|
||||
private final String text;
|
||||
|
||||
SystemPushGroupIdEnum(Integer code, String text) {
|
||||
this.code = code;
|
||||
this.text = text;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.ruoyi.cai.enums.systempush;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
// 推送状态:0=未推送,1=推送中,2=推送失败,3=推送成功
|
||||
@Getter
|
||||
public enum SystemPushLogStatus {
|
||||
NO_SEND(0,"未推送"),
|
||||
SENDING(1,"推送中"),
|
||||
SEND_FAIL(2,"推送失败"),
|
||||
SEND_SUCCESS(3,"推送成功"),
|
||||
;
|
||||
private final Integer code;
|
||||
private final String text;
|
||||
|
||||
SystemPushLogStatus(Integer code, String text) {
|
||||
this.code = code;
|
||||
this.text = text;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.ruoyi.cai.enums.systempush;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
public enum SystemPushSendTimeTypeEnum {
|
||||
// 发送类型:0=手动发送,1=定时发送
|
||||
HAND_SEND(0,"手动发送"),
|
||||
SCHEDULED_SEND(1,"定时发送"),
|
||||
|
||||
;
|
||||
private final Integer code;
|
||||
private final String text;
|
||||
|
||||
SystemPushSendTimeTypeEnum(Integer code, String text) {
|
||||
this.code = code;
|
||||
this.text = text;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.ruoyi.cai.enums.systempush;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
public enum SystemPushStatusEnum {
|
||||
// 状态:0=未执行,1=执行中,2=队列执行中,3=已完成
|
||||
NO_RUN(0,"未执行"),
|
||||
RUNNING(1,"执行中"),
|
||||
QUEUE_RUNNING(2,"队列执行中"),
|
||||
COMPLETE(3,"已完成"),
|
||||
;
|
||||
private final Integer code;
|
||||
private final String text;
|
||||
|
||||
SystemPushStatusEnum(Integer code, String text) {
|
||||
this.code = code;
|
||||
this.text = text;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.ruoyi.cai.enums.systempush;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
public enum SystemPushTypeEnum {
|
||||
// 消息类型:0=纯文字消息,1=文本消息,2=单图文消息,3=多图文消息
|
||||
SIMPLE_TEXT(0,"纯文字消息"),
|
||||
TEXT(1,"文本消息"),
|
||||
SIMPLE_IMAGE_TEXT(2,"单图文消息"),
|
||||
IMAGE_TEXT(3,"多图文消息"),
|
||||
;
|
||||
private final Integer code;
|
||||
private final String text;
|
||||
|
||||
SystemPushTypeEnum(Integer code, String text) {
|
||||
this.code = code;
|
||||
this.text = text;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.ruoyi.cai.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.ruoyi.cai.domain.SysPushLog;
|
||||
|
||||
/**
|
||||
* 推送系统消息记录Mapper接口
|
||||
*
|
||||
* @author 77
|
||||
* @date 2024-01-28
|
||||
*/
|
||||
public interface SysPushLogMapper extends BaseMapper<SysPushLog> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.ruoyi.cai.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.ruoyi.cai.domain.SysPush;
|
||||
|
||||
/**
|
||||
* 推送系统消息Mapper接口
|
||||
*
|
||||
* @author 77
|
||||
* @date 2024-01-28
|
||||
*/
|
||||
public interface SysPushMapper extends BaseMapper<SysPush> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.ruoyi.cai.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ruoyi.cai.domain.SysPushLog;
|
||||
|
||||
/**
|
||||
* 推送系统消息记录Service接口
|
||||
*
|
||||
* @author 77
|
||||
* @date 2024-01-28
|
||||
*/
|
||||
public interface SysPushLogService extends IService<SysPushLog> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.ruoyi.cai.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ruoyi.cai.domain.SysPush;
|
||||
|
||||
/**
|
||||
* 推送系统消息Service接口
|
||||
*
|
||||
* @author 77
|
||||
* @date 2024-01-28
|
||||
*/
|
||||
public interface SysPushService extends IService<SysPush> {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.ruoyi.cai.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ruoyi.cai.domain.SysPushLog;
|
||||
import com.ruoyi.cai.mapper.SysPushLogMapper;
|
||||
import com.ruoyi.cai.service.SysPushLogService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 推送系统消息记录Service业务层处理
|
||||
*
|
||||
* @author 77
|
||||
* @date 2024-01-28
|
||||
*/
|
||||
@Service
|
||||
public class SysPushLogServiceImpl extends ServiceImpl<SysPushLogMapper,SysPushLog> implements SysPushLogService {
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.ruoyi.cai.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ruoyi.cai.domain.SysPush;
|
||||
import com.ruoyi.cai.mapper.SysPushMapper;
|
||||
import com.ruoyi.cai.service.SysPushService;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 推送系统消息Service业务层处理
|
||||
*
|
||||
* @author 77
|
||||
* @date 2024-01-28
|
||||
*/
|
||||
@Service
|
||||
public class SysPushServiceImpl extends ServiceImpl<SysPushMapper, SysPush> implements SysPushService {
|
||||
|
||||
}
|
||||
22
ruoyi-cai/src/main/resources/mapper/cai/SysPushLogMapper.xml
Normal file
22
ruoyi-cai/src/main/resources/mapper/cai/SysPushLogMapper.xml
Normal file
@@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ruoyi.cai.mapper.SysPushLogMapper">
|
||||
|
||||
<resultMap type="com.ruoyi.cai.domain.SysPushLog" id="SysPushLogResult">
|
||||
<result property="id" column="id"/>
|
||||
<result property="sysPushId" column="sys_push_id"/>
|
||||
<result property="userJson" column="user_json"/>
|
||||
<result property="num" column="num"/>
|
||||
<result property="status" column="status"/>
|
||||
<result property="result" column="result"/>
|
||||
<result property="retry" column="retry"/>
|
||||
<result property="beginTime" column="begin_time"/>
|
||||
<result property="endTime" column="end_time"/>
|
||||
<result property="createtime" column="createtime"/>
|
||||
<result property="updatetime" column="updatetime"/>
|
||||
</resultMap>
|
||||
|
||||
|
||||
</mapper>
|
||||
26
ruoyi-cai/src/main/resources/mapper/cai/SysPushMapper.xml
Normal file
26
ruoyi-cai/src/main/resources/mapper/cai/SysPushMapper.xml
Normal file
@@ -0,0 +1,26 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ruoyi.cai.mapper.SysPushMapper">
|
||||
|
||||
<resultMap type="com.ruoyi.cai.domain.SysPush" id="SysPushResult">
|
||||
<result property="id" column="id"/>
|
||||
<result property="groupId" column="group_id"/>
|
||||
<result property="type" column="type"/>
|
||||
<result property="userId" column="user_id"/>
|
||||
<result property="title" column="title"/>
|
||||
<result property="content" column="content"/>
|
||||
<result property="params" column="params"/>
|
||||
<result property="remark" column="remark"/>
|
||||
<result property="sendTimeType" column="send_time_type"/>
|
||||
<result property="sendTime" column="send_time"/>
|
||||
<result property="num" column="num"/>
|
||||
<result property="status" column="status"/>
|
||||
<result property="endtime" column="endtime"/>
|
||||
<result property="createtime" column="createtime"/>
|
||||
<result property="updatetime" column="updatetime"/>
|
||||
</resultMap>
|
||||
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user