|
|
|
@ -16,20 +16,37 @@
|
|
|
|
|
*/ |
|
|
|
|
package com.logpm.distribution.service.impl; |
|
|
|
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
|
|
|
|
import com.logpm.distribution.bean.Res; |
|
|
|
|
import com.logpm.distribution.bean.Resp; |
|
|
|
|
import com.logpm.distribution.dto.app.DistributionAppAddvalueDTO; |
|
|
|
|
import com.logpm.distribution.entity.DistributionAddvalueEntity; |
|
|
|
|
import com.logpm.distribution.entity.*; |
|
|
|
|
import com.logpm.distribution.excel.DistributionAddvalueExcel; |
|
|
|
|
import com.logpm.distribution.mapper.DistributionAddvalueMapper; |
|
|
|
|
import com.logpm.distribution.mapper.*; |
|
|
|
|
import com.logpm.distribution.service.IDistributionAddvalueDetailService; |
|
|
|
|
import com.logpm.distribution.service.IDistributionAddvaluePackageService; |
|
|
|
|
import com.logpm.distribution.service.IDistributionAddvalueService; |
|
|
|
|
import com.logpm.distribution.service.IDistributionStockListService; |
|
|
|
|
import com.logpm.distribution.vo.DistributionAddvalueVO; |
|
|
|
|
import com.logpm.distribution.vo.app.DistributionAppAddvalueVO; |
|
|
|
|
import lombok.AllArgsConstructor; |
|
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
|
|
import org.springblade.core.mp.base.BaseServiceImpl; |
|
|
|
|
import org.springblade.core.tool.api.R; |
|
|
|
|
import org.springblade.core.tool.utils.Func; |
|
|
|
|
import org.springblade.core.tool.utils.RandomType; |
|
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
|
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
|
import java.util.List; |
|
|
|
|
import java.util.Map; |
|
|
|
|
import java.util.Objects; |
|
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
import java.util.stream.Stream; |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 配送增值服务表 服务实现类 |
|
|
|
@ -40,10 +57,17 @@ import java.util.List;
|
|
|
|
|
@Service |
|
|
|
|
@AllArgsConstructor |
|
|
|
|
@Slf4j |
|
|
|
|
public class DistributionAddvalueServiceImpl extends ServiceImpl<DistributionAddvalueMapper, DistributionAddvalueEntity> implements IDistributionAddvalueService { |
|
|
|
|
public class DistributionAddvalueServiceImpl extends BaseServiceImpl<DistributionAddvalueMapper, DistributionAddvalueEntity> implements IDistributionAddvalueService { |
|
|
|
|
|
|
|
|
|
private final DistributionAddvalueMapper distributionAddvalueMapper; |
|
|
|
|
|
|
|
|
|
private final DistributionReservationMapper distributionReservationMapper; |
|
|
|
|
private final IDistributionStockListService distributionStockListService; |
|
|
|
|
private final DistributionDeliveryListMapper distributionDeliveryListMapper; |
|
|
|
|
// private final IDistributionAddvalueService distributionAddvalueService;
|
|
|
|
|
private final IDistributionAddvaluePackageService distributionAddvaluePackageService; |
|
|
|
|
private final IDistributionAddvalueDetailService distributionAddvalueDetailService; |
|
|
|
|
private final DistributionAddvalueDetailMapper distributionAddvalueDetailMapper; |
|
|
|
|
private final DistributionAddvaluePackageMapper distributionAddvaluePackageMapper; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@ -66,8 +90,294 @@ public class DistributionAddvalueServiceImpl extends ServiceImpl<DistributionAdd
|
|
|
|
|
//根据客户ID查询增值服务列表
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public R scanAddvaluePackage(DistributionAppAddvalueDTO distributionAppAddvalueDTO) { |
|
|
|
|
Long reservationId = distributionAppAddvalueDTO.getReservationId(); |
|
|
|
|
List<DistributionParcelListEntity> parcelListEntityList = distributionReservationMapper.selectPackageListByReservationId(reservationId); |
|
|
|
|
List<DisStockListDetailEntity> detailEntities = distributionReservationMapper.selectInventoryListByReservation(reservationId); |
|
|
|
|
if (Func.isEmpty(parcelListEntityList) && Func.isEmpty(detailEntities)) { |
|
|
|
|
//该客户不存在包件信息
|
|
|
|
|
return Resp.scanFail("客户信息有误!!!", "客户信息有误"); |
|
|
|
|
} |
|
|
|
|
List<DistributionParcelListEntity> packageInfo = parcelListEntityList.stream().filter(p -> p.getOrderPackageCode().equals(distributionAppAddvalueDTO.getBarcode())).collect(Collectors.toList()); |
|
|
|
|
// DistributionAddvaluePackageEntity distributionAddvaluePackageEntiy = new DistributionAddvaluePackageEntity();
|
|
|
|
|
if (Func.isNotEmpty(packageInfo) && packageInfo.size() == 1) { |
|
|
|
|
DistributionParcelListEntity parcelListEntity = packageInfo.get(0); |
|
|
|
|
DistributionAddvaluePackageEntity distributionAddvaluePackageEntiy = Func.copy(parcelListEntity, DistributionAddvaluePackageEntity.class); |
|
|
|
|
distributionAddvaluePackageEntiy.setConditions(1); |
|
|
|
|
distributionAddvaluePackageEntiy.setQuantity(parcelListEntity.getQuantity()); |
|
|
|
|
distributionAddvaluePackageEntiy.setPackageId(parcelListEntity.getId()); |
|
|
|
|
distributionAddvaluePackageEntiy.setMaterialName(parcelListEntity.getMaterialName()); |
|
|
|
|
distributionAddvaluePackageEntiy.setReservationId(distributionAppAddvalueDTO.getReservationId()); |
|
|
|
|
distributionAddvaluePackageEntiy.setStockArticleId(parcelListEntity.getStockArticleId()); |
|
|
|
|
distributionAddvaluePackageEntiy.setOrderPackageCode(parcelListEntity.getOrderPackageCode()); |
|
|
|
|
distributionAddvaluePackageEntiy.setRecordType("1"); |
|
|
|
|
return Res.scanSuccess("扫描成功", "扫描成功", distributionAddvaluePackageEntiy); |
|
|
|
|
} else if (packageInfo.size() == 0) { |
|
|
|
|
//包件列表不存在,这里查询看库存品是否存在?
|
|
|
|
|
List<DisStockListDetailEntity> inventoryInfo = detailEntities.stream().filter(i -> Func.isNotEmpty(i.getStockPackageCode()) && i.getStockPackageCode().equals(distributionAppAddvalueDTO.getBarcode())).collect(Collectors.toList()); |
|
|
|
|
if (Func.isNotEmpty(inventoryInfo) && inventoryInfo.size() == 1) { |
|
|
|
|
DisStockListDetailEntity disStockListDetailEntity = inventoryInfo.get(0); |
|
|
|
|
DistributionStockListEntity stockListEntity = distributionStockListService.getById(disStockListDetailEntity.getStockListId()); |
|
|
|
|
DistributionAddvaluePackageEntity distributionAddvaluePackageEntiy = Func.copy(disStockListDetailEntity, DistributionAddvaluePackageEntity.class); |
|
|
|
|
distributionAddvaluePackageEntiy.setConditions(2); |
|
|
|
|
distributionAddvaluePackageEntiy.setQuantity(disStockListDetailEntity.getNum()); |
|
|
|
|
distributionAddvaluePackageEntiy.setPackageId(disStockListDetailEntity.getId()); |
|
|
|
|
distributionAddvaluePackageEntiy.setMaterialName(stockListEntity.getDescriptionGoods()); |
|
|
|
|
distributionAddvaluePackageEntiy.setReservationId(distributionAppAddvalueDTO.getReservationId()); |
|
|
|
|
distributionAddvaluePackageEntiy.setStockArticleId(disStockListDetailEntity.getStockListId()); |
|
|
|
|
distributionAddvaluePackageEntiy.setOrderPackageCode(disStockListDetailEntity.getStockPackageCode()); |
|
|
|
|
distributionAddvaluePackageEntiy.setRecordType("1"); |
|
|
|
|
return Res.scanSuccess("扫描成功", "扫描成功", distributionAddvaluePackageEntiy); |
|
|
|
|
} else if (inventoryInfo.size() == 0) { |
|
|
|
|
//该客户下既不存在该包件,也不存在该库存品 ---
|
|
|
|
|
//查询是否属于该配送任务
|
|
|
|
|
List<DistributionParcelListEntity> parcelListEntities = distributionDeliveryListMapper.selectPackageListByDeliveryListId(distributionAppAddvalueDTO.getDeliveryId()); |
|
|
|
|
if (Func.isNotEmpty(parcelListEntities)) { |
|
|
|
|
List<DistributionParcelListEntity> collect = parcelListEntities.stream().filter(s -> s.getOrderPackageCode().equals(distributionAppAddvalueDTO.getBarcode())).collect(Collectors.toList()); |
|
|
|
|
if (Func.isNotEmpty(collect)) { |
|
|
|
|
return Resp.scanFail("扫描失败", "窜货"); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
//查询是否该配送任务中是否存在该库存品包件信息
|
|
|
|
|
List<DisStockListDetailEntity> stockListDetailEntities = distributionDeliveryListMapper.selectInventoryListByDeliveryListId(distributionAppAddvalueDTO.getDeliveryId()); |
|
|
|
|
if (Func.isNotEmpty(stockListDetailEntities)) { |
|
|
|
|
List<DisStockListDetailEntity> detailEntityList = stockListDetailEntities.stream().filter(s -> s.getStockPackageCode().equals(distributionAppAddvalueDTO.getBarcode())).collect(Collectors.toList()); |
|
|
|
|
if (Func.isNotEmpty(detailEntityList)) { |
|
|
|
|
return Resp.scanFail("扫描失败", "窜货"); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
return Resp.scanFail("扫描失败", "此码无效"); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
log.error("出现一个客户下重复库存品包件码的情况"); |
|
|
|
|
return Resp.scanFail("扫描失败", "窜货"); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
log.error("出现一个客户下重复包件码的情况"); |
|
|
|
|
return Resp.scanFail("扫描失败", "窜货"); |
|
|
|
|
} |
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
@Transactional |
|
|
|
|
public R saveAddvalueInfo(DistributionAppAddvalueDTO distributionAppAddvalueDTO) { |
|
|
|
|
List<DistributionAddvaluePackageEntity> packageEntityList = distributionAppAddvalueDTO.getPackageEntityList(); |
|
|
|
|
if (Func.isEmpty(packageEntityList)) { |
|
|
|
|
return Resp.scanFail("请添加包件", "请添加包件"); |
|
|
|
|
} |
|
|
|
|
DistributionAddvalueDetailEntity distributionAddvalueDetailEntity = new DistributionAddvalueDetailEntity(); |
|
|
|
|
// 上楼 超区 平移 搬运 分拣 专车
|
|
|
|
|
switch (distributionAppAddvalueDTO.getAddvalueType()) { |
|
|
|
|
case "1": |
|
|
|
|
if (Func.isEmpty(distributionAppAddvalueDTO.getFloolNum())) { |
|
|
|
|
return Resp.scanFail("添加失败", "请输入楼层数"); |
|
|
|
|
} else { |
|
|
|
|
distributionAddvalueDetailEntity.setFloolNum(distributionAppAddvalueDTO.getFloolNum()); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case "2": |
|
|
|
|
if (Func.isEmpty(distributionAppAddvalueDTO.getDistance())) { |
|
|
|
|
return Resp.scanFail("添加失败", "请输入超区公里数"); |
|
|
|
|
} else { |
|
|
|
|
distributionAddvalueDetailEntity.setDistance(distributionAppAddvalueDTO.getDistance()); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case "3": |
|
|
|
|
if (Func.isEmpty(distributionAppAddvalueDTO.getDistance())) { |
|
|
|
|
return Resp.scanFail("添加失败", "请输入平移距离"); |
|
|
|
|
} else { |
|
|
|
|
distributionAddvalueDetailEntity.setDistance(distributionAppAddvalueDTO.getDistance()); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case "4": |
|
|
|
|
if (Func.isEmpty(distributionAppAddvalueDTO.getNum())) { |
|
|
|
|
return Resp.scanFail("添加失败", "请输入件数"); |
|
|
|
|
} else { |
|
|
|
|
distributionAddvalueDetailEntity.setNum(distributionAppAddvalueDTO.getNum()); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
// case "5":
|
|
|
|
|
// if (Func.isEmpty(distributionAppAddvalueDTO.getNum())) {
|
|
|
|
|
// return Resp.scanFail("添加失败", "请输入件数");
|
|
|
|
|
// } else {
|
|
|
|
|
// distributionAddvalueDetailEntity.setNum(distributionAppAddvalueDTO.getNum());
|
|
|
|
|
// }
|
|
|
|
|
// break;
|
|
|
|
|
case "6": |
|
|
|
|
if (Func.isEmpty(distributionAppAddvalueDTO.getFee())) { |
|
|
|
|
return Resp.scanFail("添加失败", "请输入件数"); |
|
|
|
|
} else { |
|
|
|
|
distributionAddvalueDetailEntity.setFee(distributionAppAddvalueDTO.getFee()); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
default: |
|
|
|
|
return Resp.scanFail("添加失败", "服务器正忙"); |
|
|
|
|
} |
|
|
|
|
DistributionAddvalueEntity distributionAddvalueEntity = new DistributionAddvalueEntity(); |
|
|
|
|
distributionAddvalueEntity.setAddvalueId(distributionAppAddvalueDTO.getAddvalueType()); |
|
|
|
|
distributionAddvalueEntity.setCode(Func.random(13, RandomType.INT)); |
|
|
|
|
distributionAddvalueEntity.setRefType(1); |
|
|
|
|
distributionAddvalueEntity.setRefId(distributionAppAddvalueDTO.getReservationId()); |
|
|
|
|
distributionAddvalueEntity.setDeliveryListId(distributionAppAddvalueDTO.getDeliveryId()); |
|
|
|
|
this.save(distributionAddvalueEntity); |
|
|
|
|
distributionAddvalueDetailEntity.setAddvalueId(distributionAddvalueEntity.getId()); |
|
|
|
|
distributionAddvalueDetailService.save(distributionAddvalueDetailEntity); |
|
|
|
|
packageEntityList.stream().forEach(p->p.setAddvalueDetailId(distributionAddvalueDetailEntity.getId())); |
|
|
|
|
distributionAddvaluePackageService.saveBatch(packageEntityList); |
|
|
|
|
return Resp.scanSuccess("添加成功","添加成功"); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public List<DistributionAddvaluePackageEntity> getAllPackageList(DistributionAppAddvalueDTO distributionAppAddvalueDTO) { |
|
|
|
|
List<DistributionAddvaluePackageEntity> packageEntityList = distributionAppAddvalueDTO.getPackageEntityList(); |
|
|
|
|
Long reservationId = distributionAppAddvalueDTO.getReservationId(); |
|
|
|
|
List<DistributionAddvaluePackageEntity> parcelListEntities = distributionReservationMapper.selectAppPackageListByReservationId(reservationId); |
|
|
|
|
List<DistributionAddvaluePackageEntity> detailEntities = distributionReservationMapper.selectAppInventoryListByReservation(reservationId); |
|
|
|
|
parcelListEntities.addAll(detailEntities); |
|
|
|
|
if (Func.isEmpty(parcelListEntities)) { |
|
|
|
|
log.error("################该客户下包件信息:{}", parcelListEntities); |
|
|
|
|
log.error("################该客户下库存品包件信息:{}", detailEntities); |
|
|
|
|
// return R.fail("服务器正忙....");
|
|
|
|
|
} |
|
|
|
|
List<DistributionAddvaluePackageEntity> entityList = null; |
|
|
|
|
if (Func.isNotEmpty(packageEntityList)) { |
|
|
|
|
entityList = parcelListEntities.stream().filter(p1 -> packageEntityList.stream().noneMatch(p2 -> p2.equals(p1.getId()))).collect(Collectors.toList()); |
|
|
|
|
if (Func.isEmpty(entityList)) { |
|
|
|
|
log.error("################该客户下库存品包件信息:{}", detailEntities); |
|
|
|
|
log.error("################该客户下包件信息:{}", parcelListEntities); |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
entityList = parcelListEntities; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return entityList; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public R updateAddvalueInfo(DistributionAppAddvalueDTO distributionAppAddvalueDTO) { |
|
|
|
|
List<DistributionAddvaluePackageEntity> packageEntityList = distributionAppAddvalueDTO.getPackageEntityList(); |
|
|
|
|
DistributionAddvalueDetailEntity distributionAddvalueDetailEntity = new DistributionAddvalueDetailEntity(); |
|
|
|
|
// 上楼 超区 平移 搬运 分拣 专车
|
|
|
|
|
switch (distributionAppAddvalueDTO.getAddvalueType()) { |
|
|
|
|
case "1": |
|
|
|
|
if (Func.isEmpty(distributionAppAddvalueDTO.getFloolNum())) { |
|
|
|
|
return Resp.scanFail("添加失败", "请输入楼层数"); |
|
|
|
|
} else { |
|
|
|
|
distributionAddvalueDetailEntity.setFloolNum(distributionAppAddvalueDTO.getFloolNum()); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case "2": |
|
|
|
|
if (Func.isEmpty(distributionAppAddvalueDTO.getDistance())) { |
|
|
|
|
return Resp.scanFail("添加失败", "请输入超区公里数"); |
|
|
|
|
} else { |
|
|
|
|
distributionAddvalueDetailEntity.setDistance(distributionAppAddvalueDTO.getDistance()); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case "3": |
|
|
|
|
if (Func.isEmpty(distributionAppAddvalueDTO.getDistance())) { |
|
|
|
|
return Resp.scanFail("添加失败", "请输入平移距离"); |
|
|
|
|
} else { |
|
|
|
|
distributionAddvalueDetailEntity.setDistance(distributionAppAddvalueDTO.getDistance()); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
case "4": |
|
|
|
|
if (Func.isEmpty(distributionAppAddvalueDTO.getNum())) { |
|
|
|
|
return Resp.scanFail("添加失败", "请输入件数"); |
|
|
|
|
} else { |
|
|
|
|
distributionAddvalueDetailEntity.setNum(distributionAppAddvalueDTO.getNum()); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
// case "5":
|
|
|
|
|
// if (Func.isEmpty(distributionAppAddvalueDTO.getNum())) {
|
|
|
|
|
// return Resp.scanFail("添加失败", "请输入件数");
|
|
|
|
|
// } else {
|
|
|
|
|
// distributionAddvalueDetailEntity.setNum(distributionAppAddvalueDTO.getNum());
|
|
|
|
|
// }
|
|
|
|
|
// break;
|
|
|
|
|
case "6": |
|
|
|
|
if (Func.isEmpty(distributionAppAddvalueDTO.getFee())) { |
|
|
|
|
return Resp.scanFail("添加失败", "请输入件数"); |
|
|
|
|
} else { |
|
|
|
|
distributionAddvalueDetailEntity.setFee(distributionAppAddvalueDTO.getFee()); |
|
|
|
|
} |
|
|
|
|
break; |
|
|
|
|
default: |
|
|
|
|
return Resp.scanFail("添加失败", "服务器正忙"); |
|
|
|
|
} |
|
|
|
|
if (Func.isEmpty(packageEntityList) && packageEntityList.size() == 0) { |
|
|
|
|
//没有包件信息,对该增值服务进行清除
|
|
|
|
|
DistributionAddvalueEntity distributionAddvalueEntity = distributionAddvalueMapper.selectOne(Wrappers.<DistributionAddvalueEntity>query().lambda() |
|
|
|
|
.eq(DistributionAddvalueEntity::getRefId, distributionAppAddvalueDTO.getReservationId()) |
|
|
|
|
.eq(DistributionAddvalueEntity::getAddvalueId, distributionAppAddvalueDTO.getAddvalueType())); |
|
|
|
|
DistributionAddvalueDetailEntity addvalueDetailEntity = distributionAddvalueDetailService.getOne(Wrappers.<DistributionAddvalueDetailEntity>query().lambda() |
|
|
|
|
.eq(DistributionAddvalueDetailEntity::getAddvalueId, distributionAddvalueEntity.getId())); |
|
|
|
|
|
|
|
|
|
distributionAddvalueMapper.deleteAddvalue(distributionAppAddvalueDTO.getReservationId(),distributionAppAddvalueDTO.getAddvalueType()); |
|
|
|
|
distributionAddvalueDetailMapper.deleteAddvalueDetail(distributionAddvalueEntity.getId()); |
|
|
|
|
distributionAddvaluePackageMapper.deleteAddvaluePackageList(distributionAppAddvalueDTO.getReservationId(),addvalueDetailEntity.getId()); |
|
|
|
|
}else { |
|
|
|
|
// 查询出原来的包件信息
|
|
|
|
|
DistributionAddvalueVO addvalueVO = distributionAddvalueMapper.selectReservationAddvalue(distributionAppAddvalueDTO.getReservationId(), distributionAppAddvalueDTO.getAddvalueType()); |
|
|
|
|
String packageListIds = addvalueVO.getPackageListIds(); |
|
|
|
|
if (Func.isNotEmpty(packageListIds)){ |
|
|
|
|
List<DistributionAddvaluePackageEntity> distributionAddvaluePackageEntities = distributionAddvaluePackageService.listByIds(Func.toLongList(packageListIds)); |
|
|
|
|
Map<Long, List<DistributionAddvaluePackageEntity>> oldPackageList = distributionAddvaluePackageEntities.stream().collect(Collectors.groupingBy(DistributionAddvaluePackageEntity::getPackageId)); |
|
|
|
|
Map<Long, List<DistributionAddvaluePackageEntity>> newPackageList = packageEntityList.stream().collect(Collectors.groupingBy(DistributionAddvaluePackageEntity::getPackageId)); |
|
|
|
|
newPackageList.forEach((k,v)->{ |
|
|
|
|
if (Func.isEmpty(oldPackageList.get(k))){ |
|
|
|
|
//从老的包件中无法进行获取,这里进行包件的新增
|
|
|
|
|
DistributionAddvaluePackageEntity distributionAddvaluePackageEntity = v.get(0); |
|
|
|
|
distributionAddvaluePackageEntity.setAddvalueDetailId(distributionAddvaluePackageEntities.get(0).getAddvalueDetailId()); |
|
|
|
|
distributionAddvaluePackageService.save(distributionAddvaluePackageEntity); |
|
|
|
|
}else { |
|
|
|
|
//存在不进行维护
|
|
|
|
|
oldPackageList.remove(k); |
|
|
|
|
} |
|
|
|
|
}); |
|
|
|
|
if (Func.isEmpty(oldPackageList)){ |
|
|
|
|
//进行删除,这里删除的时候需要考虑是否删除增值服务项,是否删除整个关于该客户的增值服务信息
|
|
|
|
|
oldPackageList.forEach((m,n)->{ |
|
|
|
|
//进行删除
|
|
|
|
|
DistributionAddvaluePackageEntity distributionAddvaluePackageEntity = n.get(0); |
|
|
|
|
distributionAddvaluePackageMapper.deleteAddvaluePackage(distributionAddvaluePackageEntity.getReservationId(),distributionAddvaluePackageEntity.getPackageId()); |
|
|
|
|
|
|
|
|
|
}); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return null; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
public R editAddvalueInfo(DistributionAppAddvalueDTO distributionAppAddvalueDTO) { |
|
|
|
|
DistributionAddvalueVO addvalueVO = distributionAddvalueMapper.selectReservationAddvalue(distributionAppAddvalueDTO.getReservationId(), distributionAppAddvalueDTO.getAddvalueType()); |
|
|
|
|
String packageListIds = addvalueVO.getPackageListIds(); |
|
|
|
|
if (Func.isNotEmpty(packageListIds)){ |
|
|
|
|
List<Long> longs = Func.toLongList(packageListIds); |
|
|
|
|
List<DistributionAddvaluePackageEntity> distributionAddvaluePackageEntities = distributionAddvaluePackageService.listByIds(longs); |
|
|
|
|
addvalueVO.setPackageEntityList(distributionAddvaluePackageEntities); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
return R.data(addvalueVO); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|