Commit c9ecbfa9 authored by hezhen's avatar hezhen

123

parent 176f8117
...@@ -168,6 +168,8 @@ public class AppUserSellingWaterBiz extends BaseBiz<AppUserSellingWaterMapper, A ...@@ -168,6 +168,8 @@ public class AppUserSellingWaterBiz extends BaseBiz<AppUserSellingWaterMapper, A
sellingWater.setAcceptId(zAcceptId); sellingWater.setAcceptId(zAcceptId);
sellingWater=selectOne(sellingWater); sellingWater=selectOne(sellingWater);
if (sellingWater != null ){ if (sellingWater != null ){
sellingWater.setWaiting(1);
updateSelectiveById(sellingWater);
BigDecimal commission=orderAmount.multiply(sellingWater.getExtract()).divide(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP); BigDecimal commission=orderAmount.multiply(sellingWater.getExtract()).divide(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP);
sellingWater.setAcceptId(acceptId); sellingWater.setAcceptId(acceptId);
sellingWater.setWaiting(1); sellingWater.setWaiting(1);
......
...@@ -69,6 +69,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM ...@@ -69,6 +69,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM
@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED)
public void orderWater(OrderWaterDTO orderWaterDTO) { public void orderWater(OrderWaterDTO orderWaterDTO) {
//订单状态 //订单状态
log.info("进入分账----orderWater------status===" + orderWaterDTO.getStatus()+"---orderNo==="+orderWaterDTO.getOrderNo());
Integer status = orderWaterDTO.getStatus(); Integer status = orderWaterDTO.getStatus();
if (status == null || status == 0) { if (status == null || status == 0) {
log.info("分账----orderWater----参数不能为空----status===" + status); log.info("分账----orderWater----参数不能为空----status===" + status);
...@@ -127,6 +128,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM ...@@ -127,6 +128,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM
List<BaseCommissionRatio> baseCommissionRatios = commissionRatioBiz.getList(); List<BaseCommissionRatio> baseCommissionRatios = commissionRatioBiz.getList();
BigDecimal amount=BigDecimal.ZERO; BigDecimal amount=BigDecimal.ZERO;
BigDecimal companyDivisionAmount=orderAmount; BigDecimal companyDivisionAmount=orderAmount;
BigDecimal extrac = new BigDecimal(100);
if (baseCommissionRatios.size() > 0){ if (baseCommissionRatios.size() > 0){
//先计算分给店铺 //先计算分给店铺
BigDecimal companyExtrac = baseCommissionRatios.stream().map(BaseCommissionRatio::getExtract).reduce(BigDecimal.ZERO,BigDecimal::add); BigDecimal companyExtrac = baseCommissionRatios.stream().map(BaseCommissionRatio::getExtract).reduce(BigDecimal.ZERO,BigDecimal::add);
...@@ -181,6 +183,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM ...@@ -181,6 +183,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM
acceptDetailed.setStatus(0); acceptDetailed.setStatus(0);
insertSelective(acceptDetailed); insertSelective(acceptDetailed);
amount=amount.add(divisionAmount); amount=amount.add(divisionAmount);
extrac=extrac.subtract(commissionRatio.getExtract());
orderWaterDTO.setAcceptId(acceptDetailed.getId()); orderWaterDTO.setAcceptId(acceptDetailed.getId());
sellingWaterBiz.payOrderWater(orderWaterDTO); sellingWaterBiz.payOrderWater(orderWaterDTO);
} }
...@@ -190,6 +193,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM ...@@ -190,6 +193,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM
BaseOrderAcceptDetailed acceptDetailed=new BaseOrderAcceptDetailed(); BaseOrderAcceptDetailed acceptDetailed=new BaseOrderAcceptDetailed();
BeanUtils.copyProperties(orderWaterDTO,acceptDetailed); BeanUtils.copyProperties(orderWaterDTO,acceptDetailed);
acceptDetailed.setMchId(companyId); acceptDetailed.setMchId(companyId);
acceptDetailed.setExtract(extrac);
acceptDetailed.setOrderAmount(orderAmount); acceptDetailed.setOrderAmount(orderAmount);
acceptDetailed.setDivisionAmount(companyDivisionAmount); acceptDetailed.setDivisionAmount(companyDivisionAmount);
acceptDetailed.setDivisionType(5); acceptDetailed.setDivisionType(5);
...@@ -234,7 +238,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM ...@@ -234,7 +238,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM
} else if (acceptDetailed1.getDivisionType() == 2 || acceptDetailed1.getDivisionType() == 3 || acceptDetailed1.getDivisionType() == 4) { } else if (acceptDetailed1.getDivisionType() == 2 || acceptDetailed1.getDivisionType() == 3 || acceptDetailed1.getDivisionType() == 4) {
if (otherDivisionAmount.compareTo(BigDecimal.ZERO) > 0) { if (otherDivisionAmount.compareTo(BigDecimal.ZERO) > 0) {
if (!orderDetailDTO.getOrderStatus().equals(OrderDetailDTO.CANEL)) { if (!orderDetailDTO.getOrderStatus().equals(OrderDetailDTO.CANEL)) {
BigDecimal divisionAmount = otherDivisionAmount.multiply(acceptDetailed1.getExtract()).divide(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP); BigDecimal divisionAmount = orderAmount.multiply(acceptDetailed1.getExtract()).divide(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP);
acceptDetailed1.setDivisionAmount(divisionAmount); acceptDetailed1.setDivisionAmount(divisionAmount);
} }
insertSelective(acceptDetailed1); insertSelective(acceptDetailed1);
......
...@@ -46,7 +46,7 @@ public class WaterMQHandler { ...@@ -46,7 +46,7 @@ public class WaterMQHandler {
*/ */
@RabbitListener(queues = ORDER_WATER_QUEUE) @RabbitListener(queues = ORDER_WATER_QUEUE)
public void integralHandler(Message message, @Headers Map<String, Object> headers, Channel channel) { public void integralHandler(Message message, @Headers Map<String, Object> headers, Channel channel) {
log.info("拥金队列 messageJson:"+ JSONUtil.parse(message)); log.info("分账队列 messageJson:"+ JSONUtil.parse(message));
ExecutorService executorService = Executors.newCachedThreadPool(); ExecutorService executorService = Executors.newCachedThreadPool();
executorService.execute(new Runnable() { executorService.execute(new Runnable() {
@Override @Override
...@@ -71,7 +71,7 @@ public class WaterMQHandler { ...@@ -71,7 +71,7 @@ public class WaterMQHandler {
orderWaterDTO.setStatus(2); orderWaterDTO.setStatus(2);
break; break;
case ORDER_CANCEL: case ORDER_CANCEL:
orderWaterDTO.setStatus(3); orderWaterDTO.setStatus(2);
break; break;
default: default:
break; break;
......
...@@ -60,7 +60,8 @@ public class OrderDetailBiz{ ...@@ -60,7 +60,8 @@ public class OrderDetailBiz{
BaseOrder baseOrder=new BaseOrder(); BaseOrder baseOrder=new BaseOrder();
baseOrder.setNo(orderNo); baseOrder.setNo(orderNo);
baseOrder=orderBiz.selectOne(baseOrder); baseOrder=orderBiz.selectOne(baseOrder);
if (baseOrder == null ||(type == 1 && !baseOrder.getStatus() .equals(OrderStatusEnum.ORDER_TOSTART.getCode())) ||( (type == 2 || type == 3) && !baseOrder.getStatus().equals(OrderStatusEnum.ORDER_FINISH.getCode()))){ if (baseOrder == null ||(type == 1 && !baseOrder.getStatus() .equals(OrderStatusEnum.ORDER_TOSTART.getCode())) ||
( (type == 2 || type == 3) && !(baseOrder.getStatus().equals(OrderStatusEnum.ORDER_FINISH.getCode()) || baseOrder.getStatus().equals(OrderStatusEnum.ORDER_CANCEL.getCode()) ) )){
throw new BaseException("订单不存在或状态不是已完成",ResultCode.FAILED_CODE); throw new BaseException("订单不存在或状态不是已完成",ResultCode.FAILED_CODE);
} }
BigDecimal goodsAmount=baseOrder.getGoodsAmount().subtract(baseOrder.getCouponAmount()); BigDecimal goodsAmount=baseOrder.getGoodsAmount().subtract(baseOrder.getCouponAmount());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment