From 662723be28c52a0809e1897c576d073e0d51f281 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=98mahaoran=E2=80=99?= <2570310046@qq.com> Date: Fri, 15 Nov 2024 11:58:30 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=BA=8C=E6=AC=A1=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/muyu/product/domain/CategoryInfo.java | 12 ++ .../com/muyu/product/domain/GroupBuy.java | 109 +++++++++++++++++ .../com/muyu/product/domain/GroupOrder.java | 89 ++++++++++++++ .../domain/req/CategoryInfoEditReq.java | 39 ++++++ .../product/domain/req/CategoryInfoReq.java | 65 ++++++++++ .../product/domain/req/GroupBuyEditReq.java | 50 ++++++++ .../product/domain/req/GroupBuyQueryReq.java | 50 ++++++++ .../product/domain/req/GroupBuySaveReq.java | 60 ++++++++++ .../product/domain/req/GroupOrderEditReq.java | 38 ++++++ .../domain/req/GroupOrderQueryReq.java | 38 ++++++ .../product/domain/req/GroupOrderSaveReq.java | 46 ++++++++ .../product/domain/req/RuleInfoEditReq.java | 4 +- .../controller/CategoryInfoController.java | 5 +- .../controller/GroupBuyController.java | 111 ++++++++++++++++++ .../controller/GroupOrderController.java | 111 ++++++++++++++++++ .../product/mapper/CategoryInfoMapper.java | 16 +++ .../muyu/product/mapper/GroupBuyMapper.java | 15 +++ .../muyu/product/mapper/GroupOrderMapper.java | 15 +++ .../product/mapper/RuleAttrInfoMapper.java | 3 +- .../product/service/CategoryInfoService.java | 6 + .../muyu/product/service/GroupBuyService.java | 22 ++++ .../product/service/GroupOrderService.java | 22 ++++ .../service/impl/CategoryInfoServiceImpl.java | 37 ++++++ .../service/impl/GroupBuyServiceImpl.java | 56 +++++++++ .../service/impl/GroupOrderServiceImpl.java | 49 ++++++++ .../service/impl/RuleInfoServiceImpl.java | 11 +- .../mapper/product/CategoryInfoMapper.xml | 24 ++++ .../mapper/product/GroupBuyMapper.xml | 19 +++ .../mapper/product/GroupOrderMapper.xml | 18 +++ .../mapper/product/RuleAttrInfoMapper.xml | 3 + 30 files changed, 1138 insertions(+), 5 deletions(-) create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/GroupBuy.java create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/GroupOrder.java create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/CategoryInfoReq.java create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuyEditReq.java create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuyQueryReq.java create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuySaveReq.java create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderEditReq.java create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderQueryReq.java create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderSaveReq.java create mode 100644 muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/GroupBuyController.java create mode 100644 muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/GroupOrderController.java create mode 100644 muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/GroupBuyMapper.java create mode 100644 muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/GroupOrderMapper.java create mode 100644 muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/GroupBuyService.java create mode 100644 muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/GroupOrderService.java create mode 100644 muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/GroupBuyServiceImpl.java create mode 100644 muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/GroupOrderServiceImpl.java create mode 100644 muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/GroupBuyMapper.xml create mode 100644 muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/GroupOrderMapper.xml diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/CategoryInfo.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/CategoryInfo.java index 918b02c..b2b2f01 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/CategoryInfo.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/CategoryInfo.java @@ -113,4 +113,16 @@ public class CategoryInfo extends TreeEntity { .createTime(new Date()) .build(); } + + public static CategoryInfo saveModelBuildTwo(CategoryInfoSaveReq categoryInfoSaveReq) { + return CategoryInfo.builder() + .name(categoryInfoSaveReq.getName()) + .image(categoryInfoSaveReq.getImage()) + .start(categoryInfoSaveReq.getStart()) + .introduction(categoryInfoSaveReq.getIntroduction()) + .parentId(categoryInfoSaveReq.getParentId()) + .createBy(categoryInfoSaveReq.getCreateBy()) + .createTime(new Date()) + .build(); + } } diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/GroupBuy.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/GroupBuy.java new file mode 100644 index 0000000..ad5dc8e --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/GroupBuy.java @@ -0,0 +1,109 @@ +package com.muyu.product.domain; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.muyu.common.core.annotation.Excel; +import com.muyu.product.domain.req.GroupBuyQueryReq; +import com.muyu.product.domain.req.GroupBuySaveReq; +import com.muyu.product.domain.req.GroupBuyEditReq; +import com.muyu.common.core.web.domain.BaseEntity; + +/** + * 拼团活动对象 group_buy + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@TableName("group_buy") +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "GroupBuy", description = "拼团活动") +public class GroupBuy extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 编号 */ + @TableId(value = "id",type = IdType.AUTO) + @ApiModelProperty(name = "编号", value = "编号") + private Long id; + + /** 外键:关联商品 */ + @Excel(name = "外键:关联商品") + @ApiModelProperty(name = "外键:关联商品", value = "外键:关联商品") + private Long productId; + + /** 开始时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd") + @ApiModelProperty(name = "开始时间", value = "开始时间") + private Date startTime; + + /** 结束时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd") + @ApiModelProperty(name = "结束时间", value = "结束时间") + private Date endTime; + + /** 最小成团人数 */ + @Excel(name = "最小成团人数") + @ApiModelProperty(name = "最小成团人数", value = "最小成团人数") + private Long minMembers; + + /** 活动转态 */ + @Excel(name = "活动转态") + @ApiModelProperty(name = "活动转态", value = "活动转态") + private Long status; + + /** + * 查询构造器 + */ + public static GroupBuy queryBuild( GroupBuyQueryReq groupBuyQueryReq){ + return GroupBuy.builder() + .productId(groupBuyQueryReq.getProductId()) + .startTime(groupBuyQueryReq.getStartTime()) + .endTime(groupBuyQueryReq.getEndTime()) + .minMembers(groupBuyQueryReq.getMinMembers()) + .status(groupBuyQueryReq.getStatus()) + .build(); + } + + /** + * 添加构造器 + */ + public static GroupBuy saveBuild(GroupBuySaveReq groupBuySaveReq){ + return GroupBuy.builder() + .productId(groupBuySaveReq.getProductId()) + .startTime(groupBuySaveReq.getStartTime()) + .endTime(groupBuySaveReq.getEndTime()) + .minMembers(groupBuySaveReq.getMinMembers()) + .status(groupBuySaveReq.getStatus()) + .build(); + } + + /** + * 修改构造器 + */ + public static GroupBuy editBuild(Long id, GroupBuyEditReq groupBuyEditReq){ + return GroupBuy.builder() + .id(id) + .productId(groupBuyEditReq.getProductId()) + .startTime(groupBuyEditReq.getStartTime()) + .endTime(groupBuyEditReq.getEndTime()) + .minMembers(groupBuyEditReq.getMinMembers()) + .status(groupBuyEditReq.getStatus()) + .build(); + } + +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/GroupOrder.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/GroupOrder.java new file mode 100644 index 0000000..cc88408 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/GroupOrder.java @@ -0,0 +1,89 @@ +package com.muyu.product.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.muyu.common.core.annotation.Excel; +import com.muyu.product.domain.req.GroupOrderQueryReq; +import com.muyu.product.domain.req.GroupOrderSaveReq; +import com.muyu.product.domain.req.GroupOrderEditReq; +import com.muyu.common.core.web.domain.BaseEntity; + +/** + * 拼团订单对象 group_order + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@TableName("group_order") +@EqualsAndHashCode(callSuper = true) +@ApiModel(value = "GroupOrder", description = "拼团订单") +public class GroupOrder extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 主键 */ + @TableId(value = "id",type = IdType.AUTO) + @ApiModelProperty(name = "主键", value = "主键") + private Long id; + + /** 外键:关联拼团活动 */ + @Excel(name = "外键:关联拼团活动") + @ApiModelProperty(name = "外键:关联拼团活动", value = "外键:关联拼团活动") + private Long groupBuyId; + + /** 用户ID */ + @Excel(name = "用户ID") + @ApiModelProperty(name = "用户ID", value = "用户ID") + private Long userId; + + /** 订单状态 */ + @Excel(name = "订单状态") + @ApiModelProperty(name = "订单状态", value = "订单状态") + private Long status; + + /** + * 查询构造器 + */ + public static GroupOrder queryBuild( GroupOrderQueryReq groupOrderQueryReq){ + return GroupOrder.builder() + .groupBuyId(groupOrderQueryReq.getGroupBuyId()) + .userId(groupOrderQueryReq.getUserId()) + .status(groupOrderQueryReq.getStatus()) + .build(); + } + + /** + * 添加构造器 + */ + public static GroupOrder saveBuild(GroupOrderSaveReq groupOrderSaveReq){ + return GroupOrder.builder() + .groupBuyId(groupOrderSaveReq.getGroupBuyId()) + .userId(groupOrderSaveReq.getUserId()) + .status(groupOrderSaveReq.getStatus()) + .build(); + } + + /** + * 修改构造器 + */ + public static GroupOrder editBuild(Long id, GroupOrderEditReq groupOrderEditReq){ + return GroupOrder.builder() + .id(id) + .groupBuyId(groupOrderEditReq.getGroupBuyId()) + .userId(groupOrderEditReq.getUserId()) + .status(groupOrderEditReq.getStatus()) + .build(); + } + +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/CategoryInfoEditReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/CategoryInfoEditReq.java index 023446a..58eed82 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/CategoryInfoEditReq.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/CategoryInfoEditReq.java @@ -1,5 +1,6 @@ package com.muyu.product.domain.req; +import com.muyu.product.domain.model.CategoryInfoSaveModel; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; @@ -8,6 +9,10 @@ import lombok.experimental.SuperBuilder; import io.swagger.annotations.*; import com.muyu.common.core.web.domain.TreeEntity; +import java.util.Date; +import java.util.List; +import java.util.function.Supplier; + /** * 品类信息对象 category_info * @@ -39,4 +44,38 @@ public class CategoryInfoEditReq extends TreeEntity { @ApiModelProperty(name = "介绍", value = "介绍") private String introduction; + + + /** + * 商品属性组关联ID + */ + private List attributeGroupIdList; + /** + * 商品属性关联ID + */ + private List attributeIdList; + + /** + * 商品品牌组关联ID + */ + private List brandIdList; + + /** + * 添加构造器 + */ + public static CategoryInfoSaveModel saveBuild(CategoryInfoSaveReq categoryInfoSaveReq, Supplier supplier){ + return CategoryInfoSaveModel.builder() + .name(categoryInfoSaveReq.getName()) + .image(categoryInfoSaveReq.getImage()) + .start(categoryInfoSaveReq.getStart()) + .introduction(categoryInfoSaveReq.getIntroduction()) + .parentId(categoryInfoSaveReq.getParentId()) + .attributeGroupIdList(categoryInfoSaveReq.getAttributeGroupIdList()) + .attributeIdList(categoryInfoSaveReq.getAttributeIdList()) + .brandIdList(categoryInfoSaveReq.getBrandIdList()) + .createBy(supplier.get()) + .createTime(new Date()) + .build(); + } + } diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/CategoryInfoReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/CategoryInfoReq.java new file mode 100644 index 0000000..7eae0ea --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/CategoryInfoReq.java @@ -0,0 +1,65 @@ +package com.muyu.product.domain.req; + +import com.muyu.common.core.web.domain.TreeEntity; +import com.muyu.product.domain.model.CategoryInfoSaveModel; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; +import java.util.List; +import java.util.function.Supplier; + +/** + * 品类信息对象 category_info + * + * @author DongZeLiang + * @date 2024-02-27 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor + +public class CategoryInfoReq { + + private static final long serialVersionUID = 1L; + + /** 品类名称 */ + + private String name; + + /** 图片 */ + + private String image; + + /** 是否启用 */ + + private String start; + + /** 介绍 */ + @ApiModelProperty(name = "介绍", value = "介绍") + private String introduction; + + + + /** + * 商品属性组关联ID + */ + private List attributeGroupList; + /** + * 商品属性关联ID + */ + private List attributeInfoList; + + /** + * 商品品牌组关联ID + */ + private List brandInfoList; + + + +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuyEditReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuyEditReq.java new file mode 100644 index 0000000..fcfe972 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuyEditReq.java @@ -0,0 +1,50 @@ +package com.muyu.product.domain.req; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.muyu.common.core.web.domain.BaseEntity; + +/** + * 拼团活动对象 group_buy + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "GroupBuyEditReq", description = "拼团活动") +public class GroupBuyEditReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 外键:关联商品 */ + @ApiModelProperty(name = "外键:关联商品", value = "外键:关联商品") + private Long productId; + + /** 开始时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @ApiModelProperty(name = "开始时间", value = "开始时间") + private Date startTime; + + /** 结束时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @ApiModelProperty(name = "结束时间", value = "结束时间") + private Date endTime; + + /** 最小成团人数 */ + @ApiModelProperty(name = "最小成团人数", value = "最小成团人数") + private Long minMembers; + + /** 活动转态 */ + @ApiModelProperty(name = "活动转态", value = "活动转态") + private Long status; + +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuyQueryReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuyQueryReq.java new file mode 100644 index 0000000..974362d --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuyQueryReq.java @@ -0,0 +1,50 @@ +package com.muyu.product.domain.req; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.muyu.common.core.web.domain.BaseEntity; + +/** + * 拼团活动对象 group_buy + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "GroupBuyQueryReq", description = "拼团活动") +public class GroupBuyQueryReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 外键:关联商品 */ + @ApiModelProperty(name = "外键:关联商品", value = "外键:关联商品") + private Long productId; + + /** 开始时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @ApiModelProperty(name = "开始时间", value = "开始时间") + private Date startTime; + + /** 结束时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @ApiModelProperty(name = "结束时间", value = "结束时间") + private Date endTime; + + /** 最小成团人数 */ + @ApiModelProperty(name = "最小成团人数", value = "最小成团人数") + private Long minMembers; + + /** 活动转态 */ + @ApiModelProperty(name = "活动转态", value = "活动转态") + private Long status; + +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuySaveReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuySaveReq.java new file mode 100644 index 0000000..4aa54a8 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupBuySaveReq.java @@ -0,0 +1,60 @@ +package com.muyu.product.domain.req; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.muyu.common.core.web.domain.BaseEntity; + +/** + * 拼团活动对象 group_buy + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "GroupBuySaveReq", description = "拼团活动") +public class GroupBuySaveReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 编号 */ + + @ApiModelProperty(name = "编号", value = "编号") + private Long id; + + /** 外键:关联商品 */ + + @ApiModelProperty(name = "外键:关联商品", value = "外键:关联商品") + private Long productId; + + /** 开始时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + + @ApiModelProperty(name = "开始时间", value = "开始时间") + private Date startTime; + + /** 结束时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + + @ApiModelProperty(name = "结束时间", value = "结束时间") + private Date endTime; + + /** 最小成团人数 */ + + @ApiModelProperty(name = "最小成团人数", value = "最小成团人数") + private Long minMembers; + + /** 活动转态 */ + + @ApiModelProperty(name = "活动转态", value = "活动转态") + private Long status; + +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderEditReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderEditReq.java new file mode 100644 index 0000000..7e0da62 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderEditReq.java @@ -0,0 +1,38 @@ +package com.muyu.product.domain.req; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.muyu.common.core.web.domain.BaseEntity; + +/** + * 拼团订单对象 group_order + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "GroupOrderEditReq", description = "拼团订单") +public class GroupOrderEditReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 外键:关联拼团活动 */ + @ApiModelProperty(name = "外键:关联拼团活动", value = "外键:关联拼团活动") + private Long groupBuyId; + + /** 用户ID */ + @ApiModelProperty(name = "用户ID", value = "用户ID") + private Long userId; + + /** 订单状态 */ + @ApiModelProperty(name = "订单状态", value = "订单状态") + private Long status; + +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderQueryReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderQueryReq.java new file mode 100644 index 0000000..f12cdc1 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderQueryReq.java @@ -0,0 +1,38 @@ +package com.muyu.product.domain.req; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.muyu.common.core.web.domain.BaseEntity; + +/** + * 拼团订单对象 group_order + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "GroupOrderQueryReq", description = "拼团订单") +public class GroupOrderQueryReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 外键:关联拼团活动 */ + @ApiModelProperty(name = "外键:关联拼团活动", value = "外键:关联拼团活动") + private Long groupBuyId; + + /** 用户ID */ + @ApiModelProperty(name = "用户ID", value = "用户ID") + private Long userId; + + /** 订单状态 */ + @ApiModelProperty(name = "订单状态", value = "订单状态") + private Long status; + +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderSaveReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderSaveReq.java new file mode 100644 index 0000000..3544e4e --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/GroupOrderSaveReq.java @@ -0,0 +1,46 @@ +package com.muyu.product.domain.req; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.AllArgsConstructor; +import lombok.experimental.SuperBuilder; +import io.swagger.annotations.*; +import com.muyu.common.core.web.domain.BaseEntity; + +/** + * 拼团订单对象 group_order + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ApiModel(value = "GroupOrderSaveReq", description = "拼团订单") +public class GroupOrderSaveReq extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** 主键 */ + + @ApiModelProperty(name = "主键", value = "主键") + private Long id; + + /** 外键:关联拼团活动 */ + + @ApiModelProperty(name = "外键:关联拼团活动", value = "外键:关联拼团活动") + private Long groupBuyId; + + /** 用户ID */ + + @ApiModelProperty(name = "用户ID", value = "用户ID") + private Long userId; + + /** 订单状态 */ + + @ApiModelProperty(name = "订单状态", value = "订单状态") + private Long status; + +} diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleInfoEditReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleInfoEditReq.java index 620853a..60b1723 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleInfoEditReq.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/RuleInfoEditReq.java @@ -1,6 +1,8 @@ package com.muyu.product.domain.req; import com.muyu.product.domain.RuleInfo; +import com.muyu.product.domain.model.RuleAttrAddModel; +import com.muyu.product.domain.resp.RuleInfoResp; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; @@ -34,6 +36,6 @@ public class RuleInfoEditReq extends BaseEntity { @ApiModelProperty(name = "规格状态", value = "规格状态") private String status; - private List ruleInfoList; + private List ruleAttrList; } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/CategoryInfoController.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/CategoryInfoController.java index 55dbaef..006326e 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/CategoryInfoController.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/CategoryInfoController.java @@ -113,6 +113,7 @@ public class CategoryInfoController extends BaseController { @PutMapping("/{id}") @ApiOperation("修改品类信息") public Result edit(@PathVariable Long id, @RequestBody CategoryInfoEditReq categoryInfoEditReq) { + categoryInfoService.updateCategory(id,categoryInfoEditReq); return toAjax(categoryInfoService.updateById(CategoryInfo.editBuild(id,categoryInfoEditReq))); } @@ -124,8 +125,8 @@ public class CategoryInfoController extends BaseController { @DeleteMapping("/{ids}") @ApiOperation("删除品类信息") @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4") - public Result remove(@PathVariable List ids) { - return toAjax(categoryInfoService.removeBatchByIds(ids)); + public Result remove(@PathVariable String ids) { + return categoryInfoService.delById(ids); } /** diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/GroupBuyController.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/GroupBuyController.java new file mode 100644 index 0000000..217b2fb --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/GroupBuyController.java @@ -0,0 +1,111 @@ +package com.muyu.product.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import io.swagger.annotations.*; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.muyu.common.core.domain.Result; +import com.muyu.common.core.utils.poi.ExcelUtil; +import com.muyu.common.core.web.controller.BaseController; +import com.muyu.common.log.annotation.Log; +import com.muyu.common.log.enums.BusinessType; +import com.muyu.common.security.annotation.RequiresPermissions; +import com.muyu.product.domain.GroupBuy; +import com.muyu.product.domain.req.GroupBuyQueryReq; +import com.muyu.product.domain.req.GroupBuySaveReq; +import com.muyu.product.domain.req.GroupBuyEditReq; +import com.muyu.product.service.GroupBuyService; +import com.muyu.common.core.web.page.TableDataInfo; + +/** + * 拼团活动Controller + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Api(tags = "拼团活动") +@RestController +@RequestMapping("/groupBuy") +public class GroupBuyController extends BaseController { + @Autowired + private GroupBuyService groupBuyService; + + /** + * 查询拼团活动列表 + */ + @ApiOperation("获取拼团活动列表") + @RequiresPermissions("product:groupBuy:list") + @GetMapping("/list") + public Result> list(GroupBuyQueryReq groupBuyQueryReq) { + startPage(); + List list = groupBuyService.list(GroupBuy.queryBuild(groupBuyQueryReq)); + return getDataTable(list); + } + + /** + * 导出拼团活动列表 + */ + @ApiOperation("导出拼团活动列表") + @RequiresPermissions("product:groupBuy:export") + @Log(title = "拼团活动", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, GroupBuy groupBuy) { + List list = groupBuyService.list(groupBuy); + ExcelUtil util = new ExcelUtil(GroupBuy.class); + util.exportExcel(response, list, "拼团活动数据"); + } + + /** + * 获取拼团活动详细信息 + */ + @ApiOperation("获取拼团活动详细信息") + @RequiresPermissions("product:groupBuy:query") + @GetMapping(value = "/{id}") + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class) + public Result getInfo(@PathVariable("id") Long id) { + return Result.success(groupBuyService.getById(id)); + } + + /** + * 新增拼团活动 + */ + @RequiresPermissions("product:groupBuy:add") + @Log(title = "拼团活动", businessType = BusinessType.INSERT) + @PostMapping + @ApiOperation("新增拼团活动") + public Result add(@RequestBody GroupBuySaveReq groupBuySaveReq) { + return toAjax(groupBuyService.save(GroupBuy.saveBuild(groupBuySaveReq))); + } + + /** + * 修改拼团活动 + */ + @RequiresPermissions("product:groupBuy:edit") + @Log(title = "拼团活动", businessType = BusinessType.UPDATE) + @PutMapping("/{id}") + @ApiOperation("修改拼团活动") + public Result edit(@PathVariable Long id, @RequestBody GroupBuyEditReq groupBuyEditReq) { + return toAjax(groupBuyService.updateById(GroupBuy.editBuild(id,groupBuyEditReq))); + } + + /** + * 删除拼团活动 + */ + @RequiresPermissions("product:groupBuy:remove") + @Log(title = "拼团活动", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + @ApiOperation("删除拼团活动") + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4") + public Result remove(@PathVariable List ids) { + return toAjax(groupBuyService.removeBatchByIds(ids)); + } +} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/GroupOrderController.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/GroupOrderController.java new file mode 100644 index 0000000..0ebacfc --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/GroupOrderController.java @@ -0,0 +1,111 @@ +package com.muyu.product.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import io.swagger.annotations.*; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.muyu.common.core.domain.Result; +import com.muyu.common.core.utils.poi.ExcelUtil; +import com.muyu.common.core.web.controller.BaseController; +import com.muyu.common.log.annotation.Log; +import com.muyu.common.log.enums.BusinessType; +import com.muyu.common.security.annotation.RequiresPermissions; +import com.muyu.product.domain.GroupOrder; +import com.muyu.product.domain.req.GroupOrderQueryReq; +import com.muyu.product.domain.req.GroupOrderSaveReq; +import com.muyu.product.domain.req.GroupOrderEditReq; +import com.muyu.product.service.GroupOrderService; +import com.muyu.common.core.web.page.TableDataInfo; + +/** + * 拼团订单Controller + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Api(tags = "拼团订单") +@RestController +@RequestMapping("/GroupOrder") +public class GroupOrderController extends BaseController { + @Autowired + private GroupOrderService groupOrderService; + + /** + * 查询拼团订单列表 + */ + @ApiOperation("获取拼团订单列表") + @RequiresPermissions("product:GroupOrder:list") + @GetMapping("/list") + public Result> list(GroupOrderQueryReq groupOrderQueryReq) { + startPage(); + List list = groupOrderService.list(GroupOrder.queryBuild(groupOrderQueryReq)); + return getDataTable(list); + } + + /** + * 导出拼团订单列表 + */ + @ApiOperation("导出拼团订单列表") + @RequiresPermissions("product:GroupOrder:export") + @Log(title = "拼团订单", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, GroupOrder groupOrder) { + List list = groupOrderService.list(groupOrder); + ExcelUtil util = new ExcelUtil(GroupOrder.class); + util.exportExcel(response, list, "拼团订单数据"); + } + + /** + * 获取拼团订单详细信息 + */ + @ApiOperation("获取拼团订单详细信息") + @RequiresPermissions("product:GroupOrder:query") + @GetMapping(value = "/{id}") + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class) + public Result getInfo(@PathVariable("id") Long id) { + return Result.success(groupOrderService.getById(id)); + } + + /** + * 新增拼团订单 + */ + @RequiresPermissions("product:GroupOrder:add") + @Log(title = "拼团订单", businessType = BusinessType.INSERT) + @PostMapping + @ApiOperation("新增拼团订单") + public Result add(@RequestBody GroupOrderSaveReq groupOrderSaveReq) { + return toAjax(groupOrderService.save(GroupOrder.saveBuild(groupOrderSaveReq))); + } + + /** + * 修改拼团订单 + */ + @RequiresPermissions("product:GroupOrder:edit") + @Log(title = "拼团订单", businessType = BusinessType.UPDATE) + @PutMapping("/{id}") + @ApiOperation("修改拼团订单") + public Result edit(@PathVariable Long id, @RequestBody GroupOrderEditReq groupOrderEditReq) { + return toAjax(groupOrderService.updateById(GroupOrder.editBuild(id,groupOrderEditReq))); + } + + /** + * 删除拼团订单 + */ + @RequiresPermissions("product:GroupOrder:remove") + @Log(title = "拼团订单", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + @ApiOperation("删除拼团订单") + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = String.class, example = "1,2,3,4") + public Result remove(@PathVariable List ids) { + return toAjax(groupOrderService.removeBatchByIds(ids)); + } +} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/CategoryInfoMapper.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/CategoryInfoMapper.java index 6ed8f75..397a209 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/CategoryInfoMapper.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/CategoryInfoMapper.java @@ -3,6 +3,8 @@ package com.muyu.product.mapper; import java.util.List; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.product.domain.CategoryInfo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 品类信息Mapper接口 @@ -10,6 +12,20 @@ import com.muyu.product.domain.CategoryInfo; * @author DongZeLiang * @date 2024-02-27 */ +@Mapper public interface CategoryInfoMapper extends BaseMapper { + void delAttributeGroupId(Long id); + + void delAttributeIdList(Long id); + + void delArandIdList(Long id); + + void addAttributeGroupId(@Param("id") Long id, @Param("attributeGroupId") Long attributeGroupId); + + void addAttributeIdList(@Param("id") Long id, @Param("attributeId") Long attributeId); + + void addArandIdList(@Param("id") Long id, @Param("brandId") Long brandId); + + Integer selectByPid(String ids); } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/GroupBuyMapper.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/GroupBuyMapper.java new file mode 100644 index 0000000..b04da51 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/GroupBuyMapper.java @@ -0,0 +1,15 @@ +package com.muyu.product.mapper; + +import java.util.List; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.product.domain.GroupBuy; + +/** + * 拼团活动Mapper接口 + * + * @author DongZeLiang + * @date 2024-11-14 + */ +public interface GroupBuyMapper extends BaseMapper { + +} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/GroupOrderMapper.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/GroupOrderMapper.java new file mode 100644 index 0000000..2d1679f --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/GroupOrderMapper.java @@ -0,0 +1,15 @@ +package com.muyu.product.mapper; + +import java.util.List; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.product.domain.GroupOrder; + +/** + * 拼团订单Mapper接口 + * + * @author DongZeLiang + * @date 2024-11-14 + */ +public interface GroupOrderMapper extends BaseMapper { + +} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/RuleAttrInfoMapper.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/RuleAttrInfoMapper.java index 82f6ccb..25e31cc 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/RuleAttrInfoMapper.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/mapper/RuleAttrInfoMapper.java @@ -4,6 +4,7 @@ import java.util.List; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.product.domain.RuleAttrInfo; import com.muyu.product.domain.RuleInfo; +import com.muyu.product.domain.req.RuleInfoEditReq; import com.muyu.product.domain.resp.RuleInfoResp; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -21,6 +22,6 @@ public interface RuleAttrInfoMapper extends BaseMapper { void del(Long id); - void add(@Param("id") Long id, @Param("ruleInfoList") List ruleInfoList); + void add(@Param("id") Long id, @Param("name") String name, @Param("attrValue") String attrValue); } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/CategoryInfoService.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/CategoryInfoService.java index 9b99d9d..709cf54 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/CategoryInfoService.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/CategoryInfoService.java @@ -2,12 +2,14 @@ package com.muyu.product.service; import java.util.List; +import com.muyu.common.core.domain.Result; import com.muyu.product.domain.AttributeGroup; import com.muyu.product.domain.AttributeInfo; import com.muyu.product.domain.BrandInfo; import com.muyu.product.domain.CategoryInfo; import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.product.domain.model.CategoryInfoSaveModel; +import com.muyu.product.domain.req.CategoryInfoEditReq; import com.muyu.product.domain.resp.CategoryCommonElementResp; import com.muyu.product.domain.resp.CategoryParentCommonElementResp; @@ -69,4 +71,8 @@ public interface CategoryInfoService extends IService { CategoryCommonElementResp getTemplateAttributeByCateGoryId (Long cateGoryId); public List getCommon (Long categoryId, IService iService, IService bsiService); + + Result updateCategory(Long id, CategoryInfoEditReq categoryInfoEditReq); + + Result delById(String ids); } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/GroupBuyService.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/GroupBuyService.java new file mode 100644 index 0000000..d45ad85 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/GroupBuyService.java @@ -0,0 +1,22 @@ +package com.muyu.product.service; + +import java.util.List; +import com.muyu.product.domain.GroupBuy; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * 拼团活动Service接口 + * + * @author DongZeLiang + * @date 2024-11-14 + */ +public interface GroupBuyService extends IService { + /** + * 查询拼团活动列表 + * + * @param groupBuy 拼团活动 + * @return 拼团活动集合 + */ + public List list(GroupBuy groupBuy); + +} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/GroupOrderService.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/GroupOrderService.java new file mode 100644 index 0000000..13c4f35 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/GroupOrderService.java @@ -0,0 +1,22 @@ +package com.muyu.product.service; + +import java.util.List; +import com.muyu.product.domain.GroupOrder; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + * 拼团订单Service接口 + * + * @author DongZeLiang + * @date 2024-11-14 + */ +public interface GroupOrderService extends IService { + /** + * 查询拼团订单列表 + * + * @param groupOrder 拼团订单 + * @return 拼团订单集合 + */ + public List list(GroupOrder groupOrder); + +} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/CategoryInfoServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/CategoryInfoServiceImpl.java index 2d6b4d5..733b495 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/CategoryInfoServiceImpl.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/CategoryInfoServiceImpl.java @@ -4,12 +4,14 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.common.core.domain.Result; import com.muyu.common.core.utils.ObjUtils; import com.muyu.product.domain.*; import com.muyu.product.domain.base.CategoryBase; import com.muyu.product.domain.model.CategoryInfoSaveModel; import com.muyu.product.domain.model.TemplateAttributeGroupModel; import com.muyu.product.domain.model.TemplateAttributeModel; +import com.muyu.product.domain.req.CategoryInfoEditReq; import com.muyu.product.domain.resp.CategoryCommonElementResp; import com.muyu.product.domain.resp.CategoryParentCommonElementResp; import com.muyu.product.mapper.CategoryInfoMapper; @@ -58,6 +60,9 @@ public class CategoryInfoServiceImpl extends ServiceImpl attributeGroupIdList = categoryInfoEditReq.getAttributeGroupIdList(); + for (Long aLong : attributeGroupIdList) { + categoryInfoMapper.addAttributeGroupId(id,aLong); + } + + categoryInfoMapper.delAttributeIdList(id); + List attributeIdList = categoryInfoEditReq.getAttributeIdList(); + for (Long aLong : attributeIdList) { + categoryInfoMapper.addAttributeIdList(id,aLong); + } + categoryInfoMapper.delArandIdList(id); + List brandIdList = categoryInfoEditReq.getBrandIdList(); + for (Long aLong : brandIdList) { + categoryInfoMapper.addArandIdList(id,aLong); + } + return Result.success(0,"修改成功"); + } + + @Override + public Result delById(String ids) { + Integer count = categoryInfoMapper.selectByPid(ids); + if(count>0){ + return Result.error(400,"该数据存在子集,禁止删除"); + } + categoryInfoMapper.deleteById(ids); + return Result.success(200,"删除成功"); + } + /** * 通过品类ID获取父级以上的属性、属性组、品牌集合 * diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/GroupBuyServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/GroupBuyServiceImpl.java new file mode 100644 index 0000000..a32aaf0 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/GroupBuyServiceImpl.java @@ -0,0 +1,56 @@ +package com.muyu.product.service.impl; + +import java.util.List; + +import com.muyu.common.core.utils.ObjUtils; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import com.muyu.product.mapper.GroupBuyMapper; +import com.muyu.product.domain.GroupBuy; +import com.muyu.product.service.GroupBuyService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; + +/** + * 拼团活动Service业务层处理 + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Slf4j +@Service +public class GroupBuyServiceImpl extends ServiceImpl implements GroupBuyService { + + /** + * 查询拼团活动列表 + * + * @param groupBuy 拼团活动 + * @return 拼团活动 + */ + @Override + public List list(GroupBuy groupBuy) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + + + if (ObjUtils.notNull(groupBuy.getProductId())){ + queryWrapper.eq(GroupBuy::getProductId, groupBuy.getProductId()); + } + + if (ObjUtils.notNull(groupBuy.getStartTime())){ + queryWrapper.eq(GroupBuy::getStartTime, groupBuy.getStartTime()); + } + + if (ObjUtils.notNull(groupBuy.getEndTime())){ + queryWrapper.eq(GroupBuy::getEndTime, groupBuy.getEndTime()); + } + + if (ObjUtils.notNull(groupBuy.getMinMembers())){ + queryWrapper.eq(GroupBuy::getMinMembers, groupBuy.getMinMembers()); + } + + if (ObjUtils.notNull(groupBuy.getStatus())){ + queryWrapper.eq(GroupBuy::getStatus, groupBuy.getStatus()); + } + return list(queryWrapper); + } +} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/GroupOrderServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/GroupOrderServiceImpl.java new file mode 100644 index 0000000..6b82931 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/GroupOrderServiceImpl.java @@ -0,0 +1,49 @@ +package com.muyu.product.service.impl; + +import java.util.List; + +import com.muyu.common.core.utils.ObjUtils; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import com.muyu.product.mapper.GroupOrderMapper; +import com.muyu.product.domain.GroupOrder; +import com.muyu.product.service.GroupOrderService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; + +/** + * 拼团订单Service业务层处理 + * + * @author DongZeLiang + * @date 2024-11-14 + */ +@Slf4j +@Service +public class GroupOrderServiceImpl extends ServiceImpl implements GroupOrderService { + + /** + * 查询拼团订单列表 + * + * @param groupOrder 拼团订单 + * @return 拼团订单 + */ + @Override + public List list(GroupOrder groupOrder) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + + + if (ObjUtils.notNull(groupOrder.getGroupBuyId())){ + queryWrapper.eq(GroupOrder::getGroupBuyId, groupOrder.getGroupBuyId()); + } + + if (ObjUtils.notNull(groupOrder.getUserId())){ + queryWrapper.eq(GroupOrder::getUserId, groupOrder.getUserId()); + } + + + if (ObjUtils.notNull(groupOrder.getStatus())){ + queryWrapper.eq(GroupOrder::getStatus, groupOrder.getStatus()); + } + return list(queryWrapper); + } +} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleInfoServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleInfoServiceImpl.java index 821546a..5f62b81 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleInfoServiceImpl.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/RuleInfoServiceImpl.java @@ -132,7 +132,16 @@ public class RuleInfoServiceImpl extends ServiceImpl @Override public Result upd(Long id, RuleInfoEditReq ruleInfoEditReq) { ruleAttrInfoMapper.del(id); - ruleAttrInfoMapper.add(id,ruleInfoEditReq.getRuleInfoList()); + List ruleAttrList = ruleInfoEditReq.getRuleAttrList(); + for (RuleAttrAddModel ruleAttrAddModel : ruleAttrList) { + List valueList = ruleAttrAddModel.getValueList(); + String join = String.join(",", valueList); +// for (String s : valueList) { +// ruleAttrInfoMapper.add(id,ruleAttrAddModel.getName(),s); +// } + ruleAttrInfoMapper.add(id,ruleAttrAddModel.getName(),join); + } + return Result.success(0,"修改成功"); } } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/CategoryInfoMapper.xml b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/CategoryInfoMapper.xml index 99be65b..df9c7f9 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/CategoryInfoMapper.xml +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/CategoryInfoMapper.xml @@ -21,4 +21,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select id, name, image, parent_id, start, introduction, remark, create_by, create_time, update_by, update_time from category_info + + INSERT INTO `as_category_attribute_group` (`category_id`, `attribute_group_id`) values + (#{id},#{attributeGroupId}) + + + INSERT INTO `as_category_attribute` (`category_id`, `attribute_id`) values + (#{id},#{attributeId}) + + + INSERT INTO `as_category_brand` (`category_id`, `brand_id`) values + (#{id},#{brandId}) + + + delete from as_category_attribute where category_id = #{id} + + + delete from as_category_brand where category_id = #{id} + + + delete from as_category_attribute_group where category_id = #{id} + + diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/GroupBuyMapper.xml b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/GroupBuyMapper.xml new file mode 100644 index 0000000..402ba1d --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/GroupBuyMapper.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + select id, product_id, start_time, end_time, min_members, status from group_buy + + diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/GroupOrderMapper.xml b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/GroupOrderMapper.xml new file mode 100644 index 0000000..ed6f3ac --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/GroupOrderMapper.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + select id, group_buy_id, user_id, create_time, status from group_order + + diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/RuleAttrInfoMapper.xml b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/RuleAttrInfoMapper.xml index 2970da8..6d1e3d9 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/RuleAttrInfoMapper.xml +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/resources/mapper/product/RuleAttrInfoMapper.xml @@ -41,6 +41,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select id, rule_id, name, attr_value, remark, create_by, create_time, update_by, update_time from rule_attr_info + INSERT INTO `rule_attr_info` ( `rule_id`, `name`, `attr_value`,create_by,create_time) + VALUES + (#{id},#{name},#{attrValue},"admin",now())