buyer-api/src/main/java/cn/lili/controller/lmk/CustomerController.java
@@ -3,13 +3,13 @@ import cn.lili.base.Result; import cn.lili.group.Add; import cn.lili.group.Update; import cn.lili.modules.lmk.domain.form.CustomerTagForm; import cn.lili.modules.lmk.domain.form.MemberTagForm; import cn.lili.modules.lmk.domain.form.CustomerTagRefForm; import cn.lili.modules.lmk.domain.query.CustomerQuery; import cn.lili.modules.lmk.domain.query.CustomerTagQuery; import cn.lili.modules.lmk.service.CustomerService; import cn.lili.modules.lmk.service.CustomerTagRefService; import cn.lili.modules.lmk.service.CustomerTagService; import cn.lili.modules.lmk.service.MemberTagService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; @@ -27,7 +27,7 @@ public class CustomerController { private final CustomerService customerService; private final CustomerTagService customerTagService; private final MemberTagService memberTagService; private final CustomerTagRefService customerTagRefService; @ApiOperation(value = "商铺下拉列表") @@ -45,39 +45,39 @@ @PostMapping("/addTag") @ApiOperation(value = "添加标签", notes = "添加标签") public Result add(@RequestBody @Validated(Add.class) CustomerTagForm form) { return customerTagService.add(form); public Result add(@RequestBody @Validated(Add.class) MemberTagForm form) { return memberTagService.add(form); } @PutMapping("/editTag") @ApiOperation(value = "修改标签", notes = "修改标签") public Result update(@RequestBody @Validated(Update.class) CustomerTagForm form) { return customerTagService.update(form); public Result update(@RequestBody @Validated(Update.class) MemberTagForm form) { return memberTagService.update(form); } @DeleteMapping("/tag/{id}") @ApiOperation(value = "ID删除标签", notes = "ID删除") public Result removeById(@PathVariable("id") String id) { return customerTagService.removeById(id); return memberTagService.removeById(id); } @GetMapping("/tagList") @ApiOperation(value = "标签列表", notes = "标签列表") public Result list() { return customerTagService.all(); return memberTagService.all(); } @GetMapping("/pageTagList") @ApiOperation(value = "分页标签列表", notes = "标签列表") public Result pageList(CustomerTagQuery query) { return customerTagService.page(query); return memberTagService.page(query); } @PostMapping("/customerAddTag") @ApiOperation(value = "添加客户标签标识", notes = "添加客户标签标识") public Result addCustomerTag(@RequestBody @Validated(Add.class) CustomerTagForm form) { return customerTagService.addCustomerTag(form); public Result addCustomerTag(@RequestBody @Validated(Add.class) MemberTagForm form) { return memberTagService.addMemberTag(form); } // @PostMapping("/customerAddTag") framework/src/main/java/cn/lili/modules/lmk/domain/entity/GoodsTag.java
File was renamed from framework/src/main/java/cn/lili/modules/lmk/domain/entity/CustomerTag.java @@ -3,21 +3,24 @@ import cn.lili.mybatis.BaseEntity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import java.time.LocalDateTime; import lombok.Data; /** * * * @author zxl * @since 2025-05-14 */ @Data @TableName("lmk_customer_tag") public class CustomerTag extends BaseEntity { @TableName("lmk_goods_tag") public class GoodsTag extends BaseEntity { private static final long serialVersionUID = 1L; @TableField("tag_id") private String tagId; @TableField("goods_id") private String goodsId; @TableField("tag_name") /** 标签名称*/ private String tagName; framework/src/main/java/cn/lili/modules/lmk/domain/entity/MemberTag.javacopy from framework/src/main/java/cn/lili/modules/lmk/domain/entity/CustomerTag.java copy to framework/src/main/java/cn/lili/modules/lmk/domain/entity/MemberTag.java
File was copied from framework/src/main/java/cn/lili/modules/lmk/domain/entity/CustomerTag.java @@ -3,21 +3,24 @@ import cn.lili.mybatis.BaseEntity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import java.time.LocalDateTime; import lombok.Data; /** * * * @author zxl * @since 2025-05-14 */ @Data @TableName("lmk_customer_tag") public class CustomerTag extends BaseEntity { @TableName("lmk_member_tag") public class MemberTag extends BaseEntity { private static final long serialVersionUID = 1L; @TableField("tag_id") private String tagId; @TableField("member_id") private String memberId; @TableField("tag_name") /** 标签名称*/ private String tagName; framework/src/main/java/cn/lili/modules/lmk/domain/form/CustomerTagForm.java
File was deleted framework/src/main/java/cn/lili/modules/lmk/domain/form/GoodsTagForm.java
New file @@ -0,0 +1,51 @@ package cn.lili.modules.lmk.domain.form; import cn.lili.base.AbsForm; import cn.lili.group.Add; import cn.lili.group.Update; import cn.lili.modules.lmk.domain.entity.GoodsTag; import cn.lili.modules.lmk.domain.entity.MemberTag; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.springframework.beans.BeanUtils; import org.springframework.lang.NonNull; import javax.validation.constraints.NotBlank; import java.util.List; /** * 表单 * * @author zxl * @since 2025-05-14 */ @Data @ApiModel(value = "GoodsTag表单", description = "表单") public class GoodsTagForm extends AbsForm { @NotBlank(message = "不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("标签Id") private List<String> tagIds; @NotBlank(message = "不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("") private String createType; /** * 客户id */ @ApiModelProperty("商品id") private String goodsId; public static GoodsTag getEntityByForm(@NonNull GoodsTagForm form, GoodsTag entity) { if (entity == null) { entity = new GoodsTag(); } BeanUtils.copyProperties(form, entity); return entity; } } framework/src/main/java/cn/lili/modules/lmk/domain/form/MemberTagForm.java
New file @@ -0,0 +1,52 @@ package cn.lili.modules.lmk.domain.form; import cn.lili.base.AbsForm; import cn.lili.group.Add; import cn.lili.group.Update; import cn.lili.modules.lmk.domain.entity.MemberTag; import org.springframework.beans.BeanUtils; import javax.validation.constraints.NotBlank; import org.springframework.lang.NonNull; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; /** * 表单 * * @author zxl * @since 2025-05-14 */ @Data @ApiModel(value = "MemberTag表单", description = "表单") public class MemberTagForm extends AbsForm { @NotBlank(message = "不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("标签Id") private List<String> tagIds; @NotBlank(message = "不能为空", groups = {Add.class, Update.class}) @ApiModelProperty("") private String createType; /** * 客户id */ @ApiModelProperty("客户id") private String memberId; public static MemberTag getEntityByForm(@NonNull MemberTagForm form, MemberTag entity) { if (entity == null) { entity = new MemberTag(); } BeanUtils.copyProperties(form, entity); return entity; } } framework/src/main/java/cn/lili/modules/lmk/domain/query/TagQuery.java
@@ -26,6 +26,8 @@ @ApiModelProperty("标签分类") private String tagTypeId; @ApiModelProperty("标签类别key") private String tagTypeKey; } framework/src/main/java/cn/lili/modules/lmk/domain/vo/GoodsTagVO.javacopy from framework/src/main/java/cn/lili/modules/lmk/domain/vo/CustomerTagVO.java copy to framework/src/main/java/cn/lili/modules/lmk/domain/vo/GoodsTagVO.java
File was copied from framework/src/main/java/cn/lili/modules/lmk/domain/vo/CustomerTagVO.java @@ -1,16 +1,12 @@ package cn.lili.modules.lmk.domain.vo; import cn.lili.base.AbsVo; import java.util.List; import cn.lili.modules.lmk.domain.entity.CustomerTag; import org.springframework.lang.NonNull; import org.springframework.beans.BeanUtils; import cn.lili.modules.lmk.domain.entity.MemberTag; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; import org.springframework.beans.BeanUtils; import org.springframework.lang.NonNull; /** * 展示 @@ -20,21 +16,30 @@ */ @Data @ApiModel(value = "响应数据", description = "响应数据") public class CustomerTagVO extends AbsVo { public class GoodsTagVO extends AbsVo { /** */ @ApiModelProperty("标签Id") private String tagId; @ApiModelProperty("客户id") private String goodsId; /** * */ @ApiModelProperty("标签名称") private String tagName; /** */ /** * */ @ApiModelProperty("创建方式") private String createType; public static CustomerTagVO getVoByEntity(@NonNull CustomerTag entity, CustomerTagVO vo) { if(vo == null) { vo = new CustomerTagVO(); public static GoodsTagVO getVoByEntity(@NonNull MemberTag entity, GoodsTagVO vo) { if (vo == null) { vo = new GoodsTagVO(); } BeanUtils.copyProperties(entity, vo); return vo; framework/src/main/java/cn/lili/modules/lmk/domain/vo/MemberTagVO.java
File was renamed from framework/src/main/java/cn/lili/modules/lmk/domain/vo/CustomerTagVO.java @@ -2,15 +2,12 @@ import cn.lili.base.AbsVo; import java.util.List; import cn.lili.modules.lmk.domain.entity.CustomerTag; import cn.lili.modules.lmk.domain.entity.MemberTag; import org.springframework.lang.NonNull; import org.springframework.beans.BeanUtils; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; /** * 展示 @@ -20,21 +17,30 @@ */ @Data @ApiModel(value = "响应数据", description = "响应数据") public class CustomerTagVO extends AbsVo { public class MemberTagVO extends AbsVo { /** */ @ApiModelProperty("标签Id") private String tagId; @ApiModelProperty("客户id") private String memberId; /** * */ @ApiModelProperty("标签名称") private String tagName; /** */ /** * */ @ApiModelProperty("创建方式") private String createType; public static CustomerTagVO getVoByEntity(@NonNull CustomerTag entity, CustomerTagVO vo) { if(vo == null) { vo = new CustomerTagVO(); public static MemberTagVO getVoByEntity(@NonNull MemberTag entity, MemberTagVO vo) { if (vo == null) { vo = new MemberTagVO(); } BeanUtils.copyProperties(entity, vo); return vo; framework/src/main/java/cn/lili/modules/lmk/mapper/CustomerTagMapper.java
File was deleted framework/src/main/java/cn/lili/modules/lmk/mapper/GoodsTagMapper.java
New file @@ -0,0 +1,16 @@ package cn.lili.modules.lmk.mapper; import cn.lili.modules.lmk.domain.entity.GoodsTag; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; /** * Mapper 接口 * * @author zxl * @since 2025-05-14 */ @Mapper public interface GoodsTagMapper extends BaseMapper<GoodsTag> { } framework/src/main/java/cn/lili/modules/lmk/mapper/MemberTagMapper.java
New file @@ -0,0 +1,16 @@ package cn.lili.modules.lmk.mapper; import cn.lili.modules.lmk.domain.entity.MemberTag; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; /** * Mapper 接口 * * @author zxl * @since 2025-05-14 */ @Mapper public interface MemberTagMapper extends BaseMapper<MemberTag> { } framework/src/main/java/cn/lili/modules/lmk/service/GoodsTagService.java
New file @@ -0,0 +1,51 @@ package cn.lili.modules.lmk.service; import cn.lili.base.Result; import cn.lili.modules.lmk.domain.entity.GoodsTag; import cn.lili.modules.lmk.domain.form.GoodsTagForm; import cn.lili.modules.lmk.domain.query.CustomerTagQuery; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; /** * 服务类 * * @author zxl * @since 2025-05-14 */ public interface GoodsTagService extends IService<GoodsTag> { /** * 添加 * * @param form * @return */ Result addGoodsTag(GoodsTagForm form); /** * 批量删除 * * @param ids * @return */ Result remove(List<String> ids); /** * id删除 * * @param id * @return */ Result removeById(String id); /** * 列表 * * @return */ Result getByGoodsId(String goodsId); } framework/src/main/java/cn/lili/modules/lmk/service/MemberTagService.java
File was renamed from framework/src/main/java/cn/lili/modules/lmk/service/CustomerTagService.java @@ -1,37 +1,40 @@ package cn.lili.modules.lmk.service; import cn.lili.base.Result; import cn.lili.modules.lmk.domain.entity.CustomerTag; import cn.lili.modules.lmk.domain.form.CustomerTagForm; import cn.lili.modules.lmk.domain.entity.MemberTag; import cn.lili.modules.lmk.domain.form.MemberTagForm; import cn.lili.modules.lmk.domain.query.CustomerTagQuery; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; /** * 服务类 * 服务类 * * @author zxl * @since 2025-05-14 */ public interface CustomerTagService extends IService<CustomerTag> { public interface MemberTagService extends IService<MemberTag> { /** * 添加 * * @param form * @return */ Result add(CustomerTagForm form); Result add(MemberTagForm form); /** * 修改 * * @param form * @return */ Result update(CustomerTagForm form); Result update(MemberTagForm form); /** * 批量删除 * * @param ids * @return */ @@ -39,6 +42,7 @@ /** * id删除 * * @param id * @return */ @@ -46,23 +50,22 @@ /** * 分页查询 * * @param query * @return */ Result page(CustomerTagQuery query); /** * 根据id查找 * @param id * @return */ Result detail(Integer id); /** * 列表 * * @return */ Result all(); Result addCustomerTag(CustomerTagForm form); Result addMemberTag(MemberTagForm form); Result getByMemberId(String memberId); } framework/src/main/java/cn/lili/modules/lmk/service/impl/CustomerTagServiceImpl.java
File was deleted framework/src/main/java/cn/lili/modules/lmk/service/impl/GoodsTagServiceImpl.java
New file @@ -0,0 +1,92 @@ package cn.lili.modules.lmk.service.impl; import cn.lili.base.Result; import cn.lili.modules.lmk.domain.entity.GoodsTag; import cn.lili.modules.lmk.domain.entity.Tag; import cn.lili.modules.lmk.domain.form.GoodsTagForm; import cn.lili.modules.lmk.domain.query.CustomerTagQuery; import cn.lili.modules.lmk.domain.vo.MemberTagVO; import cn.lili.modules.lmk.mapper.GoodsTagMapper; import cn.lili.modules.lmk.service.GoodsTagService; import cn.lili.modules.lmk.service.TagService; import cn.lili.utils.PageUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.util.Assert; import java.util.List; import java.util.stream.Collectors; /** * 服务实现类 * * @author zxl * @since 2025-05-14 */ @Service @RequiredArgsConstructor public class GoodsTagServiceImpl extends ServiceImpl<GoodsTagMapper, GoodsTag> implements GoodsTagService { private final TagService tagService; /** * 批量删除 * * @param ids * @return */ @Override public Result remove(List<String> ids) { baseMapper.deleteBatchIds(ids); return Result.ok("删除成功"); } /** * id删除 * * @param id * @return */ @Override public Result removeById(String id) { baseMapper.deleteById(id); return Result.ok("删除成功"); } @Override public Result getByGoodsId(String goodsId) { LambdaQueryWrapper<GoodsTag> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(GoodsTag::getGoodsId, goodsId); return Result.ok().data(baseMapper.selectList(queryWrapper)); } @Override public Result addGoodsTag(GoodsTagForm form) { LambdaQueryWrapper<Tag> query = new LambdaQueryWrapper<>(); query.in(Tag::getId, form.getTagIds()); List<Tag> tags = tagService.list(query); List<GoodsTag> GoodsTags = tags.stream().map(tag -> { GoodsTag GoodsTag = new GoodsTag(); GoodsTag.setTagId(tag.getId()); GoodsTag.setGoodsId(form.getGoodsId()); GoodsTag.setTagName(tag.getTagName()); GoodsTag.setCreateType(form.getCreateType()); return GoodsTag; }).collect(Collectors.toList()); this.saveBatch(GoodsTags); return Result.ok("添加成功"); } public Result delCustomerTag(String id) { return null; } } framework/src/main/java/cn/lili/modules/lmk/service/impl/MemberTagServiceImpl.java
New file @@ -0,0 +1,158 @@ package cn.lili.modules.lmk.service.impl; import cn.lili.base.Result; import cn.lili.modules.lmk.domain.entity.MemberTag; import cn.lili.modules.lmk.domain.entity.Tag; import cn.lili.modules.lmk.domain.form.MemberTagForm; import cn.lili.modules.lmk.domain.query.CustomerTagQuery; import cn.lili.modules.lmk.domain.vo.MemberTagVO; import cn.lili.modules.lmk.mapper.MemberTagMapper; import cn.lili.modules.lmk.service.MemberTagService; import cn.lili.modules.lmk.service.TagService; import cn.lili.utils.PageUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.util.Assert; import java.util.List; import java.util.stream.Collectors; /** * 服务实现类 * * @author zxl * @since 2025-05-14 */ @Service @RequiredArgsConstructor public class MemberTagServiceImpl extends ServiceImpl<MemberTagMapper, MemberTag> implements MemberTagService { private final TagService tagService; /** * 添加 * * @param form * @return */ @Override public Result add(MemberTagForm form) { MemberTag entity = MemberTagForm.getEntityByForm(form, null); baseMapper.insert(entity); return Result.ok("添加成功"); } /** * 修改 * * @param form * @return */ @Override public Result update(MemberTagForm form) { MemberTag entity = baseMapper.selectById(form.getId()); // 为空抛IllegalArgumentException,做全局异常处理 Assert.notNull(entity, "记录不存在"); BeanUtils.copyProperties(form, entity); baseMapper.updateById(entity); return Result.ok("修改成功"); } /** * 批量删除 * * @param ids * @return */ @Override public Result remove(List<String> ids) { baseMapper.deleteBatchIds(ids); return Result.ok("删除成功"); } /** * id删除 * * @param id * @return */ @Override public Result removeById(String id) { baseMapper.deleteById(id); return Result.ok("删除成功"); } /** * 分页查询 * * @param query * @return */ @Override public Result page(CustomerTagQuery query) { IPage<MemberTag> page = PageUtil.getPage(query, MemberTag.class); LambdaQueryWrapper<MemberTag> lambdaQueryWrapper = new LambdaQueryWrapper<>(); baseMapper.selectPage(page, lambdaQueryWrapper); return Result.ok().data(page.getRecords()).total(page.getTotal()); } /** * 列表 * * @return */ @Override public Result all() { List<MemberTag> entities = baseMapper.selectList(null); List<MemberTagVO> vos = entities.stream() .map(entity -> MemberTagVO.getVoByEntity(entity, null)) .collect(Collectors.toList()); return Result.ok().data(vos); } @Override public Result addMemberTag(MemberTagForm form) { LambdaQueryWrapper<MemberTag> deleteQuery = new LambdaQueryWrapper<>(); deleteQuery.eq(MemberTag::getMemberId, form.getMemberId()); baseMapper.delete(deleteQuery); LambdaQueryWrapper<Tag> query = new LambdaQueryWrapper<>(); query.in(Tag::getId, form.getTagIds()); List<Tag> tags = tagService.list(query); List<MemberTag> memberTags = tags.stream().map(tag -> { MemberTag memberTag = new MemberTag(); memberTag.setTagId(tag.getId()); memberTag.setMemberId(form.getMemberId()); memberTag.setTagName(tag.getTagName()); memberTag.setCreateType(form.getCreateType()); return memberTag; }).collect(Collectors.toList()); this.saveBatch(memberTags); return Result.ok("添加成功"); } @Override public Result getByMemberId(String memberId) { LambdaQueryWrapper<MemberTag> query = new LambdaQueryWrapper<>(); query.eq(MemberTag::getMemberId, memberId); List<MemberTag> memberTags = baseMapper.selectList(query); return Result.ok().data(memberTags); } public Result delCustomerTag(String id) { return null; } } framework/src/main/java/cn/lili/modules/member/entity/dto/ManagerMemberEditDTO.java
@@ -10,6 +10,7 @@ import javax.validation.constraints.Min; import javax.validation.constraints.NotNull; import java.util.Date; import java.util.List; /** * 会员修改 @@ -54,4 +55,6 @@ @ApiModelProperty(value = "会员头像") private String face; private List<String> tags; } framework/src/main/java/cn/lili/modules/member/entity/vo/MemberVO.java
@@ -4,7 +4,7 @@ import cn.lili.common.security.sensitive.Sensitive; import cn.lili.common.security.sensitive.enums.SensitiveStrategy; import cn.lili.common.utils.BeanUtil; import cn.lili.modules.lmk.domain.vo.CustomerTagVO; import cn.lili.modules.lmk.domain.vo.MemberTagVO; import cn.lili.modules.member.entity.dos.Member; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; @@ -98,7 +98,7 @@ private Date createTime; @ApiModelProperty(value = "客户标签列表") private List<CustomerTagVO> customerTagList; private List<MemberTagVO> tags; /** * 为null则不在黑名单内 framework/src/main/java/cn/lili/modules/member/mapper/MemberMapper.java
@@ -29,4 +29,6 @@ @Select("select * from li_member ${ew.customSqlSegment}") IPage<MemberVO> pageByMemberVO(IPage<MemberVO> page, @Param(Constants.WRAPPER) Wrapper<Member> queryWrapper); MemberVO getVoById(@Param("id") String id); } framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java
@@ -24,6 +24,8 @@ import cn.lili.modules.connect.entity.dto.ConnectAuthUser; import cn.lili.modules.connect.service.ConnectService; import cn.lili.modules.lmk.domain.entity.VideoAccount; import cn.lili.modules.lmk.domain.form.MemberTagForm; import cn.lili.modules.lmk.service.MemberTagService; import cn.lili.modules.lmk.service.VideoAccountService; import cn.lili.modules.member.aop.annotation.PointLogPoint; import cn.lili.modules.member.entity.dos.Member; @@ -111,6 +113,9 @@ @Autowired private VideoAccountService videoAccountService; @Autowired private MemberTagService memberTagService; @Override public Member findByUsername(String userName) { @@ -487,6 +492,7 @@ } @Override @Transactional public Member updateMember(ManagerMemberEditDTO managerMemberEditDTO) { //过滤会员昵称敏感词 if (CharSequenceUtil.isNotBlank(managerMemberEditDTO.getNickName())) { @@ -501,6 +507,13 @@ //传递修改会员信息 BeanUtil.copyProperties(managerMemberEditDTO, member); this.updateById(member); if (managerMemberEditDTO.getTags() != null) { MemberTagForm memberTagForm = new MemberTagForm(); memberTagForm.setMemberId(member.getId()); memberTagForm.setTagIds(managerMemberEditDTO.getTags()); memberTagForm.setCreateType("MANAGER"); memberTagService.addMemberTag(memberTagForm); } return member; } @@ -786,7 +799,7 @@ @Override public MemberVO getMember(String id) { return new MemberVO(this.getById(id)); return baseMapper.getVoById(id); } @Override framework/src/main/resources/mapper/lmk/CustomerMapper.xml
@@ -27,7 +27,7 @@ <result property="experience" column="experience"/> <result property="createTime" column="create_time"/> <result property="blackId" column="blackId"/> <collection property="customerTagList" ofType="cn.lili.modules.lmk.domain.vo.CustomerTagVO" <collection property="customerTagList" ofType="cn.lili.modules.lmk.domain.vo.MemberTagVO" select="selectTagByMemberId" column="id" /> @@ -69,7 +69,7 @@ ORDER BY lm.create_time DESC </select> <select id="selectTagByMemberId" resultType="cn.lili.modules.lmk.domain.vo.CustomerTagVO"> <select id="selectTagByMemberId" resultType="cn.lili.modules.lmk.domain.vo.MemberTagVO"> SELECT LCT.id, LCT.tag_name, framework/src/main/resources/mapper/lmk/CustomerTagMapper.xml
File was deleted framework/src/main/resources/mapper/lmk/GoodsTagMapper.xml
New file @@ -0,0 +1,15 @@ <?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="cn.lili.modules.lmk.mapper.GoodsTagMapper"> <!-- 通用查询映射结果 --> <resultMap id="BaseResultMap" type="cn.lili.modules.lmk.domain.vo.GoodsTagVO"> <result column="tag_id" property="tagId"/> <result column="tag_name" property="tagName"/> <result column="create_type" property="createType"/> <result column="create_by" property="createBy"/> <result column="create_time" property="createTime"/> <result column="update_by" property="updateBy"/> <result column="update_time" property="updateTime"/> </resultMap> </mapper> framework/src/main/resources/mapper/lmk/MemberMapper.xml
New file @@ -0,0 +1,41 @@ <?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="cn.lili.modules.member.mapper.MemberMapper"> <!-- 通用查询映射结果 --> <resultMap id="BaseResultMap" type="cn.lili.modules.member.entity.vo.MemberVO"> <id column="id" property="id"/> <result column="username" property="username"/> <result column="nick_name" property="nickName"/> <result column="sex" property="sex"/> <result column="birthday" property="birthday"/> <result column="region_id" property="regionId"/> <result column="region" property="region"/> <result column="mobile" property="mobile"/> <result column="point" property="point"/> <result column="total_point" property="totalPoint"/> <result column="face" property="face"/> <result column="disabled" property="disabled"/> <result column="have_store" property="haveStore"/> <result column="store_id" property="storeId"/> <result column="open_id" property="openId"/> <result column="client_enum" property="clientEnum"/> <result column="last_login_date" property="lastLoginDate"/> <result column="grade_id" property="gradeId"/> <result column="experience" property="experience"/> <collection property="tags" ofType="cn.lili.modules.lmk.domain.vo.MemberTagVO"> <id column="member_tag_id" property="id"/> <result column="tag_name" property="tagName"/> <result column="tag_id" property="tagId"/> </collection> </resultMap> <select id="getVoById" resultMap="BaseResultMap"> select m.*, mt.id member_tag_id, mt.tag_name, mt.tag_id from li_member m left join lmk_member_tag mt on m.id = mt.member_id and mt.delete_flag = 0 where m.id = #{id} and m.delete_flag = 0 </select> </mapper> framework/src/main/resources/mapper/lmk/MemberTagMapper.xml
New file @@ -0,0 +1,43 @@ <?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="cn.lili.modules.lmk.mapper.MemberTagMapper"> <!-- 通用查询映射结果 --> <resultMap id="BaseResultMap" type="cn.lili.modules.lmk.domain.vo.MemberTagVO"> <result column="tag_id" property="tagId"/> <result column="tag_name" property="tagName"/> <result column="create_type" property="createType"/> <result column="create_by" property="createBy"/> <result column="create_time" property="createTime"/> <result column="update_by" property="updateBy"/> <result column="update_time" property="updateTime"/> </resultMap> <select id="getById" resultMap="BaseResultMap"> SELECT LCT.tag_name, LCT.create_type, LCT.create_by, LCT.create_time, LCT.update_by, LCT.update_time, LCT.id FROM lmk_customer_tag LCT WHERE LCT.id = #{id} AND LCT.delete_flag = 0 </select> <select id="getPage" resultMap="BaseResultMap"> SELECT LCT.tag_name, LCT.create_type, LCT.create_by, LCT.create_time, LCT.update_by, LCT.update_time, LCT.id FROM lmk_customer_tag LCT WHERE LCT.delete_flag = 0 </select> </mapper> framework/src/main/resources/mapper/lmk/TagMapper.xml
@@ -20,7 +20,10 @@ and t.tag_name like concat('%',#{query.tagName},'%') </if> <if test="query.tagTypeId != null and query.tagTypeId != ''"> and t.tag_type_id like concat('%',#{query.tagTypeId},'%') and t.tag_type_id = #{query.tagTypeId} </if> <if test="query.tagTypeKey != null and query.tagTypeKey != ''"> and tt.type_key = #{query.tagTypeKey} </if> order by t.sort_num </select> manager-api/src/main/java/cn/lili/controller/lmk/CustomerController.java
@@ -1,21 +1,15 @@ package cn.lili.controller.lmk; import cn.lili.base.Result; import cn.lili.common.enums.ResultUtil; import cn.lili.common.vo.PageVO; import cn.lili.common.vo.ResultMessage; import cn.lili.group.Add; import cn.lili.group.Update; import cn.lili.modules.lmk.domain.form.CustomerTagForm; import cn.lili.modules.lmk.domain.form.MemberTagForm; import cn.lili.modules.lmk.domain.form.CustomerTagRefForm; import cn.lili.modules.lmk.domain.query.CustomerQuery; import cn.lili.modules.lmk.domain.query.CustomerTagQuery; import cn.lili.modules.lmk.service.CustomerService; import cn.lili.modules.lmk.service.CustomerTagRefService; import cn.lili.modules.lmk.service.CustomerTagService; import cn.lili.modules.member.entity.vo.MemberSearchVO; import cn.lili.modules.member.entity.vo.MemberVO; import com.baomidou.mybatisplus.core.metadata.IPage; import cn.lili.modules.lmk.service.MemberTagService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; @@ -29,8 +23,7 @@ @RequestMapping("/manager/customerManager") public class CustomerController { private final CustomerService customerService; private final CustomerTagService customerTagService; private final CustomerTagRefService customerTagRefService; private final MemberTagService memberTagService; @ApiOperation(value = "商铺下拉列表") @GetMapping("/store/selectOption") @@ -52,39 +45,39 @@ @PostMapping("/addTag") @ApiOperation(value = "添加标签", notes = "添加标签") public Result add(@RequestBody @Validated(Add.class) CustomerTagForm form) { return customerTagService.add(form); public Result add(@RequestBody @Validated(Add.class) MemberTagForm form) { return memberTagService.add(form); } @PutMapping("/editTag") @ApiOperation(value = "修改标签", notes = "修改标签") public Result update(@RequestBody @Validated(Update.class) CustomerTagForm form) { return customerTagService.update(form); public Result update(@RequestBody @Validated(Update.class) MemberTagForm form) { return memberTagService.update(form); } @DeleteMapping("/tag/{id}") @ApiOperation(value = "ID删除标签", notes = "ID删除") public Result removeById(@PathVariable("id") String id) { return customerTagService.removeById(id); return memberTagService.removeById(id); } @GetMapping("/tagList") @ApiOperation(value = "标签列表", notes = "标签列表") public Result list() { return customerTagService.all(); return memberTagService.all(); } @GetMapping("/pageTagList") @ApiOperation(value = "分页标签列表", notes = "标签列表") public Result pageList(CustomerTagQuery query) { return customerTagService.page(query); return memberTagService.page(query); } @PostMapping("/customerAddTag") @ApiOperation(value = "添加客户标签标识", notes = "添加客户标签标识") public Result addCustomerTag(@RequestBody @Validated(Add.class) CustomerTagForm form) { return customerTagService.addCustomerTag(form); public Result addCustomerTag(@RequestBody @Validated(Add.class) MemberTagForm form) { return memberTagService.addMemberTag(form); } // @PostMapping("/customerAddTag") @@ -93,16 +86,11 @@ // return customerTagRefService.add(form); // } @PutMapping("/customerEditTag") @ApiOperation(value = "修改客户标签标识", notes = "修改客户标签标识") public Result update(@RequestBody @Validated(Update.class) CustomerTagRefForm form) { return customerTagRefService.update(form); } @DeleteMapping("/customerDelTag/{id}") @ApiOperation(value = "删除客户标签标识ID删除", notes = "删除客户标签标识ID删除") public Result removeCustomerTagById(@PathVariable("id") String id) { return customerTagRefService.removeById(id); return memberTagService.removeById(id); } }