From e08cf5c2a9a290d31603626964bb22f9d521fc50 Mon Sep 17 00:00:00 2001 From: meng <1544233648@qq.com> Date: Sun, 24 Nov 2024 22:00:36 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=8B=BC=E5=9B=A2=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/团购活动.json | 19 +++ .../enums/activity/team/TeamOpenInfoEnum.java | 29 ++++ .../common/core/web/model/QueryModel.java | 64 +++++++++ .../muyu/common/core/web/page/PageDomain.java | 8 ++ muyu-gateway/src/main/resources/bootstrap.yml | 2 +- .../muyu-group/muyu-group-common/pom.xml | 30 ++++ .../muyu/group/domain/ActivitySkuInfo.java | 34 +++++ .../muyu/group/domain/ActivityTeamInfo.java | 103 ++++++++++++++ .../model/ActivityProductListModel.java | 47 +++++++ .../model/ActivityTeamInfoListModel.java | 47 +++++++ .../model/ActivityTeamInfoListQueryModel.java | 31 ++++ .../domain/model/GroupActivityModel.java | 100 +++++++++++++ .../model/GroupActivitySkuInfoModel.java | 37 +++++ .../domain/model/TeamDiscountPriceModel.java | 43 ++++++ .../group/domain/model/TeamStockModel.java | 28 ++++ .../TeamStrategyExemptionHundredModel.java | 44 ++++++ .../model/TeamStrategyExemptionModel.java | 49 +++++++ .../TeamStrategyExemptionOrdinaryModel.java | 50 +++++++ .../group/domain/model/TeamStrategyModel.java | 46 ++++++ .../group/domain/muen/TeamOpenInfoEnum.java | 29 ++++ .../domain/req/GroupActivityInfoReq.java | 125 ++++++++++++++++ .../muyu/group/domain/req/TeamInfoReq.java | 40 ++++++ .../group/domain/resp/TeamInfoListResp.java | 46 ++++++ .../muyu-group/muyu-group-remont/pom.xml | 30 ++++ .../muyu-group/muyu-group-server/pom.xml | 133 ++++++++++++++++++ .../muyu/activity/MuYuGroupApplication.java | 19 +++ .../controller/ActivityTeamController.java | 61 ++++++++ .../mapper/ActivityTeamInfoMapper.java | 9 ++ .../mapper/ActivityTeamOpenInfoMapper.java | 10 ++ .../ActivityTeamProductSkuInfoMapper.java | 12 ++ .../TeamStrategyExemptionHundredMapper.java | 9 ++ .../mapper/TeamStrategyExemptionMapper.java | 9 ++ .../TeamStrategyExemptionOrdinaryMapper.java | 9 ++ .../service/ActivityTeamInfoService.java | 24 ++++ .../service/ActivityTeamOpenInfoService.java | 28 ++++ .../ActivityTeamProductSkuInfoService.java | 37 +++++ .../TeamStrategyExemptionHundredService.java | 16 +++ .../TeamStrategyExemptionOrdinaryService.java | 16 +++ .../service/TeamStrategyExemptionService.java | 15 ++ .../impl/ActivityTeamInfoServiceImpl.java | 117 +++++++++++++++ .../impl/ActivityTeamOpenInfoServiceImpl.java | 33 +++++ ...ActivityTeamProductSkuInfoServiceImpl.java | 63 +++++++++ ...amStrategyExemptionHundredServiceImpl.java | 25 ++++ ...mStrategyExemptionOrdinaryServiceImpl.java | 24 ++++ .../TeamStrategyExemptionServiceImpl.java | 23 +++ .../src/main/resources/banner.txt | 2 + .../src/main/resources/bootstrap.yml | 30 ++++ .../src/main/resources/logback.xml | 74 ++++++++++ .../mapper/ActivityTeamInfoMapper.xml | 7 + .../mapper/ActivityTeamOpenInfoMapper.xml | 8 ++ .../ActivityTeamProductSkuInfoMapper.xml | 8 ++ .../TeamStrategyExemptionHundredMapper.xml | 7 + .../mapper/TeamStrategyExemptionMapper.xml | 7 + .../TeamStrategyExemptionOrdinaryMapper.xml | 7 + muyu-modules/muyu-group/pom.xml | 26 ++++ .../muyu/product/cache/ProjectInfoCache.java | 4 + .../impl/ProjectSkuDataRemoteImpl.java | 1 - .../domain/AsProductAttributeInfo.java | 2 +- .../muyu/product/domain/AttributeInfo.java | 3 +- .../com/muyu/product/domain/ProjectInfo.java | 1 - .../model/TemplateAttributeGroupModel.java | 3 +- .../domain/model/TemplateAttributeModel.java | 6 + .../domain/req/ProjectInfoQueryReq.java | 2 +- .../resp/CategoryCommonElementResp.java | 3 - .../domain/resp/ProjectDetailResp.java | 11 +- .../domain/resp/ProjectSkuInfoResp.java | 25 ++++ .../controller/AttributeGroupController.java | 1 - .../controller/ProjectInfoController.java | 25 +++- .../product/service/ProjectInfoService.java | 4 + .../service/ProjectSkuInfoService.java | 3 + .../service/impl/CategoryInfoServiceImpl.java | 12 +- .../service/impl/ProjectInfoServiceImpl.java | 32 ++++- .../impl/ProjectSkuInfoServiceImpl.java | 5 + .../muyu/system/mapper/SysConfigMapper.java | 3 + .../com/muyu/system/mapper/SysDeptMapper.java | 2 + .../muyu/system/mapper/SysDictDataMapper.java | 2 + .../muyu/system/mapper/SysDictTypeMapper.java | 2 + .../muyu/system/mapper/SysDistrictMapper.java | 2 + .../system/mapper/SysLogininforMapper.java | 2 + .../com/muyu/system/mapper/SysMenuMapper.java | 2 + .../muyu/system/mapper/SysNoticeMapper.java | 2 + .../muyu/system/mapper/SysOperLogMapper.java | 2 + .../com/muyu/system/mapper/SysPostMapper.java | 2 + .../muyu/system/mapper/SysRoleDeptMapper.java | 2 + .../com/muyu/system/mapper/SysRoleMapper.java | 2 + .../muyu/system/mapper/SysRoleMenuMapper.java | 2 + .../com/muyu/system/mapper/SysUserMapper.java | 2 + .../muyu/system/mapper/SysUserPostMapper.java | 2 + .../muyu/system/mapper/SysUserRoleMapper.java | 2 + .../src/main/resources/bootstrap.yml | 1 + muyu-modules/pom.xml | 1 + muyu-visual/pom.xml | 1 - 92 files changed, 2098 insertions(+), 30 deletions(-) create mode 100644 doc/团购活动.json create mode 100644 muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/enums/activity/team/TeamOpenInfoEnum.java create mode 100644 muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/web/model/QueryModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/pom.xml create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/ActivitySkuInfo.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/ActivityTeamInfo.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityProductListModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityTeamInfoListModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityTeamInfoListQueryModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/GroupActivityModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/GroupActivitySkuInfoModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamDiscountPriceModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStockModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionHundredModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionOrdinaryModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyModel.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/muen/TeamOpenInfoEnum.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/req/GroupActivityInfoReq.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/req/TeamInfoReq.java create mode 100644 muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/resp/TeamInfoListResp.java create mode 100644 muyu-modules/muyu-group/muyu-group-remont/pom.xml create mode 100644 muyu-modules/muyu-group/muyu-group-server/pom.xml create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/MuYuGroupApplication.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/controller/ActivityTeamController.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamInfoMapper.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamOpenInfoMapper.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamProductSkuInfoMapper.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionHundredMapper.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionMapper.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionOrdinaryMapper.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamInfoService.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamOpenInfoService.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamProductSkuInfoService.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionHundredService.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionOrdinaryService.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionService.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamInfoServiceImpl.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamOpenInfoServiceImpl.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamProductSkuInfoServiceImpl.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionHundredServiceImpl.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionOrdinaryServiceImpl.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionServiceImpl.java create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/resources/banner.txt create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/resources/bootstrap.yml create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/resources/logback.xml create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamInfoMapper.xml create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamOpenInfoMapper.xml create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamProductSkuInfoMapper.xml create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionHundredMapper.xml create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionMapper.xml create mode 100644 muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionOrdinaryMapper.xml create mode 100644 muyu-modules/muyu-group/pom.xml create mode 100644 muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/ProjectSkuInfoResp.java diff --git a/doc/团购活动.json b/doc/团购活动.json new file mode 100644 index 0000000..fc2ba3f --- /dev/null +++ b/doc/团购活动.json @@ -0,0 +1,19 @@ +{ + "商品id": "Long", + "商品图片": "String", + "活动名称":"String", + "活动简介": "String", + "商品单位":"String", + "商品轮播图数组": [ + "String","String" + ], + "策略id":"Long", + "规格集合": [ + { + "规格sku":"String", + "拼团价":"BigDecimal", + "拼团库存":"Long" + } + ], + "详情":"text" +} diff --git a/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/enums/activity/team/TeamOpenInfoEnum.java b/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/enums/activity/team/TeamOpenInfoEnum.java new file mode 100644 index 0000000..f807e5d --- /dev/null +++ b/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/enums/activity/team/TeamOpenInfoEnum.java @@ -0,0 +1,29 @@ +package com.muyu.common.core.enums.activity.team; + +/** + * @program: cloud-server + * @description: 参团类型枚举类 + * @author: MengFanKuo + * @create: 2024-11-21 11:39 + * * + */ +public enum TeamOpenInfoEnum { + OPEN_TEAM("open_team","开团"), + IN_TEAM("in_team","参团") + ; + private final String code; + private final String label; + + TeamOpenInfoEnum(String code, String label) { + this.code = code; + this.label = label; + } + + public String code() { + return code; + } + + public String label() { + return label; + } +} diff --git a/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/web/model/QueryModel.java b/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/web/model/QueryModel.java new file mode 100644 index 0000000..51ae458 --- /dev/null +++ b/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/web/model/QueryModel.java @@ -0,0 +1,64 @@ +package com.muyu.common.core.web.model; + +import com.baomidou.mybatisplus.core.metadata.OrderItem; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.muyu.common.core.web.page.PageDomain; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.List; + +/** + * @program: cloud-server + * @description: 列表查询模型 + * @author: MengFanKuo + * @create: 2024-11-20 20:28 + * * + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class QueryModel { + /** + * 当前记录起始索引 + */ + private Integer pageNum; + /** + * 每页显示记录数 + */ + private Integer pageSize; + /** + * 排序列 + */ + private String orderByColumn; + /** + * 排序的方向 + */ + private boolean isAsc= true; + + /** + * 构建分页对象 + * @param pageDomain + * @return + */ + public T domainBuild(PageDomain pageDomain){ + this.isAsc="asc".equals(pageDomain.getIsAsc()) ? true : false; + this.orderByColumn=pageDomain.getOrderByColumn(); + this.pageNum=pageDomain.getPageNum(); + this.pageSize=pageDomain.getPageSize(); + return (T) this; + } + + /** + * 构建分页查询对象 + * @return + */ + public Page buildPage(){ + Page page = Page.of(this.getPageNum(), this.getPageSize()); + page.setOrders(List.of(this.isAsc() ? OrderItem.asc(this.getOrderByColumn()) : OrderItem.asc(this.getOrderByColumn()))); + return page; + } +} diff --git a/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/web/page/PageDomain.java b/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/web/page/PageDomain.java index b9c5e45..5e9f899 100644 --- a/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/web/page/PageDomain.java +++ b/muyu-common/muyu-common-core/src/main/java/com/muyu/common/core/web/page/PageDomain.java @@ -1,12 +1,20 @@ package com.muyu.common.core.web.page; import com.muyu.common.core.utils.StringUtils; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; /** * 分页数据 * * @author muyu */ +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor public class PageDomain { /** * 当前记录起始索引 diff --git a/muyu-gateway/src/main/resources/bootstrap.yml b/muyu-gateway/src/main/resources/bootstrap.yml index 63c0b0b..a84f84e 100644 --- a/muyu-gateway/src/main/resources/bootstrap.yml +++ b/muyu-gateway/src/main/resources/bootstrap.yml @@ -1,6 +1,6 @@ # Tomcat server: - port: 18080 + port: 8080 # Spring spring: diff --git a/muyu-modules/muyu-group/muyu-group-common/pom.xml b/muyu-modules/muyu-group/muyu-group-common/pom.xml new file mode 100644 index 0000000..1b33ae4 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/pom.xml @@ -0,0 +1,30 @@ + + + 4.0.0 + + com.muyu + muyu-group + 3.6.3 + + + muyu-group-common + + + 17 + 17 + UTF-8 + + + + com.muyu + muyu-product-common + + + + com.muyu + muyu-common-core + + + diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/ActivitySkuInfo.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/ActivitySkuInfo.java new file mode 100644 index 0000000..78372e1 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/ActivitySkuInfo.java @@ -0,0 +1,34 @@ +package com.muyu.group.domain; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.math.BigDecimal; + +/** + * @program: cloud-server + * @description: 拼团商品规格 + * @author: MengFanKuo + * @create: 2024-11-23 17:33 + * * + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class ActivitySkuInfo { + /** + * 商品规格属性 + */ + private String productSku; + /** + * 拼团价格 + */ + private BigDecimal teamPrice; + /** + *拼团库存 + */ + private Long teamStock; +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/ActivityTeamInfo.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/ActivityTeamInfo.java new file mode 100644 index 0000000..f1556d3 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/ActivityTeamInfo.java @@ -0,0 +1,103 @@ +package com.muyu.group.domain; + + +import com.baomidou.mybatisplus.annotation.TableName; +import com.muyu.common.core.web.domain.BaseEntity; +import com.muyu.group.domain.model.GroupActivityModel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import javax.validation.constraints.NotNull; +import java.util.Date; + +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode() +@TableName(value = "activity_team_info",autoResultMap = true) +public class ActivityTeamInfo extends BaseEntity { + /** + * 主键 + */ + @NotNull(message = "主键不能为空") + private long id; + /** + * 拼团名称 + */ + @NotNull(message = "拼团名称不能为空") + private String name; + /** + * 商品ID + */ + @NotNull(message = "商品ID不能为空") + private long productId; + + /** + * 商品活动图 + */ + @NotNull(message = "商品活动图不能为空") + private String productImage; + /** + * 活动简介 + */ + @NotNull(message = "活动简介不能为空") + private String introduction; + /** + * 单位 + */ + @NotNull(message = "单位不能为空") + private String unit; + /** + * 轮播图 + */ + @NotNull(message = "轮播图不能为空") + private String imageList; + /** + * 活动结束时间 + */ + @NotNull(message = "活动结束时间不能为空") + private Date endTime; + /** + * 活动排序 + */ + @NotNull(message = "活动排序不能为空") + private long sort; + /** + * 活动详情 + */ + @NotNull(message = "活动详情不能为空") + private String content; + /** + * 活动状态 + */ + @NotNull(message = "活动状态不能为空") + private String status; + /** + * 策略类型 + */ + private String strategyType; + /** + * 策略ID + */ + private long strategyId; + public static ActivityTeamInfo inBuild(GroupActivityModel groupActivityModel){ + return ActivityTeamInfo.builder() + .name(groupActivityModel.getName()) + .productId(groupActivityModel.getProductId()) + .productImage(groupActivityModel.getImage()) + .introduction(groupActivityModel.getIntroduction()) + .unit(groupActivityModel.getUnit()) + .imageList(groupActivityModel.getImageList()) + .endTime(groupActivityModel.getEndTime()) + .sort(groupActivityModel.getSort()) + .content(groupActivityModel.getContent()) + .status(groupActivityModel.getStatus()) + .strategyType(groupActivityModel.getStrategyType()) + .strategyId(groupActivityModel.getStrategyId()) + .build(); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityProductListModel.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityProductListModel.java new file mode 100644 index 0000000..be66dea --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityProductListModel.java @@ -0,0 +1,47 @@ +package com.muyu.group.domain.model; + +import com.muyu.common.core.web.domain.BaseEntity; +import com.muyu.product.domain.ProjectInfo; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @program: cloud-server + * @description: 商品拼团信息模型 + * @author: MengFanKuo + * @create: 2024-11-22 11:22 + * * + */ +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class ActivityProductListModel extends BaseEntity { + /** + * 主键 + */ + private Long id; + /** + * 商品图片 + */ + private String image; + /** + * 商品轮播图 + */ + private String carouselImages; + /** + * 规格id + */ + private Long ruleId; + public static ActivityProductListModel infoBuild(ProjectInfo projectInfo){ + return ActivityProductListModel.builder() + .id(projectInfo.getId()) + .carouselImages(projectInfo.getCarouselImages()) + .image(projectInfo.getImage()) + .build(); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityTeamInfoListModel.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityTeamInfoListModel.java new file mode 100644 index 0000000..1db0489 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityTeamInfoListModel.java @@ -0,0 +1,47 @@ +package com.muyu.group.domain.model; + +import com.muyu.group.domain.ActivityTeamInfo; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.function.Function; + +/** + * @program: cloud-server + * @description: 团购活动列表查询结果模型 + * @author: MengFanKuo + * @create: 2024-11-20 23:35 + * * + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class ActivityTeamInfoListModel { + private Long id; + private String name; + private String productImage; + private BigDecimal productPrice; + private BigDecimal teamPrice; + private Long attendNumber; + private Long openTeamNumber; + private Long addTeamNumber; + private Long teamStock; + private Long remainStock; + private Date endTime; + private String status; + public static ActivityTeamInfoListModel infoBuild(ActivityTeamInfo activityTeamInfo, Function function){ + return function.apply( + ActivityTeamInfoListModel.builder() + .id(activityTeamInfo.getId()) + .name(activityTeamInfo.getName()) + .endTime(activityTeamInfo.getEndTime()) + .productImage(activityTeamInfo.getProductImage()) + .status(activityTeamInfo.getStatus()) + ); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityTeamInfoListQueryModel.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityTeamInfoListQueryModel.java new file mode 100644 index 0000000..ba4f3d7 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/ActivityTeamInfoListQueryModel.java @@ -0,0 +1,31 @@ +package com.muyu.group.domain.model; + +import com.muyu.common.core.web.model.QueryModel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @program: cloud-server + * @description: 团购活动列表查询模型 + * @author: MengFanKuo + * @create: 2024-11-20 20:09 + * * + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +@EqualsAndHashCode(callSuper = true) +public class ActivityTeamInfoListQueryModel extends QueryModel { + /** + * 搜索关键词 + */ + private String keyWord; + /** + * 状态 + */ + private String status; +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/GroupActivityModel.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/GroupActivityModel.java new file mode 100644 index 0000000..b99cdfe --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/GroupActivityModel.java @@ -0,0 +1,100 @@ +package com.muyu.group.domain.model; + +import com.muyu.group.domain.ActivitySkuInfo; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; +import java.util.List; + +/** + * @program: cloud-server + * @description: 拼团活动模型 + * @author: MengFanKuo + * @create: 2024-11-23 15:21 + * * + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class GroupActivityModel { + /** + * 拼团名称 + */ + private String name; + /** + * 商品ID + */ + private Long productId; + /** + * 商品活动图 + */ + private String image; + /** + * 活动简介 + */ + private String introduction; + /** + * 单位 + */ + private String unit; + /** + * 轮播图 + */ + private String imageList; + /** + * 结束时间 + */ + private Date endTime; + /** + * 活动排序 + */ + private Integer sort; + /** + * 活动详情 + */ + private String content; + /** + * 活动状态 + */ + private String status; + /** + * 策略类型 + */ + private String strategyType; + /** + * 策略id + */ + private Long strategyId; + /** + * 活动时间 + */ + private Date activeTime; + /** + * 拼团时效 + */ + private Long groupAging; + /** + * 拼团人数 + */ + private Long groupNumber; + /** + * 最大购买数量 + */ + private Long maxBuy; + /** + * 单次购买数量 + */ + private Long oneBuy; + /** + * 虚拟人数 + */ + private Long virtualNumber; + /** + * 商品规格 + */ + private List projectSkuInfoList; +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/GroupActivitySkuInfoModel.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/GroupActivitySkuInfoModel.java new file mode 100644 index 0000000..d322847 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/GroupActivitySkuInfoModel.java @@ -0,0 +1,37 @@ +package com.muyu.group.domain.model; + +import com.muyu.group.domain.ActivitySkuInfo; +import com.muyu.group.domain.ActivityTeamProductSkuInfo; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.math.BigDecimal; + +/** + * @program: cloud-server + * @description: 商品规格模型 + * @author: MengFanKuo + * @create: 2024-11-23 17:23 + * * + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class GroupActivitySkuInfoModel { + /** + * 商品规格属性 + */ + private String productSku; + /** + * 拼团价格 + */ + private BigDecimal groupPrice; + /** + *拼团库存 + */ + private Long groupStock; + +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamDiscountPriceModel.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamDiscountPriceModel.java new file mode 100644 index 0000000..6d13b26 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamDiscountPriceModel.java @@ -0,0 +1,43 @@ +package com.muyu.group.domain.model; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.math.BigDecimal; +import java.math.RoundingMode; + +/** + * @program: cloud-server + * @description: 团购活动价格模型 + * @author: MengFanKuo + * @create: 2024-11-21 15:28 + * * + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class TeamDiscountPriceModel { + /** + * 拼团价格 + */ + private BigDecimal teamPrice; + /** + * 商品价格 + */ + private BigDecimal productPrice; + /** + * 优惠力度 + */ + private Double discount; + + public static TeamDiscountPriceModel of(BigDecimal price, BigDecimal teamPrice) { + return TeamDiscountPriceModel.builder() + .productPrice(price) + .teamPrice(teamPrice) + .discount(price.subtract(teamPrice).divide(price,2, RoundingMode.HALF_EVEN).doubleValue()) + .build(); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStockModel.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStockModel.java new file mode 100644 index 0000000..2c0c390 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStockModel.java @@ -0,0 +1,28 @@ +package com.muyu.group.domain.model; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @program: cloud-server + * @description: 商品库存模型 + * @author: MengFanKuo + * @create: 2024-11-21 16:49 + * * + */ +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +public class TeamStockModel { + /** + * 拼团库存 + */ + private Long teamStock; + /** + * 剩余库存 + */ + private Long remainStock; +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionHundredModel.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionHundredModel.java new file mode 100644 index 0000000..bea1043 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionHundredModel.java @@ -0,0 +1,44 @@ +package com.muyu.group.domain.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.muyu.common.core.web.domain.BaseEntity; +import com.muyu.group.domain.TeamStrategyExemptionHundred; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +@TableName(value = "team_strategy_exemption_hundred",autoResultMap = true) +public class TeamStrategyExemptionHundredModel extends BaseEntity { + /** + * 持续时间 + */ + private long duration; + /** + * 最大购买量 + */ + private long maxBuy; + /** + * 单次购买量 + */ + private long oneBuy; + /** + * 虚拟人数 + */ + private long virtualNumber; + //普通团 + public static TeamStrategyExemptionHundredModel normalBuild(GroupActivityModel groupActivityModel){ + return TeamStrategyExemptionHundredModel.builder() + .duration(groupActivityModel.getGroupAging()) + .maxBuy(groupActivityModel.getMaxBuy()) + .oneBuy(groupActivityModel.getOneBuy()) + .virtualNumber(groupActivityModel.getVirtualNumber()) + .build(); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionModel.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionModel.java new file mode 100644 index 0000000..e90d5a1 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionModel.java @@ -0,0 +1,49 @@ +package com.muyu.group.domain.model; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.muyu.common.core.web.domain.BaseEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +@TableName(value = "team_strategy_exemption",autoResultMap = true) +public class TeamStrategyExemptionModel extends BaseEntity { + /** + * 持续时间 + */ + private long duration; + /** + * 免单人数 + */ + private long exemptionNumber; + /** + * 最大购买量 + */ + private long maxBuy; + /** + * 单次购买量 + */ + private long oneBuy; + /** + * 虚拟人数 + */ + private long virtualNumber; + + //免单团 + public static TeamStrategyExemptionModel freeBuild(GroupActivityModel groupActivityModel){ + return TeamStrategyExemptionModel.builder() + .exemptionNumber(groupActivityModel.getVirtualNumber()) + .duration(groupActivityModel.getGroupAging()) + .maxBuy(groupActivityModel.getMaxBuy()) + .oneBuy(groupActivityModel.getOneBuy()) + .virtualNumber(groupActivityModel.getGroupNumber()) + .build(); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionOrdinaryModel.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionOrdinaryModel.java new file mode 100644 index 0000000..d4fd740 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyExemptionOrdinaryModel.java @@ -0,0 +1,50 @@ +package com.muyu.group.domain.model; + + +import com.baomidou.mybatisplus.annotation.TableName; +import com.muyu.common.core.web.domain.BaseEntity; +import com.muyu.group.domain.TeamStrategyExemptionOrdinary; +import com.muyu.group.domain.req.GroupActivityInfoReq; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +@TableName(value = "team_strategy_exemption_ordinary",autoResultMap = true) +public class TeamStrategyExemptionOrdinaryModel extends BaseEntity { + /** + * 持续时间 + */ + private long duration; + /** + * 成团人数 + */ + private long teamNumber; + /** + * 最大购买量 + */ + private long maxBuy; + /** + * 单次购买量 + */ + private long oneBuy; + /** + * 虚拟人数 + */ + private long virtualNumber; + //百人团 + public static TeamStrategyExemptionOrdinaryModel techBuild(GroupActivityModel groupActivityModel) { + return TeamStrategyExemptionOrdinaryModel.builder() + .duration(groupActivityModel.getGroupAging()) + .maxBuy(groupActivityModel.getMaxBuy()) + .oneBuy(groupActivityModel.getOneBuy()) + .virtualNumber(groupActivityModel.getVirtualNumber()) + .build(); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyModel.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyModel.java new file mode 100644 index 0000000..dd4a203 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/model/TeamStrategyModel.java @@ -0,0 +1,46 @@ +package com.muyu.group.domain.model; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; + +/** + * @program: cloud-server + * @description: 策略模型 + * @author: MengFanKuo + * @create: 2024-11-23 15:55 + * * + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class TeamStrategyModel { + /** + * 活动时间 + */ + private Date groupTime; + /** + * 拼团时效 + */ + private Long groupAgeing; + /** + * 拼团人数 + */ + private Long groupNumber; + /** + * 总购买数量 + */ + private Long grossQuantity; + /** + * 单词购买数量 + */ + private Long purchaseQuantity; + /** + * 补齐人数 + */ + private Long replenishmentNumber; +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/muen/TeamOpenInfoEnum.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/muen/TeamOpenInfoEnum.java new file mode 100644 index 0000000..9cf7335 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/muen/TeamOpenInfoEnum.java @@ -0,0 +1,29 @@ +package com.muyu.group.domain.muen; + +/** + * @program: cloud-server + * @description: 参团类型枚举类 + * @author: MengFanKuo + * @create: 2024-11-21 11:39 + * * + */ +public enum TeamOpenInfoEnum { + OPEN_TEAM("open_team","开团"), + IN_TEAM("in_team","参团") + ; + private final String code; + private final String label; + + TeamOpenInfoEnum(String code, String label) { + this.code = code; + this.label = label; + } + + public String code() { + return code; + } + + public String label() { + return label; + } +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/req/GroupActivityInfoReq.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/req/GroupActivityInfoReq.java new file mode 100644 index 0000000..f07d48f --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/req/GroupActivityInfoReq.java @@ -0,0 +1,125 @@ +package com.muyu.group.domain.req; + +import com.muyu.group.domain.ActivitySkuInfo; +import com.muyu.group.domain.model.GroupActivityModel; +import com.muyu.group.domain.model.TeamStrategyExemptionHundredModel; +import com.muyu.group.domain.model.TeamStrategyExemptionModel; +import com.muyu.group.domain.model.TeamStrategyExemptionOrdinaryModel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; +import java.util.List; + +/** + * @program: cloud-server + * @description: 拼团活动表 + * @author: MengFanKuo + * @create: 2024-11-23 15:00 + * * + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +public class GroupActivityInfoReq { + /** + * 拼团名称 + */ + private String groupName; + /** + * 商品ID + */ + private Long productId; + /** + * 商品活动图 + */ + private String image; + /** + * 活动简介 + */ + private String groupIntroduction; + /** + * 单位 + */ + private String unit; + /** + * 轮播图 + */ + private String imageList; + /** + * 结束时间 + */ + private Date endTime; + /** + * 活动排序 + */ + private Integer sort; + /** + * 活动详情 + */ + private String content; + /** + * 活动状态 + */ + private String status; + /** + * 策略类型 + */ + private String strategyType; + /** + * 活动时间 + */ + private Date activeTime; + /** + * 拼团时效 + */ + private Long groupAging; + /** + * 拼团人数 + */ + private Long groupNumber; + /** + * 最大购买数量 + */ + private Long maxBuy; + /** + * 单次购买数量 + */ + private Long oneBuy; + /** + * 虚拟人数 + */ + private Long virtualNumber; + /** + * 商品规格 + */ + private List projectSkuInfoList; + + public GroupActivityModel inBuild() { + return GroupActivityModel.builder() + .name(this.groupName) + .productId(this.productId) + .content(this.content) + .projectSkuInfoList(this.projectSkuInfoList) + .imageList(this.imageList) + .introduction(this.groupIntroduction) + .endTime(this.endTime) + .sort(this.sort) + .unit(this.unit) + .status(this.status) + .image(this.image) + .groupNumber(this.groupNumber) + .groupAging(this.groupAging) + .maxBuy(this.maxBuy) + .oneBuy(this.oneBuy) + .virtualNumber(this.virtualNumber) + .strategyType(this.strategyType) + .build(); + } + + + +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/req/TeamInfoReq.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/req/TeamInfoReq.java new file mode 100644 index 0000000..3314ad4 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/req/TeamInfoReq.java @@ -0,0 +1,40 @@ +package com.muyu.group.domain.req; + +import com.muyu.common.core.web.page.PageDomain; +import com.muyu.group.domain.model.ActivityTeamInfoListQueryModel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +/** + * @author 15442 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@SuperBuilder +@EqualsAndHashCode(callSuper = true) +public class TeamInfoReq extends PageDomain { + /** + * 搜索关键词 + */ + private String keyWord; + /** + * 状态 + */ + private String status; + + /** + * 团购活动列表模型 + * @return + */ + public ActivityTeamInfoListQueryModel queryModel(){ + return ActivityTeamInfoListQueryModel.builder() + .keyWord(this.keyWord) + .status(this.status) + .build() + .domainBuild(this); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/resp/TeamInfoListResp.java b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/resp/TeamInfoListResp.java new file mode 100644 index 0000000..cd948d9 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-common/src/main/java/com/muyu/group/domain/resp/TeamInfoListResp.java @@ -0,0 +1,46 @@ +package com.muyu.group.domain.resp; + +import com.muyu.group.domain.model.ActivityTeamInfoListModel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.math.BigDecimal; +import java.util.Date; + +@Data +@SuperBuilder +@AllArgsConstructor +@NoArgsConstructor +public class TeamInfoListResp { + private Long id; + private String name; + private String productImage; + private BigDecimal productPrice; + private BigDecimal teamPrice; + private Long attendNumber; + private Long openTeamNumber; + private Long addTeamNumber; + private Long teamStock; + private Long remainStock; + private Date endTime; + private String status; + + public static TeamInfoListResp infoList(ActivityTeamInfoListModel activityTeamInfoListModel) { + return TeamInfoListResp.builder() + .name(activityTeamInfoListModel.getName()) + .id(activityTeamInfoListModel.getId()) + .addTeamNumber(activityTeamInfoListModel.getAddTeamNumber()) + .attendNumber(activityTeamInfoListModel.getAttendNumber()) + .openTeamNumber(activityTeamInfoListModel.getOpenTeamNumber()) + .endTime(activityTeamInfoListModel.getEndTime()) + .productImage(activityTeamInfoListModel.getProductImage()) + .productPrice(activityTeamInfoListModel.getProductPrice()) + .teamPrice(activityTeamInfoListModel.getTeamPrice()) + .teamStock(activityTeamInfoListModel.getTeamStock()) + .remainStock(activityTeamInfoListModel.getRemainStock()) + .status(activityTeamInfoListModel.getStatus()) + .build(); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-remont/pom.xml b/muyu-modules/muyu-group/muyu-group-remont/pom.xml new file mode 100644 index 0000000..1305bd7 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-remont/pom.xml @@ -0,0 +1,30 @@ + + + 4.0.0 + + com.muyu + muyu-group + 3.6.3 + + + muyu-group-remont + + + 17 + 17 + UTF-8 + + + + com.muyu + muyu-system + 3.6.3 + + + com.muyu + muyu-product-common + + + diff --git a/muyu-modules/muyu-group/muyu-group-server/pom.xml b/muyu-modules/muyu-group/muyu-group-server/pom.xml new file mode 100644 index 0000000..5a001b8 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/pom.xml @@ -0,0 +1,133 @@ + + + 4.0.0 + + com.muyu + muyu-group + 3.6.3 + + + muyu-group-server + + + 17 + 17 + UTF-8 + + + + + com.muyu + muyu-product-cache + + + com.muyu + muyu-group-common + 3.6.3 + + + com.muyu + muyu-group-remont + 3.6.3 + + + com.github.yulichang + mybatis-plus-join-boot-starter + 1.4.11 + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-config + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-sentinel + + + + + org.springframework.boot + spring-boot-starter-actuator + + + + + io.springfox + springfox-swagger-ui + ${swagger.fox.version} + + + + + com.mysql + mysql-connector-j + + + + + com.muyu + muyu-common-datasource + + + + + com.muyu + muyu-common-datascope + + + + + com.muyu + muyu-common-log + + + + + com.muyu + muyu-common-swagger + + + com.muyu + muyu-product-server + 3.6.3 + compile + + + + + ${project.artifactId} + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + + diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/MuYuGroupApplication.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/MuYuGroupApplication.java new file mode 100644 index 0000000..faa605a --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/MuYuGroupApplication.java @@ -0,0 +1,19 @@ +package com.muyu.activity; + +import com.muyu.common.security.annotation.EnableCustomConfig; +import com.muyu.common.security.annotation.EnableMyFeignClients; +import com.muyu.common.swagger.annotation.EnableCustomSwagger2; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +/** + * @author 15442 + */ +@EnableMyFeignClients +@EnableCustomConfig +@EnableCustomSwagger2 +@SpringBootApplication +public class MuYuGroupApplication { + public static void main(String[] args) { + SpringApplication.run(MuYuGroupApplication.class); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/controller/ActivityTeamController.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/controller/ActivityTeamController.java new file mode 100644 index 0000000..c3b631b --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/controller/ActivityTeamController.java @@ -0,0 +1,61 @@ +package com.muyu.activity.controller; + +import com.dtflys.forest.annotation.Post; +import com.muyu.group.domain.model.ActivityTeamInfoListModel; +import com.muyu.common.core.domain.Result; +import com.muyu.common.core.web.page.TableDataInfo; +import com.muyu.group.domain.req.GroupActivityInfoReq; +import com.muyu.group.domain.req.TeamInfoReq; +import com.muyu.group.domain.resp.TeamInfoListResp; +import com.muyu.activity.service.ActivityTeamInfoService; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * @program: cloud-server + * @description: 营销团购活动控制层 + * @author: MengFanKuo + * @create: 2024-11-20 21:40 + * * + */ +@Log4j2 +@RestController +@RequestMapping("/team") +public class ActivityTeamController { + + public ActivityTeamController() { + log.info("控制层对象实例化:{}", getClass().getName()); + } + + @Autowired + private ActivityTeamInfoService activityTeamInfoService; + /** + * 查询拼团列表 + * @param teamInfoReq + * @return + */ + @PostMapping("/list") + public Result> teamList(@RequestBody TeamInfoReq teamInfoReq){ + TableDataInfo modelTableDataInfo = activityTeamInfoService.query(teamInfoReq.queryModel()); + List listModelList = modelTableDataInfo.getRows(); + List listRespList = listModelList.stream().map(TeamInfoListResp::infoList).toList(); + TableDataInfo dataInfo = new TableDataInfo<>(); + dataInfo.setRows(listRespList); + dataInfo.setTotal(modelTableDataInfo.getTotal()); + return Result.success(dataInfo); + } + /** + * 添加拼团活动 + */ + @PostMapping("/save") + public Result saveGroupActivity(@RequestBody GroupActivityInfoReq groupActivityInfoReq){ + boolean success=activityTeamInfoService.seve(groupActivityInfoReq.inBuild()); + if (success){ + return Result.success("添加成功"); + } + return Result.error("添加失败"); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamInfoMapper.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamInfoMapper.java new file mode 100644 index 0000000..cf4f7ca --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamInfoMapper.java @@ -0,0 +1,9 @@ +package com.muyu.activity.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.group.domain.ActivityTeamInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface ActivityTeamInfoMapper extends BaseMapper { +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamOpenInfoMapper.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamOpenInfoMapper.java new file mode 100644 index 0000000..e3d3d73 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamOpenInfoMapper.java @@ -0,0 +1,10 @@ +package com.muyu.activity.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.group.domain.ActivityTeamOpenInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface ActivityTeamOpenInfoMapper extends BaseMapper { + +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamProductSkuInfoMapper.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamProductSkuInfoMapper.java new file mode 100644 index 0000000..89b2c44 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/ActivityTeamProductSkuInfoMapper.java @@ -0,0 +1,12 @@ +package com.muyu.activity.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.group.domain.ActivityTeamProductSkuInfo; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface ActivityTeamProductSkuInfoMapper extends BaseMapper { + + + +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionHundredMapper.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionHundredMapper.java new file mode 100644 index 0000000..ab0d134 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionHundredMapper.java @@ -0,0 +1,9 @@ +package com.muyu.activity.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.group.domain.TeamStrategyExemptionHundred; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface TeamStrategyExemptionHundredMapper extends BaseMapper { +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionMapper.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionMapper.java new file mode 100644 index 0000000..b30c9db --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionMapper.java @@ -0,0 +1,9 @@ +package com.muyu.activity.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.group.domain.TeamStrategyExemption; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface TeamStrategyExemptionMapper extends BaseMapper { +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionOrdinaryMapper.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionOrdinaryMapper.java new file mode 100644 index 0000000..59eefbf --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/mapper/TeamStrategyExemptionOrdinaryMapper.java @@ -0,0 +1,9 @@ +package com.muyu.activity.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.muyu.group.domain.TeamStrategyExemptionOrdinary; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface TeamStrategyExemptionOrdinaryMapper extends BaseMapper { +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamInfoService.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamInfoService.java new file mode 100644 index 0000000..86166b4 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamInfoService.java @@ -0,0 +1,24 @@ +package com.muyu.activity.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.group.domain.ActivityTeamInfo; +import com.muyu.group.domain.model.ActivityProductListModel; +import com.muyu.group.domain.model.ActivityTeamInfoListModel; +import com.muyu.common.core.web.page.TableDataInfo; +import com.muyu.group.domain.model.ActivityTeamInfoListQueryModel; +import com.muyu.group.domain.model.GroupActivityModel; +import com.muyu.group.domain.req.GroupActivityInfoReq; + +import java.util.List; + +public interface ActivityTeamInfoService extends IService { + /** + * 通过查询查询团购活动 + * @param teamInfoListQueryModel + * @return + */ + public TableDataInfo query(ActivityTeamInfoListQueryModel teamInfoListQueryModel); + + + boolean seve(GroupActivityModel inBuild); +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamOpenInfoService.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamOpenInfoService.java new file mode 100644 index 0000000..0573eaf --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamOpenInfoService.java @@ -0,0 +1,28 @@ +package com.muyu.activity.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.group.domain.ActivityTeamOpenInfo; +import com.muyu.group.domain.muen.TeamOpenInfoEnum; + +public interface ActivityTeamOpenInfoService extends IService { + /** + * 根据活动id和团购类型查找开团和参团人数 + * @param teamId + * @param teamOpenInfoEnum + * @return + */ + public Long getTeamOpenByTeamIdAndType(Long teamId, TeamOpenInfoEnum teamOpenInfoEnum); + + /** + * 开团人数 open + */ + public default Long getTeamOpenTeamId(Long teamId){ + return getTeamOpenByTeamIdAndType(teamId,TeamOpenInfoEnum.OPEN_TEAM); + } + /** + * 参团人数 in + */ + public default Long getTeamInTeamId(Long teamId){ + return getTeamOpenByTeamIdAndType(teamId,TeamOpenInfoEnum.IN_TEAM); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamProductSkuInfoService.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamProductSkuInfoService.java new file mode 100644 index 0000000..6a7585e --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/ActivityTeamProductSkuInfoService.java @@ -0,0 +1,37 @@ +package com.muyu.activity.service; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.group.domain.ActivityTeamProductSkuInfo; +import com.muyu.group.domain.model.GroupActivitySkuInfoModel; +import com.muyu.group.domain.model.TeamDiscountPriceModel; +import com.muyu.group.domain.model.TeamStockModel; + +import java.util.List; + +public interface ActivityTeamProductSkuInfoService extends IService { + /** + * 根据商品id查询拼团优惠力度最大的价格 + * @param teamId + * @return + */ + public TeamDiscountPriceModel getDisCountPrice(Long teamId); + /** + * 根据商品id查询剩余库存 + */ + public TeamStockModel getStock(Long teamId); + + /** + * 提取的共有方法 + * @param teamId + * @return + */ + public default List ownedByAl(Long teamId){ + //根据活动id查询 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ActivityTeamProductSkuInfo::getTeamId,teamId); + List teamProductSkuInfoList = this.list(queryWrapper); + return teamProductSkuInfoList; + } + +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionHundredService.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionHundredService.java new file mode 100644 index 0000000..516e0b0 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionHundredService.java @@ -0,0 +1,16 @@ +package com.muyu.activity.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.group.domain.TeamStrategyExemptionHundred; +import com.muyu.group.domain.model.TeamStrategyExemptionHundredModel; +import com.muyu.group.domain.model.TeamStrategyExemptionOrdinaryModel; + +public interface TeamStrategyExemptionHundredService extends IService { + /** + *添加百人策略 + * @param normalBuild + * @return + */ + Long saveHuandrea(TeamStrategyExemptionHundredModel normalBuild); + +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionOrdinaryService.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionOrdinaryService.java new file mode 100644 index 0000000..c541a2c --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionOrdinaryService.java @@ -0,0 +1,16 @@ +package com.muyu.activity.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.group.domain.TeamStrategyExemptionOrdinary; +import com.muyu.group.domain.model.TeamStrategyExemptionHundredModel; +import com.muyu.group.domain.model.TeamStrategyExemptionOrdinaryModel; + +public interface TeamStrategyExemptionOrdinaryService extends IService { + /** + *添加普通策略 + * @param techBuild + * @return + */ + Long saveOrdinary(TeamStrategyExemptionOrdinaryModel techBuild); + +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionService.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionService.java new file mode 100644 index 0000000..5e30670 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/TeamStrategyExemptionService.java @@ -0,0 +1,15 @@ +package com.muyu.activity.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.group.domain.TeamStrategyExemption; +import com.muyu.group.domain.model.TeamStrategyExemptionModel; + +public interface TeamStrategyExemptionService extends IService { + /** + * 添加免单策略返回id + * @param freeBuild + * @return + */ + Long saveStrategy(TeamStrategyExemptionModel freeBuild); + +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamInfoServiceImpl.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamInfoServiceImpl.java new file mode 100644 index 0000000..b8671da --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamInfoServiceImpl.java @@ -0,0 +1,117 @@ +package com.muyu.activity.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.activity.service.*; +import com.muyu.group.domain.ActivitySkuInfo; +import com.muyu.group.domain.ActivityTeamInfo; +import com.muyu.group.domain.ActivityTeamProductSkuInfo; +import com.muyu.group.domain.model.*; +import com.muyu.common.core.utils.StringUtils; +import com.muyu.common.core.web.page.TableDataInfo; +import com.muyu.activity.mapper.ActivityTeamInfoMapper; +import com.muyu.group.domain.req.GroupActivityInfoReq; +import com.muyu.product.cache.ProjectSkuCache; +import com.muyu.product.cache.datasource.ProjectInfoData; +import com.muyu.product.cache.datasource.ProjectSkuData; +import com.muyu.product.domain.ProjectInfo; +import com.muyu.product.domain.ProjectSkuInfo; +import org.checkerframework.checker.units.qual.A; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +@Service +public class ActivityTeamInfoServiceImpl extends ServiceImpl implements ActivityTeamInfoService { + @Autowired + private ActivityTeamProductSkuInfoService activityTeamProductSkuInfoService; + @Autowired + private ActivityTeamOpenInfoService activityTeamOpenInfoService; + @Autowired + private TeamStrategyExemptionHundredService teamStrategyExemptionHundredService; + @Autowired + private TeamStrategyExemptionOrdinaryService teamStrategyExemptionOrdinaryService;; + @Autowired + private TeamStrategyExemptionService teamStrategyExemptionService; + @Override + public TableDataInfo query(ActivityTeamInfoListQueryModel model){ + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.like(StringUtils.isNotEmpty(model.getKeyWord()), ActivityTeamInfo::getName, model.getKeyWord()); + wrapper.like(StringUtils.isNotEmpty(model.getStatus()), ActivityTeamInfo::getStatus, model.getStatus()); + Page infoPage = this.page(model.buildPage(), wrapper); + List activityTeamInfos = infoPage.getRecords(); + List activityTeamInfoListModelList = activityTeamInfos.stream().map(activityTeamInfo -> ActivityTeamInfoListModel.infoBuild(activityTeamInfo, + (activityTeamInfoListModelBuilder) -> { + Long teamInTeamId = activityTeamOpenInfoService.getTeamInTeamId(activityTeamInfo.getId()); + Long teamOpenTeamId = activityTeamOpenInfoService.getTeamOpenTeamId(activityTeamInfo.getId()); + TeamDiscountPriceModel disCountPrice = activityTeamProductSkuInfoService.getDisCountPrice(activityTeamInfo.getId()); + TeamStockModel stock = activityTeamProductSkuInfoService.getStock(activityTeamInfo.getId()); + return activityTeamInfoListModelBuilder.teamStock(stock.getTeamStock()) + .teamPrice(disCountPrice.getTeamPrice()) + .openTeamNumber(teamOpenTeamId) + .addTeamNumber(teamInTeamId) + .productPrice(disCountPrice.getProductPrice()) + .attendNumber(teamInTeamId+teamOpenTeamId) + .remainStock(stock.getRemainStock()) + .build(); + })).toList(); + TableDataInfo modelTableDataInfo = new TableDataInfo<>(); + modelTableDataInfo.setTotal(infoPage.getTotal()); + modelTableDataInfo.setRows(activityTeamInfoListModelList); + return modelTableDataInfo; + } + + /** + * 添加拼团活动详细信息 + * @param inBuild + * @return + */ + @Override + public boolean seve(GroupActivityModel inBuild) { + //添加策略返回主键 + //免单 + if (inBuild.getStrategyType().equals("免单")){ + Long noOrderPolicyId = teamStrategyExemptionService.saveStrategy(TeamStrategyExemptionModel.freeBuild(inBuild)); + if (null!=noOrderPolicyId){ + inBuild.setStrategyId(noOrderPolicyId); + } + } + //百人 + if (inBuild.getStrategyType().equals("百人")){ + Long hundredManStrategyId =teamStrategyExemptionHundredService.saveHuandrea(TeamStrategyExemptionHundredModel.normalBuild(inBuild)); + if (null!=hundredManStrategyId){ + inBuild.setStrategyId(hundredManStrategyId); + } + } + //普通 + if (inBuild.getStrategyType().equals("普通")){ + Long commonStrategyId= teamStrategyExemptionOrdinaryService.saveOrdinary(TeamStrategyExemptionOrdinaryModel.techBuild(inBuild)); + if (null!=commonStrategyId){ + inBuild.setStrategyId(commonStrategyId); + } + } + //添加商品拼团 + ActivityTeamInfo activityTeamInfo = ActivityTeamInfo.inBuild(inBuild); + boolean save = this.save(activityTeamInfo); + if (save){ + //添过规格 + List productSkuList = inBuild.getProjectSkuInfoList(); + ActivityTeamProductSkuInfo productSkuInfo = new ActivityTeamProductSkuInfo(); + productSkuList.forEach(activitySkuInfo -> { + productSkuInfo.setTeamId(activityTeamInfo.getId()); + productSkuInfo.setProductSku(activitySkuInfo.getProductSku()); + productSkuInfo.setProductId(inBuild.getProductId()); + productSkuInfo.setTeamPrice(activitySkuInfo.getTeamPrice()); + productSkuInfo.setTeamStock(activitySkuInfo.getTeamStock()); + }); + activityTeamProductSkuInfoService.save(productSkuInfo); + + return true; + } + return false; + } +}; diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamOpenInfoServiceImpl.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamOpenInfoServiceImpl.java new file mode 100644 index 0000000..8266003 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamOpenInfoServiceImpl.java @@ -0,0 +1,33 @@ +package com.muyu.activity.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.group.domain.ActivityTeamOpenInfo; +import com.muyu.group.domain.muen.TeamOpenInfoEnum; +import com.muyu.activity.mapper.ActivityTeamOpenInfoMapper; +import com.muyu.activity.service.ActivityTeamOpenInfoService; +import org.springframework.stereotype.Service; + +/** + * @program: cloud-server + * @description: 团购活动 + * @author: MengFanKuo + * @create: 2024-11-21 10:35 + * * + */ +@Service +public class ActivityTeamOpenInfoServiceImpl extends ServiceImpl implements ActivityTeamOpenInfoService { + /** + * 根据活动id 和团购类型查找 团购活动执行表 开团和参团人数 + * @param teamId + * @param teamOpenInfoEnum + * @return + */ + @Override + public Long getTeamOpenByTeamIdAndType(Long teamId, TeamOpenInfoEnum teamOpenInfoEnum) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ActivityTeamOpenInfo::getTeamId,teamId); + queryWrapper.eq(ActivityTeamOpenInfo::getTeamType,teamOpenInfoEnum.code()); + return this.count(queryWrapper); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamProductSkuInfoServiceImpl.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamProductSkuInfoServiceImpl.java new file mode 100644 index 0000000..501c8cb --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/ActivityTeamProductSkuInfoServiceImpl.java @@ -0,0 +1,63 @@ +package com.muyu.activity.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.group.domain.ActivityTeamProductSkuInfo; +import com.muyu.group.domain.model.TeamDiscountPriceModel; +import com.muyu.group.domain.model.TeamStockModel; +import com.muyu.common.core.exception.ServiceException; +import com.muyu.activity.mapper.ActivityTeamProductSkuInfoMapper; +import com.muyu.activity.service.ActivityTeamProductSkuInfoService; +import com.muyu.product.cache.ProjectSkuCache; +import com.muyu.product.domain.ProjectSkuInfo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.math.BigDecimal; +import java.util.List; +import java.util.Optional; + +@Service +public class ActivityTeamProductSkuInfoServiceImpl extends ServiceImpl implements ActivityTeamProductSkuInfoService { + @Autowired + private ProjectSkuCache projectSkuCache; + + /** + * 根据活动id查询商品价格 + * @param teamId + * @return + */ + @Override + public TeamDiscountPriceModel getDisCountPrice(Long teamId) { + //根据活动id查询 + List activityTeamProductSkuInfoList = this.ownedByAl(teamId); + if (activityTeamProductSkuInfoList.size()>0){ + Optional discountPriceModel = activityTeamProductSkuInfoList.stream().map(activityTeamProductSkuInfo -> { + ProjectSkuInfo projectSkuInfo = projectSkuCache.get(activityTeamProductSkuInfo.getProductId(), activityTeamProductSkuInfo.getProductSku()); + return TeamDiscountPriceModel.of(projectSkuInfo.getPrice(), activityTeamProductSkuInfo.getTeamPrice()); + }).min((o1, o2) -> Double.valueOf(o2.getDiscount() * 100 - o1.getDiscount() * 100).intValue()); + if (discountPriceModel.isEmpty()){ + throw new ServiceException("活动下没有这个商品"); + } + return discountPriceModel.get(); + } + return TeamDiscountPriceModel.builder() + .productPrice(BigDecimal.valueOf(0.00)) + .teamPrice(BigDecimal.valueOf(0.00)) + .discount(0.00) + .build(); + } + + /** + * 根据活动id查询商品库存 + * @param teamId + * @return + */ + @Override + public TeamStockModel getStock(Long teamId) { + List activityTeamProductSkuInfoList = this.ownedByAl(teamId); + return TeamStockModel.builder() + .teamStock(activityTeamProductSkuInfoList.stream().map(ActivityTeamProductSkuInfo::getTeamStock).reduce(0L,Long::sum)) + .remainStock(activityTeamProductSkuInfoList.stream().map(ActivityTeamProductSkuInfo::getRemainStock).reduce(0L,Long::sum)) + .build(); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionHundredServiceImpl.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionHundredServiceImpl.java new file mode 100644 index 0000000..1bafa18 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionHundredServiceImpl.java @@ -0,0 +1,25 @@ +package com.muyu.activity.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.group.domain.TeamStrategyExemptionHundred; +import com.muyu.activity.mapper.TeamStrategyExemptionHundredMapper; +import com.muyu.activity.service.TeamStrategyExemptionHundredService; +import com.muyu.group.domain.TeamStrategyExemptionOrdinary; +import com.muyu.group.domain.model.TeamStrategyExemptionHundredModel; +import com.muyu.group.domain.model.TeamStrategyExemptionOrdinaryModel; +import org.springframework.stereotype.Service; + +@Service +public class TeamStrategyExemptionHundredServiceImpl extends ServiceImpl implements TeamStrategyExemptionHundredService { + /** + * 添加普通策略返回主键 + * @param normalBuild + * @return + */ + @Override + public Long saveHuandrea(TeamStrategyExemptionHundredModel normalBuild) { + TeamStrategyExemptionHundred teamStrategyExemptionHundred = TeamStrategyExemptionHundred.normalBuild(normalBuild); + this.save(teamStrategyExemptionHundred); + return teamStrategyExemptionHundred.getId(); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionOrdinaryServiceImpl.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionOrdinaryServiceImpl.java new file mode 100644 index 0000000..8c4e164 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionOrdinaryServiceImpl.java @@ -0,0 +1,24 @@ +package com.muyu.activity.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.group.domain.TeamStrategyExemptionHundred; +import com.muyu.group.domain.TeamStrategyExemptionOrdinary; +import com.muyu.activity.mapper.TeamStrategyExemptionOrdinaryMapper; +import com.muyu.activity.service.TeamStrategyExemptionOrdinaryService; +import com.muyu.group.domain.model.TeamStrategyExemptionOrdinaryModel; +import org.springframework.stereotype.Service; + +@Service +public class TeamStrategyExemptionOrdinaryServiceImpl extends ServiceImpl implements TeamStrategyExemptionOrdinaryService { + /** + * 添加普通策略返回主键 + * @param techBuild + * @return + */ + @Override + public Long saveOrdinary(TeamStrategyExemptionOrdinaryModel techBuild) { + TeamStrategyExemptionOrdinary teamStrategyExemptionOrdinary = TeamStrategyExemptionOrdinary.normalBuild(techBuild); + this.save(teamStrategyExemptionOrdinary); + return teamStrategyExemptionOrdinary.getId(); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionServiceImpl.java b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionServiceImpl.java new file mode 100644 index 0000000..8bf2674 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/java/com/muyu/activity/service/impl/TeamStrategyExemptionServiceImpl.java @@ -0,0 +1,23 @@ +package com.muyu.activity.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.muyu.group.domain.TeamStrategyExemption; +import com.muyu.activity.mapper.TeamStrategyExemptionMapper; +import com.muyu.activity.service.TeamStrategyExemptionService; +import com.muyu.group.domain.model.TeamStrategyExemptionModel; +import org.springframework.stereotype.Service; + +@Service +public class TeamStrategyExemptionServiceImpl extends ServiceImpl implements TeamStrategyExemptionService { + /** + * 添加策略返回id + * @param freeBuild + * @return + */ + @Override + public Long saveStrategy(TeamStrategyExemptionModel freeBuild) { + TeamStrategyExemption teamStrategyExemption = TeamStrategyExemption.freeBuild(freeBuild); + this.save(teamStrategyExemption); + return teamStrategyExemption.getId(); + } +} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/resources/banner.txt b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/banner.txt new file mode 100644 index 0000000..0dd5eee --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/banner.txt @@ -0,0 +1,2 @@ +Spring Boot Version: ${spring-boot.version} +Spring Application Name: ${spring.application.name} diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/resources/bootstrap.yml b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/bootstrap.yml new file mode 100644 index 0000000..5107e9b --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/bootstrap.yml @@ -0,0 +1,30 @@ +# Tomcat +server: + port: 9309 + +# Spring +spring: + application: + # 应用名称 + name: muyu-group + profiles: + # 环境配置 + active: dev + cloud: + nacos: + discovery: + # 服务注册地址 + server-addr: 123.249.122.74:8848 + namespace: mall + config: + # 配置中心地址 + server-addr: 123.249.122.74:8848 + namespace: mall + # 配置文件格式 + file-extension: yml + # 共享配置 + shared-configs: + - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension} +logging: + level: + com.muyu.activity.mapper: DEBUG diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/resources/logback.xml b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/logback.xml new file mode 100644 index 0000000..69fb68b --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/logback.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + ${log.pattern} + + + + + + ${log.path}/info.log + + + + ${log.path}/info.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + INFO + + ACCEPT + + DENY + + + + + ${log.path}/error.log + + + + ${log.path}/error.%d{yyyy-MM-dd}.log + + 60 + + + ${log.pattern} + + + + ERROR + + ACCEPT + + DENY + + + + + + + + + + + + + + + + + + diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamInfoMapper.xml b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamInfoMapper.xml new file mode 100644 index 0000000..6d5d8c1 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamInfoMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamOpenInfoMapper.xml b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamOpenInfoMapper.xml new file mode 100644 index 0000000..42f6df2 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamOpenInfoMapper.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamProductSkuInfoMapper.xml b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamProductSkuInfoMapper.xml new file mode 100644 index 0000000..17b259b --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/ActivityTeamProductSkuInfoMapper.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionHundredMapper.xml b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionHundredMapper.xml new file mode 100644 index 0000000..b36a0d4 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionHundredMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionMapper.xml b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionMapper.xml new file mode 100644 index 0000000..15019bf --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionOrdinaryMapper.xml b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionOrdinaryMapper.xml new file mode 100644 index 0000000..75a24a0 --- /dev/null +++ b/muyu-modules/muyu-group/muyu-group-server/src/main/resources/mapper/TeamStrategyExemptionOrdinaryMapper.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/muyu-modules/muyu-group/pom.xml b/muyu-modules/muyu-group/pom.xml new file mode 100644 index 0000000..8763ae1 --- /dev/null +++ b/muyu-modules/muyu-group/pom.xml @@ -0,0 +1,26 @@ + + + 4.0.0 + + com.muyu + muyu-modules + 3.6.3 + + + muyu-group + pom + + muyu-group-common + muyu-group-remont + muyu-group-server + + + + 17 + 17 + UTF-8 + + + diff --git a/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectInfoCache.java b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectInfoCache.java index 1479544..296a76c 100644 --- a/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectInfoCache.java +++ b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/ProjectInfoCache.java @@ -65,4 +65,8 @@ public class ProjectInfoCache extends CacheAbs { public ProjectInfo defaultValue () { return new ProjectInfo(); } + + public Object getPro(Long id) { + return null; + } } diff --git a/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/datasource/impl/ProjectSkuDataRemoteImpl.java b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/datasource/impl/ProjectSkuDataRemoteImpl.java index 5ca234c..e90892e 100644 --- a/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/datasource/impl/ProjectSkuDataRemoteImpl.java +++ b/muyu-modules/muyu-product/muyu-product-cache/src/main/java/com/muyu/product/cache/datasource/impl/ProjectSkuDataRemoteImpl.java @@ -37,7 +37,6 @@ public class ProjectSkuDataRemoteImpl implements ProjectSkuData { if (Result.isError(projectListResult)){ return new HashMap<>(); } - List projectSkuInfoList = projectListResult.getData(); return projectSkuInfoList.stream() .collect(Collectors.toMap(ProjectSkuInfo::getSku, projectSkuInfo -> projectSkuInfo)); diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AsProductAttributeInfo.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AsProductAttributeInfo.java index 853c477..7030aed 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AsProductAttributeInfo.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AsProductAttributeInfo.java @@ -1,6 +1,7 @@ package com.muyu.product.domain; import java.util.Date; +import java.util.List; import java.util.function.Supplier; import com.fasterxml.jackson.annotation.JsonFormat; @@ -53,7 +54,6 @@ public class AsProductAttributeInfo extends BaseEntity { @Excel(name = "属性值") @ApiModelProperty(name = "属性值", value = "属性值", required = true) private String value; - public static AsProductAttributeInfo attrValueModelBuild(AttrValueModel attrValueModel, Supplier projectId){ return AsProductAttributeInfo.builder() .productId(projectId.get()) diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AttributeInfo.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AttributeInfo.java index 2071ddc..5c7b3d9 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AttributeInfo.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/AttributeInfo.java @@ -54,11 +54,10 @@ public class AttributeInfo extends BaseEntity { public TemplateAttributeModel buildTemplateModel(){ return TemplateAttributeModel.builder() .id(this.getId()) - .code(this.getCode()) .name(this.getName()) + .code(this.getCode()) .build(); } - /** * 查询构造器 */ diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/ProjectInfo.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/ProjectInfo.java index 963056e..82092ce 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/ProjectInfo.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/ProjectInfo.java @@ -90,7 +90,6 @@ public class ProjectInfo extends BaseEntity { @Excel(name = "品牌") @ApiModelProperty(name = "品牌", value = "品牌") private Long brandId; - /** * 查询构造器 */ diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/TemplateAttributeGroupModel.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/TemplateAttributeGroupModel.java index 3629e13..13f05ba 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/TemplateAttributeGroupModel.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/TemplateAttributeGroupModel.java @@ -2,6 +2,8 @@ package com.muyu.product.domain.model; import com.muyu.common.core.utils.StringUtils; import com.muyu.common.core.web.domain.BaseEntity; +import com.muyu.product.domain.AsCategoryAttribute; +import com.muyu.product.domain.AsProductAttributeInfo; import com.muyu.product.domain.AttributeGroup; import lombok.AllArgsConstructor; import lombok.Data; @@ -34,7 +36,6 @@ public class TemplateAttributeGroupModel extends BaseEntity { * 属性组下属性集合 */ private List attributeList; - /** * 是否有效 * @return diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/TemplateAttributeModel.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/TemplateAttributeModel.java index ebd44da..46873d7 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/TemplateAttributeModel.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/model/TemplateAttributeModel.java @@ -1,6 +1,7 @@ package com.muyu.product.domain.model; import com.muyu.common.core.web.domain.BaseEntity; +import com.muyu.product.domain.AsProductAttributeInfo; import com.muyu.product.domain.AttributeInfo; import lombok.AllArgsConstructor; import lombok.Data; @@ -8,6 +9,8 @@ import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; +import java.util.List; + /** * @author DongZl * @description: 共有属性 @@ -35,11 +38,14 @@ public class TemplateAttributeModel extends BaseEntity { */ private String code; + private String value; + private List attributeInfoList; public static TemplateAttributeModel attributeInfoBuild(AttributeInfo attributeInfo){ return TemplateAttributeModel.builder() .id(attributeInfo.getId()) .name(attributeInfo.getName()) .code(attributeInfo.getCode()) + .attributeInfoList(attributeInfo.buildTemplateModel().getAttributeInfoList()) .build(); } } diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/ProjectInfoQueryReq.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/ProjectInfoQueryReq.java index dd509ac..d7f56ae 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/ProjectInfoQueryReq.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/req/ProjectInfoQueryReq.java @@ -62,5 +62,5 @@ public class ProjectInfoQueryReq extends BaseEntity { /** 品牌 */ @ApiModelProperty(name = "品牌", value = "品牌") private Long brandId; - + private String [] proType; } diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/CategoryCommonElementResp.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/CategoryCommonElementResp.java index 310576b..0142422 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/CategoryCommonElementResp.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/CategoryCommonElementResp.java @@ -35,7 +35,4 @@ public class CategoryCommonElementResp extends BaseEntity { */ private List attributeList; - /** - * 级联 - */ } diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/ProjectDetailResp.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/ProjectDetailResp.java index 045ba09..ed376e9 100644 --- a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/ProjectDetailResp.java +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/ProjectDetailResp.java @@ -40,25 +40,22 @@ public class ProjectDetailResp { /** * 商品Sku集合 */ - private List projectSkuInfoList; - + private List projectSkuInfoList; //projectSkuInfoList /** * 商品和属性集合 */ - private List productAttributeInfoList; - + private List productAttributeInfoList; //productAttributeInfoList /** * 商品规格 */ private List ruleAttrModelList; - /** * 属性集合 */ - private List attributeInfoList; + private List attributeInfoList;//templateAttributeList /** * 属性组集合 */ - private List attributeGroupList; + private List attributeGroupList;//templateAttributeGroupList } diff --git a/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/ProjectSkuInfoResp.java b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/ProjectSkuInfoResp.java new file mode 100644 index 0000000..cec0326 --- /dev/null +++ b/muyu-modules/muyu-product/muyu-product-common/src/main/java/com/muyu/product/domain/resp/ProjectSkuInfoResp.java @@ -0,0 +1,25 @@ +package com.muyu.product.domain.resp; + +import com.muyu.product.domain.AsProductAttributeInfo; +import com.muyu.product.domain.ProjectSkuInfo; +import com.muyu.product.domain.model.TemplateAttributeModel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.List; +@SuperBuilder +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ProjectSkuInfoResp { + /** + * 商品Sku集合 + */ + private List projectSkuInfoList; //projectSkuInfoList + /** + * 商品和属性集合 + */ + private List productAttributeInfoList; //productAttributeInfoList +} diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/AttributeGroupController.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/AttributeGroupController.java index 0ed89fc..0fce51e 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/AttributeGroupController.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/AttributeGroupController.java @@ -66,7 +66,6 @@ public class AttributeGroupController extends BaseController { ExcelUtil util = new ExcelUtil(AttributeGroup.class); util.exportExcel(response, list, "属性组数据"); } - // /** // * 获取属性组详细信息 // */ diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/ProjectInfoController.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/ProjectInfoController.java index ea62702..f206664 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/ProjectInfoController.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/controller/ProjectInfoController.java @@ -5,6 +5,7 @@ import javax.servlet.http.HttpServletResponse; import com.muyu.product.cache.ProjectInfoCache; import com.muyu.product.domain.resp.ProjectDetailResp; +import com.muyu.product.domain.resp.ProjectSkuInfoResp; import io.swagger.annotations.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; @@ -69,6 +70,7 @@ public class ProjectInfoController extends BaseController { util.exportExcel(response, list, "商品信息数据"); } + /** * 获取商品信息详细信息 */ @@ -101,7 +103,16 @@ public class ProjectInfoController extends BaseController { public Result getDetailInfo(@PathVariable("id") Long id) { return Result.success(projectInfoService.getDetailInfo(id)); } - + /** + * 获取商品信息详细信息 + */ + @ApiOperation("获取商品信息详细信息") + @RequiresPermissions("product:info:query") + @GetMapping(value = "/getProductInfo/{id}") + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Long", paramType = "path", dataTypeClass = Long.class) + public Result getProductInfo(@PathVariable("id") Long id) { + return Result.success(projectInfoService.getProductInfo(id)); + } /** * 新增商品信息 */ @@ -124,7 +135,6 @@ public class ProjectInfoController extends BaseController { projectInfoService.updateProductById(id,projectInfoSaveReq); return Result.success(); } - /** * 删除商品信息 */ @@ -136,4 +146,15 @@ public class ProjectInfoController extends BaseController { public Result remove(@PathVariable List ids) { return toAjax(projectInfoService.removeBatchByIds(ids)); } + /** + * 获取商品列表 + */ + @RequiresPermissions("product:info:remove") + @Log(title = "商品信息", businessType = BusinessType.DELETE) + @GetMapping("/getProduct") + @ApiOperation("获取商品列表") + public Result> getProduct() { + List infoList = projectInfoService.list(); + return Result.success(infoList); + } } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/ProjectInfoService.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/ProjectInfoService.java index b0712d9..e87b205 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/ProjectInfoService.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/ProjectInfoService.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.muyu.product.domain.req.ProjectInfoEditReq; import com.muyu.product.domain.req.ProjectInfoSaveReq; import com.muyu.product.domain.resp.ProjectDetailResp; +import com.muyu.product.domain.resp.ProjectSkuInfoResp; /** * 商品信息Service接口 @@ -43,4 +44,7 @@ public interface ProjectInfoService extends IService { * @return */ void updateProductById(Long id, ProjectInfoSaveReq projectInfoSaveReq); + + + ProjectSkuInfoResp getProductInfo(Long id); } diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/ProjectSkuInfoService.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/ProjectSkuInfoService.java index 98e0611..9e13535 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/ProjectSkuInfoService.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/ProjectSkuInfoService.java @@ -33,4 +33,7 @@ public interface ProjectSkuInfoService extends IService { * @return 商品SKU信息 */ List listByProjectId (Long projectId); + + ProjectSkuInfo getByProduct(String productId, String productSku); + } 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 cdd4587..8723950 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 @@ -60,6 +60,8 @@ public class CategoryInfoServiceImpl extends ServiceImpl list = asProductAttributeInfoService.listByIds(templateAttributeIdList); + for (AsProductAttributeInfo asProductAttributeInfo : list) { + TemplateAttributeModel.builder() + .value(asProductAttributeInfo.getValue()) + .build(); + } } List attributeModelList = new ArrayList<>(); - if (!templateAttributeModelList.isEmpty()){ attributeIdSet.addAll( templateAttributeModelList.stream().map(TemplateAttributeModel::getId).toList()//商品属性表id ); } - LambdaQueryWrapper attributeInfoLambdaQueryWrapper = new LambdaQueryWrapper<>(); attributeInfoLambdaQueryWrapper.notIn(!attributeIdSet.isEmpty(), AttributeInfo::getId, attributeIdSet); attributeModelList = attributeInfoService.list(attributeInfoLambdaQueryWrapper).stream().map(AttributeInfo::buildTemplateModel).toList(); - return CategoryCommonElementResp.builder() .templateAttributeGroupList(attributeGroupModelList) .templateAttributeList(templateAttributeModelList) diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProjectInfoServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProjectInfoServiceImpl.java index 279d26d..c5d1ce5 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProjectInfoServiceImpl.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProjectInfoServiceImpl.java @@ -10,9 +10,11 @@ import com.muyu.common.security.utils.SecurityUtils; import com.muyu.product.domain.*; import com.muyu.product.domain.model.*; import com.muyu.product.domain.req.ProjectInfoEditReq; +import com.muyu.product.domain.req.ProjectInfoQueryReq; import com.muyu.product.domain.req.ProjectInfoSaveReq; import com.muyu.product.domain.resp.CategoryCommonElementResp; import com.muyu.product.domain.resp.ProjectDetailResp; +import com.muyu.product.domain.resp.ProjectSkuInfoResp; import com.muyu.product.service.*; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -100,11 +102,6 @@ public class ProjectInfoServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(AsProductAttributeInfo::getProductId,id); + List attributeInfoList = asProductAttributeInfoService.list(wrapper); + List infoList = attributeInfoList.stream().map(AsProductAttributeInfo::getAttributeId).toList(); + //商品规格 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ProjectSkuInfo::getProjectId,id); + List skuInfoList = projectSkuInfoService.list(queryWrapper); + return ProjectSkuInfoResp.builder() + .projectSkuInfoList(skuInfoList) + .productAttributeInfoList(attributeInfoList) + .build(); + } + //修改商品属性中间表 + + private void updProduct(Long id, ProjectInfoSaveReq projectInfoSaveReq) { //删除商品属性中间表 LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); diff --git a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProjectSkuInfoServiceImpl.java b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProjectSkuInfoServiceImpl.java index 05c8b16..05fe1ef 100644 --- a/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProjectSkuInfoServiceImpl.java +++ b/muyu-modules/muyu-product/muyu-product-server/src/main/java/com/muyu/product/service/impl/ProjectSkuInfoServiceImpl.java @@ -88,4 +88,9 @@ public class ProjectSkuInfoServiceImpl extends ServiceImpl { } diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDeptMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDeptMapper.java index 5ef9ab4..9f0557e 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDeptMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDeptMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.common.system.domain.SysDept; +import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -11,6 +12,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysDeptMapper extends BaseMapper { /** * 查询部门管理数据 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDictDataMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDictDataMapper.java index 1e87a7e..24dab90 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDictDataMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDictDataMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.common.system.domain.SysDictData; +import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -11,6 +12,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysDictDataMapper extends BaseMapper { /** * 根据条件分页查询字典数据 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDictTypeMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDictTypeMapper.java index 0a4ffe6..04fe376 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDictTypeMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDictTypeMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.common.system.domain.SysDictType; +import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -10,6 +11,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysDictTypeMapper extends BaseMapper { /** * 根据条件分页查询字典类型 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDistrictMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDistrictMapper.java index 93db313..5514cc0 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDistrictMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysDistrictMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.common.system.domain.SysDistrict; +import org.apache.ibatis.annotations.Mapper; /** * 地域地区Mapper接口 @@ -9,6 +10,7 @@ import com.muyu.common.system.domain.SysDistrict; * @author DongZeLiang * @date 2024-04-11 */ +@Mapper public interface SysDistrictMapper extends BaseMapper { } diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysLogininforMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysLogininforMapper.java index 0f1f86a..4fe0c24 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysLogininforMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysLogininforMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.common.system.domain.SysLogininfor; +import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -10,6 +11,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysLogininforMapper extends BaseMapper { /** * 新增系统登录日志 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysMenuMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysMenuMapper.java index 8ceaaa0..524e0ad 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysMenuMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysMenuMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.system.domain.SysMenu; +import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -11,6 +12,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysMenuMapper extends BaseMapper { /** * 查询系统菜单列表 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysNoticeMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysNoticeMapper.java index fee9930..4f71933 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysNoticeMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysNoticeMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.system.domain.SysNotice; +import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -10,6 +11,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysNoticeMapper extends BaseMapper { /** * 查询公告信息 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysOperLogMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysOperLogMapper.java index 6ea1bcd..5a9d81e 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysOperLogMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysOperLogMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.common.system.domain.SysOperLog; +import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -10,6 +11,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysOperLogMapper extends BaseMapper { /** * 新增操作日志 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysPostMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysPostMapper.java index 4bfd66d..a823464 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysPostMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysPostMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.system.domain.SysPost; +import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -10,6 +11,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysPostMapper extends BaseMapper { /** * 查询岗位数据集合 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleDeptMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleDeptMapper.java index 0e6dd4d..7d7842f 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleDeptMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleDeptMapper.java @@ -3,6 +3,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.system.domain.SysRoleDept; +import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -11,6 +12,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysRoleDeptMapper extends BaseMapper { /** * 通过角色ID删除角色和部门关联 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleMapper.java index 2b01dc3..0d248ed 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.common.system.domain.SysRole; +import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -10,6 +11,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysRoleMapper extends BaseMapper { /** * 根据条件分页查询角色数据 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleMenuMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleMenuMapper.java index 664ce26..5802ed8 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleMenuMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysRoleMenuMapper.java @@ -3,6 +3,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.system.domain.SysRoleMenu; +import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -11,6 +12,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysRoleMenuMapper extends BaseMapper { /** * 查询菜单使用数量 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserMapper.java index e037b34..0ddf25d 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.common.system.domain.SysUser; +import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -11,6 +12,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysUserMapper extends BaseMapper { /** * 根据条件分页查询用户列表 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserPostMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserPostMapper.java index 8d09a47..1279997 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserPostMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserPostMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.system.domain.SysUserPost; +import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -10,6 +11,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysUserPostMapper extends BaseMapper { /** * 通过用户ID删除用户和岗位关联 diff --git a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserRoleMapper.java b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserRoleMapper.java index 512adb8..f1bc221 100644 --- a/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserRoleMapper.java +++ b/muyu-modules/muyu-system/src/main/java/com/muyu/system/mapper/SysUserRoleMapper.java @@ -2,6 +2,7 @@ package com.muyu.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.muyu.system.domain.SysUserRole; +import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -11,6 +12,7 @@ import java.util.List; * * @author muyu */ +@Mapper public interface SysUserRoleMapper extends BaseMapper { /** * 通过用户ID删除用户和角色关联 diff --git a/muyu-modules/muyu-system/src/main/resources/bootstrap.yml b/muyu-modules/muyu-system/src/main/resources/bootstrap.yml index 5d2f112..f6e956c 100644 --- a/muyu-modules/muyu-system/src/main/resources/bootstrap.yml +++ b/muyu-modules/muyu-system/src/main/resources/bootstrap.yml @@ -28,3 +28,4 @@ spring: logging: level: com.muyu.system.mapper: DEBUG + diff --git a/muyu-modules/pom.xml b/muyu-modules/pom.xml index 24447f2..d99f10e 100644 --- a/muyu-modules/pom.xml +++ b/muyu-modules/pom.xml @@ -15,6 +15,7 @@ muyu-file muyu-product muyu-shop-cart + muyu-group muyu-modules diff --git a/muyu-visual/pom.xml b/muyu-visual/pom.xml index 883b38c..579862a 100644 --- a/muyu-visual/pom.xml +++ b/muyu-visual/pom.xml @@ -7,7 +7,6 @@ 3.6.3 4.0.0 - muyu-monitor