xiaoyong931011
2021-03-12 26ffb618e472c3681f17b8b1b1a19ea55383928c
Merge branch 'score_shop' of http://120.27.238.55:7000/r/beauty-erp into score_shop
3 files added
7 files modified
459 ■■■■■ changed files
zq-erp/pom.xml 4 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java 2 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java 84 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesOrderAction.java 71 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java 11 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/OrderTask.java 77 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/vo/SalesOrderVo.java 27 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/vo/SalesmanCenterInfo.java 41 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml 58 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form.html 84 ●●●●● patch | view | raw | blame | history
zq-erp/pom.xml
@@ -394,12 +394,12 @@
                    <exclude>config/test/*</exclude>
                    <exclude>config/xcx/*</exclude>
                    <!--
                    <!---->
                    <exclude>config/config.json</exclude>
                    <exclude>config/application.properties</exclude>
                    <exclude>config/system.properties</exclude>
-->
                    <exclude>**/*.woff</exclude>
                    <exclude>**/*.woff2</exclude>
zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java
@@ -8,6 +8,7 @@
import com.matrix.system.fenxiao.entity.ShopSalesmanApply;
import com.matrix.system.fenxiao.vo.ShopSalesmanAppliingVo;
import com.matrix.system.fenxiao.vo.ShopSalesmanApplyVo;
import com.matrix.system.shopXcx.vo.SalesmanCenterInfo;
import com.matrix.system.shopXcx.vo.SalesmanVo;
import org.apache.ibatis.annotations.Param;
@@ -31,4 +32,5 @@
    IPage<ShopSalesmanAppliingVo> selectBizUserApplyList(Page<ShopSalesmanAppliingVo> page,
            @Param("record")ShopSalesmanAppliingDto shopSalesmanAppliingDto);
    SalesmanCenterInfo selectSalesmanCenterInfo(String openId);
}
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysOrderServiceImpl.java
@@ -529,7 +529,7 @@
            ShoppingGoods goods = shoppingGoodsDao.selectById(goodsId);
            flow.setFlowContent(goods.getName() + "等" + sourceOrder.getItems().size() + "件产品");
            // 若是退款,则取负数
            if (SysOrder.ORDER_TYPE_REFUND==sourceOrder.getOrderType()) {
            if (Dictionary.ORDER_STATU_TK.equals(sourceOrder.getStatu())) {
                flow.setFlowType(SysOrderFlow.FLOW_TYPE_REFUND);
                flow.setAmount(flow.getAmount().negate());
                flow.setOrderId(sourceOrder.getOldOrderId());
@@ -1316,6 +1316,88 @@
    }
    private void addRefundOrderFlow(SysOrder sourceOrder) {
        //处理支付流水
        int flowCount = 1;
        for (SysOrderFlow flow : sourceOrder.getFlows()) {
            //支付内容摘要设置
            Long goodsId = sourceOrder.getItems().get(0).getGoodsId();
            ShoppingGoods goods = shoppingGoodsDao.selectById(goodsId);
            flow.setFlowContent(goods.getName() + "等" + sourceOrder.getItems().size() + "件产品");
            // 退款,则取负数
            flow.setFlowType(SysOrderFlow.FLOW_TYPE_REFUND);
            flow.setAmount(flow.getAmount().negate());
            flow.setOrderId(sourceOrder.getOldOrderId());
            //统计储值卡支付
            if (SysOrderFlow.PAY_METHOD_CARD.equals(flow.getPayMethod())) {
                if (flow.getCardId() != null) {
                    MoneyCardUse moneyCardUse = moneyCardUseDao.selectById(flow.getCardId());
                    //修改储值卡余额
                    cardPaySk(moneyCardUse, sourceOrder, flow);
                }else{
                    throw new GlobleException("无效的储值卡支付方式");
                }
            }
            flow.setFlowNo(codeService.getFlowCode() + "-" + flowCount);
            flow.setVipId(sourceOrder.getVipId());
            flow.setShopId(sourceOrder.getShopId());
            flow.setCompanyId(sourceOrder.getCompanyId());
            sysOrderFlowDao.insert(flow);
            flowCount++;
        }
    }
    private void refundCard(MoneyCardUse moneyCardUse, SysOrder sourceOrder, SysOrderFlow flow) {
        SysUsers user = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY);
        MoneyCardUseFlow moneyCardUseFlow = new MoneyCardUseFlow();
        if (SysOrderFlow.IS_GIFT_Y.equals(flow.getIsGift())) {
            if (moneyCardUse.getGiftMoney() >= flow.getAmount().doubleValue()) {
                double surplus = MoneyUtil.sub(moneyCardUse.getGiftMoney(), flow.getAmount().doubleValue());
                moneyCardUse.setGiftMoney(surplus);
                moneyCardUseFlow.setGiftMoney(0D - flow.getAmount().doubleValue());
            } else {
                throw new GlobleException(moneyCardUse.getCardName() + "余额不足");
            }
        } else {
            if (moneyCardUse.getRealMoney() >= flow.getAmount().doubleValue()) {
                double surplus = MoneyUtil.sub(moneyCardUse.getRealMoney(), flow.getAmount().doubleValue());
                moneyCardUse.setRealMoney(surplus);
                moneyCardUseFlow.setTotal(0 - flow.getAmount().doubleValue());
            } else {
                throw new GlobleException(moneyCardUse.getCardName() + "余额不足");
            }
        }
        if (moneyCardUse.getIsVipCar().equals(Dictionary.FLAG_NO_N)) {
            //余额为0时充值卡变为无效
            if (moneyCardUse.getRealMoney().equals(0D) && moneyCardUse.getGiftMoney().equals(0D)) {
                moneyCardUse.setIsOver(Dictionary.FLAG_YES_Y);
                moneyCardUse.setStatus(Dictionary.MONEYCARD_STATUS_WX);
            }
        }
        ShoppingGoods shoppingGoods = shoppingGoodsService.findById(moneyCardUse.getGoodsId());
        if (shoppingGoods != null) {
            Date invalidTime = shoppingGoodsService.calInvalidTime(shoppingGoods, 2, moneyCardUse.getFailTime());
            moneyCardUse.setFailTime(invalidTime);
        }
        // 更新充值卡信息
        moneyCardUseDao.update(moneyCardUse);
        //设置卡项使用流水
        moneyCardUseFlow.setCarUseId(moneyCardUse.getId());
        moneyCardUseFlow.setOrderNo(sourceOrder.getOrderNo());
        moneyCardUseFlow.setVipId(sourceOrder.getVipId());
        moneyCardUseFlow.setTimes(-1);
        moneyCardUseFlow.setType(MoneyCardUseFlow.USE_TYPE_CONSUMER);
        moneyCardUseFlow.setCreateTime(new Date());
        moneyCardUseFlow.setOperationId(user.getSuId());
        moneyCardUseFlow.setBalance(moneyCardUse.getGiftMoney() + moneyCardUse.getRealMoney());
        moneyCardUseFlowDao.insert(moneyCardUseFlow);
    }
    /**
     * 退款退项目,套餐,卡项
     * @param sysOrder
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesOrderAction.java
New file
@@ -0,0 +1,71 @@
package com.matrix.system.shopXcx.api.action;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.matrix.biz.bean.BizUser;
import com.matrix.biz.dao.BizUserDao;
import com.matrix.component.redis.RedisUserLoginUtils;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.pojo.BasePageQueryDto;
import com.matrix.system.common.dao.BusParameterSettingsDao;
import com.matrix.system.fenxiao.dao.ShopSalesmanApplyDao;
import com.matrix.system.fenxiao.dao.ShopSalesmanOrderDao;
import com.matrix.system.fenxiao.service.ShopSalesmanApplyService;
import com.matrix.system.shopXcx.vo.SalesmanVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * @author jyy
 * @date 2021-03-10
 **/
@Api(tags = "分销订单接口类")
@RestController
@RequestMapping(value = "/wxapi/salesOrder")
public class WxSalesOrderAction {
    @Autowired
    BusParameterSettingsDao busParameterSettingsDao;
    @Autowired
    ShopSalesmanApplyDao salesmanApplyDao;
    @Autowired
    ShopSalesmanApplyService shopSalesmanApplyService;
    @Autowired
    private RedisUserLoginUtils redisUserLoginUtils;
    @Autowired
    private BizUserDao bizUserDao;
    @Autowired
    private ShopSalesmanOrderDao shopSalesmanOrderDao;
    @ApiOperation(value = "获取下级列表", notes = "keywords=1 推广订单,keywords=2 邀请订单")
    @PostMapping(value = "/getOrderList")
    @ApiResponses({
            @ApiResponse(code = 200, message = "ok", response = SalesmanVo.class)
    })
    AjaxResult getInvitationuserList(@RequestBody BasePageQueryDto pageDto) {
        BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
        Page<SalesmanVo> page=new Page<>(pageDto.getPageNum(),pageDto.getPageSize());
        IPage<SalesmanVo> shopSalesmanApplyIPage = salesmanApplyDao.selectInvitationuserInPage(page, loginUser.getOpenId(),pageDto.getKeywords());
        AjaxResult result=AjaxResult.buildSuccessInstance(shopSalesmanApplyIPage.getRecords());
        return result;
    }
}
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java
@@ -23,6 +23,7 @@
import com.matrix.system.fenxiao.entity.ShopSalesmanApply;
import com.matrix.system.fenxiao.service.ShopSalesmanApplyService;
import com.matrix.system.shopXcx.api.WeChatApiTools;
import com.matrix.system.shopXcx.vo.SalesmanCenterInfo;
import com.matrix.system.shopXcx.vo.SalesmanVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -213,6 +214,16 @@
    }
    @ApiOperation(value = "查询分销员中心信息", notes = "")
    @PostMapping(value = "/getSalesmanCenterInfo")
    @ApiResponses({
            @ApiResponse(code = 200, message = "ok", response = SalesmanCenterInfo.class)
    })
    AjaxResult getSalesmanCenterInfo() {
        BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
        SalesmanCenterInfo salesmanCenterInfo= salesmanApplyDao.selectSalesmanCenterInfo(loginUser.getOpenId());
        return AjaxResult.buildSuccessInstance(salesmanCenterInfo);
    }
zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/OrderTask.java
@@ -11,6 +11,7 @@
import com.matrix.system.constance.Dictionary;
import com.matrix.system.fenxiao.dao.ShopSalesmanGradeDao;
import com.matrix.system.fenxiao.dao.ShopSalesmanOrderDao;
import com.matrix.system.fenxiao.entity.ShopSalesmanGrade;
import com.matrix.system.fenxiao.entity.ShopSalesmanOrder;
import com.matrix.system.hive.bean.*;
import com.matrix.system.hive.dao.*;
@@ -25,6 +26,7 @@
import com.matrix.system.shopXcx.dao.ShopSkuDao;
import com.rabbitmq.client.DeliverCallback;
import com.rabbitmq.client.Delivery;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;
@@ -265,38 +267,73 @@
        if(StringUtils.isNotBlank(bizUser.getParentOpenId())){
            LogUtil.debug("处理分销订单userOpid={}",bizUser.getOpenId());
            //存在上级
            ShopSalesmanOrder shopSalesmanOrder=new ShopSalesmanOrder();
            shopSalesmanOrder.setCompanyId(order.getCompanyId());
            shopSalesmanOrder.setCreateBy(MatrixConstance.SYSTEM_USER);
            shopSalesmanOrder.setUpdateBy(MatrixConstance.SYSTEM_USER);
            shopSalesmanOrder.setCreateTime(new Date());
            shopSalesmanOrder.setUpdateTime(new Date());
            shopSalesmanOrder.setOrderId(Long.parseLong(order.getId()+""));
            shopSalesmanOrder.setUserId(order.getUserId());
            shopSalesmanOrder.setSalesUserId(bizUser.getParentOpenId());
            shopSalesmanOrder.setRevenueType(ShopSalesmanOrder.REVENUE_TYPE_SALES);
            shopSalesmanOrder.setOrderStatus(ShopSalesmanOrder.STATUS_DJS);
            Double amount=0D;
            ShopSalesmanOrder salesmanOrder=new ShopSalesmanOrder();
            salesmanOrder.setCompanyId(order.getCompanyId());
            salesmanOrder.setCreateBy(MatrixConstance.SYSTEM_USER);
            salesmanOrder.setUpdateBy(MatrixConstance.SYSTEM_USER);
            salesmanOrder.setCreateTime(new Date());
            salesmanOrder.setUpdateTime(new Date());
            salesmanOrder.setOrderId(Long.parseLong(order.getId()+""));
            salesmanOrder.setUserId(order.getUserId());
            salesmanOrder.setSalesUserId(bizUser.getParentOpenId());
            salesmanOrder.setRevenueType(ShopSalesmanOrder.REVENUE_TYPE_SALES);
            salesmanOrder.setOrderStatus(ShopSalesmanOrder.STATUS_DJS);
            Double salesAmount=0D;
            Double invitationAmount=0D;
            Double orderTotal=0D;
            Double zk=1D;
            BizUser salesMan=bizUserService.findByOpenId(bizUser.getParentOpenId());
            BizUser invitationMan=null;
            ShopSalesmanOrder invitationOrder=null;
            boolean hasInvitationMan=StringUtils.isNotBlank(salesMan.getParentOpenId());
            //判断推广员是否还存在上级,存在则计算邀请收益
            if(hasInvitationMan){
                invitationMan=bizUserService.findByOpenId(salesMan.getParentOpenId());
                 invitationOrder=new ShopSalesmanOrder();
                BeanUtils.copyProperties(salesmanOrder,invitationOrder);
                invitationOrder.setSalesUserId(invitationMan.getOpenId());
                invitationOrder.setRevenueType(ShopSalesmanOrder.REVENUE_TYPE_INVITATION);
            }
            //收益计算
            for (ShopOrderDetails item:order.getDetails() ){
                if(StringUtils.isNotBlank(item.getShopProduct().getAttrValues())
                && item.getShopProduct().getAttrValues().contains("分销商城")){
                    if(item.getShopSku().getSealesPrice()==null
                    ||item.getShopSku().getSealesPrice().doubleValue()==0){
                        //按分销等级计算
                        BizUser salesMan=bizUserService.findByOpenId(bizUser.getParentOpenId());
                        shopSalesmanGradeDao.selectById(salesMan.getSalesmanGrade());
                        ShopSalesmanGrade shopSalesmanGrade = shopSalesmanGradeDao.selectById(salesMan.getSalesmanGrade());
                        salesAmount+=item.getTotalPrice().doubleValue()*(shopSalesmanGrade.getSealesCommission()/100);
                        if(hasInvitationMan){
                            ShopSalesmanGrade invitationManGrade = shopSalesmanGradeDao.selectById(invitationMan.getSalesmanGrade());
                            invitationAmount+=item.getTotalPrice().doubleValue()*(invitationManGrade.getInvitationCommission()/100);
                        }
                    }else{
                        //按产品设置的金额计算
                        amount+=item.getShopSku().getSealesPrice().doubleValue();
                    }
                        //按产品设置的推广金额计算
                        salesAmount+=item.getShopSku().getSealesPrice().doubleValue()*item.getCount();
                        if(hasInvitationMan){
                            invitationAmount+=item.getShopSku().getInvitationPrice().doubleValue()*item.getCount();
                }
            }
                    orderTotal+=item.getTotalPrice().doubleValue();
                }
            }
            //整体的优惠金额折算成折扣,* 佣金
            zk=order.getOrderMoney().doubleValue()/orderTotal;
            salesAmount=salesAmount*zk;
            salesmanOrder.setAmount(salesAmount);
            shopSalesmanOrderDao.insert(salesmanOrder);
            if(hasInvitationMan){
                invitationAmount=invitationAmount*zk;
                invitationOrder.setAmount(invitationAmount);
                shopSalesmanOrderDao.insert(invitationOrder);
            }
        }else{
            LogUtil.debug("不存在父级userOpid={}",bizUser.getOpenId());
zq-erp/src/main/java/com/matrix/system/shopXcx/vo/SalesOrderVo.java
New file
@@ -0,0 +1,27 @@
package com.matrix.system.shopXcx.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
@ApiModel(value = "SalesOrderVo", description = " 推广订单信息返回类")
public class SalesOrderVo {
    @ApiModelProperty(value = "订单id")
    private Long  orderId ;
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
}
zq-erp/src/main/java/com/matrix/system/shopXcx/vo/SalesmanCenterInfo.java
New file
@@ -0,0 +1,41 @@
package com.matrix.system.shopXcx.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "SalesmanCenterInfo", description = " 销售员中心返回参数")
public class SalesmanCenterInfo {
    @ApiModelProperty(value = "累计收益")
    private String totalRevenue;
    @ApiModelProperty(value = "分销佣金")
    private String salesRevenue;
    @ApiModelProperty(value = "邀请奖励")
    private String invitationRevenue;
    @ApiModelProperty(value = "待结算收益")
    private String djsRevenue;
    @ApiModelProperty(value = "可提现金额")
    private String  withdrawalCash;
    @ApiModelProperty(value = "推广订单数")
    private String  orderCount;
    @ApiModelProperty(value = "客户数")
    private Double   customerCount;
    @ApiModelProperty(value = "邀请下级数")
    private Double   invitationCount;
}
zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml
@@ -46,7 +46,7 @@
                    shop_salesman_order b
                WHERE
                    b.user_id = a.open_id
                  and order_status=1
                  and order_status=2
                  AND b.sales_user_id = #{openId}
            ) AS revenueAmount,
@@ -136,4 +136,60 @@
        </if>
    </select>
    <select id="selectSalesmanCenterInfo" resultType="com.matrix.system.shopXcx.vo.SalesmanCenterInfo">
    select
    IFNULL(withdrawal_cash,0) as withdrawal_cash,
    (
        SELECT
            IFNULL(sum(IFNULL( b.amount, 0 )),0)
        FROM
            shop_salesman_order b
        WHERE
            b.user_id = a.open_id
          and order_status=2
          AND b.sales_user_id = #{openId}
    ) AS totalRevenue,
    (
        SELECT
            IFNULL(sum(IFNULL( b.amount, 0 )),0)
        FROM
            shop_salesman_order b
        WHERE
            b.user_id = a.open_id
          and order_status=2 and revenue_type=1
          AND b.sales_user_id = #{openId}
    ) AS salesRevenue,
    (
        SELECT
            IFNULL(sum(IFNULL( b.amount, 0 )),0)
        FROM
            shop_salesman_order b
        WHERE
            b.user_id = a.open_id
          and order_status=2 and revenue_type=2
          AND b.sales_user_id = #{openId}
    ) AS invitationRevenue,
    IFNULL(withdrawal_cash,0) as withdrawal_cash,
    (
        SELECT
            IFNULL(sum(IFNULL( b.amount, 0 )),0)
        FROM
            shop_salesman_order b
        WHERE
            b.user_id = a.open_id
          and order_status=1
          AND b.sales_user_id = #{openId}
    ) AS djsRevenue,
    ( SELECT count( * ) FROM shop_salesman_order c WHERE c.user_id = a.open_id AND c.sales_user_id = #{openId} ) AS orderCount,
    (select count(*) from biz_user where parent_open_id=#{openId} and is_sales=1) as invitationCount,
    (select count(*) from biz_user where parent_open_id=#{openId} and is_sales=2) as customerCount
    from biz_user a where
    a.open_id=#{openId}
    </select>
</mapper>
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/cz-form.html
@@ -101,9 +101,22 @@
                            width="50">
                    </el-table-column>
                    <el-table-column
                            label="业绩类型" width="150">
                        <template slot-scope="scope">
                            <el-select v-model="scope.row.achieveType" @change="calculationAchieve" placeholder="请选择业绩类型">
                                <el-option
                                        v-for="item in achieveTypeList"
                                        :key="item.value"
                                        :label="item.value"
                                        :value="item.value">
                                </el-option>
                            </el-select>
                        </template>
                    </el-table-column>
                    <el-table-column
                            label="业绩" width="100">
                        <template slot-scope="scope">
                            <el-input v-model="scope.row.achieveMoney"></el-input>
                            <el-input @input="checkAchieveMoney" v-model="scope.row.goodsCash"></el-input>
                        </template>
                    </el-table-column>
                    <el-table-column
@@ -169,6 +182,7 @@
            cardInfo : "",
            loginUser : "",
            rechargeMoney : 0,
            achieveTypeList : [],
            payMethods: [{
                value: '现金支付',
                img: '/images/pay/cash.png',
@@ -219,6 +233,14 @@
                }
            });
            // 业绩类型
            AjaxProxy.requst({
                app: _this,
                url: basePath + '/admin/customerDictionary/getListByParentCode/YJLX',
                callback: function (data) {
                    _this.achieveTypeList = data.rows;
            //获取登录用户信息
            AjaxProxy.requst({
                app: _this,
@@ -228,19 +250,23 @@
                    _this.achieveList.push({
                        saleId: _this.loginUser.suId,
                        achieveMoney: 0,
                                goodsCash: 0,
                                achieveType : _this.achieveTypeList[0].value,
                        commission : 0,
                        isShare: false,
                    });
                }
            });
                }
            });
        },
        methods : {
            //修改充值金额同步修改业绩
            changeRechargeMoney(){
                let aMoeny=(this.rechargeMoney/this.achieveList.length).toFixed(2);
                this.achieveList.forEach(item=>{
                    item.achieveMoney=aMoeny;
                    item.goodsCash=aMoeny;
                });
            },
            submitRecharge() {
@@ -280,14 +306,15 @@
                _this.achieveList.forEach(achieve => {
                    let achieveNew = {
                        beaultId: achieve.saleId,
                        t1: achieve.achieveMoney,
                        t3: '现金业绩',
                        goodsCash: achieve.goodsCash,
                        achieveType: achieve.achieveType,
                        projPercentage: achieve.commission,
                    };
                    achaeveList.push(achieveNew);
                })
                _this.cardInfo.bjmoney = _this.rechargeMoney;
                _this.cardInfo.achaeveList = achaeveList;
                if (_this.checkAchieveMoney()) {
                let url = basePath + "/admin/moneyCardUse/cz";
                console.log(_this.cardInfo);
@@ -311,6 +338,7 @@
                        _this.closeFrame();
                    }
                });
                }
            },
            cancelSubmit() {
                this.closeFrame();
@@ -379,10 +407,56 @@
                row2 = JSON.parse(JSON.stringify(row));
                row2.isShare = true;
                this.achieveList.push(row2);
                this.calculationAchieve();
            },
            calculationAchieve() {
                let _this = this;
                let jsqMap = {};
                this.achieveList.forEach(achieve=>{
                    key=achieve.achieveType;
                    if(!jsqMap[key]) {
                        jsqMap[key]=1;
                    } else {
                        jsqMap[key]++;
                    }
                });
                this.achieveList.forEach(achieve=>{
                    key = achieve.achieveType;
                    achieve.goodsCash=(_this.rechargeMoney/jsqMap[key]).toFixed(2);
                });
            },
            //删除业绩
            delAchieve(index, row) {
                this.achieveList.splice(index, 1);
                this.calculationAchieve();
            },
            checkAchieveMoney(){
                console.log("校验业绩是否大于订单收款金额");
                let _this = this;
                let jsqMap={};
                let isOk=true;
                for(let i=0 ; i< this.achieveList.length; i++){
                    let achieve=this.achieveList[i];
                    if(!isNaN(achieve.goodsCash)  ){
                        key=achieve.achieveType;
                        if(!jsqMap[key]){
                            jsqMap[key]=parseFloat(achieve.goodsCash);
                        }else{
                            jsqMap[key]=jsqMap[key]+parseFloat(achieve.goodsCash);
                        }
                        if(jsqMap[key]>_this.rechargeMoney) {
                            this.$message.error("业绩分配金额大于支付金额");
                            isOk = false;
                            return;
                        }
                    }else{
                        this.$message.error("业绩分配金额请填写数字");
                        isOk=false;
                        return;
                    }
                };
                console.log("isOk",isOk);
                return isOk;
            },
        }
    });