|
|
@@ -525,6 +525,14 @@ public class OrderService extends BaseService<Order> {
|
|
|
// if (orderForUpdate.getSumQuantity().compareTo(orderForUpdate.getOutQty()) == 0) {
|
|
|
// throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.ORDER_IS_OUT.getMessage());
|
|
|
// }
|
|
|
+ // 商户产品版本
|
|
|
+ String gradeCode = "PRO";
|
|
|
+ Map<String, Object> paramCompany = new HashMap<>();
|
|
|
+ paramCompany.put("cpId", orderVO.getCpId());
|
|
|
+ List<Map<String, Object>> listCompany = commonMapper.getCompany(paramCompany);
|
|
|
+ if (listCompany.size() > 0) {
|
|
|
+ gradeCode = listCompany.get(0).get("gradeCode").toString();
|
|
|
+ }
|
|
|
|
|
|
// 明细实体(避免并发,需要再查一遍)
|
|
|
OrderItem orderItemForUpdate;
|
|
|
@@ -536,23 +544,16 @@ public class OrderService extends BaseService<Order> {
|
|
|
if (deleteOrderItemVOList.size() > 0) {
|
|
|
for (OrderItemVO orderItemVO : deleteOrderItemVOList) {
|
|
|
orderItemForUpdate = orderItemMapper.selectByIdForUpdate(orderItemVO.getItemId());
|
|
|
- // 非待出库单据不能删除
|
|
|
- if (!Constant.OutStatus.DAICHUKU.getName().equals(orderItemForUpdate.getOutStatus())) {
|
|
|
- throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.NO_WAIT_INTO.getMessage());
|
|
|
- } else {
|
|
|
+ //当gradeCode为"STD"时,无论outStatus是什么,都直接删除;而当gradeCode不是"STD"时,只有outStatus为DAICHUKU时才允许删除
|
|
|
+ if ("STD".equals(gradeCode) ||
|
|
|
+ (Constant.OutStatus.DAICHUKU.getName().equals(orderItemForUpdate.getOutStatus()))) {
|
|
|
orderItemMapper.deleteById(orderItemVO.getItemId());
|
|
|
+ } else {
|
|
|
+ throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.NO_WAIT_INTO.getMessage());
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- // 商户产品版本
|
|
|
- String gradeCode = "PRO";
|
|
|
- Map<String, Object> paramCompany = new HashMap<>();
|
|
|
- paramCompany.put("cpId", orderVO.getCpId());
|
|
|
- List<Map<String, Object>> listCompany = commonMapper.getCompany(paramCompany);
|
|
|
- if (listCompany.size() > 0) {
|
|
|
- gradeCode = listCompany.get(0).get("gradeCode").toString();
|
|
|
- }
|
|
|
|
|
|
// 编辑的
|
|
|
List<OrderItemVO> editOrderItemVOList = orderVO.getItemList().stream().filter(it -> it.getItemId() != null).collect(Collectors.toList());
|
|
|
@@ -844,6 +845,9 @@ public class OrderService extends BaseService<Order> {
|
|
|
if (orderVO.getDeleteItemList() != null) { //删除list
|
|
|
List<OrderItemVO> deleteOrderItemVOList = orderVO.getDeleteItemList().stream().filter(it -> it.getItemId() != null).collect(Collectors.toList());
|
|
|
if (deleteOrderItemVOList.size() > 0) {
|
|
|
+ for (OrderItemVO orderItemVO : deleteOrderItemVOList) {
|
|
|
+ orderItemVO.setOutId(outboundResponsejson.getOutId());
|
|
|
+ }
|
|
|
orderVO.setDeleteItemList(deleteOrderItemVOList);
|
|
|
}
|
|
|
}
|