|
@@ -390,14 +390,15 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
brokerage = bo.getPretaxBrokerage();
|
|
|
add.setBrokerage(bo.getPretaxBrokerage().subtract(multiply));
|
|
|
}
|
|
|
-
|
|
|
+ add.setRefundStatus(1);//退款状态:正常
|
|
|
+ add.setFinishStatus(0);//完单状态:未完单
|
|
|
if (bo.getOrderFrom() == 3) {
|
|
|
add.setCheckStatus(0);//待审核
|
|
|
} else {
|
|
|
add.setCheckStatus(1);//C端不需要审核
|
|
|
+ add.setFinishStatus(1);//C端自动完单
|
|
|
}
|
|
|
- add.setRefundStatus(1);//退款状态:正常
|
|
|
- add.setFinishStatus(0);//完单状态:未完单
|
|
|
+
|
|
|
//未收账款
|
|
|
if (ObjectUtils.isNull(bo.getOrderReceived()) || bo.getOrderReceived().compareTo(new BigDecimal("0.00")) == 0) {
|
|
|
add.setOrderUncollected(bo.getPayPrice());
|
|
@@ -1049,7 +1050,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
throw new CustomException("订单号有误!请检查");
|
|
|
}
|
|
|
//校验当前登入角色
|
|
|
- List<TopSysUserRole> userRoles = topSysUserRoleService.list(new LambdaQueryWrapper<TopSysUserRole>().eq(TopSysUserRole::getUserId, bo.getOrderId()));
|
|
|
+ List<TopSysUserRole> userRoles = topSysUserRoleService.list(new LambdaQueryWrapper<TopSysUserRole>().eq(TopSysUserRole::getUserId, bo.getLoginId()));
|
|
|
if (CollectionUtils.isEmpty(userRoles) && !"admin".equals(bo.getLoginName())) {
|
|
|
throw new CustomException("当前账号没有审核权限");
|
|
|
}
|
|
@@ -1119,20 +1120,35 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
//订单审核通过,账款已结清,满足完单条件
|
|
|
//成本设置项
|
|
|
TopOldOrder order = getById(oldOrder.getOrderId());
|
|
|
- String costJson = order.getCostJson();
|
|
|
- if (StringUtils.isNotBlank(costJson)) {
|
|
|
+
|
|
|
+ List<String> tenantIds = Arrays.asList("1", "867735392558919680");
|
|
|
+ if (tenantIds.contains(order.getTenantId())){
|
|
|
+ //祥粤云订单不算分成
|
|
|
+ order.setFinishStatus(1);//已完单
|
|
|
+ //修改订单分成
|
|
|
+ updateById(order);
|
|
|
+ }else {
|
|
|
//获取机构分成方式
|
|
|
SysTenant tenant = sysTenantService
|
|
|
.getOne(new LambdaQueryWrapper<SysTenant>()
|
|
|
.eq(SysTenant::getTenantId, order.getTenantId()));
|
|
|
Integer divideModel = ObjectUtil.isNotNull(tenant.getDivideModel()) ? tenant.getDivideModel() : 1;
|
|
|
- //分成金额
|
|
|
- TopCostTpVo topCostTpVo = JSONObject.parseObject(costJson, TopCostTpVo.class);
|
|
|
- List<TopCostTpItemVo> itemList = topCostTpVo.getItemList();
|
|
|
- if (CollectionUtils.isNotEmpty(itemList)) {
|
|
|
- //分成模板
|
|
|
- List<TopCostTpItemVo> divideList = itemList.stream().filter(x -> x.getItemCategory() == 1).collect(Collectors.toList());
|
|
|
- calculateDivide(divideList, order, divideModel);
|
|
|
+ String costJson = order.getCostJson();
|
|
|
+ if (StringUtils.isNotBlank(costJson)) {
|
|
|
+ //分成金额
|
|
|
+ TopCostTpVo topCostTpVo = JSONObject.parseObject(costJson, TopCostTpVo.class);
|
|
|
+ List<TopCostTpItemVo> itemList = topCostTpVo.getItemList();
|
|
|
+ if (CollectionUtils.isNotEmpty(itemList)) {
|
|
|
+ //分成模板
|
|
|
+ List<TopCostTpItemVo> divideList = itemList.stream().filter(x -> x.getItemCategory() == 1).collect(Collectors.toList());
|
|
|
+ calculateDivide(divideList, order, divideModel);
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ order.setFinishStatus(1);//已完单
|
|
|
+ order.setDivideModel(divideModel);
|
|
|
+ order.setAccomplishTime(DateUtils.getNowTime());
|
|
|
+ //修改订单分成
|
|
|
+ updateById(order);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -2363,6 +2379,11 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
//已支付 不能撤销
|
|
|
throw new CustomException(String.format("订单号分成已结清不能取消【%s】", orderSn));
|
|
|
}
|
|
|
+ List<String> tenantIds = Arrays.asList("1", "867735392558919680");
|
|
|
+ if (tenantIds.contains(order.getTenantId())){
|
|
|
+ //C端订单 不能撤销
|
|
|
+ throw new CustomException(String.format("C端订单不能取消完单【%s】", orderSn));
|
|
|
+ }
|
|
|
if (order.getOrderFrom() == 1) {
|
|
|
//新系统
|
|
|
orderService.update(new LambdaUpdateWrapper<Order>()
|
|
@@ -2392,20 +2413,30 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
//账款未收完 不能完单
|
|
|
throw new CustomException(String.format("订单未审核不能完单【%s】", orderSn));
|
|
|
}
|
|
|
- //成本设置项
|
|
|
- String costJson = order.getCostJson();
|
|
|
- if (StringUtils.isBlank(costJson)) {
|
|
|
- return;
|
|
|
- }
|
|
|
//获取机构分成方式
|
|
|
SysTenant tenant = sysTenantService
|
|
|
.getOne(new LambdaQueryWrapper<SysTenant>()
|
|
|
.eq(SysTenant::getTenantId, order.getTenantId()));
|
|
|
Integer divideModel = tenant.getDivideModel();
|
|
|
+ //成本设置项
|
|
|
+ String costJson = order.getCostJson();
|
|
|
+ if (StringUtils.isBlank(costJson)) {
|
|
|
+ order.setFinishStatus(1);//已完单
|
|
|
+ order.setDivideModel(divideModel);
|
|
|
+ order.setAccomplishTime(DateUtils.getNowTime());
|
|
|
+ //修改订单分成
|
|
|
+ updateById(order);
|
|
|
+ return;
|
|
|
+ }
|
|
|
//分成金额
|
|
|
TopCostTpVo topCostTpVo = JSONObject.parseObject(costJson, TopCostTpVo.class);
|
|
|
List<TopCostTpItemVo> itemList = topCostTpVo.getItemList();
|
|
|
if (CollectionUtils.isEmpty(itemList)) {
|
|
|
+ order.setFinishStatus(1);//已完单
|
|
|
+ order.setDivideModel(divideModel);
|
|
|
+ order.setAccomplishTime(DateUtils.getNowTime());
|
|
|
+ //修改订单分成
|
|
|
+ updateById(order);
|
|
|
return;
|
|
|
}
|
|
|
//分成模板
|
|
@@ -2581,7 +2612,7 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
List<TopOldOrderCheck> checkList = topOldOrderCheckService
|
|
|
.list(new LambdaQueryWrapper<TopOldOrderCheck>().in(TopOldOrderCheck::getCheckType, Arrays.asList(5, 6))
|
|
|
.orderByAsc(TopOldOrderCheck::getCheckSort));
|
|
|
- if (CollectionUtils.isNotEmpty(checkList)) {
|
|
|
+ if (CollectionUtils.isNotEmpty(checkList) && divideTotal.compareTo(BigDecimal.ZERO) > 0) {
|
|
|
List<TopOldOrderCheckLog> logs = new ArrayList<>();
|
|
|
for (int i = 0; i < checkList.size(); i++) {
|
|
|
TopOldOrderCheck check = checkList.get(i);
|
|
@@ -3289,14 +3320,14 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
order.setCreditTime(DateUtils.getNowTime());
|
|
|
//自动完单
|
|
|
if (order.getFinishSign() == 0) {
|
|
|
+ //获取机构分成方式
|
|
|
+ SysTenant tenant = sysTenantService
|
|
|
+ .getOne(new LambdaQueryWrapper<SysTenant>()
|
|
|
+ .eq(SysTenant::getTenantId, order.getTenantId()));
|
|
|
+ Integer divideModel = ObjectUtil.isNotNull(tenant.getDivideModel()) ? tenant.getDivideModel() : 1;
|
|
|
//成本设置项
|
|
|
String costJson = order.getCostJson();
|
|
|
if (StringUtils.isNotBlank(costJson)) {
|
|
|
- //获取机构分成方式
|
|
|
- SysTenant tenant = sysTenantService
|
|
|
- .getOne(new LambdaQueryWrapper<SysTenant>()
|
|
|
- .eq(SysTenant::getTenantId, order.getTenantId()));
|
|
|
- Integer divideModel = ObjectUtil.isNotNull(tenant.getDivideModel()) ? tenant.getDivideModel() : 1;
|
|
|
//分成金额
|
|
|
TopCostTpVo topCostTpVo = JSONObject.parseObject(costJson, TopCostTpVo.class);
|
|
|
List<TopCostTpItemVo> itemList = topCostTpVo.getItemList();
|
|
@@ -3305,6 +3336,12 @@ public class TopOldOrderServiceImpl extends ServiceImpl<TopOldOrderMapper, TopOl
|
|
|
List<TopCostTpItemVo> divideList = itemList.stream().filter(x -> x.getItemCategory() == 1).collect(Collectors.toList());
|
|
|
calculateDivide(divideList, order, divideModel);
|
|
|
}
|
|
|
+ }else {
|
|
|
+ order.setFinishStatus(1);//已完单
|
|
|
+ order.setDivideModel(divideModel);
|
|
|
+ order.setAccomplishTime(DateUtils.getNowTime());
|
|
|
+ //修改订单分成
|
|
|
+ updateById(order);
|
|
|
}
|
|
|
|
|
|
//完单通知旧系统
|