diff --git a/doc/回显.java b/doc/回显.java new file mode 100644 index 0000000..9f7a6c8 --- /dev/null +++ b/doc/回显.java @@ -0,0 +1,21 @@ + { + id: , + productId: , + productImage: "", + name: "", + introduce:"", + sort: , + strategyId: , + strategyType:"", + status:"", + content:"", + teamProjectSkuInfoAddReqList:[{ + "规格id":"integer", + "规格SKU": "String", + "拼团价格": "BigDecimal", + "拼团库存": "Long" + },{}], + endTime:"", + imageList:["",""], + unit:"", + } diff --git a/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/ActivityTeamProductSkuInfo.java b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/ActivityTeamProductSkuInfo.java index 697b5b4..fed36f0 100644 --- a/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/ActivityTeamProductSkuInfo.java +++ b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/ActivityTeamProductSkuInfo.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.muyu.common.core.web.domain.BaseEntity; import com.muyu.marketing.domain.model.ActivityTeamProductSkuAddModel; +import com.muyu.marketing.domain.model.ActivityTeamProductSkuModel; import com.muyu.marketing.domain.model.ActivityTeamProductSkuReqModel; import lombok.*; import lombok.experimental.SuperBuilder; @@ -74,4 +75,13 @@ public class ActivityTeamProductSkuInfo extends BaseEntity { .build(); } + public static ActivityTeamProductSkuInfo updModelBuild(ActivityTeamProductSkuModel activityTeamProductSkuModel){ + return ActivityTeamProductSkuInfo.builder() + .id(activityTeamProductSkuModel.getId()) + .productSku(activityTeamProductSkuModel.getSku()) + .teamStock(activityTeamProductSkuModel.getTeamStock()) + .teamPrice(activityTeamProductSkuModel.getTeamPrice()) + .build(); + } + } diff --git a/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/model/ActivityTeamInfoSaveModel.java b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/model/ActivityTeamInfoSaveModel.java index beb468f..fb3d3bd 100644 --- a/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/model/ActivityTeamInfoSaveModel.java +++ b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/model/ActivityTeamInfoSaveModel.java @@ -56,7 +56,7 @@ public class ActivityTeamInfoSaveModel { /** * 活动排序 */ - private Long sort; + private Integer sort; /** * 活动详情 */ diff --git a/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/model/ActivityTeamProductSkuModel.java b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/model/ActivityTeamProductSkuModel.java index 3b6fc78..91fd6cc 100644 --- a/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/model/ActivityTeamProductSkuModel.java +++ b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/model/ActivityTeamProductSkuModel.java @@ -47,4 +47,6 @@ public class ActivityTeamProductSkuModel { .teamPrice(activityTeamProductSkuInfo.getTeamPrice()) .build(); } + + } diff --git a/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/req/ActivityTeamInfoEditReq.java b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/req/ActivityTeamInfoEditReq.java new file mode 100644 index 0000000..1ffa8a6 --- /dev/null +++ b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/req/ActivityTeamInfoEditReq.java @@ -0,0 +1,79 @@ +package com.muyu.marketing.domain.req; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.muyu.common.core.web.domain.BaseEntity; +import com.muyu.marketing.domain.ActivityTeamInfo; +import com.muyu.marketing.domain.ActivityTeamProductSkuInfo; +import com.muyu.marketing.domain.model.ActivityTeamProductSkuAddModel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; +import java.util.List; + +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class ActivityTeamInfoEditReq extends BaseEntity { + + + private Long id; + /** + * 拼团名称 + */ + private String name; + /** + * 商品ID + */ + private Long productId; + /** + * 商品活动图 + */ + private String productImage; + /** + * 活动简介 + */ + private String introduction; + /** + * 单位 + */ + private String unit; + /** + * 轮播图 + */ + private String imageList; + /** + * 活动结束时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd") + private Date endTime; + /** + * 活动排序 + */ + private Integer sort; + /** + * 商品SkU集合 + */ + private List productSkuAddModel; + /** + * 活动详情 + */ + private String content; + /** + * 活动状态 + */ + private String status; + /** + * 策略类型 + */ + private String strategyType; + /** + * 策略ID + */ + private Long strategyId; +} diff --git a/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/req/ActivityTeamInfoUpdateReq.java b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/req/ActivityTeamInfoUpdateReq.java new file mode 100644 index 0000000..5b177f0 --- /dev/null +++ b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/req/ActivityTeamInfoUpdateReq.java @@ -0,0 +1,77 @@ +package com.muyu.marketing.domain.req; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.muyu.common.core.web.domain.BaseEntity; +import com.muyu.marketing.domain.model.ActivityTeamProductSkuAddModel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.Date; +import java.util.List; + +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class ActivityTeamInfoUpdateReq extends BaseEntity { + + + private Long teamId; + /** + * 拼团名称 + */ + private String name; + /** + * 商品ID + */ + private Long productId; + /** + * 商品活动图 + */ + private String productImage; + /** + * 活动简介 + */ + private String introduction; + /** + * 单位 + */ + private String unit; + /** + * 轮播图 + */ + private String imageList; + /** + * 活动结束时间 + */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd") + private Date endTime; + /** + * 活动排序 + */ + private Integer sort; + /** + * 商品SkU集合 + */ + private List productSkuAddModel; + /** + * 活动详情 + */ + private String content; + /** + * 活动状态 + */ + private String status; + /** + * 策略类型 + */ + private String strategyType; + /** + * 策略ID + */ + private Long strategyId; +} diff --git a/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/resp/TeamInfoFindByIdResp.java b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/resp/TeamInfoFindByIdResp.java index 3efe23a..c99b334 100644 --- a/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/resp/TeamInfoFindByIdResp.java +++ b/muyu-modules/muyu-marketing/marketing-common/src/main/java/com/muyu/marketing/domain/resp/TeamInfoFindByIdResp.java @@ -2,7 +2,6 @@ package com.muyu.marketing.domain.resp; import com.fasterxml.jackson.annotation.JsonFormat; import com.muyu.marketing.domain.model.ActivityTeamDetailModel; -import com.muyu.marketing.domain.req.ProjectSkuInfoAddReq; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; diff --git a/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/controller/ActivityTeamController.java b/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/controller/ActivityTeamController.java index 9494be5..17bdf20 100644 --- a/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/controller/ActivityTeamController.java +++ b/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/controller/ActivityTeamController.java @@ -6,6 +6,7 @@ import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.marketing.domain.model.ActivityTeamInfoAddModel; import com.muyu.marketing.domain.model.ActivityTeamInfoListModel; import com.muyu.marketing.domain.model.ActivityTeamInfoUpdModel; +import com.muyu.marketing.domain.req.ActivityTeamInfoEditReq; import com.muyu.marketing.domain.req.ActivityTeamInfoSaveReq; import com.muyu.marketing.domain.req.ActivityTeamInfoUpdReq; import com.muyu.marketing.domain.req.TeamInfoListReq; @@ -59,8 +60,8 @@ public class ActivityTeamController { return Result.success(); } - @PostMapping("/findById/{id}") - public Result findTeamById(@PathVariable Long id){ + @GetMapping ("/findById/{id}") + public Result findTeamById(@PathVariable("id") Long id){ return Result.success(TeamInfoFindByIdResp.teamInfoFindByIdBuild(activityTeamInfoService.findDetailById(id))); } @PutMapping("/updateByTeamId") @@ -68,4 +69,9 @@ public class ActivityTeamController { activityTeamInfoService.update(ActivityTeamInfoUpdModel.activityTeamInfoUpdReqModelBuild(activityTeamInfoUpdReq)); return Result.success(); } + + @GetMapping("/getDetail/{id}") + public Result getDetail(@PathVariable("id") Long id){ + return activityTeamInfoService.getDetail(id); + } } diff --git a/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/ActivityTeamInfoService.java b/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/ActivityTeamInfoService.java index f1409d4..c20ac2d 100644 --- a/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/ActivityTeamInfoService.java +++ b/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/ActivityTeamInfoService.java @@ -1,9 +1,11 @@ package com.muyu.marketing.team.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.muyu.common.core.domain.Result; import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.marketing.domain.ActivityTeamInfo; import com.muyu.marketing.domain.model.*; +import com.muyu.marketing.domain.req.ActivityTeamInfoEditReq; public interface ActivityTeamInfoService extends IService { @@ -35,5 +37,7 @@ public interface ActivityTeamInfoService extends IService { */ boolean update(ActivityTeamInfoUpdModel activityTeamInfoUpdModel); + public Result getDetail(Long id); + } diff --git a/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/ActivityTeamProductSkuInfoService.java b/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/ActivityTeamProductSkuInfoService.java index 3bf453a..23252ce 100644 --- a/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/ActivityTeamProductSkuInfoService.java +++ b/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/ActivityTeamProductSkuInfoService.java @@ -48,4 +48,7 @@ public interface ActivityTeamProductSkuInfoService extends IService activityTeamProductSkuReqModelList); + + public boolean batchUpdate(List activityTeamProductSkuModelList); + } diff --git a/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/impl/ActivityTeamInfoServiceImpl.java b/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/impl/ActivityTeamInfoServiceImpl.java index a75f0e0..83d43a8 100644 --- a/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/impl/ActivityTeamInfoServiceImpl.java +++ b/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/impl/ActivityTeamInfoServiceImpl.java @@ -3,19 +3,24 @@ package com.muyu.marketing.team.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.common.core.domain.Result; import com.muyu.common.core.utils.StringUtils; import com.muyu.common.core.web.page.TableDataInfo; import com.muyu.marketing.domain.ActivityTeamInfo; +import com.muyu.marketing.domain.ActivityTeamProductSkuInfo; import com.muyu.marketing.domain.model.*; +import com.muyu.marketing.domain.req.ActivityTeamInfoEditReq; import com.muyu.marketing.team.mapper.ActivityTeamInfoMapper; import com.muyu.marketing.team.service.ActivityTeamInfoService; import com.muyu.marketing.team.service.ActivityTeamOpenInfoService; import com.muyu.marketing.team.service.ActivityTeamProductSkuInfoService; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.Assert; import java.util.List; +import java.util.stream.Collectors; @Service @@ -105,4 +110,32 @@ public class ActivityTeamInfoServiceImpl extends ServiceImpl getDetail(Long id) { + ActivityTeamInfo teamInfo = this.getById(id); + ActivityTeamInfoEditReq editReq = new ActivityTeamInfoEditReq(); + BeanUtils.copyProperties(teamInfo,editReq); + + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(ActivityTeamProductSkuInfo::getTeamId,id); + List activityTeamProductSkuInfoList = activityTeamProductSkuInfoService.list(queryWrapper); + List activityTeamProductSkuAddModelList = activityTeamProductSkuInfoList.stream() + .map(sku -> ActivityTeamProductSkuAddModel.builder() + .teamId(sku.getTeamId()) + .productId(sku.getProductId()) + .sku(sku.getProductSku()) + .teamStock(sku.getTeamStock()) + .teamPrice(sku.getTeamPrice()) + .build()) + .collect(Collectors.toList()); + editReq.setProductSkuAddModel(activityTeamProductSkuAddModelList); + return Result.success(editReq); + + } + + + public void edit(ActivityTeamInfoUpdModel activityTeamInfoUpdModel){ + + } } diff --git a/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/impl/ActivityTeamProductSkuInfoServiceImpl.java b/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/impl/ActivityTeamProductSkuInfoServiceImpl.java index f1c3369..69844ad 100644 --- a/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/impl/ActivityTeamProductSkuInfoServiceImpl.java +++ b/muyu-modules/muyu-marketing/marketing-server/src/main/java/com/muyu/marketing/team/service/impl/ActivityTeamProductSkuInfoServiceImpl.java @@ -100,4 +100,14 @@ public class ActivityTeamProductSkuInfoServiceImpl extends ServiceImpl activityTeamProductSkuReqModelList) { return this.updateBatchById(activityTeamProductSkuReqModelList.stream().map(ActivityTeamProductSkuInfo::updateModelBuild).toList()); } + + @Override + public boolean batchUpdate(List activityTeamProductSkuModelList) { +// for (ActivityTeamProductSkuModel activityTeamProductSkuModel : activityTeamProductSkuModelList) { +// ActivityTeamProductSkuInfo.updModelBuild(activityTeamProductSkuModel); +// } + return this.updateBatchById(activityTeamProductSkuModelList.stream() + .map(ActivityTeamProductSkuInfo::updModelBuild) + .toList()); + } }