935090232@qq.com
2021-10-06 e7eea688585603c5a8f134d92762e8431d885d36
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
@@ -1026,8 +1026,8 @@
        }
        sourceOrder.setArrears(sourceOrder.getArrears() - refundTotal);
        sourceOrder.setCardPay(sourceOrder.getCardPay() + cardPayTotal);
        sourceOrder.setCashPay(sourceOrder.getCashPay() + cashPayTotal);
        sourceOrder.setCardPay(sourceOrder.getCardPay()==null?0:sourceOrder.getCardPay() + cardPayTotal);
        sourceOrder.setCashPay(sourceOrder.getCashPay()==null?0:sourceOrder.getCashPay() + cashPayTotal);
        sysOrderDao.update(sourceOrder);
    }
@@ -1209,7 +1209,7 @@
     * 通过组合关系创建用户项目余次
     */
    private SysProjUse createProjuseByAssemble(SysOrder order, SysOrderItem sysOrderItem,
                                               ShoppingGoodsAssemble goodsAssemble, Long taocanId, Date failTime,String source,int maxCount) {
                                               ShoppingGoodsAssemble goodsAssemble, Long taocanId, Date failTime,String source,Integer maxCount) {
        //计算折扣
        Double zk = sysOrderItem.getZkPrice() / sysOrderItem.getPrice();
@@ -1233,20 +1233,25 @@
        }
        //赠送项目是否计算消耗业绩否则 赠送产品按原价计算消耗
        boolean zsConsumeAchieve = projServicesService.skipServiceOrderStep(Dictionary.ZS_CONSUME_ACHIEVE);
        if(zsConsumeAchieve){
            if(sysOrderItem.getPrice()<=0){
                //等于0取原价
                if (taocanId == null) {
                    puse.setPrice(goodsAssemble.getShoppingGoods().getPrice() );
                } else {
                    puse.setPrice(goodsAssemble.getPrice());
            puse.setSource(Dictionary.TAOCAN_SOURCE_ZS);
            //赠送项目是否计算消耗业绩否则 赠送产品按原价计算消耗
            boolean zsConsumeAchieve = projServicesService.skipServiceOrderStep(Dictionary.ZS_CONSUME_ACHIEVE);
            if(zsConsumeAchieve){
                if(sysOrderItem.getPrice()>0){
                    //大于0 不修改金额
                }else{
                    //等于0取原价
                    if (taocanId == null) {
                        puse.setPrice(goodsAssemble.getShoppingGoods().getPrice() );
                    } else {
                        puse.setPrice(goodsAssemble.getPrice());
                    }
                }
            }else{
                puse.setPrice(0D);
            }
        }else{
            puse.setPrice(0D);
        }
        puse.setBalance(MoneyUtil.mul(puse.getPrice(), Double.valueOf(puse.getSurplusCount())));
        puse.setFailTime(failTime);