From 8bcff4ed6f8e14758b939289d1b5489e9b70a4e1 Mon Sep 17 00:00:00 2001 From: fengdan Date: Thu, 16 Jun 2022 12:42:23 +0800 Subject: [PATCH] Revert "Revert "refactor(yudao-module-mp-biz): 微信公众号粉丝管理重构"" --- yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/FansTagController.java | 102 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/WxFansTagController.java | 103 ------------------------------------------------------------------------------------------------------- yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagBaseVO.java | 20 ++++++++++++++++++++ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagCreateReqVO.java | 15 +++++++++++++++ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagExcelVO.java | 29 +++++++++++++++++++++++++++++ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagExportReqVO.java | 33 +++++++++++++++++++++++++++++++++ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagPageReqVO.java | 36 ++++++++++++++++++++++++++++++++++++ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagRespVO.java | 21 +++++++++++++++++++++ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagUpdateReqVO.java | 18 ++++++++++++++++++ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagBaseVO.java | 22 ---------------------- yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagCreateReqVO.java | 12 ------------ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagExcelVO.java | 32 -------------------------------- yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagExportReqVO.java | 33 --------------------------------- yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagPageReqVO.java | 36 ------------------------------------ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagRespVO.java | 21 --------------------- yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagUpdateReqVO.java | 18 ------------------ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/convert/fanstag/WxFansTagConvert.java | 16 ++++++++-------- yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/dal/dataobject/fanstag/WxFansTagDO.java | 43 ------------------------------------------- yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/dal/mysql/fanstag/WxFansTagMapper.java | 38 -------------------------------------- yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/fanstag/WxFansTagService.java | 71 ----------------------------------------------------------------------- yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/fanstag/WxFansTagServiceImpl.java | 85 ------------------------------------------------------------------------------------- yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/tag/FansTagService.java | 75 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/tag/FansTagServiceImpl.java | 77 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 23 files changed, 434 insertions(+), 522 deletions(-) create mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/FansTagController.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/WxFansTagController.java create mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagBaseVO.java create mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagCreateReqVO.java create mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagExcelVO.java create mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagExportReqVO.java create mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagPageReqVO.java create mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagRespVO.java create mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagUpdateReqVO.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagBaseVO.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagCreateReqVO.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagExcelVO.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagExportReqVO.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagPageReqVO.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagRespVO.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagUpdateReqVO.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/dal/dataobject/fanstag/WxFansTagDO.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/dal/mysql/fanstag/WxFansTagMapper.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/fanstag/WxFansTagService.java delete mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/fanstag/WxFansTagServiceImpl.java create mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/tag/FansTagService.java create mode 100644 yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/tag/FansTagServiceImpl.java diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/FansTagController.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/FansTagController.java new file mode 100644 index 0000000..f89758e --- /dev/null +++ b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/FansTagController.java @@ -0,0 +1,102 @@ +package cn.iocoder.yudao.module.mp.controller.admin.fanstag; + +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; +import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog; +import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.*; +import cn.iocoder.yudao.module.mp.convert.fanstag.WxFansTagConvert; +import cn.iocoder.yudao.module.mp.service.tag.FansTagService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiOperation; +import me.chanjar.weixin.mp.bean.tag.WxUserTag; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import javax.validation.Valid; +import java.io.IOException; +import java.util.Collection; +import java.util.List; + +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; +import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT; + +/** + * @author fengdan + */ +@Api(tags = "管理后台 - 粉丝标签") +@RestController +@RequestMapping("/wechat-mp/fans-tag") +@Validated +public class FansTagController { + + @Resource + private FansTagService fansTagService; + + @PostMapping("/create") + @ApiOperation("创建粉丝标签") + @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:create')") + public CommonResult createWxFansTag(@Valid @RequestBody FansTagCreateReqVO createReqVO) { + return success(fansTagService.createWxFansTag(createReqVO)); + } + + @PutMapping("/update") + @ApiOperation("更新粉丝标签") + @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:update')") + public CommonResult updateWxFansTag(@Valid @RequestBody FansTagUpdateReqVO updateReqVO) { + fansTagService.updateWxFansTag(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @ApiOperation("删除粉丝标签") + @ApiImplicitParam(name = "id", value = "编号", required = true, dataTypeClass = Integer.class) + @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:delete')") + public CommonResult deleteWxFansTag(@RequestParam("id") Integer id) { + fansTagService.deleteWxFansTag(id); + return success(true); + } + + @GetMapping("/get") + @ApiOperation("获得粉丝标签") + @ApiImplicitParam(name = "id", value = "编号", required = true, example = "1024", dataTypeClass = Integer.class) + @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:query')") + public CommonResult getWxFansTag(@RequestParam("id") Integer id) { + WxUserTag wxFansTag = fansTagService.getWxFansTag(id); + return success(WxFansTagConvert.INSTANCE.convert(wxFansTag)); + } + + @GetMapping("/list") + @ApiOperation("获得粉丝标签列表") + @ApiImplicitParam(name = "ids", value = "编号列表", required = true, example = "1024,2048", dataTypeClass = List.class) + @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:query')") + public CommonResult> getWxFansTagList(@RequestParam("ids") Collection ids) { + List list = fansTagService.getWxFansTagList(ids); + return success(WxFansTagConvert.INSTANCE.convertList(list)); + } + + @GetMapping("/page") + @ApiOperation("获得粉丝标签分页") + @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:query')") + public CommonResult> getWxFansTagPage(@Valid FansTagPageReqVO pageVO) { + PageResult pageResult = fansTagService.getWxFansTagPage(pageVO); + return success(WxFansTagConvert.INSTANCE.convertPage(pageResult)); + } + + @GetMapping("/export-excel") + @ApiOperation("导出粉丝标签 Excel") + @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:export')") + @OperateLog(type = EXPORT) + public void exportWxFansTagExcel(@Valid FansTagExportReqVO exportReqVO, + HttpServletResponse response) throws IOException { + List list = fansTagService.getWxFansTagList(exportReqVO); + // 导出 Excel + List datas = WxFansTagConvert.INSTANCE.convertList02(list); + ExcelUtils.write(response, "粉丝标签.xls", "数据", FansTagExcelVO.class, datas); + } + +} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/WxFansTagController.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/WxFansTagController.java deleted file mode 100644 index 9b20ecc..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/WxFansTagController.java +++ /dev/null @@ -1,103 +0,0 @@ -package cn.iocoder.yudao.module.mp.controller.admin.fanstag; - -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.fanstag.vo.*; -import cn.iocoder.yudao.module.mp.dal.dataobject.fanstag.WxFansTagDO; -import cn.iocoder.yudao.module.mp.convert.fanstag.WxFansTagConvert; -import cn.iocoder.yudao.module.mp.service.fanstag.WxFansTagService; - -@Api(tags = "管理后台 - 粉丝标签") -@RestController -@RequestMapping("/wechatMp/wx-fans-tag") -@Validated -public class WxFansTagController { - - @Resource - private WxFansTagService wxFansTagService; - - @PostMapping("/create") - @ApiOperation("创建粉丝标签") - @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:create')") - public CommonResult createWxFansTag(@Valid @RequestBody WxFansTagCreateReqVO createReqVO) { - return success(wxFansTagService.createWxFansTag(createReqVO)); - } - - @PutMapping("/update") - @ApiOperation("更新粉丝标签") - @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:update')") - public CommonResult updateWxFansTag(@Valid @RequestBody WxFansTagUpdateReqVO updateReqVO) { - wxFansTagService.updateWxFansTag(updateReqVO); - return success(true); - } - - @DeleteMapping("/delete") - @ApiOperation("删除粉丝标签") - @ApiImplicitParam(name = "id", value = "编号", required = true, dataTypeClass = Integer.class) - @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:delete')") - public CommonResult deleteWxFansTag(@RequestParam("id") Integer id) { - wxFansTagService.deleteWxFansTag(id); - return success(true); - } - - @GetMapping("/get") - @ApiOperation("获得粉丝标签") - @ApiImplicitParam(name = "id", value = "编号", required = true, example = "1024", dataTypeClass = Integer.class) - @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:query')") - public CommonResult getWxFansTag(@RequestParam("id") Integer id) { - WxFansTagDO wxFansTag = wxFansTagService.getWxFansTag(id); - return success(WxFansTagConvert.INSTANCE.convert(wxFansTag)); - } - - @GetMapping("/list") - @ApiOperation("获得粉丝标签列表") - @ApiImplicitParam(name = "ids", value = "编号列表", required = true, example = "1024,2048", dataTypeClass = List.class) - @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:query')") - public CommonResult> getWxFansTagList(@RequestParam("ids") Collection ids) { - List list = wxFansTagService.getWxFansTagList(ids); - return success(WxFansTagConvert.INSTANCE.convertList(list)); - } - - @GetMapping("/page") - @ApiOperation("获得粉丝标签分页") - @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:query')") - public CommonResult> getWxFansTagPage(@Valid WxFansTagPageReqVO pageVO) { - PageResult pageResult = wxFansTagService.getWxFansTagPage(pageVO); - return success(WxFansTagConvert.INSTANCE.convertPage(pageResult)); - } - - @GetMapping("/export-excel") - @ApiOperation("导出粉丝标签 Excel") - @PreAuthorize("@ss.hasPermission('wechatMp:wx-fans-tag:export')") - @OperateLog(type = EXPORT) - public void exportWxFansTagExcel(@Valid WxFansTagExportReqVO exportReqVO, - HttpServletResponse response) throws IOException { - List list = wxFansTagService.getWxFansTagList(exportReqVO); - // 导出 Excel - List datas = WxFansTagConvert.INSTANCE.convertList02(list); - ExcelUtils.write(response, "粉丝标签.xls", "数据", WxFansTagExcelVO.class, datas); - } - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagBaseVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagBaseVO.java new file mode 100644 index 0000000..3515dba --- /dev/null +++ b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagBaseVO.java @@ -0,0 +1,20 @@ +package cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * 粉丝标签 Base VO,提供给添加、修改、详细的子 VO 使用 + * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成 + * + * @author fengdan + */ +@Data +public class FansTagBaseVO { + + @ApiModelProperty(value = "标签名,UTF8编码.") + private String name; + + @ApiModelProperty(value = "此标签下粉丝数") + private Integer count; +} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagCreateReqVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagCreateReqVO.java new file mode 100644 index 0000000..51dc855 --- /dev/null +++ b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagCreateReqVO.java @@ -0,0 +1,15 @@ +package cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo; + +import lombok.*; +import io.swagger.annotations.*; + +/** + * @author fengdan + */ +@ApiModel("管理后台 - 粉丝标签创建 Request VO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class FansTagCreateReqVO extends FansTagBaseVO { + +} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagExcelVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagExcelVO.java new file mode 100644 index 0000000..b55c9dd --- /dev/null +++ b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagExcelVO.java @@ -0,0 +1,29 @@ +package cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo; + +import lombok.*; + +import java.util.*; + +import com.alibaba.excel.annotation.ExcelProperty; + +/** + * 粉丝标签 Excel VO + * + * @author 芋道源码 + */ +@Data +public class FansTagExcelVO { + + @ExcelProperty("主键") + private Integer id; + + @ExcelProperty("标签名称") + private String name; + + @ExcelProperty("粉丝数量") + private Integer count; + + @ExcelProperty("创建时间") + private Date createTime; + +} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagExportReqVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagExportReqVO.java new file mode 100644 index 0000000..fbe23b2 --- /dev/null +++ b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagExportReqVO.java @@ -0,0 +1,33 @@ +package cn.iocoder.yudao.module.mp.controller.admin.fanstag.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 = "参数和 WxFansTagPageReqVO 是一致的") +@Data +public class FansTagExportReqVO { + + @ApiModelProperty(value = "标签名称") + private String name; + + @ApiModelProperty(value = "粉丝数量") + private Integer count; + + @ApiModelProperty(value = "微信账号ID") + private String wxAccountId; + + @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; + +} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagPageReqVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagPageReqVO.java new file mode 100644 index 0000000..6901476 --- /dev/null +++ b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagPageReqVO.java @@ -0,0 +1,36 @@ +package cn.iocoder.yudao.module.mp.controller.admin.fanstag.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 FansTagPageReqVO extends PageParam { + + @ApiModelProperty(value = "标签名称") + private String name; + + @ApiModelProperty(value = "粉丝数量") + private Integer count; + + @ApiModelProperty(value = "微信账号ID") + private String wxAccountId; + + @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; + +} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagRespVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagRespVO.java new file mode 100644 index 0000000..7fd9967 --- /dev/null +++ b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagRespVO.java @@ -0,0 +1,21 @@ +package cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo; + +import lombok.*; + +import java.util.*; + +import io.swagger.annotations.*; + +@ApiModel("管理后台 - 粉丝标签 Response VO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class FansTagRespVO extends FansTagBaseVO { + + @ApiModelProperty(value = "标签id,由微信分配.") + private Long id; + + @ApiModelProperty(value = "创建时间", required = true) + private Date createTime; + +} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagUpdateReqVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagUpdateReqVO.java new file mode 100644 index 0000000..bfb01dc --- /dev/null +++ b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/FansTagUpdateReqVO.java @@ -0,0 +1,18 @@ +package cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo; + +import lombok.*; +import io.swagger.annotations.*; + +import javax.validation.constraints.*; + +@ApiModel("管理后台 - 粉丝标签更新 Request VO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class FansTagUpdateReqVO extends FansTagBaseVO { + + @ApiModelProperty(value = "主键", required = true) + @NotNull(message = "主键不能为空") + private Integer id; + +} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagBaseVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagBaseVO.java deleted file mode 100644 index 139a9b9..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagBaseVO.java +++ /dev/null @@ -1,22 +0,0 @@ -package cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo; - -import lombok.*; -import io.swagger.annotations.*; - -/** - * 粉丝标签 Base VO,提供给添加、修改、详细的子 VO 使用 - * 如果子 VO 存在差异的字段,请不要添加到这里,影响 Swagger 文档生成 - */ -@Data -public class WxFansTagBaseVO { - - @ApiModelProperty(value = "标签名称") - private String name; - - @ApiModelProperty(value = "粉丝数量") - private Integer count; - - @ApiModelProperty(value = "微信账号ID") - private String wxAccountId; - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagCreateReqVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagCreateReqVO.java deleted file mode 100644 index a9ff3a8..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagCreateReqVO.java +++ /dev/null @@ -1,12 +0,0 @@ -package cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo; - -import lombok.*; -import io.swagger.annotations.*; - -@ApiModel("管理后台 - 粉丝标签创建 Request VO") -@Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) -public class WxFansTagCreateReqVO extends WxFansTagBaseVO { - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagExcelVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagExcelVO.java deleted file mode 100644 index 26ecdeb..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagExcelVO.java +++ /dev/null @@ -1,32 +0,0 @@ -package cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo; - -import lombok.*; - -import java.util.*; - -import com.alibaba.excel.annotation.ExcelProperty; - -/** - * 粉丝标签 Excel VO - * - * @author 芋道源码 - */ -@Data -public class WxFansTagExcelVO { - - @ExcelProperty("主键") - private Integer id; - - @ExcelProperty("标签名称") - private String name; - - @ExcelProperty("粉丝数量") - private Integer count; - - @ExcelProperty("微信账号ID") - private String wxAccountId; - - @ExcelProperty("创建时间") - private Date createTime; - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagExportReqVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagExportReqVO.java deleted file mode 100644 index f5ba4be..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagExportReqVO.java +++ /dev/null @@ -1,33 +0,0 @@ -package cn.iocoder.yudao.module.mp.controller.admin.fanstag.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 = "参数和 WxFansTagPageReqVO 是一致的") -@Data -public class WxFansTagExportReqVO { - - @ApiModelProperty(value = "标签名称") - private String name; - - @ApiModelProperty(value = "粉丝数量") - private Integer count; - - @ApiModelProperty(value = "微信账号ID") - private String wxAccountId; - - @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; - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagPageReqVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagPageReqVO.java deleted file mode 100644 index 94690e9..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagPageReqVO.java +++ /dev/null @@ -1,36 +0,0 @@ -package cn.iocoder.yudao.module.mp.controller.admin.fanstag.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 WxFansTagPageReqVO extends PageParam { - - @ApiModelProperty(value = "标签名称") - private String name; - - @ApiModelProperty(value = "粉丝数量") - private Integer count; - - @ApiModelProperty(value = "微信账号ID") - private String wxAccountId; - - @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; - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagRespVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagRespVO.java deleted file mode 100644 index 6013535..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagRespVO.java +++ /dev/null @@ -1,21 +0,0 @@ -package cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo; - -import lombok.*; - -import java.util.*; - -import io.swagger.annotations.*; - -@ApiModel("管理后台 - 粉丝标签 Response VO") -@Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) -public class WxFansTagRespVO extends WxFansTagBaseVO { - - @ApiModelProperty(value = "主键", required = true) - private Integer id; - - @ApiModelProperty(value = "创建时间", required = true) - private Date createTime; - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagUpdateReqVO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagUpdateReqVO.java deleted file mode 100644 index 155f263..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/controller/admin/fanstag/vo/WxFansTagUpdateReqVO.java +++ /dev/null @@ -1,18 +0,0 @@ -package cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo; - -import lombok.*; -import io.swagger.annotations.*; - -import javax.validation.constraints.*; - -@ApiModel("管理后台 - 粉丝标签更新 Request VO") -@Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) -public class WxFansTagUpdateReqVO extends WxFansTagBaseVO { - - @ApiModelProperty(value = "主键", required = true) - @NotNull(message = "主键不能为空") - private Integer id; - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/convert/fanstag/WxFansTagConvert.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/convert/fanstag/WxFansTagConvert.java index 9481996..968d62b 100644 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/convert/fanstag/WxFansTagConvert.java +++ b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/convert/fanstag/WxFansTagConvert.java @@ -4,31 +4,31 @@ import java.util.*; import cn.iocoder.yudao.framework.common.pojo.PageResult; +import me.chanjar.weixin.mp.bean.tag.WxUserTag; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.*; -import cn.iocoder.yudao.module.mp.dal.dataobject.fanstag.WxFansTagDO; /** * 粉丝标签 Convert * - * @author 芋道源码 + * @author fengdan */ @Mapper public interface WxFansTagConvert { WxFansTagConvert INSTANCE = Mappers.getMapper(WxFansTagConvert.class); - WxFansTagDO convert(WxFansTagCreateReqVO bean); + WxUserTag convert(FansTagCreateReqVO bean); - WxFansTagDO convert(WxFansTagUpdateReqVO bean); + WxUserTag convert(FansTagUpdateReqVO bean); - WxFansTagRespVO convert(WxFansTagDO bean); + FansTagRespVO convert(WxUserTag bean); - List convertList(List list); + List convertList(List list); - PageResult convertPage(PageResult page); + PageResult convertPage(PageResult page); - List convertList02(List list); + List convertList02(List list); } diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/dal/dataobject/fanstag/WxFansTagDO.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/dal/dataobject/fanstag/WxFansTagDO.java deleted file mode 100644 index a98f009..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/dal/dataobject/fanstag/WxFansTagDO.java +++ /dev/null @@ -1,43 +0,0 @@ -package cn.iocoder.yudao.module.mp.dal.dataobject.fanstag; - -import lombok.*; - -import java.util.*; - -import com.baomidou.mybatisplus.annotation.*; -import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; - -/** - * 粉丝标签 DO - * - * @author 芋道源码 - */ -@TableName("wx_fans_tag") -@KeySequence("wx_fans_tag_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 -@Data -@EqualsAndHashCode(callSuper = true) -@ToString(callSuper = true) -@Builder -@NoArgsConstructor -@AllArgsConstructor -public class WxFansTagDO extends BaseDO { - - /** - * 主键 - */ - @TableId - private Integer id; - /** - * 标签名称 - */ - private String name; - /** - * 粉丝数量 - */ - private Integer count; - /** - * 微信账号ID - */ - private String wxAccountId; - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/dal/mysql/fanstag/WxFansTagMapper.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/dal/mysql/fanstag/WxFansTagMapper.java deleted file mode 100644 index 5ec73ff..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/dal/mysql/fanstag/WxFansTagMapper.java +++ /dev/null @@ -1,38 +0,0 @@ -package cn.iocoder.yudao.module.mp.dal.mysql.fanstag; - -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.fanstag.WxFansTagDO; -import org.apache.ibatis.annotations.Mapper; -import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.*; - -/** - * 粉丝标签 Mapper - * - * @author 芋道源码 - */ -@Mapper -public interface WxFansTagMapper extends BaseMapperX { - - default PageResult selectPage(WxFansTagPageReqVO reqVO) { - return selectPage(reqVO, new LambdaQueryWrapperX() - .likeIfPresent(WxFansTagDO::getName, reqVO.getName()) - .eqIfPresent(WxFansTagDO::getCount, reqVO.getCount()) - .eqIfPresent(WxFansTagDO::getWxAccountId, reqVO.getWxAccountId()) - .betweenIfPresent(WxFansTagDO::getCreateTime, reqVO.getBeginCreateTime(), reqVO.getEndCreateTime()) - .orderByDesc(WxFansTagDO::getId)); - } - - default List selectList(WxFansTagExportReqVO reqVO) { - return selectList(new LambdaQueryWrapperX() - .likeIfPresent(WxFansTagDO::getName, reqVO.getName()) - .eqIfPresent(WxFansTagDO::getCount, reqVO.getCount()) - .eqIfPresent(WxFansTagDO::getWxAccountId, reqVO.getWxAccountId()) - .betweenIfPresent(WxFansTagDO::getCreateTime, reqVO.getBeginCreateTime(), reqVO.getEndCreateTime()) - .orderByDesc(WxFansTagDO::getId)); - } - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/fanstag/WxFansTagService.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/fanstag/WxFansTagService.java deleted file mode 100644 index da5ec22..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/fanstag/WxFansTagService.java +++ /dev/null @@ -1,71 +0,0 @@ -package cn.iocoder.yudao.module.mp.service.fanstag; - -import java.util.*; -import javax.validation.*; - -import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.*; -import cn.iocoder.yudao.module.mp.dal.dataobject.fanstag.WxFansTagDO; -import cn.iocoder.yudao.framework.common.pojo.PageResult; - -/** - * 粉丝标签 Service 接口 - * - * @author 芋道源码 - */ -public interface WxFansTagService { - - /** - * 创建粉丝标签 - * - * @param createReqVO 创建信息 - * @return 编号 - */ - Integer createWxFansTag(@Valid WxFansTagCreateReqVO createReqVO); - - /** - * 更新粉丝标签 - * - * @param updateReqVO 更新信息 - */ - void updateWxFansTag(@Valid WxFansTagUpdateReqVO updateReqVO); - - /** - * 删除粉丝标签 - * - * @param id 编号 - */ - void deleteWxFansTag(Integer id); - - /** - * 获得粉丝标签 - * - * @param id 编号 - * @return 粉丝标签 - */ - WxFansTagDO getWxFansTag(Integer id); - - /** - * 获得粉丝标签列表 - * - * @param ids 编号 - * @return 粉丝标签列表 - */ - List getWxFansTagList(Collection ids); - - /** - * 获得粉丝标签分页 - * - * @param pageReqVO 分页查询 - * @return 粉丝标签分页 - */ - PageResult getWxFansTagPage(WxFansTagPageReqVO pageReqVO); - - /** - * 获得粉丝标签列表, 用于 Excel 导出 - * - * @param exportReqVO 查询条件 - * @return 粉丝标签列表 - */ - List getWxFansTagList(WxFansTagExportReqVO exportReqVO); - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/fanstag/WxFansTagServiceImpl.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/fanstag/WxFansTagServiceImpl.java deleted file mode 100644 index f1ae773..0000000 --- a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/fanstag/WxFansTagServiceImpl.java +++ /dev/null @@ -1,85 +0,0 @@ -package cn.iocoder.yudao.module.mp.service.fanstag; - -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.fanstag.vo.*; -import cn.iocoder.yudao.module.mp.dal.dataobject.fanstag.WxFansTagDO; -import cn.iocoder.yudao.framework.common.pojo.PageResult; - -import cn.iocoder.yudao.module.mp.convert.fanstag.WxFansTagConvert; -import cn.iocoder.yudao.module.mp.dal.mysql.fanstag.WxFansTagMapper; - -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 WxFansTagServiceImpl implements WxFansTagService { - - @Resource - private WxFansTagMapper wxFansTagMapper; - - @Override - public Integer createWxFansTag(WxFansTagCreateReqVO createReqVO) { - // 插入 - WxFansTagDO wxFansTag = WxFansTagConvert.INSTANCE.convert(createReqVO); - wxFansTagMapper.insert(wxFansTag); - // 返回 - return wxFansTag.getId(); - } - - @Override - public void updateWxFansTag(WxFansTagUpdateReqVO updateReqVO) { - // 校验存在 - this.validateWxFansTagExists(updateReqVO.getId()); - // 更新 - WxFansTagDO updateObj = WxFansTagConvert.INSTANCE.convert(updateReqVO); - wxFansTagMapper.updateById(updateObj); - } - - @Override - public void deleteWxFansTag(Integer id) { - // 校验存在 - this.validateWxFansTagExists(id); - // 删除 - wxFansTagMapper.deleteById(id); - } - - private void validateWxFansTagExists(Integer id) { - if (wxFansTagMapper.selectById(id) == null) { - throw exception(COMMON_NOT_EXISTS); - } - } - - @Override - public WxFansTagDO getWxFansTag(Integer id) { - return wxFansTagMapper.selectById(id); - } - - @Override - public List getWxFansTagList(Collection ids) { - return wxFansTagMapper.selectBatchIds(ids); - } - - @Override - public PageResult getWxFansTagPage(WxFansTagPageReqVO pageReqVO) { - return wxFansTagMapper.selectPage(pageReqVO); - } - - @Override - public List getWxFansTagList(WxFansTagExportReqVO exportReqVO) { - return wxFansTagMapper.selectList(exportReqVO); - } - -} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/tag/FansTagService.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/tag/FansTagService.java new file mode 100644 index 0000000..f8f0826 --- /dev/null +++ b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/tag/FansTagService.java @@ -0,0 +1,75 @@ +package cn.iocoder.yudao.module.mp.service.tag; + +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.FansTagCreateReqVO; +import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.FansTagExportReqVO; +import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.FansTagPageReqVO; +import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.FansTagUpdateReqVO; +import me.chanjar.weixin.mp.bean.tag.WxUserTag; + +import javax.validation.Valid; +import java.util.Collection; +import java.util.List; + +/** + * 粉丝标签 Service 接口 + * + * @author fengdan + */ +public interface FansTagService { + + /** + * 创建粉丝标签 + * + * @param createReqVO 创建信息 + * @return 编号 + */ + WxUserTag createWxFansTag(@Valid FansTagCreateReqVO createReqVO); + + /** + * 更新粉丝标签 + * + * @param updateReqVO 更新信息 + */ + void updateWxFansTag(@Valid FansTagUpdateReqVO updateReqVO); + + /** + * 删除粉丝标签 + * + * @param id 编号 + */ + void deleteWxFansTag(Integer id); + + /** + * 获得粉丝标签 + * + * @param id 编号 + * @return 粉丝标签 + */ + WxUserTag getWxFansTag(Integer id); + + /** + * 获得粉丝标签列表 + * + * @param ids 编号 + * @return 粉丝标签列表 + */ + List getWxFansTagList(Collection ids); + + /** + * 获得粉丝标签分页 + * + * @param pageReqVO 分页查询 + * @return 粉丝标签分页 + */ + PageResult getWxFansTagPage(FansTagPageReqVO pageReqVO); + + /** + * 获得粉丝标签列表, 用于 Excel 导出 + * + * @param exportReqVO 查询条件 + * @return 粉丝标签列表 + */ + List getWxFansTagList(FansTagExportReqVO exportReqVO); + +} diff --git a/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/tag/FansTagServiceImpl.java b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/tag/FansTagServiceImpl.java new file mode 100644 index 0000000..61b2070 --- /dev/null +++ b/yudao-module-wechat/yudao-module-mp-biz/src/main/java/cn/iocoder/yudao/module/mp/service/tag/FansTagServiceImpl.java @@ -0,0 +1,77 @@ +package cn.iocoder.yudao.module.mp.service.tag; + +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.FansTagCreateReqVO; +import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.FansTagExportReqVO; +import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.FansTagPageReqVO; +import cn.iocoder.yudao.module.mp.controller.admin.fanstag.vo.FansTagUpdateReqVO; +import cn.iocoder.yudao.module.mp.convert.fanstag.WxFansTagConvert; +import lombok.extern.slf4j.Slf4j; +import me.chanjar.weixin.common.error.WxErrorException; +import me.chanjar.weixin.mp.api.WxMpService; +import me.chanjar.weixin.mp.bean.tag.WxUserTag; +import org.springframework.stereotype.Service; +import org.springframework.validation.annotation.Validated; + +import javax.annotation.Resource; +import java.util.Collection; +import java.util.List; + +/** + * 粉丝标签 Service 实现类 + * + * @author fengdan + */ +@Slf4j +@Service +@Validated +public class FansTagServiceImpl implements FansTagService { + + @Resource + private WxMpService wxMpService; + + @Override + public WxUserTag createWxFansTag(FansTagCreateReqVO createReqVO) { + try { + return wxMpService.getUserTagService().tagCreate("wxFansTag"); + } catch (WxErrorException e) { + throw new RuntimeException(e); + } + } + + @Override + public void updateWxFansTag(FansTagUpdateReqVO updateReqVO) { + // 校验存在 + // 更新 + WxUserTag updateObj = WxFansTagConvert.INSTANCE.convert(updateReqVO); + + } + + @Override + public void deleteWxFansTag(Integer id) { + // 校验存在 + // 删除 + } + + + @Override + public WxUserTag getWxFansTag(Integer id) { + return null; + } + + @Override + public List getWxFansTagList(Collection ids) { + return null; + } + + @Override + public PageResult getWxFansTagPage(FansTagPageReqVO pageReqVO) { + return null; + } + + @Override + public List getWxFansTagList(FansTagExportReqVO exportReqVO) { + return null; + } + +} -- libgit2 0.21.4