Merge branch 'master' of http://gitea.zianxin.com/zianxin-tec/biz-api-cloud
This commit is contained in:
commit
6195ca447d
3 files changed
+41
-20
No files matched your search
+1
-1
@@ -35,7 +35,7 @@ public class SupermarketSpuUpdateStockReqDTO {
|
||||
/**
|
||||
* 商品 SKU 编号
|
||||
*/
|
||||
@NotNull(message = "商品 SPU 编号不能为空")
|
||||
@NotNull(message = "包装单位unit 编号不能为空")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
|
||||
+8
-4
@@ -142,10 +142,14 @@ public class SmErpInventoryRecordsServiceImpl extends ServiceImpl<SmErpInventory
|
||||
));
|
||||
// 设置商品名称到主表实体
|
||||
records.forEach(plan -> {
|
||||
SysUser sysUser = userMap.getOrDefault(plan.getHandlerUserId(), new SysUser());
|
||||
plan.setHandlerUserName(sysUser.getUsername());
|
||||
List<String> names = planGoodsMap.getOrDefault(plan.getId(), Collections.emptyList());
|
||||
plan.setProductName(String.join(", ", names));
|
||||
//移动端自动扣款入库,无需经办人
|
||||
if (null!=plan.getHandlerUserId()){
|
||||
SysUser sysUser = userMap.getOrDefault(plan.getHandlerUserId(), new SysUser());
|
||||
plan.setHandlerUserName(sysUser.getUsername());
|
||||
List<String> names = planGoodsMap.getOrDefault(plan.getId(), Collections.emptyList());
|
||||
plan.setProductName(String.join(", ", names));
|
||||
}
|
||||
|
||||
});
|
||||
return pageData;
|
||||
}
|
||||
|
||||
+32
-15
@@ -79,6 +79,9 @@ public class SmErpSpuServiceImpl extends ServiceImpl<SmErpSpuMapper, SmErpSpuEnt
|
||||
|
||||
private final RemoteMchService remoteMchService;
|
||||
|
||||
private final SmErpInventoryRecordsMapper smErpInventoryRecordsMapper;
|
||||
private final SmErpInventoryRecordsItemMapper smErpInventoryRecordsItemMapper;
|
||||
|
||||
|
||||
@Autowired
|
||||
private Sequence sequence;
|
||||
@@ -199,16 +202,18 @@ public class SmErpSpuServiceImpl extends ServiceImpl<SmErpSpuMapper, SmErpSpuEnt
|
||||
public R updateSpuStock(SupermarketSpuUpdateStockReqDTO updateStockReqDTO) {
|
||||
List<UpdateStockDTO> updateStockDTOS = new ArrayList<UpdateStockDTO>();
|
||||
for (SupermarketSpuUpdateStockReqDTO.Item v : updateStockReqDTO.getItems()) {
|
||||
SmErpUnitEntity smErpUnitEntity = smErpUnitService.getById(v.getId());
|
||||
// 查询当前库存
|
||||
SmErpSpuEntity spu = baseMapper.selectById(v.getId());
|
||||
if (spu == null) {
|
||||
Long spuId = smErpUnitEntity.getSpuId();
|
||||
SmErpSpuEntity spu = baseMapper.selectById(spuId);
|
||||
if (null==spu) {
|
||||
return R.failed(spu.getProductName() + "商品不存在");
|
||||
}
|
||||
if (v.getIncrCount() == 0) {
|
||||
return R.failed("扣减不能为0");
|
||||
}
|
||||
LambdaUpdateWrapper<SmErpStockEntity> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
|
||||
lambdaUpdateWrapper.eq(SmErpStockEntity::getErpSpuId, v.getId());
|
||||
lambdaUpdateWrapper.eq(SmErpStockEntity::getErpSpuId, spuId);
|
||||
SmErpStockEntity smErpStockEntity = smErpStockMapper.selectOne(lambdaUpdateWrapper);
|
||||
|
||||
|
||||
@@ -217,20 +222,32 @@ public class SmErpSpuServiceImpl extends ServiceImpl<SmErpSpuMapper, SmErpSpuEnt
|
||||
return R.failed(spu.getProductName() + "库存不足,无法完成操作");
|
||||
}
|
||||
|
||||
UpdateStockDTO updateStockDTO = new UpdateStockDTO(v.getId(), v.getIncrCount());
|
||||
UpdateStockDTO updateStockDTO = new UpdateStockDTO(spuId, v.getIncrCount());
|
||||
updateStockDTOS.add(updateStockDTO);
|
||||
}
|
||||
smErpStockService.updateStock(updateStockDTOS);
|
||||
//todo 生成出入库记录
|
||||
// SmErpInventoryRecordsEntity smErpInventoryRecordsEntity = new SmErpInventoryRecordsEntity();
|
||||
// String s = sequence.nextNo();
|
||||
// String result = InventoryTypeEnum.LSCK.getValue() + "-" + s;
|
||||
// smErpInventoryRecordsEntity.setInventoryCode(result);
|
||||
// smErpInventoryRecordsEntity.setInventoryDate(LocalDate.now());
|
||||
// smErpInventoryRecordsEntity.setInventoryType(InventoryTypeEnum.LSCK.getType());
|
||||
// smErpInventoryRecordsEntity.setOrderType(OrderTypeEnum.CK.getType());
|
||||
// smErpInventoryRecordsEntity.setDeviceType(updateStockReqDTO.getDeviceType());
|
||||
smErpStockService.updateStock(updateStockDTOS);
|
||||
|
||||
//todo 生成出入库记录
|
||||
SmErpInventoryRecordsEntity smErpInventoryRecordsEntity = new SmErpInventoryRecordsEntity();
|
||||
String s = sequence.nextNo();
|
||||
String result = InventoryTypeEnum.LSCK.getValue() + "-" + s;
|
||||
smErpInventoryRecordsEntity.setInventoryCode(result);
|
||||
smErpInventoryRecordsEntity.setInventoryDate(LocalDate.now());
|
||||
smErpInventoryRecordsEntity.setInventoryType(InventoryTypeEnum.LSCK.getType());
|
||||
smErpInventoryRecordsEntity.setOrderType(OrderTypeEnum.CK.getType());
|
||||
smErpInventoryRecordsEntity.setDeviceType(updateStockReqDTO.getDeviceType());
|
||||
smErpInventoryRecordsMapper.insert(smErpInventoryRecordsEntity);
|
||||
SmErpInventoryRecordsItemEntity smErpInventoryRecordsItemEntity = new SmErpInventoryRecordsItemEntity();
|
||||
smErpInventoryRecordsItemEntity.setInventoryId(smErpInventoryRecordsEntity.getId());
|
||||
smErpInventoryRecordsItemEntity.setErpSpuId(spuId);
|
||||
smErpInventoryRecordsItemEntity.setQuantity(v.getIncrCount());
|
||||
smErpInventoryRecordsItemEntity.setUnitId(v.getId());
|
||||
smErpInventoryRecordsItemEntity.setOrderType(OrderTypeEnum.CK.getType());
|
||||
//todo 添加收款金额字段和会员卡号,用于记录零售业务
|
||||
smErpInventoryRecordsItemEntity.setUnitPrice
|
||||
(smErpUnitEntity.getPromotionPrice()==null || smErpUnitEntity.getPromotionPrice()==0
|
||||
?smErpUnitEntity.getRetailPrice():smErpUnitEntity.getPromotionPrice());
|
||||
smErpInventoryRecordsItemMapper.insert(smErpInventoryRecordsItemEntity);
|
||||
}
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user