Compare commits

...

1 Commits

Author SHA1 Message Date
zskzsk b79c991a04 12 2024-11-27 17:21:24 +08:00
12 changed files with 248 additions and 4 deletions

21
doc/回显.java 100644
View File

@ -0,0 +1,21 @@
{
id: ,
productId: ,
productImage: "",
name: "",
introduce:"",
sort: ,
strategyId: ,
strategyType:"",
status:"",
content:"",
teamProjectSkuInfoAddReqList:[{
"规格id":"integer",
"规格SKU": "String",
"拼团价格": "BigDecimal",
"拼团库存": "Long"
},{}],
endTime:"",
imageList:["",""],
unit:"",
}

View File

@ -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();
}
}

View File

@ -56,7 +56,7 @@ public class ActivityTeamInfoSaveModel {
/**
*
*/
private Long sort;
private Integer sort;
/**
*
*/

View File

@ -47,4 +47,6 @@ public class ActivityTeamProductSkuModel {
.teamPrice(activityTeamProductSkuInfo.getTeamPrice())
.build();
}
}

View File

@ -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<ActivityTeamProductSkuAddModel> productSkuAddModel;
/**
*
*/
private String content;
/**
*
*/
private String status;
/**
*
*/
private String strategyType;
/**
* ID
*/
private Long strategyId;
}

View File

@ -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<ActivityTeamProductSkuAddModel> productSkuAddModel;
/**
*
*/
private String content;
/**
*
*/
private String status;
/**
*
*/
private String strategyType;
/**
* ID
*/
private Long strategyId;
}

View File

@ -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;

View File

@ -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<TeamInfoFindByIdResp> findTeamById(@PathVariable Long id){
@GetMapping ("/findById/{id}")
public Result<TeamInfoFindByIdResp> 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<ActivityTeamInfoEditReq> getDetail(@PathVariable("id") Long id){
return activityTeamInfoService.getDetail(id);
}
}

View File

@ -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<ActivityTeamInfo> {
@ -35,5 +37,7 @@ public interface ActivityTeamInfoService extends IService<ActivityTeamInfo> {
*/
boolean update(ActivityTeamInfoUpdModel activityTeamInfoUpdModel);
public Result<ActivityTeamInfoEditReq> getDetail(Long id);
}

View File

@ -48,4 +48,7 @@ public interface ActivityTeamProductSkuInfoService extends IService<ActivityTeam
public boolean updateBath(List<ActivityTeamProductSkuReqModel> activityTeamProductSkuReqModelList);
public boolean batchUpdate(List<ActivityTeamProductSkuModel> activityTeamProductSkuModelList);
}

View File

@ -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<ActivityTeamInfoMap
activityTeamProductSkuInfoService.updateBath(activityTeamInfoUpdModel.getActivityTeamProductSkuModelList());
return update;
}
@Override
public Result<ActivityTeamInfoEditReq> getDetail(Long id) {
ActivityTeamInfo teamInfo = this.getById(id);
ActivityTeamInfoEditReq editReq = new ActivityTeamInfoEditReq();
BeanUtils.copyProperties(teamInfo,editReq);
LambdaQueryWrapper<ActivityTeamProductSkuInfo> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(ActivityTeamProductSkuInfo::getTeamId,id);
List<ActivityTeamProductSkuInfo> activityTeamProductSkuInfoList = activityTeamProductSkuInfoService.list(queryWrapper);
List<ActivityTeamProductSkuAddModel> 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){
}
}

View File

@ -100,4 +100,14 @@ public class ActivityTeamProductSkuInfoServiceImpl extends ServiceImpl<ActivityT
public boolean updateBath(List<ActivityTeamProductSkuReqModel> activityTeamProductSkuReqModelList) {
return this.updateBatchById(activityTeamProductSkuReqModelList.stream().map(ActivityTeamProductSkuInfo::updateModelBuild).toList());
}
@Override
public boolean batchUpdate(List<ActivityTeamProductSkuModel> activityTeamProductSkuModelList) {
// for (ActivityTeamProductSkuModel activityTeamProductSkuModel : activityTeamProductSkuModelList) {
// ActivityTeamProductSkuInfo.updModelBuild(activityTeamProductSkuModel);
// }
return this.updateBatchById(activityTeamProductSkuModelList.stream()
.map(ActivityTeamProductSkuInfo::updModelBuild)
.toList());
}
}