diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLabelMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLabelMapper.java new file mode 100644 index 000000000..65c714e9d --- /dev/null +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLabelMapper.java @@ -0,0 +1,34 @@ +package com.cool.store.mapper; + +import com.cool.store.dto.label.LabelListDTO; +import com.cool.store.entity.HyPartnerLabelDO; +import com.cool.store.vo.LabelListVo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * @author Fun Li + * @date 2023-08-10 + */ +public interface HyPartnerLabelMapper { + int deleteByPrimaryKey(Long id); + + int insert(HyPartnerLabelDO record); + + int insertSelective(HyPartnerLabelDO record); + + HyPartnerLabelDO selectByPrimaryKey(Long id); + + int updateByPrimaryKeySelective(HyPartnerLabelDO record); + + int updateByPrimaryKey(HyPartnerLabelDO record); + + List getLabelList(LabelListDTO dto); + + /** + * 某个标签组内是否有未删除的标签 + * @param labelGroupId 标签组 id + */ + Boolean whetherGroupInUse(@Param("labelGroupId") Long labelGroupId); +} \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLabelMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLabelMapper.xml new file mode 100644 index 000000000..3d83e0444 --- /dev/null +++ b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLabelMapper.xml @@ -0,0 +1,186 @@ + + + + + + + + + + + + + + + + + + id, label_group_id, label_name, edit_user_id, edit_date, deleted, create_time, update_time, + create_user_id, update_user_id, remark + + + + delete from hy_partner_label + where id = #{id,jdbcType=BIGINT} + + + insert into hy_partner_label (id, label_group_id, label_name, + edit_user_id, edit_date, deleted, + create_time, update_time, create_user_id, + update_user_id, remark) + values (#{id,jdbcType=BIGINT}, #{labelGroupId,jdbcType=BIGINT}, #{labelName,jdbcType=VARCHAR}, + #{editUserId,jdbcType=VARCHAR}, #{editDate,jdbcType=TIMESTAMP}, #{deleted,jdbcType=BIT}, + #{createTime,jdbcType=TIMESTAMP}, #{updateTime,jdbcType=TIMESTAMP}, #{createUserId,jdbcType=VARCHAR}, + #{updateUserId,jdbcType=VARCHAR}, #{remark,jdbcType=VARCHAR}) + + + insert into hy_partner_label + + + id, + + + label_group_id, + + + label_name, + + + edit_user_id, + + + edit_date, + + + deleted, + + + create_time, + + + update_time, + + + create_user_id, + + + update_user_id, + + + remark, + + + + + #{id,jdbcType=BIGINT}, + + + #{labelGroupId,jdbcType=BIGINT}, + + + #{labelName,jdbcType=VARCHAR}, + + + #{editUserId,jdbcType=VARCHAR}, + + + #{editDate,jdbcType=TIMESTAMP}, + + + #{deleted,jdbcType=BIT}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{updateTime,jdbcType=TIMESTAMP}, + + + #{createUserId,jdbcType=VARCHAR}, + + + #{updateUserId,jdbcType=VARCHAR}, + + + #{remark,jdbcType=VARCHAR}, + + + + + update hy_partner_label + + + label_group_id = #{labelGroupId,jdbcType=BIGINT}, + + + label_name = #{labelName,jdbcType=VARCHAR}, + + + edit_user_id = #{editUserId,jdbcType=VARCHAR}, + + + edit_date = #{editDate,jdbcType=TIMESTAMP}, + + + deleted = #{deleted,jdbcType=BIT}, + + + create_time = #{createTime,jdbcType=TIMESTAMP}, + + + update_time = #{updateTime,jdbcType=TIMESTAMP}, + + + create_user_id = #{createUserId,jdbcType=VARCHAR}, + + + update_user_id = #{updateUserId,jdbcType=VARCHAR}, + + + remark = #{remark,jdbcType=VARCHAR}, + + + where id = #{id,jdbcType=BIGINT} + + + update hy_partner_label + set label_group_id = #{labelGroupId,jdbcType=BIGINT}, + label_name = #{labelName,jdbcType=VARCHAR}, + edit_user_id = #{editUserId,jdbcType=VARCHAR}, + edit_date = #{editDate,jdbcType=TIMESTAMP}, + deleted = #{deleted,jdbcType=BIT}, + create_time = #{createTime,jdbcType=TIMESTAMP}, + update_time = #{updateTime,jdbcType=TIMESTAMP}, + create_user_id = #{createUserId,jdbcType=VARCHAR}, + update_user_id = #{updateUserId,jdbcType=VARCHAR}, + remark = #{remark,jdbcType=VARCHAR} + where id = #{id,jdbcType=BIGINT} + + + + + + + \ No newline at end of file diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/label/LabelAddDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/label/LabelAddDTO.java new file mode 100644 index 000000000..2f3bda9d8 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/label/LabelAddDTO.java @@ -0,0 +1,19 @@ +package com.cool.store.dto.label; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author Fun Li 2023/8/10 15:55 + * @version 1.0 + */ +@Data +public class LabelAddDTO { + + @ApiModelProperty(value = "标签名称", required = true) + private String labelName; + + @ApiModelProperty(value = "标签组id", required = true) + private Long labelGroupId; + +} diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/label/LabelListDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/label/LabelListDTO.java new file mode 100644 index 000000000..a4668055b --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/label/LabelListDTO.java @@ -0,0 +1,22 @@ +package com.cool.store.dto.label; + +import com.cool.store.common.PageBasicInfo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * @author Fun Li 2023/8/10 14:46 + * @version 1.0 + */ +@EqualsAndHashCode(callSuper = true) +@Data +public class LabelListDTO extends PageBasicInfo { + + @ApiModelProperty(value = "标签名称") + private String labelName; + + @ApiModelProperty(value = "标签组id") + private Long labelGroupId; + +} diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/label/LabelUpdateDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/label/LabelUpdateDTO.java new file mode 100644 index 000000000..e47b323f8 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/label/LabelUpdateDTO.java @@ -0,0 +1,11 @@ +package com.cool.store.dto.label; + +import lombok.Data; + +/** + * @author Fun Li 2023/8/10 16:03 + * @version 1.0 + */ +@Data +public class LabelUpdateDTO { +} diff --git a/coolstore-partner-model/src/main/java/com/cool/store/entity/HyPartnerLabelDO.java b/coolstore-partner-model/src/main/java/com/cool/store/entity/HyPartnerLabelDO.java new file mode 100644 index 000000000..735c255d7 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/entity/HyPartnerLabelDO.java @@ -0,0 +1,54 @@ +package com.cool.store.entity; + +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +; + +/** +* @author Fun Li + * @date 2023/08/10 +*/ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class HyPartnerLabelDO { + @ApiModelProperty("") + private Long id; + + @ApiModelProperty("标签组id hy_partner_label_group.id") + private Long labelGroupId; + + @ApiModelProperty("标签名") + private String labelName; + + @ApiModelProperty("编辑人user_id(enterprise_user.user_id)") + private String editUserId; + + @ApiModelProperty("编辑时间") + private Date editDate; + + @ApiModelProperty("删除标识") + private Boolean deleted; + + @ApiModelProperty("创建时间") + private Date createTime; + + @ApiModelProperty("更新时间") + private Date updateTime; + + @ApiModelProperty("创建人") + private String createUserId; + + @ApiModelProperty("更新人") + private String updateUserId; + + @ApiModelProperty("备注") + private String remark; +} \ No newline at end of file diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/LabelListVo.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/LabelListVo.java new file mode 100644 index 000000000..cbcdc795d --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/LabelListVo.java @@ -0,0 +1,36 @@ +package com.cool.store.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * @author Fun Li 2023/8/10 14:42 + * @version 1.0 + */ +@Data +public class LabelListVo { + + @ApiModelProperty(value = "标签名称") + private String labelName; + + @ApiModelProperty(value = "标签组名称") + private String labelGroupName; + + @ApiModelProperty(value = "编辑人姓名") + private String editName; + + @ApiModelProperty(value = "编辑人电话") + private String editMobile; + + @ApiModelProperty(value = "编辑时间") + private Date editDate; + + @ApiModelProperty(value = "标签id") + private Long id; + + @ApiModelProperty(value = "标签分组id") + private Long labelGroupId; + +} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/LabelService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/LabelService.java new file mode 100644 index 000000000..aa83e4a6f --- /dev/null +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/LabelService.java @@ -0,0 +1,27 @@ +package com.cool.store.service; + +import com.cool.store.dto.label.LabelAddDTO; +import com.cool.store.dto.label.LabelListDTO; +import com.cool.store.vo.LabelListVo; + +import java.util.List; + +/** + * @author Fun Li 2023/8/10 14:23 + * @version 1.0 + */ +public interface LabelService { + + /** + * 获取数组列表 + * + * @param dto 查询条件 + */ + List getLabelList(LabelListDTO dto); + + /** + * 添加标签组 + * @param dto 新增标签组信息 + */ + void addLabel(LabelAddDTO dto); +} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LabelServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LabelServiceImpl.java new file mode 100644 index 000000000..e9a73922e --- /dev/null +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LabelServiceImpl.java @@ -0,0 +1,52 @@ +package com.cool.store.service.impl; + +import com.cool.store.context.CurrentUserHolder; +import com.cool.store.dto.label.LabelAddDTO; +import com.cool.store.dto.label.LabelListDTO; +import com.cool.store.entity.HyPartnerLabelDO; +import com.cool.store.mapper.HyPartnerLabelMapper; +import com.cool.store.service.LabelService; +import com.cool.store.vo.LabelListVo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.Date; +import java.util.List; + +/** + * @author Fun Li 2023/8/10 14:24 + * @version 1.0 + */ +@Service +public class LabelServiceImpl implements LabelService { + + @Autowired + private HyPartnerLabelMapper labelMapper; + + /** + * 获取数组列表 + * + * @param dto 查询条件 + */ + @Override + public List getLabelList(LabelListDTO dto) { + return labelMapper.getLabelList(dto); + } + + /** + * 添加标签组 + * @param dto 新增标签组信息 + */ + @Override + public void addLabel(LabelAddDTO dto) { + HyPartnerLabelDO labelDO = new HyPartnerLabelDO(); + String userId = CurrentUserHolder.getUserId(); + labelDO.setLabelGroupId(dto.getLabelGroupId()); + labelDO.setLabelName(dto.getLabelName()); + labelDO.setEditUserId(userId); + labelDO.setEditDate(new Date()); + labelDO.setCreateUserId(userId); + labelDO.setUpdateUserId(userId); + labelMapper.insertSelective(labelDO); + } +} diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/controller/LabelController.java b/coolstore-partner-webb/src/main/java/com/cool/store/controller/LabelController.java new file mode 100644 index 000000000..13d88e76c --- /dev/null +++ b/coolstore-partner-webb/src/main/java/com/cool/store/controller/LabelController.java @@ -0,0 +1,54 @@ +package com.cool.store.controller; + +import com.cool.store.dto.label.LabelAddDTO; +import com.cool.store.dto.label.LabelListDTO; +import com.cool.store.response.ResponseResult; +import com.cool.store.service.LabelService; +import com.cool.store.vo.LabelListVo; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @author Fun Li 2023/8/10 14:20 + * @version 1.0 + */ +@Api(tags = "标签管理") +@RestController +@RequestMapping("/label") +public class LabelController { + + @Autowired + private LabelService labelService; + + @ApiOperation("标签列表查询") + @PostMapping("/list") + public ResponseResult> getLabelList(@RequestBody LabelListDTO dto) { + PageHelper.startPage(dto.getPageNum(), dto.getPageSize()); + List result = labelService.getLabelList(dto); + return ResponseResult.success(new PageInfo<>(result)); + } + + @ApiOperation("新增标签") + @PostMapping("/add") + public ResponseResult addLabel(@RequestBody LabelAddDTO dto) { + labelService.addLabel(dto); + return ResponseResult.success(); + } + +// @ApiOperation("修改标签") +// @PostMapping("/edit") +// public ResponseResult updateLabel() { +// labelService.updateLabel(); +// return ResponseResult.success(); +// } + +}