|
|
@@ -1086,6 +1086,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
items.setId(orderItems.getSrcItemId());
|
|
|
items.setIsIssue("4");
|
|
|
orderItemsMapper.updateById(items);
|
|
|
+ }else if (OrderTypeEnum.INVENTORY.getType().equals(submitDto.getBillType())) {
|
|
|
+ orderItems.setBillType(OrderTypeEnum.INVENTORY.getType());
|
|
|
}
|
|
|
orderItems.setPurchaserId(submitDto.getPurchaserId());
|
|
|
orderItems.setWarehouseId(submitDto.getStorageId());
|
|
|
@@ -1099,7 +1101,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
orderItemsMapper.insert(orderItems);
|
|
|
balanceNumber = balanceNumber.add(orderItems.getStorageInQuantity());
|
|
|
balanceMoney = balanceMoney.add(orderItems.getBalanceMoney());
|
|
|
- goodsName.add(orderItems.getGoodsName());
|
|
|
+ goodsName.add(orderItems.getCname());
|
|
|
}
|
|
|
}
|
|
|
//明细品名去重
|
|
|
@@ -1170,6 +1172,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
items.setIsIssue("4");
|
|
|
orderItemsMapper.updateById(items);
|
|
|
}
|
|
|
+ }else if (OrderTypeEnum.INVENTORY.getType().equals(submitDto.getBillType())) {
|
|
|
+ orderItems.setBillType(OrderTypeEnum.INVENTORY.getType());
|
|
|
}
|
|
|
orderItems.setPurchaserId(submitDto.getPurchaserId());
|
|
|
orderItems.setWarehouseId(submitDto.getStorageId());
|
|
|
@@ -1191,7 +1195,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
}
|
|
|
balanceNumber = balanceNumber.add(orderItems.getStorageInQuantity());
|
|
|
balanceMoney = balanceMoney.add(orderItems.getBalanceMoney());
|
|
|
- goodsName.add(orderItems.getGoodsName());
|
|
|
+ goodsName.add(orderItems.getCname());
|
|
|
}
|
|
|
}
|
|
|
//明细品名去重
|
|
|
@@ -1289,6 +1293,8 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
items.setId(orderItems.getSrcItemId());
|
|
|
items.setIsIssue("4");
|
|
|
orderItemsMapper.updateById(items);
|
|
|
+ } else if (OrderTypeEnum.INVENTORY.getType().equals(submitDto.getBillType())) {
|
|
|
+ orderItems.setBillType(OrderTypeEnum.INVENTORY.getType());
|
|
|
}
|
|
|
//判断明细id是否为空 true 新增 false修改
|
|
|
if (ObjectUtils.isNotNull(orderItems.getId())) {
|
|
|
@@ -1304,7 +1310,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
}
|
|
|
balanceNumber = balanceNumber.add(orderItems.getStorageInQuantity());
|
|
|
balanceMoney = balanceMoney.add(orderItems.getBalanceMoney());
|
|
|
- goodsName.add(orderItems.getGoodsName());
|
|
|
+ goodsName.add(orderItems.getCname());
|
|
|
}
|
|
|
}
|
|
|
//明细品名去重
|
|
|
@@ -1474,9 +1480,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
receivableLambdaQueryWrapper.eq(OrderFees::getPid, order.getId());
|
|
|
receivableLambdaQueryWrapper.eq(OrderFees::getFeesType, 2);
|
|
|
List<OrderFees> receivableOrderFeesList = orderFeesService.list(receivableLambdaQueryWrapper);
|
|
|
- if (ObjectUtils.isNotNull(receivableOrderFeesList)){
|
|
|
+ if (ObjectUtils.isNotNull(receivableOrderFeesList)) {
|
|
|
auditProecessDTO.setPayAmount(receivableOrderFeesList.stream().map(OrderFees::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add));
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
auditProecessDTO.setPayAmount(new BigDecimal(0));
|
|
|
}
|
|
|
//应收
|
|
|
@@ -1486,9 +1492,9 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
payLambdaQueryWrapper.eq(OrderFees::getPid, order.getId());
|
|
|
payLambdaQueryWrapper.eq(OrderFees::getFeesType, 1);
|
|
|
List<OrderFees> payOrderFeesList = orderFeesService.list(payLambdaQueryWrapper);
|
|
|
- if (ObjectUtils.isNotNull(receivableOrderFeesList)){
|
|
|
+ if (ObjectUtils.isNotNull(receivableOrderFeesList)) {
|
|
|
auditProecessDTO.setReceivableAmount(payOrderFeesList.stream().map(OrderFees::getAmount).reduce(BigDecimal.ZERO, BigDecimal::add));
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
auditProecessDTO.setReceivableAmount(new BigDecimal(0));
|
|
|
}
|
|
|
}
|
|
|
@@ -1524,26 +1530,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
if (order == null) {
|
|
|
throw new SecurityException("审批通过失败");
|
|
|
}
|
|
|
- //获取入库数据
|
|
|
- LambdaQueryWrapper<Order> RKOrderLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- RKOrderLambdaQueryWrapper
|
|
|
- .eq(Order::getIsDeleted, 0)
|
|
|
- .eq(Order::getOrderNo, order.getOrderNo())
|
|
|
- .eq(Order::getBillType, OrderTypeEnum.WAREHOUSING.getType())
|
|
|
- .eq(Order::getTenantId, AuthUtil.getTenantId());
|
|
|
- Order RKOrder = baseMapper.selectOne(RKOrderLambdaQueryWrapper);
|
|
|
- if (RKOrder == null) {
|
|
|
- throw new SecurityException("更新入库数据失败");
|
|
|
- }
|
|
|
- //入库明细
|
|
|
- LambdaQueryWrapper<OrderItems> RKOrderItemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
- RKOrderItemsLambdaQueryWrapper
|
|
|
- .eq(OrderItems::getIsDeleted, 0)
|
|
|
- .eq(OrderItems::getPid, RKOrder.getId())
|
|
|
- .eq(OrderItems::getBillType, OrderTypeEnum.WAREHOUSING.getType())
|
|
|
- .eq(OrderItems::getTenantId, AuthUtil.getTenantId());
|
|
|
- List<OrderItems> RKOrderItemsList = orderItemsMapper.selectList(RKOrderItemsLambdaQueryWrapper);
|
|
|
-
|
|
|
//入库审批通过
|
|
|
if (OrderTypeEnum.WAREHOUSING.getType().equals(order.getBillType())) {
|
|
|
if (order.getStatus() == 5) {
|
|
|
@@ -1585,14 +1571,6 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
orderItemsMapper.updateById(orderItems);
|
|
|
}
|
|
|
}
|
|
|
- long count = RKOrderItemsList.stream().filter(R -> R.getIsIssue().equals("7")).count();
|
|
|
- //判断入库明细是否已全部出库 true 修改入库主表总状态为已出库
|
|
|
- if (count == RKOrderItemsList.size()) {
|
|
|
- order.setSpecialCheckStatus(1);
|
|
|
- RKOrder.setSpecialCheckStatus(1);
|
|
|
- //修改入库状态
|
|
|
- baseMapper.updateById(RKOrder);
|
|
|
- }
|
|
|
//判断第几次出库审核
|
|
|
if (0 == times) {//第一次审批
|
|
|
order.setStatus(8);
|
|
|
@@ -1601,6 +1579,32 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
order.setStatus(5);
|
|
|
order.setConfirmStatus("1");
|
|
|
order.setOrderStatus("财务审批通过");
|
|
|
+
|
|
|
+ List<Long> srcItemIds = CkOrderItemsList.stream().map(OrderItems::getSrcItemId).distinct().collect(Collectors.toList());
|
|
|
+ List<OrderItems> orderItemsList = new ArrayList<>();
|
|
|
+ for (Long srcItemId :srcItemIds) {
|
|
|
+ orderItemsList.add(orderItemsMapper.selectById(srcItemId));
|
|
|
+ }
|
|
|
+ List<Long> pIds = orderItemsList.stream().map(OrderItems::getPid).distinct().collect(Collectors.toList());
|
|
|
+ for (Long pId :pIds) {
|
|
|
+ LambdaQueryWrapper<OrderItems> RKOrderItemsLambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ RKOrderItemsLambdaQueryWrapper
|
|
|
+ .eq(OrderItems::getIsDeleted, 0)
|
|
|
+ .eq(OrderItems::getPid, pId)
|
|
|
+ .eq(OrderItems::getTenantId, AuthUtil.getTenantId());
|
|
|
+ //入库明细
|
|
|
+ List<OrderItems> RkOrderItemsList = orderItemsMapper.selectList(RKOrderItemsLambdaQueryWrapper);
|
|
|
+ long count = RkOrderItemsList.stream().filter(R -> R.getIsIssue().equals("7")).count();
|
|
|
+ //判断入库明细是否已全部出库 true 修改入库主表总状态为已出库
|
|
|
+ if (count == RkOrderItemsList.size()) {
|
|
|
+ Order RKOrder = new Order();
|
|
|
+ RKOrder.setId(pId);
|
|
|
+ RKOrder.setSpecialCheckStatus(1);
|
|
|
+ //修改入库状态
|
|
|
+ baseMapper.updateById(RKOrder);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ order.setSpecialCheckStatus(1);
|
|
|
}
|
|
|
financeClient.updateByOrderId(order.getId());
|
|
|
//盘点审批通过
|
|
|
@@ -2319,7 +2323,7 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
*/
|
|
|
@Override
|
|
|
public List<Map<String, Object>> salesTrends(String year) {
|
|
|
- return baseMapper.salesTrends(AuthUtil.getTenantId(),year);
|
|
|
+ return baseMapper.salesTrends(AuthUtil.getTenantId(), year);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -2541,10 +2545,13 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
|
|
|
date = date - (agreementitems.getEnDays() - agreementitems.getFromDays() + 1);
|
|
|
text.append(orderItems.getStorageInQuantity()).append("*").append(agreementitems.getPrice()).append("*").append(agreementitems.getEnDays() - agreementitems.getFromDays() + 1).append("+");
|
|
|
} else {
|
|
|
- if (agreementitems.getPrice().compareTo(new BigDecimal(0)) > 0) {
|
|
|
- //业务天数乘以单价 = 剩余所需收费金额
|
|
|
- amount = amount.add((new BigDecimal(date + 2)).multiply(agreementitems.getPrice(), MathContext.UNLIMITED).multiply(orderItems.getStorageInQuantity()));
|
|
|
- text.append(order.getStorageQuantity()).append("*").append(agreementitems.getPrice()).append("*").append(date + 2);
|
|
|
+ if (date > 0) {
|
|
|
+ if (agreementitems.getPrice().compareTo(new BigDecimal(0)) > 0) {
|
|
|
+ //业务天数乘以单价 = 剩余所需收费金额
|
|
|
+ amount = amount.add((new BigDecimal(date + 2)).multiply(agreementitems.getPrice(), MathContext.UNLIMITED).multiply(orderItems.getStorageInQuantity()));
|
|
|
+ text.append(order.getStorageQuantity()).append("*").append(agreementitems.getPrice()).append("*").append(date + 2);
|
|
|
+ date = date - (agreementitems.getEnDays() - agreementitems.getFromDays() + 1);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
count++;
|