|
|
@@ -12,9 +12,11 @@ import com.dk.common.response.ResponseResultVO;
|
|
|
import com.dk.mdm.infrastructure.convert.sale.OrderConvert;
|
|
|
import com.dk.mdm.infrastructure.convert.sale.OrderItemConvert;
|
|
|
import com.dk.mdm.mapper.mst.CustomerMapper;
|
|
|
+import com.dk.mdm.mapper.sale.MultiOwnerMapper;
|
|
|
import com.dk.mdm.mapper.sale.OrderItemMapper;
|
|
|
import com.dk.mdm.mapper.sale.OrderMapper;
|
|
|
import com.dk.mdm.model.pojo.mst.Customer;
|
|
|
+import com.dk.mdm.model.pojo.sale.MultiOwner;
|
|
|
import com.dk.mdm.model.pojo.sale.Order;
|
|
|
import com.dk.common.service.BaseService;
|
|
|
import com.dk.common.mapper.BaseMapper;
|
|
|
@@ -64,6 +66,9 @@ public class OrderService extends BaseService<Order> {
|
|
|
private CustomerMapper customerMapper;
|
|
|
|
|
|
@Autowired
|
|
|
+ MultiOwnerMapper multiOwnerMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
private OrderConvert orderConvert;
|
|
|
|
|
|
@Autowired
|
|
|
@@ -79,6 +84,7 @@ public class OrderService extends BaseService<Order> {
|
|
|
return super.mergeListWithCount(orderQuery, orderMapper.selectByCond(orderQuery),
|
|
|
orderMapper.countByCond(orderQuery));
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
* @desc : 以销定采 查询
|
|
|
* @author : 王英杰
|
|
|
@@ -89,6 +95,7 @@ public class OrderService extends BaseService<Order> {
|
|
|
return super.mergeListWithCount(orderQuery, orderMapper.purSaleSelectByCond(orderQuery),
|
|
|
orderMapper.countByCond(orderQuery));
|
|
|
}
|
|
|
+
|
|
|
/**
|
|
|
* @desc : 查询订单明细(货物、收款、附件)
|
|
|
* @author : 付斌
|
|
|
@@ -146,6 +153,36 @@ public class OrderService extends BaseService<Order> {
|
|
|
// 订单总单保存
|
|
|
super.insert(order);
|
|
|
|
|
|
+ // 业务部门业绩保存
|
|
|
+ if (orderVO.getOrgList() != null && orderVO.getOrgList().size() > 0) {
|
|
|
+ for (Map<String, Object> map : orderVO.getOrgList()) {
|
|
|
+ MultiOwner multiOwner = new MultiOwner();
|
|
|
+ multiOwner.setOrderId(order.getOrderId()).setOwnerId(map.get("orgId").toString())
|
|
|
+ .setAllocationRatio(new BigDecimal(map.get("allocationRatio").toString())).setCpId(order.getCpId());
|
|
|
+ if (Boolean.parseBoolean(map.get("ownerFlag").toString())) {
|
|
|
+ multiOwner.setOwnerType(Constant.OwnerType.Z_ORG.getName());
|
|
|
+ } else {
|
|
|
+ multiOwner.setOwnerType(Constant.OwnerType.C_ORG.getName());
|
|
|
+ }
|
|
|
+ multiOwnerMapper.insert(multiOwner);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 业务员业绩保存
|
|
|
+ if (orderVO.getStaffList() != null && orderVO.getStaffList().size() > 0) {
|
|
|
+ for (Map<String, Object> map : orderVO.getStaffList()) {
|
|
|
+ MultiOwner multiOwner = new MultiOwner();
|
|
|
+ multiOwner.setOrderId(order.getOrderId()).setOwnerId(map.get("staffId").toString())
|
|
|
+ .setAllocationRatio(new BigDecimal(map.get("allocationRatio").toString())).setCpId(order.getCpId());
|
|
|
+ if (Boolean.parseBoolean(map.get("ownerFlag").toString())) {
|
|
|
+ multiOwner.setOwnerType(Constant.OwnerType.Z_STAFF.getName());
|
|
|
+ } else {
|
|
|
+ multiOwner.setOwnerType(Constant.OwnerType.C_STAFF.getName());
|
|
|
+ }
|
|
|
+ multiOwnerMapper.insert(multiOwner);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
// 订单明细保存
|
|
|
if (orderVO.getItemList() != null && orderVO.getItemList().size() > 0) {
|
|
|
for (OrderItemVO orderItemVO : orderVO.getItemList()) {
|
|
|
@@ -202,6 +239,40 @@ public class OrderService extends BaseService<Order> {
|
|
|
orderItemService.updateByUuid(orderItem);
|
|
|
}
|
|
|
|
|
|
+ // 删除业绩信息
|
|
|
+ multiOwnerMapper.deleteByOrderId(order.getOrderId());
|
|
|
+
|
|
|
+ // 重新保存业绩信息
|
|
|
+ // 业务部门业绩保存
|
|
|
+ if (orderVO.getOrgList() != null && orderVO.getOrgList().size() > 0) {
|
|
|
+ for (Map<String, Object> map : orderVO.getOrgList()) {
|
|
|
+ MultiOwner multiOwner = new MultiOwner();
|
|
|
+ multiOwner.setOrderId(order.getOrderId()).setOwnerId(map.get("orgId").toString())
|
|
|
+ .setAllocationRatio(new BigDecimal(map.get("allocationRatio").toString())).setCpId(order.getCpId());
|
|
|
+ if (Boolean.parseBoolean(map.get("ownerFlag").toString())) {
|
|
|
+ multiOwner.setOwnerType(Constant.OwnerType.Z_ORG.getName());
|
|
|
+ } else {
|
|
|
+ multiOwner.setOwnerType(Constant.OwnerType.C_ORG.getName());
|
|
|
+ }
|
|
|
+ multiOwnerMapper.insert(multiOwner);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 业务员业绩保存
|
|
|
+ if (orderVO.getStaffList() != null && orderVO.getStaffList().size() > 0) {
|
|
|
+ for (Map<String, Object> map : orderVO.getStaffList()) {
|
|
|
+ MultiOwner multiOwner = new MultiOwner();
|
|
|
+ multiOwner.setOrderId(order.getOrderId()).setOwnerId(map.get("staffId").toString())
|
|
|
+ .setAllocationRatio(new BigDecimal(map.get("allocationRatio").toString())).setCpId(order.getCpId());
|
|
|
+ if (Boolean.parseBoolean(map.get("ownerFlag").toString())) {
|
|
|
+ multiOwner.setOwnerType(Constant.OwnerType.Z_STAFF.getName());
|
|
|
+ } else {
|
|
|
+ multiOwner.setOwnerType(Constant.OwnerType.C_STAFF.getName());
|
|
|
+ }
|
|
|
+ multiOwnerMapper.insert(multiOwner);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
return ResponseResultUtil.success(super.update(order, new UpdateWrapper<Order>().lambda().eq(Order::getOrderId,
|
|
|
UUID.fromString(order.getOrderId()))));
|
|
|
}
|
|
|
@@ -214,7 +285,7 @@ public class OrderService extends BaseService<Order> {
|
|
|
public ResponseResultVO<?> invalid(String id) {
|
|
|
Order orderForUpdate = orderMapper.selectByIdForUpdate(id);
|
|
|
// 并发校验
|
|
|
- if(!orderForUpdate.getFlgValid()){
|
|
|
+ if (!orderForUpdate.getFlgValid()) {
|
|
|
throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.ISFLGVALID_FALSE.getMessage());
|
|
|
}
|
|
|
|