Commit b3788347 authored by hezhen's avatar hezhen

调试分账和拥金计算

parent 2730531f
......@@ -104,7 +104,7 @@ public class MyWalletDetail implements Serializable {
*/
@Column(name = "crt_user")
@ApiModelProperty(value = "操作者ID(如果系统操作,-1)")
private Integer crtUser;
private String crtUser;
/**
* 操作时间
......
......@@ -128,7 +128,6 @@ public class AppUserSellingWaterBiz extends BaseBiz<AppUserSellingWaterMapper, A
sellingWater.setExtract(acceptDetailed.getExtract());
sellingWater.setGoodNumber(goodsNumber);
sellingWater.setCommission(acceptDetailed.getDivisionAmount());
sellingWater.setSourceId(acceptId);
insertSelective(sellingWater);
log.info("购买计算用户未入账----payOrderWater--------userId===" + acceptDetailed.getMchId() + "----amount====" + acceptDetailed.getDivisionAmount() + "--orderType===" + orderType);
if (orderType == 3) {
......@@ -139,7 +138,7 @@ public class AppUserSellingWaterBiz extends BaseBiz<AppUserSellingWaterMapper, A
}
//订单完成计算用户拥金
public void finishOrderWater(OrderWaterDTO orderWaterDTO) {
public BigDecimal finishOrderWater(OrderWaterDTO orderWaterDTO) {
AppUserSellingWater sellingWater=new AppUserSellingWater();
sellingWater.setAcceptId(orderWaterDTO.getAcceptId());
sellingWater.setWaiting(0);
......@@ -147,13 +146,15 @@ public class AppUserSellingWaterBiz extends BaseBiz<AppUserSellingWaterMapper, A
if (sellingWater != null ){
sellingWater.setWaiting(1);
updateSelectiveById(sellingWater);
return sellingWater.getCommission();
}
return BigDecimal.ZERO;
}
//订单完成计算用户拥金
public void finishOrderFWater(OrderWaterDTO orderWaterDTO) {
Integer acceptId = orderWaterDTO.getAcceptId() == null ? 0 :orderWaterDTO.getAcceptId();
Integer zAcceptId = orderWaterDTO.getZAcceptId()== null ? 0 :orderWaterDTO.getAcceptId();
Integer zAcceptId = orderWaterDTO.getZAcceptId()== null ? 0 :orderWaterDTO.getZAcceptId();
BigDecimal orderAmount = orderWaterDTO.getOrderAmount() == null ? BigDecimal.ZERO : orderWaterDTO.getOrderAmount();
log.info("---分账id===="+acceptId+"----zAcceptId=="+zAcceptId+"---orderAmount===="+orderAmount);
if (acceptId == 0 || zAcceptId == 0 || orderAmount.compareTo(BigDecimal.ZERO) == 0){
......
package com.github.wxiaoqi.security.admin.biz;
import com.github.wxiaoqi.security.admin.entity.BaseCommissionRatio;
import com.github.wxiaoqi.security.admin.entity.BaseGoodCommission;
import com.github.wxiaoqi.security.admin.mapper.BaseCommissionRatioMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz;
import org.springframework.stereotype.Service;
......@@ -22,7 +21,7 @@ public class BaseCommissionRatioBiz extends BaseBiz<BaseCommissionRatioMapper, B
public List<BaseCommissionRatio> getList(){
Example example=new Example(BaseGoodCommission.class);
Example example=new Example(BaseCommissionRatio.class);
example.createCriteria().andEqualTo("status",1);
return mapper.selectByExample(example);
}
......
......@@ -20,9 +20,6 @@ import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Example;
import java.math.BigDecimal;
import java.util.*;
import java.util.function.Supplier;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* 订单分账表
......@@ -143,8 +140,9 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM
acceptDetailed.setExtract(commissionRatio.getExtract());
acceptDetailed.setDivisionType(divisionType);
acceptDetailed.setAddTime(System.currentTimeMillis());
acceptDetailed.setStatus(0);
insertSelective(acceptDetailed);
amount.add(divisionAmount);
amount=amount.add(divisionAmount);
orderWaterDTO.setAcceptId(acceptDetailed.getId());
sellingWaterBiz.payOrderWater(orderWaterDTO);
}
......@@ -158,6 +156,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM
acceptDetailed.setDivisionAmount(divisionAmount);
acceptDetailed.setDivisionType(5);
acceptDetailed.setAddTime(System.currentTimeMillis());
acceptDetailed.setStatus(0);
insertSelective(acceptDetailed);
}
......@@ -181,19 +180,19 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM
Integer zAcceptId = acceptDetailed1.getId();
acceptDetailed1.setType(2);
acceptDetailed1.setId(null);
acceptDetailed.setOrderAmount(orderAmount);
acceptDetailed1.setOrderAmount(orderAmount);
if (acceptDetailed1.getDivisionType() == 5 ){
if (orderAmount.compareTo(amount) > 0){
BigDecimal divisionAmount=orderAmount.subtract(amount).setScale(2, BigDecimal.ROUND_HALF_UP);
acceptDetailed.setDivisionAmount(divisionAmount);
insertSelective(acceptDetailed);
acceptDetailed1.setDivisionAmount(divisionAmount);
insertSelective(acceptDetailed1);
}
}else {
BigDecimal divisionAmount=orderAmount.multiply(new BigDecimal(acceptDetailed1.getExtract())).divide(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP);
acceptDetailed1.setDivisionAmount(divisionAmount);
insertSelective(acceptDetailed1);
amount.add(divisionAmount);
orderWaterDTO.setAcceptId(acceptDetailed.getId());
amount=amount.add(divisionAmount);
orderWaterDTO.setAcceptId(acceptDetailed1.getId());
orderWaterDTO.setZAcceptId(zAcceptId);
orderWaterDTO.setOrderAmount(orderAmount);
sellingWaterBiz.finishOrderFWater(orderWaterDTO);
......@@ -221,12 +220,12 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM
Integer id = acceptDetailed.getId();
Integer divisionType = acceptDetailed.getDivisionType();
acceptDetailed.setStatus(1);
acceptDetailed.setStatusTime(System.currentTimeMillis());
updateSelectiveById(acceptDetailed);
orderWaterDTO.setAcceptId(id);
sellingWaterBiz.finishOrderWater(orderWaterDTO);
BigDecimal divisionAmount = acceptDetailed.getDivisionAmount();
log.info("分账----finishOrderAccept----id====" + id + "---divisionAmount==" + divisionAmount + "----divisionType===" + divisionType);
amount = amount.add(divisionAmount);
BigDecimal commison=sellingWaterBiz.finishOrderWater(orderWaterDTO);
log.info("分账----finishOrderAccept----id====" + id + "---commison==" + commison + "----divisionType===" + divisionType);
amount = amount.add(commison);
}
Integer orderType = 0;
List<OrderGoodsDTO> goodsDTOList = orderWaterDTO.getGoodsDTOList();
......@@ -256,6 +255,7 @@ public class BaseOrderAcceptDetailedBiz extends BaseBiz<BaseOrderAcceptDetailedM
if (list.size() > 0) {
for (BaseOrderAcceptDetailed acceptDetailed : list) {
acceptDetailed.setStatus(1);
acceptDetailed.setStatusTime(System.currentTimeMillis());
updateSelectiveById(acceptDetailed);
acceptDetailed.setId(null);
acceptDetailed.setType(2);
......
package com.github.wxiaoqi.security.admin.rest.admin;
import com.github.wxiaoqi.security.admin.biz.BaseOrderAcceptDetailedBiz;
import com.github.wxiaoqi.security.admin.dto.OrderWaterDTO;
import com.github.wxiaoqi.security.admin.entity.BaseOrderAcceptDetailed;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.rest.UserRestInterface;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.github.wxiaoqi.security.common.rest.BaseController;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @author Administrator
*/
@Slf4j
@RestController
@RequestMapping("backstage/accept")
@Api(tags = {"拥金比例"})
public class AdminBaseOrderAcceptDetailedController extends BaseController<BaseOrderAcceptDetailedBiz, BaseOrderAcceptDetailed> implements UserRestInterface {
@Autowired
UserFeign userFeign;
@Override
public UserFeign getUserFeign() {
return userFeign;
}
@PostMapping("orderWater")
@ApiModelProperty("设置")
public ObjectRestResponse orderWater(@RequestBody OrderWaterDTO orderWaterDTO) {
baseBiz.orderWater(orderWaterDTO);
return ObjectRestResponse.succ();
}
}
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