mp:重构部分 message 的实现
parent
39d377b0bd
commit
fefad029ad
@ -0,0 +1,28 @@
|
||||
package cn.iocoder.yudao.module.mp.enums.message;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 微信公众号消息的发送来源
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum MpMessageSendFrom {
|
||||
|
||||
USER_TO_MP(1, "用户发送给公众号"),
|
||||
MP_TO_USER(2, "公众号发给用户"),
|
||||
;
|
||||
|
||||
/**
|
||||
* 来源
|
||||
*/
|
||||
private final Integer from;
|
||||
/**
|
||||
* 来源的名字
|
||||
*/
|
||||
private final String name;
|
||||
|
||||
}
|
||||
@ -1,103 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsg;
|
||||
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import io.swagger.annotations.*;
|
||||
|
||||
import javax.validation.*;
|
||||
import javax.servlet.http.*;
|
||||
import java.util.*;
|
||||
import java.io.IOException;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
|
||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||
|
||||
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
||||
|
||||
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.fansmsg.vo.*;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.fansmsg.WxFansMsgDO;
|
||||
import cn.iocoder.yudao.module.mp.convert.fansmsg.WxFansMsgConvert;
|
||||
import cn.iocoder.yudao.module.mp.service.fansmsg.WxFansMsgService;
|
||||
|
||||
@Api(tags = "管理后台 - 粉丝消息表 ")
|
||||
@RestController
|
||||
@RequestMapping("/wechatMp/wx-fans-msg")
|
||||
@Validated
|
||||
public class WxFansMsgController {
|
||||
|
||||
@Resource
|
||||
private WxFansMsgService wxFansMsgService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@ApiOperation("创建粉丝消息表 ")
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg:create')")
|
||||
public CommonResult<Integer> createWxFansMsg(@Valid @RequestBody WxFansMsgCreateReqVO createReqVO) {
|
||||
return success(wxFansMsgService.createWxFansMsg(createReqVO));
|
||||
}
|
||||
|
||||
@PutMapping("/update")
|
||||
@ApiOperation("更新粉丝消息表 ")
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg:update')")
|
||||
public CommonResult<Boolean> updateWxFansMsg(@Valid @RequestBody WxFansMsgUpdateReqVO updateReqVO) {
|
||||
wxFansMsgService.updateWxFansMsg(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@ApiOperation("删除粉丝消息表 ")
|
||||
@ApiImplicitParam(name = "id", value = "编号", required = true, dataTypeClass = Integer.class)
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg:delete')")
|
||||
public CommonResult<Boolean> deleteWxFansMsg(@RequestParam("id") Integer id) {
|
||||
wxFansMsgService.deleteWxFansMsg(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@ApiOperation("获得粉丝消息表 ")
|
||||
@ApiImplicitParam(name = "id", value = "编号", required = true, example = "1024", dataTypeClass = Integer.class)
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg:query')")
|
||||
public CommonResult<WxFansMsgRespVO> getWxFansMsg(@RequestParam("id") Integer id) {
|
||||
WxFansMsgDO wxFansMsg = wxFansMsgService.getWxFansMsg(id);
|
||||
return success(WxFansMsgConvert.INSTANCE.convert(wxFansMsg));
|
||||
}
|
||||
|
||||
@GetMapping("/list")
|
||||
@ApiOperation("获得粉丝消息表 列表")
|
||||
@ApiImplicitParam(name = "ids", value = "编号列表", required = true, example = "1024,2048", dataTypeClass = List.class)
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg:query')")
|
||||
public CommonResult<List<WxFansMsgRespVO>> getWxFansMsgList(@RequestParam("ids") Collection<Integer> ids) {
|
||||
List<WxFansMsgDO> list = wxFansMsgService.getWxFansMsgList(ids);
|
||||
return success(WxFansMsgConvert.INSTANCE.convertList(list));
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@ApiOperation("获得粉丝消息表 分页")
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg:query')")
|
||||
public CommonResult<PageResult<WxFansMsgRespVO>> getWxFansMsgPage(@Valid WxFansMsgPageReqVO pageVO) {
|
||||
PageResult<WxFansMsgDO> pageResult = wxFansMsgService.getWxFansMsgPage(pageVO);
|
||||
return success(WxFansMsgConvert.INSTANCE.convertPage(pageResult));
|
||||
}
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@ApiOperation("导出粉丝消息表 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg:export')")
|
||||
@OperateLog(type = EXPORT)
|
||||
public void exportWxFansMsgExcel(@Valid WxFansMsgExportReqVO exportReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
List<WxFansMsgDO> list = wxFansMsgService.getWxFansMsgList(exportReqVO);
|
||||
// 导出 Excel
|
||||
List<WxFansMsgExcelVO> datas = WxFansMsgConvert.INSTANCE.convertList02(list);
|
||||
ExcelUtils.write(response, "粉丝消息表 .xls", "数据", WxFansMsgExcelVO.class, datas);
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,12 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsg.vo;
|
||||
|
||||
import lombok.*;
|
||||
import io.swagger.annotations.*;
|
||||
|
||||
@ApiModel("管理后台 - 粉丝消息表 创建 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class WxFansMsgCreateReqVO extends WxFansMsgBaseVO {
|
||||
|
||||
}
|
||||
@ -1,56 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsg.vo;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
/**
|
||||
* 粉丝消息表 Excel VO
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Data
|
||||
public class WxFansMsgExcelVO {
|
||||
|
||||
@ExcelProperty("主键")
|
||||
private Integer id;
|
||||
|
||||
@ExcelProperty("用户标识")
|
||||
private String openid;
|
||||
|
||||
@ExcelProperty("昵称")
|
||||
private byte[] nickname;
|
||||
|
||||
@ExcelProperty("头像地址")
|
||||
private String headimgUrl;
|
||||
|
||||
@ExcelProperty("微信账号ID")
|
||||
private String wxAccountId;
|
||||
|
||||
@ExcelProperty("消息类型")
|
||||
private String msgType;
|
||||
|
||||
@ExcelProperty("内容")
|
||||
private String content;
|
||||
|
||||
@ExcelProperty("最近一条回复内容")
|
||||
private String resContent;
|
||||
|
||||
@ExcelProperty("是否已回复")
|
||||
private String isRes;
|
||||
|
||||
@ExcelProperty("微信素材ID")
|
||||
private String mediaId;
|
||||
|
||||
@ExcelProperty("微信图片URL")
|
||||
private String picUrl;
|
||||
|
||||
@ExcelProperty("本地图片路径")
|
||||
private String picPath;
|
||||
|
||||
@ExcelProperty("创建时间")
|
||||
private Date createTime;
|
||||
|
||||
}
|
||||
@ -1,57 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsg.vo;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import io.swagger.annotations.*;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
@ApiModel(value = "管理后台 - 粉丝消息表 Excel 导出 Request VO", description = "参数和 WxFansMsgPageReqVO 是一致的")
|
||||
@Data
|
||||
public class WxFansMsgExportReqVO {
|
||||
|
||||
@ApiModelProperty(value = "用户标识")
|
||||
private String openid;
|
||||
|
||||
@ApiModelProperty(value = "昵称")
|
||||
private String nickname;
|
||||
|
||||
@ApiModelProperty(value = "头像地址")
|
||||
private String headimgUrl;
|
||||
|
||||
@ApiModelProperty(value = "微信账号ID")
|
||||
private String wxAccountId;
|
||||
|
||||
@ApiModelProperty(value = "消息类型")
|
||||
private String msgType;
|
||||
|
||||
@ApiModelProperty(value = "内容")
|
||||
private String content;
|
||||
|
||||
@ApiModelProperty(value = "最近一条回复内容")
|
||||
private String resContent;
|
||||
|
||||
@ApiModelProperty(value = "是否已回复")
|
||||
private String isRes;
|
||||
|
||||
@ApiModelProperty(value = "微信素材ID")
|
||||
private String mediaId;
|
||||
|
||||
@ApiModelProperty(value = "微信图片URL")
|
||||
private String picUrl;
|
||||
|
||||
@ApiModelProperty(value = "本地图片路径")
|
||||
private String picPath;
|
||||
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
@ApiModelProperty(value = "开始创建时间")
|
||||
private Date beginCreateTime;
|
||||
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
@ApiModelProperty(value = "结束创建时间")
|
||||
private Date endCreateTime;
|
||||
|
||||
}
|
||||
@ -1,60 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsg.vo;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import io.swagger.annotations.*;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
@ApiModel("管理后台 - 粉丝消息表 分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class WxFansMsgPageReqVO extends PageParam {
|
||||
|
||||
@ApiModelProperty(value = "用户标识")
|
||||
private String openid;
|
||||
|
||||
@ApiModelProperty(value = "昵称")
|
||||
private String nickname;
|
||||
|
||||
@ApiModelProperty(value = "头像地址")
|
||||
private String headimgUrl;
|
||||
|
||||
@ApiModelProperty(value = "微信账号ID")
|
||||
private String wxAccountId;
|
||||
|
||||
@ApiModelProperty(value = "消息类型")
|
||||
private String msgType;
|
||||
|
||||
@ApiModelProperty(value = "内容")
|
||||
private String content;
|
||||
|
||||
@ApiModelProperty(value = "最近一条回复内容")
|
||||
private String resContent;
|
||||
|
||||
@ApiModelProperty(value = "是否已回复")
|
||||
private String isRes;
|
||||
|
||||
@ApiModelProperty(value = "微信素材ID")
|
||||
private String mediaId;
|
||||
|
||||
@ApiModelProperty(value = "微信图片URL")
|
||||
private String picUrl;
|
||||
|
||||
@ApiModelProperty(value = "本地图片路径")
|
||||
private String picPath;
|
||||
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
@ApiModelProperty(value = "开始创建时间")
|
||||
private Date beginCreateTime;
|
||||
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
@ApiModelProperty(value = "结束创建时间")
|
||||
private Date endCreateTime;
|
||||
|
||||
}
|
||||
@ -1,18 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsg.vo;
|
||||
|
||||
import lombok.*;
|
||||
import io.swagger.annotations.*;
|
||||
|
||||
import javax.validation.constraints.*;
|
||||
|
||||
@ApiModel("管理后台 - 粉丝消息表 更新 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class WxFansMsgUpdateReqVO extends WxFansMsgBaseVO {
|
||||
|
||||
@ApiModelProperty(value = "主键", required = true)
|
||||
@NotNull(message = "主键不能为空")
|
||||
private Integer id;
|
||||
|
||||
}
|
||||
@ -1,103 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsgres;
|
||||
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import io.swagger.annotations.*;
|
||||
|
||||
import javax.validation.*;
|
||||
import javax.servlet.http.*;
|
||||
import java.util.*;
|
||||
import java.io.IOException;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
|
||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||
|
||||
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
||||
|
||||
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.*;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.fansmsgres.vo.*;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.fansmsgres.WxFansMsgResDO;
|
||||
import cn.iocoder.yudao.module.mp.convert.fansmsgres.WxFansMsgResConvert;
|
||||
import cn.iocoder.yudao.module.mp.service.fansmsgres.WxFansMsgResService;
|
||||
|
||||
@Api(tags = "管理后台 - 回复粉丝消息历史表 ")
|
||||
@RestController
|
||||
@RequestMapping("/wechatMp/wx-fans-msg-res")
|
||||
@Validated
|
||||
public class WxFansMsgResController {
|
||||
|
||||
@Resource
|
||||
private WxFansMsgResService wxFansMsgResService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@ApiOperation("创建回复粉丝消息历史表 ")
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg-res:create')")
|
||||
public CommonResult<Integer> createWxFansMsgRes(@Valid @RequestBody WxFansMsgResCreateReqVO createReqVO) {
|
||||
return success(wxFansMsgResService.createWxFansMsgRes(createReqVO));
|
||||
}
|
||||
|
||||
@PutMapping("/update")
|
||||
@ApiOperation("更新回复粉丝消息历史表 ")
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg-res:update')")
|
||||
public CommonResult<Boolean> updateWxFansMsgRes(@Valid @RequestBody WxFansMsgResUpdateReqVO updateReqVO) {
|
||||
wxFansMsgResService.updateWxFansMsgRes(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@ApiOperation("删除回复粉丝消息历史表 ")
|
||||
@ApiImplicitParam(name = "id", value = "编号", required = true, dataTypeClass = Integer.class)
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg-res:delete')")
|
||||
public CommonResult<Boolean> deleteWxFansMsgRes(@RequestParam("id") Integer id) {
|
||||
wxFansMsgResService.deleteWxFansMsgRes(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@ApiOperation("获得回复粉丝消息历史表 ")
|
||||
@ApiImplicitParam(name = "id", value = "编号", required = true, example = "1024", dataTypeClass = Integer.class)
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg-res:query')")
|
||||
public CommonResult<WxFansMsgResRespVO> getWxFansMsgRes(@RequestParam("id") Integer id) {
|
||||
WxFansMsgResDO wxFansMsgRes = wxFansMsgResService.getWxFansMsgRes(id);
|
||||
return success(WxFansMsgResConvert.INSTANCE.convert(wxFansMsgRes));
|
||||
}
|
||||
|
||||
@GetMapping("/list")
|
||||
@ApiOperation("获得回复粉丝消息历史表 列表")
|
||||
@ApiImplicitParam(name = "ids", value = "编号列表", required = true, example = "1024,2048", dataTypeClass = List.class)
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg-res:query')")
|
||||
public CommonResult<List<WxFansMsgResRespVO>> getWxFansMsgResList(@RequestParam("ids") Collection<Integer> ids) {
|
||||
List<WxFansMsgResDO> list = wxFansMsgResService.getWxFansMsgResList(ids);
|
||||
return success(WxFansMsgResConvert.INSTANCE.convertList(list));
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@ApiOperation("获得回复粉丝消息历史表 分页")
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg-res:query')")
|
||||
public CommonResult<PageResult<WxFansMsgResRespVO>> getWxFansMsgResPage(@Valid WxFansMsgResPageReqVO pageVO) {
|
||||
PageResult<WxFansMsgResDO> pageResult = wxFansMsgResService.getWxFansMsgResPage(pageVO);
|
||||
return success(WxFansMsgResConvert.INSTANCE.convertPage(pageResult));
|
||||
}
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@ApiOperation("导出回复粉丝消息历史表 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg-res:export')")
|
||||
@OperateLog(type = EXPORT)
|
||||
public void exportWxFansMsgResExcel(@Valid WxFansMsgResExportReqVO exportReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
List<WxFansMsgResDO> list = wxFansMsgResService.getWxFansMsgResList(exportReqVO);
|
||||
// 导出 Excel
|
||||
List<WxFansMsgResExcelVO> datas = WxFansMsgResConvert.INSTANCE.convertList02(list);
|
||||
ExcelUtils.write(response, "回复粉丝消息历史表 .xls", "数据", WxFansMsgResExcelVO.class, datas);
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,12 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsgres.vo;
|
||||
|
||||
import lombok.*;
|
||||
import io.swagger.annotations.*;
|
||||
|
||||
@ApiModel("管理后台 - 回复粉丝消息历史表 创建 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class WxFansMsgResCreateReqVO extends WxFansMsgResBaseVO {
|
||||
|
||||
}
|
||||
@ -1,29 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsgres.vo;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
|
||||
/**
|
||||
* 回复粉丝消息历史表 Excel VO
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Data
|
||||
public class WxFansMsgResExcelVO {
|
||||
|
||||
@ExcelProperty("主键")
|
||||
private Integer id;
|
||||
|
||||
@ExcelProperty("粉丝消息ID")
|
||||
private String fansMsgId;
|
||||
|
||||
@ExcelProperty("回复内容")
|
||||
private String resContent;
|
||||
|
||||
@ExcelProperty("创建时间")
|
||||
private Date createTime;
|
||||
|
||||
}
|
||||
@ -1,30 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsgres.vo;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import io.swagger.annotations.*;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
@ApiModel(value = "管理后台 - 回复粉丝消息历史表 Excel 导出 Request VO", description = "参数和 WxFansMsgResPageReqVO 是一致的")
|
||||
@Data
|
||||
public class WxFansMsgResExportReqVO {
|
||||
|
||||
@ApiModelProperty(value = "粉丝消息ID")
|
||||
private String fansMsgId;
|
||||
|
||||
@ApiModelProperty(value = "回复内容")
|
||||
private String resContent;
|
||||
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
@ApiModelProperty(value = "开始创建时间")
|
||||
private Date beginCreateTime;
|
||||
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
@ApiModelProperty(value = "结束创建时间")
|
||||
private Date endCreateTime;
|
||||
|
||||
}
|
||||
@ -1,33 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsgres.vo;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import io.swagger.annotations.*;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
@ApiModel("管理后台 - 回复粉丝消息历史表 分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class WxFansMsgResPageReqVO extends PageParam {
|
||||
|
||||
@ApiModelProperty(value = "粉丝消息ID")
|
||||
private String fansMsgId;
|
||||
|
||||
@ApiModelProperty(value = "回复内容")
|
||||
private String resContent;
|
||||
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
@ApiModelProperty(value = "开始创建时间")
|
||||
private Date beginCreateTime;
|
||||
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
@ApiModelProperty(value = "结束创建时间")
|
||||
private Date endCreateTime;
|
||||
|
||||
}
|
||||
@ -1,21 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsgres.vo;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import io.swagger.annotations.*;
|
||||
|
||||
@ApiModel("管理后台 - 回复粉丝消息历史表 Response VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class WxFansMsgResRespVO extends WxFansMsgResBaseVO {
|
||||
|
||||
@ApiModelProperty(value = "主键", required = true)
|
||||
private Integer id;
|
||||
|
||||
@ApiModelProperty(value = "创建时间", required = true)
|
||||
private Date createTime;
|
||||
|
||||
}
|
||||
@ -1,18 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.fansmsgres.vo;
|
||||
|
||||
import lombok.*;
|
||||
import io.swagger.annotations.*;
|
||||
|
||||
import javax.validation.constraints.*;
|
||||
|
||||
@ApiModel("管理后台 - 回复粉丝消息历史表 更新 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class WxFansMsgResUpdateReqVO extends WxFansMsgResBaseVO {
|
||||
|
||||
@ApiModelProperty(value = "主键", required = true)
|
||||
@NotNull(message = "主键不能为空")
|
||||
private Integer id;
|
||||
|
||||
}
|
||||
@ -0,0 +1,40 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.message;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.message.MpMessageDO;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import io.swagger.annotations.*;
|
||||
|
||||
import javax.validation.*;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.message.vo.*;
|
||||
import cn.iocoder.yudao.module.mp.convert.message.MpMessageConvert;
|
||||
import cn.iocoder.yudao.module.mp.service.message.MpMessageService;
|
||||
|
||||
@Api(tags = "管理后台 - 粉丝消息表")
|
||||
@RestController
|
||||
@RequestMapping("/mp/message")
|
||||
@Validated
|
||||
public class MpMessageController {
|
||||
|
||||
@Resource
|
||||
private MpMessageService mpMessageService;
|
||||
|
||||
@GetMapping("/page")
|
||||
@ApiOperation("获得粉丝消息表分页")
|
||||
@PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-msg:query')")
|
||||
public CommonResult<PageResult<MpMessageRespVO>> getWxFansMsgPage(@Valid MpMessagePageReqVO pageVO) {
|
||||
PageResult<MpMessageDO> pageResult = mpMessageService.getWxFansMsgPage(pageVO);
|
||||
return success(MpMessageConvert.INSTANCE.convertPage(pageResult));
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,26 @@
|
||||
package cn.iocoder.yudao.module.mp.controller.admin.message.vo;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import io.swagger.annotations.*;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
|
||||
@ApiModel("管理后台 - 粉丝消息表分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class MpMessagePageReqVO extends PageParam {
|
||||
|
||||
@ApiModelProperty(value = "用户标识")
|
||||
private String openId;
|
||||
|
||||
@ApiModelProperty(value = "昵称")
|
||||
private String nickname;
|
||||
|
||||
@ApiModelProperty(value = "微信账号ID")
|
||||
private Long accountId;
|
||||
|
||||
@ApiModelProperty(value = "消息类型")
|
||||
private String type;
|
||||
|
||||
}
|
||||
@ -1,34 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.convert.fansmsg;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.fansmsg.vo.*;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.fansmsg.WxFansMsgDO;
|
||||
|
||||
/**
|
||||
* 粉丝消息表 Convert
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Mapper
|
||||
public interface WxFansMsgConvert {
|
||||
|
||||
WxFansMsgConvert INSTANCE = Mappers.getMapper(WxFansMsgConvert.class);
|
||||
|
||||
WxFansMsgDO convert(WxFansMsgCreateReqVO bean);
|
||||
|
||||
WxFansMsgDO convert(WxFansMsgUpdateReqVO bean);
|
||||
|
||||
WxFansMsgRespVO convert(WxFansMsgDO bean);
|
||||
|
||||
List<WxFansMsgRespVO> convertList(List<WxFansMsgDO> list);
|
||||
|
||||
PageResult<WxFansMsgRespVO> convertPage(PageResult<WxFansMsgDO> page);
|
||||
|
||||
List<WxFansMsgExcelVO> convertList02(List<WxFansMsgDO> list);
|
||||
|
||||
}
|
||||
@ -1,34 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.convert.fansmsgres;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.fansmsgres.vo.*;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.fansmsgres.WxFansMsgResDO;
|
||||
|
||||
/**
|
||||
* 回复粉丝消息历史表 Convert
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Mapper
|
||||
public interface WxFansMsgResConvert {
|
||||
|
||||
WxFansMsgResConvert INSTANCE = Mappers.getMapper(WxFansMsgResConvert.class);
|
||||
|
||||
WxFansMsgResDO convert(WxFansMsgResCreateReqVO bean);
|
||||
|
||||
WxFansMsgResDO convert(WxFansMsgResUpdateReqVO bean);
|
||||
|
||||
WxFansMsgResRespVO convert(WxFansMsgResDO bean);
|
||||
|
||||
List<WxFansMsgResRespVO> convertList(List<WxFansMsgResDO> list);
|
||||
|
||||
PageResult<WxFansMsgResRespVO> convertPage(PageResult<WxFansMsgResDO> page);
|
||||
|
||||
List<WxFansMsgResExcelVO> convertList02(List<WxFansMsgResDO> list);
|
||||
|
||||
}
|
||||
@ -0,0 +1,23 @@
|
||||
package cn.iocoder.yudao.module.mp.convert.message;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.message.MpMessageDO;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.message.vo.*;
|
||||
|
||||
@Mapper
|
||||
public interface MpMessageConvert {
|
||||
|
||||
MpMessageConvert INSTANCE = Mappers.getMapper(MpMessageConvert.class);
|
||||
|
||||
MpMessageRespVO convert(MpMessageDO bean);
|
||||
|
||||
List<MpMessageRespVO> convertList(List<MpMessageDO> list);
|
||||
|
||||
PageResult<MpMessageRespVO> convertPage(PageResult<MpMessageDO> page);
|
||||
|
||||
}
|
||||
@ -1,75 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.dal.dataobject.fansmsg;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||
|
||||
/**
|
||||
* 粉丝消息表 DO
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@TableName("wx_fans_msg")
|
||||
@KeySequence("wx_fans_msg_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class WxFansMsgDO extends BaseDO {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId
|
||||
private Integer id;
|
||||
/**
|
||||
* 用户标识
|
||||
*/
|
||||
private String openid;
|
||||
/**
|
||||
* 昵称
|
||||
*/
|
||||
private byte[] nickname;
|
||||
/**
|
||||
* 头像地址
|
||||
*/
|
||||
private String headimgUrl;
|
||||
/**
|
||||
* 微信账号ID
|
||||
*/
|
||||
private String wxAccountId;
|
||||
/**
|
||||
* 消息类型
|
||||
*/
|
||||
private String msgType;
|
||||
/**
|
||||
* 内容
|
||||
*/
|
||||
private String content;
|
||||
/**
|
||||
* 最近一条回复内容
|
||||
*/
|
||||
private String resContent;
|
||||
/**
|
||||
* 是否已回复
|
||||
*/
|
||||
private String isRes;
|
||||
/**
|
||||
* 微信素材ID
|
||||
*/
|
||||
private String mediaId;
|
||||
/**
|
||||
* 微信图片URL
|
||||
*/
|
||||
private String picUrl;
|
||||
/**
|
||||
* 本地图片路径
|
||||
*/
|
||||
private String picPath;
|
||||
|
||||
}
|
||||
@ -1,39 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.dal.dataobject.fansmsgres;
|
||||
|
||||
import lombok.*;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
|
||||
|
||||
/**
|
||||
* 回复粉丝消息历史表 DO
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@TableName("wx_fans_msg_res")
|
||||
@KeySequence("wx_fans_msg_res_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class WxFansMsgResDO extends BaseDO {
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId
|
||||
private Integer id;
|
||||
/**
|
||||
* 粉丝消息ID
|
||||
*/
|
||||
private String fansMsgId;
|
||||
/**
|
||||
* 回复内容
|
||||
*/
|
||||
private String resContent;
|
||||
|
||||
}
|
||||
@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.mp.dal.mysql.fansmsg;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.message.vo.MpMessagePageReqVO;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.message.MpMessageDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
@Mapper
|
||||
public interface MpMessageMapper extends BaseMapperX<MpMessageDO> {
|
||||
|
||||
default PageResult<MpMessageDO> selectPage(MpMessagePageReqVO reqVO) {
|
||||
return selectPage(reqVO, new LambdaQueryWrapperX<MpMessageDO>()
|
||||
.eqIfPresent(MpMessageDO::getAccountId, reqVO.getAccountId())
|
||||
.eqIfPresent(MpMessageDO::getOpenId, reqVO.getOpenId())
|
||||
// .likeIfPresent(MpMessageDO::getNickname, reqVO.getNickname())
|
||||
.eqIfPresent(MpMessageDO::getType, reqVO.getType())
|
||||
.orderByDesc(MpMessageDO::getId));
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,54 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.dal.mysql.fansmsg;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.fansmsg.WxFansMsgDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.fansmsg.vo.*;
|
||||
|
||||
/**
|
||||
* 粉丝消息表 Mapper
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Mapper
|
||||
public interface WxFansMsgMapper extends BaseMapperX<WxFansMsgDO> {
|
||||
|
||||
default PageResult<WxFansMsgDO> selectPage(WxFansMsgPageReqVO reqVO) {
|
||||
return selectPage(reqVO, new LambdaQueryWrapperX<WxFansMsgDO>()
|
||||
.eqIfPresent(WxFansMsgDO::getOpenid, reqVO.getOpenid())
|
||||
.likeIfPresent(WxFansMsgDO::getNickname, reqVO.getNickname())
|
||||
.eqIfPresent(WxFansMsgDO::getHeadimgUrl, reqVO.getHeadimgUrl())
|
||||
.eqIfPresent(WxFansMsgDO::getWxAccountId, reqVO.getWxAccountId())
|
||||
.eqIfPresent(WxFansMsgDO::getMsgType, reqVO.getMsgType())
|
||||
.eqIfPresent(WxFansMsgDO::getContent, reqVO.getContent())
|
||||
.eqIfPresent(WxFansMsgDO::getResContent, reqVO.getResContent())
|
||||
.eqIfPresent(WxFansMsgDO::getIsRes, reqVO.getIsRes())
|
||||
.eqIfPresent(WxFansMsgDO::getMediaId, reqVO.getMediaId())
|
||||
.eqIfPresent(WxFansMsgDO::getPicUrl, reqVO.getPicUrl())
|
||||
.eqIfPresent(WxFansMsgDO::getPicPath, reqVO.getPicPath())
|
||||
.betweenIfPresent(WxFansMsgDO::getCreateTime, reqVO.getBeginCreateTime(), reqVO.getEndCreateTime())
|
||||
.orderByDesc(WxFansMsgDO::getId));
|
||||
}
|
||||
|
||||
default List<WxFansMsgDO> selectList(WxFansMsgExportReqVO reqVO) {
|
||||
return selectList(new LambdaQueryWrapperX<WxFansMsgDO>()
|
||||
.eqIfPresent(WxFansMsgDO::getOpenid, reqVO.getOpenid())
|
||||
.likeIfPresent(WxFansMsgDO::getNickname, reqVO.getNickname())
|
||||
.eqIfPresent(WxFansMsgDO::getHeadimgUrl, reqVO.getHeadimgUrl())
|
||||
.eqIfPresent(WxFansMsgDO::getWxAccountId, reqVO.getWxAccountId())
|
||||
.eqIfPresent(WxFansMsgDO::getMsgType, reqVO.getMsgType())
|
||||
.eqIfPresent(WxFansMsgDO::getContent, reqVO.getContent())
|
||||
.eqIfPresent(WxFansMsgDO::getResContent, reqVO.getResContent())
|
||||
.eqIfPresent(WxFansMsgDO::getIsRes, reqVO.getIsRes())
|
||||
.eqIfPresent(WxFansMsgDO::getMediaId, reqVO.getMediaId())
|
||||
.eqIfPresent(WxFansMsgDO::getPicUrl, reqVO.getPicUrl())
|
||||
.eqIfPresent(WxFansMsgDO::getPicPath, reqVO.getPicPath())
|
||||
.betweenIfPresent(WxFansMsgDO::getCreateTime, reqVO.getBeginCreateTime(), reqVO.getEndCreateTime())
|
||||
.orderByDesc(WxFansMsgDO::getId));
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,36 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.dal.mysql.fansmsgres;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.fansmsgres.WxFansMsgResDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.fansmsgres.vo.*;
|
||||
|
||||
/**
|
||||
* 回复粉丝消息历史表 Mapper
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Mapper
|
||||
public interface WxFansMsgResMapper extends BaseMapperX<WxFansMsgResDO> {
|
||||
|
||||
default PageResult<WxFansMsgResDO> selectPage(WxFansMsgResPageReqVO reqVO) {
|
||||
return selectPage(reqVO, new LambdaQueryWrapperX<WxFansMsgResDO>()
|
||||
.eqIfPresent(WxFansMsgResDO::getFansMsgId, reqVO.getFansMsgId())
|
||||
.eqIfPresent(WxFansMsgResDO::getResContent, reqVO.getResContent())
|
||||
.betweenIfPresent(WxFansMsgResDO::getCreateTime, reqVO.getBeginCreateTime(), reqVO.getEndCreateTime())
|
||||
.orderByDesc(WxFansMsgResDO::getId));
|
||||
}
|
||||
|
||||
default List<WxFansMsgResDO> selectList(WxFansMsgResExportReqVO reqVO) {
|
||||
return selectList(new LambdaQueryWrapperX<WxFansMsgResDO>()
|
||||
.eqIfPresent(WxFansMsgResDO::getFansMsgId, reqVO.getFansMsgId())
|
||||
.eqIfPresent(WxFansMsgResDO::getResContent, reqVO.getResContent())
|
||||
.betweenIfPresent(WxFansMsgResDO::getCreateTime, reqVO.getBeginCreateTime(), reqVO.getEndCreateTime())
|
||||
.orderByDesc(WxFansMsgResDO::getId));
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,71 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.service.fansmsg;
|
||||
|
||||
import java.util.*;
|
||||
import javax.validation.*;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.fansmsg.vo.*;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.fansmsg.WxFansMsgDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
/**
|
||||
* 粉丝消息表 Service 接口
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
public interface WxFansMsgService {
|
||||
|
||||
/**
|
||||
* 创建粉丝消息表
|
||||
*
|
||||
* @param createReqVO 创建信息
|
||||
* @return 编号
|
||||
*/
|
||||
Integer createWxFansMsg(@Valid WxFansMsgCreateReqVO createReqVO);
|
||||
|
||||
/**
|
||||
* 更新粉丝消息表
|
||||
*
|
||||
* @param updateReqVO 更新信息
|
||||
*/
|
||||
void updateWxFansMsg(@Valid WxFansMsgUpdateReqVO updateReqVO);
|
||||
|
||||
/**
|
||||
* 删除粉丝消息表
|
||||
*
|
||||
* @param id 编号
|
||||
*/
|
||||
void deleteWxFansMsg(Integer id);
|
||||
|
||||
/**
|
||||
* 获得粉丝消息表
|
||||
*
|
||||
* @param id 编号
|
||||
* @return 粉丝消息表
|
||||
*/
|
||||
WxFansMsgDO getWxFansMsg(Integer id);
|
||||
|
||||
/**
|
||||
* 获得粉丝消息表 列表
|
||||
*
|
||||
* @param ids 编号
|
||||
* @return 粉丝消息表 列表
|
||||
*/
|
||||
List<WxFansMsgDO> getWxFansMsgList(Collection<Integer> ids);
|
||||
|
||||
/**
|
||||
* 获得粉丝消息表 分页
|
||||
*
|
||||
* @param pageReqVO 分页查询
|
||||
* @return 粉丝消息表 分页
|
||||
*/
|
||||
PageResult<WxFansMsgDO> getWxFansMsgPage(WxFansMsgPageReqVO pageReqVO);
|
||||
|
||||
/**
|
||||
* 获得粉丝消息表 列表, 用于 Excel 导出
|
||||
*
|
||||
* @param exportReqVO 查询条件
|
||||
* @return 粉丝消息表 列表
|
||||
*/
|
||||
List<WxFansMsgDO> getWxFansMsgList(WxFansMsgExportReqVO exportReqVO);
|
||||
|
||||
}
|
||||
@ -1,85 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.service.fansmsg;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.fansmsg.vo.*;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.fansmsg.WxFansMsgDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.convert.fansmsg.WxFansMsgConvert;
|
||||
import cn.iocoder.yudao.module.mp.dal.mysql.fansmsg.WxFansMsgMapper;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static cn.iocoder.yudao.module.mp.enums.ErrorCodeConstants.*;
|
||||
|
||||
/**
|
||||
* 粉丝消息表 Service 实现类
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Service
|
||||
@Validated
|
||||
public class WxFansMsgServiceImpl implements WxFansMsgService {
|
||||
|
||||
@Resource
|
||||
private WxFansMsgMapper wxFansMsgMapper;
|
||||
|
||||
@Override
|
||||
public Integer createWxFansMsg(WxFansMsgCreateReqVO createReqVO) {
|
||||
// 插入
|
||||
WxFansMsgDO wxFansMsg = WxFansMsgConvert.INSTANCE.convert(createReqVO);
|
||||
wxFansMsgMapper.insert(wxFansMsg);
|
||||
// 返回
|
||||
return wxFansMsg.getId();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateWxFansMsg(WxFansMsgUpdateReqVO updateReqVO) {
|
||||
// 校验存在
|
||||
this.validateWxFansMsgExists(updateReqVO.getId());
|
||||
// 更新
|
||||
WxFansMsgDO updateObj = WxFansMsgConvert.INSTANCE.convert(updateReqVO);
|
||||
wxFansMsgMapper.updateById(updateObj);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteWxFansMsg(Integer id) {
|
||||
// 校验存在
|
||||
this.validateWxFansMsgExists(id);
|
||||
// 删除
|
||||
wxFansMsgMapper.deleteById(id);
|
||||
}
|
||||
|
||||
private void validateWxFansMsgExists(Integer id) {
|
||||
if (wxFansMsgMapper.selectById(id) == null) {
|
||||
throw exception(COMMON_NOT_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public WxFansMsgDO getWxFansMsg(Integer id) {
|
||||
return wxFansMsgMapper.selectById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<WxFansMsgDO> getWxFansMsgList(Collection<Integer> ids) {
|
||||
return wxFansMsgMapper.selectBatchIds(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<WxFansMsgDO> getWxFansMsgPage(WxFansMsgPageReqVO pageReqVO) {
|
||||
return wxFansMsgMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<WxFansMsgDO> getWxFansMsgList(WxFansMsgExportReqVO exportReqVO) {
|
||||
return wxFansMsgMapper.selectList(exportReqVO);
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,71 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.service.fansmsgres;
|
||||
|
||||
import java.util.*;
|
||||
import javax.validation.*;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.fansmsgres.vo.*;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.fansmsgres.WxFansMsgResDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
/**
|
||||
* 回复粉丝消息历史表 Service 接口
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
public interface WxFansMsgResService {
|
||||
|
||||
/**
|
||||
* 创建回复粉丝消息历史表
|
||||
*
|
||||
* @param createReqVO 创建信息
|
||||
* @return 编号
|
||||
*/
|
||||
Integer createWxFansMsgRes(@Valid WxFansMsgResCreateReqVO createReqVO);
|
||||
|
||||
/**
|
||||
* 更新回复粉丝消息历史表
|
||||
*
|
||||
* @param updateReqVO 更新信息
|
||||
*/
|
||||
void updateWxFansMsgRes(@Valid WxFansMsgResUpdateReqVO updateReqVO);
|
||||
|
||||
/**
|
||||
* 删除回复粉丝消息历史表
|
||||
*
|
||||
* @param id 编号
|
||||
*/
|
||||
void deleteWxFansMsgRes(Integer id);
|
||||
|
||||
/**
|
||||
* 获得回复粉丝消息历史表
|
||||
*
|
||||
* @param id 编号
|
||||
* @return 回复粉丝消息历史表
|
||||
*/
|
||||
WxFansMsgResDO getWxFansMsgRes(Integer id);
|
||||
|
||||
/**
|
||||
* 获得回复粉丝消息历史表 列表
|
||||
*
|
||||
* @param ids 编号
|
||||
* @return 回复粉丝消息历史表 列表
|
||||
*/
|
||||
List<WxFansMsgResDO> getWxFansMsgResList(Collection<Integer> ids);
|
||||
|
||||
/**
|
||||
* 获得回复粉丝消息历史表 分页
|
||||
*
|
||||
* @param pageReqVO 分页查询
|
||||
* @return 回复粉丝消息历史表 分页
|
||||
*/
|
||||
PageResult<WxFansMsgResDO> getWxFansMsgResPage(WxFansMsgResPageReqVO pageReqVO);
|
||||
|
||||
/**
|
||||
* 获得回复粉丝消息历史表 列表, 用于 Excel 导出
|
||||
*
|
||||
* @param exportReqVO 查询条件
|
||||
* @return 回复粉丝消息历史表 列表
|
||||
*/
|
||||
List<WxFansMsgResDO> getWxFansMsgResList(WxFansMsgResExportReqVO exportReqVO);
|
||||
|
||||
}
|
||||
@ -1,85 +0,0 @@
|
||||
package cn.iocoder.yudao.module.mp.service.fansmsgres;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.fansmsgres.vo.*;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.fansmsgres.WxFansMsgResDO;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.convert.fansmsgres.WxFansMsgResConvert;
|
||||
import cn.iocoder.yudao.module.mp.dal.mysql.fansmsgres.WxFansMsgResMapper;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static cn.iocoder.yudao.module.mp.enums.ErrorCodeConstants.*;
|
||||
|
||||
/**
|
||||
* 回复粉丝消息历史表 Service 实现类
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Service
|
||||
@Validated
|
||||
public class WxFansMsgResServiceImpl implements WxFansMsgResService {
|
||||
|
||||
@Resource
|
||||
private WxFansMsgResMapper wxFansMsgResMapper;
|
||||
|
||||
@Override
|
||||
public Integer createWxFansMsgRes(WxFansMsgResCreateReqVO createReqVO) {
|
||||
// 插入
|
||||
WxFansMsgResDO wxFansMsgRes = WxFansMsgResConvert.INSTANCE.convert(createReqVO);
|
||||
wxFansMsgResMapper.insert(wxFansMsgRes);
|
||||
// 返回
|
||||
return wxFansMsgRes.getId();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateWxFansMsgRes(WxFansMsgResUpdateReqVO updateReqVO) {
|
||||
// 校验存在
|
||||
this.validateWxFansMsgResExists(updateReqVO.getId());
|
||||
// 更新
|
||||
WxFansMsgResDO updateObj = WxFansMsgResConvert.INSTANCE.convert(updateReqVO);
|
||||
wxFansMsgResMapper.updateById(updateObj);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteWxFansMsgRes(Integer id) {
|
||||
// 校验存在
|
||||
this.validateWxFansMsgResExists(id);
|
||||
// 删除
|
||||
wxFansMsgResMapper.deleteById(id);
|
||||
}
|
||||
|
||||
private void validateWxFansMsgResExists(Integer id) {
|
||||
if (wxFansMsgResMapper.selectById(id) == null) {
|
||||
throw exception(COMMON_NOT_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public WxFansMsgResDO getWxFansMsgRes(Integer id) {
|
||||
return wxFansMsgResMapper.selectById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<WxFansMsgResDO> getWxFansMsgResList(Collection<Integer> ids) {
|
||||
return wxFansMsgResMapper.selectBatchIds(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<WxFansMsgResDO> getWxFansMsgResPage(WxFansMsgResPageReqVO pageReqVO) {
|
||||
return wxFansMsgResMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<WxFansMsgResDO> getWxFansMsgResList(WxFansMsgResExportReqVO exportReqVO) {
|
||||
return wxFansMsgResMapper.selectList(exportReqVO);
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
package cn.iocoder.yudao.module.mp.service.handler;
|
||||
package cn.iocoder.yudao.module.mp.service.handler.menu;
|
||||
|
||||
import me.chanjar.weixin.common.session.WxSessionManager;
|
||||
import me.chanjar.weixin.mp.api.WxMpMessageHandler;
|
||||
@ -1,4 +1,4 @@
|
||||
package cn.iocoder.yudao.module.mp.service.handler;
|
||||
package cn.iocoder.yudao.module.mp.service.handler.other;
|
||||
|
||||
import me.chanjar.weixin.common.session.WxSessionManager;
|
||||
import me.chanjar.weixin.mp.api.WxMpMessageHandler;
|
||||
@ -1,4 +1,4 @@
|
||||
package cn.iocoder.yudao.module.mp.service.fansmsgres;
|
||||
package cn.iocoder.yudao.module.mp.service.handler.other;
|
||||
|
||||
import me.chanjar.weixin.common.session.WxSessionManager;
|
||||
import me.chanjar.weixin.mp.api.WxMpMessageHandler;
|
||||
@ -1,4 +1,4 @@
|
||||
package cn.iocoder.yudao.module.mp.service.handler;
|
||||
package cn.iocoder.yudao.module.mp.service.handler.other;
|
||||
|
||||
import me.chanjar.weixin.common.error.WxErrorException;
|
||||
import me.chanjar.weixin.common.session.WxSessionManager;
|
||||
@ -1,4 +1,4 @@
|
||||
package cn.iocoder.yudao.module.mp.service.handler;
|
||||
package cn.iocoder.yudao.module.mp.service.handler.other;
|
||||
|
||||
import me.chanjar.weixin.common.session.WxSessionManager;
|
||||
import me.chanjar.weixin.mp.api.WxMpMessageHandler;
|
||||
@ -1,4 +1,4 @@
|
||||
package cn.iocoder.yudao.module.mp.service.handler;
|
||||
package cn.iocoder.yudao.module.mp.service.handler.user;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.builder.TextBuilder;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@ -0,0 +1,22 @@
|
||||
package cn.iocoder.yudao.module.mp.service.message;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.message.vo.MpMessagePageReqVO;
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.message.MpMessageDO;
|
||||
|
||||
/**
|
||||
* 粉丝消息表 Service 接口
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
public interface MpMessageService {
|
||||
|
||||
/**
|
||||
* 获得粉丝消息表 分页
|
||||
*
|
||||
* @param pageReqVO 分页查询
|
||||
* @return 粉丝消息表 分页
|
||||
*/
|
||||
PageResult<MpMessageDO> getWxFansMsgPage(MpMessagePageReqVO pageReqVO);
|
||||
|
||||
}
|
||||
@ -0,0 +1,34 @@
|
||||
package cn.iocoder.yudao.module.mp.service.message;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.dal.dataobject.message.MpMessageDO;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.controller.admin.message.vo.*;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
|
||||
import cn.iocoder.yudao.module.mp.dal.mysql.fansmsg.MpMessageMapper;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
|
||||
/**
|
||||
* 粉丝消息表 Service 实现类
|
||||
*
|
||||
* @author 芋道源码
|
||||
*/
|
||||
@Service
|
||||
@Validated
|
||||
public class MpMessageServiceImpl implements MpMessageService {
|
||||
|
||||
@Resource
|
||||
private MpMessageMapper mpMessageMapper;
|
||||
|
||||
@Override
|
||||
public PageResult<MpMessageDO> getWxFansMsgPage(MpMessagePageReqVO pageReqVO) {
|
||||
return mpMessageMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue