fit(): 增加规格修改功能
parent
b0f4774e89
commit
8e2b8532f9
|
@ -5,10 +5,11 @@ import com.muyu.common.core.domain.Result;
|
||||||
import com.muyu.common.core.web.page.TableDataInfo;
|
import com.muyu.common.core.web.page.TableDataInfo;
|
||||||
import com.muyu.marketing.domain.model.ActivityTeamInfoAddModel;
|
import com.muyu.marketing.domain.model.ActivityTeamInfoAddModel;
|
||||||
import com.muyu.marketing.domain.model.ActivityTeamInfoListModel;
|
import com.muyu.marketing.domain.model.ActivityTeamInfoListModel;
|
||||||
|
import com.muyu.marketing.domain.model.ActivityTeamInfoModel;
|
||||||
import com.muyu.marketing.domain.req.ActivityTeamInfoSaveReq;
|
import com.muyu.marketing.domain.req.ActivityTeamInfoSaveReq;
|
||||||
|
import com.muyu.marketing.domain.req.ActivityTeamProductReq;
|
||||||
import com.muyu.marketing.domain.req.TeamInfoListReq;
|
import com.muyu.marketing.domain.req.TeamInfoListReq;
|
||||||
import com.muyu.marketing.domain.resp.ActivityTeamInfoDatailResp;
|
import com.muyu.marketing.domain.resp.ActivityTeamInfoDatailResp;
|
||||||
import com.muyu.marketing.domain.resp.ActivityTeamProductSkuResp;
|
|
||||||
import com.muyu.marketing.domain.resp.TeamInfoListResp;
|
import com.muyu.marketing.domain.resp.TeamInfoListResp;
|
||||||
import com.muyu.marketing.team.service.ActivityTeamInfoService;
|
import com.muyu.marketing.team.service.ActivityTeamInfoService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
@ -19,7 +20,7 @@ import java.util.List;
|
||||||
/**
|
/**
|
||||||
* 营销团购活动控制层
|
* 营销团购活动控制层
|
||||||
*
|
*
|
||||||
* @author DongZeLiang
|
* @author
|
||||||
* @date 2024-11-20 14:25
|
* @date 2024-11-20 14:25
|
||||||
*/
|
*/
|
||||||
@RestController
|
@RestController
|
||||||
|
@ -69,5 +70,14 @@ public class ActivityTeamController {
|
||||||
return Result.success(activityById);
|
return Result.success(activityById);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据修改
|
||||||
|
*/
|
||||||
|
@PostMapping("/update")
|
||||||
|
public Result<ActivityTeamProductReq> updDate(@RequestBody ActivityTeamProductReq activityTeamProductReq){
|
||||||
|
ActivityTeamInfoModel activityTeamInfoModel = ActivityTeamInfoModel.activityTeamBuilder(activityTeamProductReq);
|
||||||
|
activityTeamInfoService.bateUpdate(activityTeamInfoModel);
|
||||||
|
return Result.success();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,10 +6,10 @@ import com.muyu.marketing.domain.ActivityTeamInfo;
|
||||||
import com.muyu.marketing.domain.model.ActivityTeamInfoAddModel;
|
import com.muyu.marketing.domain.model.ActivityTeamInfoAddModel;
|
||||||
import com.muyu.marketing.domain.model.ActivityTeamInfoListModel;
|
import com.muyu.marketing.domain.model.ActivityTeamInfoListModel;
|
||||||
import com.muyu.marketing.domain.model.ActivityTeamInfoListQueryModel;
|
import com.muyu.marketing.domain.model.ActivityTeamInfoListQueryModel;
|
||||||
|
import com.muyu.marketing.domain.model.ActivityTeamInfoModel;
|
||||||
|
import com.muyu.marketing.domain.req.ActivityTeamProductReq;
|
||||||
import com.muyu.marketing.domain.resp.ActivityTeamInfoDatailResp;
|
import com.muyu.marketing.domain.resp.ActivityTeamInfoDatailResp;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public interface ActivityTeamInfoService extends IService<ActivityTeamInfo> {
|
public interface ActivityTeamInfoService extends IService<ActivityTeamInfo> {
|
||||||
|
|
||||||
|
|
||||||
|
@ -27,4 +27,6 @@ public interface ActivityTeamInfoService extends IService<ActivityTeamInfo> {
|
||||||
public void save(ActivityTeamInfoAddModel activityTeamInfoAddModel);
|
public void save(ActivityTeamInfoAddModel activityTeamInfoAddModel);
|
||||||
|
|
||||||
public ActivityTeamInfoDatailResp findActivityById(Long id);
|
public ActivityTeamInfoDatailResp findActivityById(Long id);
|
||||||
|
|
||||||
|
public void bateUpdate(ActivityTeamInfoModel activityTeamInfoModel);
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,6 @@ package com.muyu.marketing.team.service;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.muyu.common.core.enums.market.team.TeamOpenTypeEnum;
|
import com.muyu.common.core.enums.market.team.TeamOpenTypeEnum;
|
||||||
import com.muyu.marketing.domain.ActivityTeamOpenInfo;
|
import com.muyu.marketing.domain.ActivityTeamOpenInfo;
|
||||||
import com.muyu.marketing.domain.ActivityTeamProductSkuInfo;
|
|
||||||
|
|
||||||
public interface ActivityTeamOpenInfoService extends IService<ActivityTeamOpenInfo> {
|
public interface ActivityTeamOpenInfoService extends IService<ActivityTeamOpenInfo> {
|
||||||
|
|
||||||
|
@ -32,4 +31,5 @@ public interface ActivityTeamOpenInfoService extends IService<ActivityTeamOpenIn
|
||||||
public default Long getTeamInTypeNumberByTeamId(Long teamId){
|
public default Long getTeamInTypeNumberByTeamId(Long teamId){
|
||||||
return this.getTeamOpenNumberByTeamIdAndType(teamId, TeamOpenTypeEnum.IN_TEAM);
|
return this.getTeamOpenNumberByTeamIdAndType(teamId, TeamOpenTypeEnum.IN_TEAM);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,4 +43,21 @@ public interface ActivityTeamProductSkuInfoService extends IService<ActivityTeam
|
||||||
* 通过活动Id查询规格集合数据
|
* 通过活动Id查询规格集合数据
|
||||||
*/
|
*/
|
||||||
public List<ActivityTeamProductSkuModel> findById(Long id);
|
public List<ActivityTeamProductSkuModel> findById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据 业务模型 对团购商品修改
|
||||||
|
*/
|
||||||
|
public boolean update(ActivityTeamProductSkuModel activityTeamProductSkuModel);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据 业务模型 对商品批量修改
|
||||||
|
*/
|
||||||
|
public boolean bathUpdate(List<ActivityTeamProductSkuModel> activityTeamProductSkuModels);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据业务模型 对商品批量删除
|
||||||
|
*/
|
||||||
|
public void bathDelete(List<Long> id);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,15 +1,13 @@
|
||||||
package com.muyu.marketing.team.service.impl;
|
package com.muyu.marketing.team.service.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.OrderItem;
|
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.muyu.common.core.exception.ServiceException;
|
|
||||||
import com.muyu.common.core.utils.StringUtils;
|
import com.muyu.common.core.utils.StringUtils;
|
||||||
import com.muyu.common.core.web.page.TableDataInfo;
|
import com.muyu.common.core.web.page.TableDataInfo;
|
||||||
import com.muyu.marketing.domain.ActivityTeamInfo;
|
import com.muyu.marketing.domain.ActivityTeamInfo;
|
||||||
import com.muyu.marketing.domain.ActivityTeamProductSkuInfo;
|
|
||||||
import com.muyu.marketing.domain.model.*;
|
import com.muyu.marketing.domain.model.*;
|
||||||
|
import com.muyu.marketing.domain.req.ActivityTeamProductReq;
|
||||||
import com.muyu.marketing.domain.resp.ActivityTeamInfoDatailResp;
|
import com.muyu.marketing.domain.resp.ActivityTeamInfoDatailResp;
|
||||||
import com.muyu.marketing.domain.resp.ActivityTeamProductSkuResp;
|
import com.muyu.marketing.domain.resp.ActivityTeamProductSkuResp;
|
||||||
import com.muyu.marketing.team.mapper.ActivityTeamInfoMapper;
|
import com.muyu.marketing.team.mapper.ActivityTeamInfoMapper;
|
||||||
|
@ -22,7 +20,6 @@ import org.springframework.util.Assert;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.function.Consumer;
|
|
||||||
|
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
|
@ -105,4 +102,29 @@ public class ActivityTeamInfoServiceImpl extends ServiceImpl<ActivityTeamInfoMap
|
||||||
}).toList();
|
}).toList();
|
||||||
return ActivityTeamInfoDatailResp.datailRespBuilder(datailModel,activityTeamProductSkuResps);
|
return ActivityTeamInfoDatailResp.datailRespBuilder(datailModel,activityTeamProductSkuResps);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 商品信息修改
|
||||||
|
* @param
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void bateUpdate(ActivityTeamInfoModel activityTeamInfoModel) {
|
||||||
|
//根据 Sku的Id删除
|
||||||
|
activityTeamOpenInfoService.removeBatchByIds(activityTeamInfoModel.getActivityTeamProductUpdModel().getIds());
|
||||||
|
//添加
|
||||||
|
List<ActivityTeamProductSkuAddModel> teamProductSkuAddModelList = activityTeamInfoModel.getActivityTeamProductUpdModel().getActivityTeamProductSkuAddModelList();
|
||||||
|
|
||||||
|
teamProductSkuAddModelList.forEach(
|
||||||
|
activityTeamProductSkuAddModel -> {
|
||||||
|
activityTeamProductSkuAddModel.setTeamId(activityTeamInfoModel.getId());
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
activityTeamProductSkuInfoService.batchSave(teamProductSkuAddModelList);
|
||||||
|
|
||||||
|
//活动修改
|
||||||
|
this.updateById(ActivityTeamInfo.addTeamInfoModelBuild(activityTeamInfoModel));
|
||||||
|
activityTeamProductSkuInfoService.bathUpdate(activityTeamInfoModel.getActivityTeamProductUpdModel().getActivityTeamProductSkuUpdModelList());
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,8 +1,10 @@
|
||||||
package com.muyu.marketing.team.service.impl;
|
package com.muyu.marketing.team.service.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.muyu.common.core.exception.ServiceException;
|
import com.muyu.common.core.exception.ServiceException;
|
||||||
|
import com.muyu.marketing.domain.ActivityTeamInfo;
|
||||||
import com.muyu.marketing.domain.ActivityTeamProductSkuInfo;
|
import com.muyu.marketing.domain.ActivityTeamProductSkuInfo;
|
||||||
import com.muyu.marketing.domain.model.*;
|
import com.muyu.marketing.domain.model.*;
|
||||||
import com.muyu.marketing.team.mapper.ActivityTeamProductSkuInfoMapper;
|
import com.muyu.marketing.team.mapper.ActivityTeamProductSkuInfoMapper;
|
||||||
|
@ -98,5 +100,44 @@ public class ActivityTeamProductSkuInfoServiceImpl extends ServiceImpl<ActivityT
|
||||||
return teamInfoSkuListModelList;
|
return teamInfoSkuListModelList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据 业务模型 对团购商品修改
|
||||||
|
* @param activityTeamProductSkuUpdModel
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public boolean update(ActivityTeamProductSkuModel activityTeamProductSkuUpdModel) {
|
||||||
|
|
||||||
|
LambdaUpdateWrapper<ActivityTeamProductSkuInfo> updateWrapper = new LambdaUpdateWrapper<>();
|
||||||
|
updateWrapper.set(ActivityTeamProductSkuInfo::getTeamStock,activityTeamProductSkuUpdModel.getTeamStock());
|
||||||
|
updateWrapper.set(ActivityTeamProductSkuInfo::getTeamPrice,activityTeamProductSkuUpdModel.getTeamPrice());
|
||||||
|
|
||||||
|
updateWrapper.eq(ActivityTeamProductSkuInfo::getId,activityTeamProductSkuUpdModel.getId());
|
||||||
|
|
||||||
|
return this.update(updateWrapper);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据 业务模型 批量修改商品
|
||||||
|
* @param activityTeamProductSkuUpdModelList
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public boolean bathUpdate(List<ActivityTeamProductSkuModel> activityTeamProductSkuUpdModelList) {
|
||||||
|
List<ActivityTeamProductSkuInfo> teamProductSkuInfoList = activityTeamProductSkuUpdModelList
|
||||||
|
.stream()
|
||||||
|
.map(ActivityTeamProductSkuInfo::skuUpdModel)
|
||||||
|
.toList();
|
||||||
|
return this.updateBatchById(teamProductSkuInfoList);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据业务模型 批量删除商品规格
|
||||||
|
* @param id
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void bathDelete(List<Long> id) {
|
||||||
|
this.bathDelete(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue