xiaoyong931011
2021-03-17 94596756df6da51d1ed164f3925db3ceea5e2b0e
分销订单0317
6 files modified
257 ■■■■■ changed files
zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java 26 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopSalesmanApplyVo.java 4 ●●● patch | view | raw | blame | history
zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml 2 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-order.html 82 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-update.html 95 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-user.html 48 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java
@@ -14,6 +14,7 @@
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.pojo.VerificationResult;
import com.matrix.core.tools.StringUtils;
import com.matrix.core.tools.WebUtil;
import com.matrix.system.common.bean.BusParameterSettings;
import com.matrix.system.common.bean.SysUsers;
import com.matrix.system.common.dao.BusParameterSettingsDao;
@@ -357,11 +358,9 @@
    @Transactional(rollbackFor = Exception.class)
    public AjaxResult updateFyfa(UpdateFyfaDto updateFyfaDto) {
        //设置用户公司ID
        QueryUtil.setQueryLimitCom(updateFyfaDto);
        ShopSalesmanGrade selectById = shopSalesmanGradeDao.selectById(updateFyfaDto.getId());
        if(ObjectUtil.isEmpty(selectById)) {
            return AjaxResult.buildFailInstance("当前行数据不存在,请刷新页面");
        }
        String name = updateFyfaDto.getName();
        if(StrUtil.isEmpty(name)) {
            return AjaxResult.buildFailInstance("请输入方案名称");
@@ -374,8 +373,23 @@
        if(ObjectUtil.isEmpty(invitationCommission)) {
            return AjaxResult.buildFailInstance("请输入正确的邀请提成");
        }
        //设置用户公司ID
        QueryUtil.setQueryLimitCom(updateFyfaDto);
        if(ObjectUtil.isEmpty(selectById)) {
            SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
            ShopSalesmanGrade shopSalesmanGrade = new ShopSalesmanGrade();
            shopSalesmanGrade.setCompanyId(updateFyfaDto.getCompanyId());
            shopSalesmanGrade.setName(updateFyfaDto.getName());
            shopSalesmanGrade.setSealesCommission(sealesCommission);
            shopSalesmanGrade.setInvitationCommission(invitationCommission);
            shopSalesmanGrade.setGradeCondition(updateFyfaDto.getGradeCondition());
            shopSalesmanGrade.setIsDefault(2);
            shopSalesmanGrade.setCreateBy(user.getSuName());
            shopSalesmanGrade.setUpdateBy(user.getSuName());
            shopSalesmanGrade.setCreateTime(new Date());
            shopSalesmanGrade.setUpdateTime(new Date());
            shopSalesmanGrade.setCompanyId(user.getCompanyId());
            shopSalesmanGradeDao.insert(shopSalesmanGrade);
            return AjaxResult.buildSuccessInstance("操作成功");
        }
        selectById.setCompanyId(updateFyfaDto.getCompanyId());
        selectById.setName(updateFyfaDto.getName());
        selectById.setSealesCommission(sealesCommission);
zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopSalesmanApplyVo.java
@@ -74,8 +74,10 @@
    private String nickname;
    @ApiModelProperty(value = "头像")
    private String avatarUrl;
    @ApiModelProperty(value = "邀请人")
    @ApiModelProperty(value = "注册邀请人")
    private String parentUser;
    @ApiModelProperty(value = "当前上级")
    private String parentUserNow;
    @ApiModelProperty(value = "推广客户")
    private Integer lowerLevelNum;
    @ApiModelProperty(value = "邀请下级")
zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml
@@ -66,6 +66,7 @@
        b.nick_name nickname,
        (SELECT s.nick_name FROM biz_user s
        WHERE s.open_id = a.parent_user_id ) parentUser,
        c.nick_name parentUserNow,
        ( SELECT COUNT(*) FROM biz_user
        WHERE parent_open_id = a.user_id AND is_sales != 1 ) lowerLevelNum,
        ( SELECT COUNT(*) FROM biz_user
@@ -82,6 +83,7 @@
        shop_salesman_apply a
        LEFT JOIN biz_user b ON a.user_id = b.open_id
        LEFT JOIN shop_salesman_grade g ON a.grade_id = g.id
        LEFT JOIN biz_user c ON c.open_id = b.parent_open_id
        <where>
             a.company_id=#{record.companyId}
            <if test="record.shenheState != null and record.shenheState != ''">
zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-order.html
@@ -23,38 +23,47 @@
    <script type="text/javascript" charset="utf-8"
            th:src="@{/plugin/beditor/lang/zh-cn/zh-cn.js}"></script>
    <style>
        .panel-body{
            overflow: hidden;
        }
        .paginationStyle{
            background: #ffffff;
            padding: 10px 10px;
            margin: 0px 0px 10px 0px;
            text-align: right;
        }
        .box-card {
            width: 240px;
            border-radius: 5px;
            color: #ffffff;
            padding: 2px 0px;
            margin-right: 20px;
            cursor: pointer;
            float: left;
            text-align: center;
        }
        .el-card__body {
            padding: 0px;
        }
    </style>
</head>
<body>
<div class="ibox-content" id="app" v-cloak>
    <el-row style="padding: 10px;">
        <el-row :gutter="100">
            <el-col class="line" :span="8" style="text-align: center">
                <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
<div class="panel-body" id="app" v-cloak>
        <el-row>
                <el-card class="box-card" style="background-color: #0f9aef;">
                    <div style="padding:10px;font-size: 20px;">¥{{basicdetail.balance}}</div>
                    <div>待计算金额</div>
                    <div style="padding: 5px;font-size: 30px;">¥{{basicdetail.balance}}</div>
                </el-card >
            </el-col>
            <el-col class="line" :span="8" style="text-align: center">
                <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
                <el-card class="box-card" style="background: #67C23A;">
                    <div style="padding:10px;font-size: 20px;">{{basicdetail.waitNum}}人</div>
                    <div>待结算人数</div>
                    <div style="padding: 5px;font-size: 30px;">{{basicdetail.waitNum}}人</div>
                </el-card >
            </el-col>
            <el-col class="line" :span="8" style="text-align: center">
                <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
                <el-card class="box-card" style="background: rgb(121, 187, 255);">
                    <div style="padding:10px;font-size: 20px;">{{basicdetail.waitOrderNum}}笔</div>
                    <div>待结算订单</div>
                    <div style="padding: 5px;font-size: 30px;">{{basicdetail.waitOrderNum}}笔</div>
                </el-card >
            </el-col>
        </el-row>
    </el-row>
    <el-row>
        <el-tabs v-model="activeName" >
@@ -155,7 +164,8 @@
                        </el-table-column>
                        <el-table-column
                                prop="orderNo"
                                label="订单编号">
                                label="订单编号"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                prop="actualBalance"
@@ -177,15 +187,18 @@
                        </el-table-column>
                        <el-table-column
                                prop="address"
                                label="下单门店">
                                label="下单门店"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                prop="custom"
                                label="客户">
                                label="客户"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                prop="parentSale"
                                label="推广员">
                                label="推广员"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                label="收益类型">
@@ -208,15 +221,19 @@
                        </el-table-column>
                        <el-table-column
                                prop="settleNo"
                                label="结算编号" width="150">
                                label="结算编号"
                                show-overflow-tooltip
                                width="150">
                        </el-table-column>
                        <el-table-column
                                prop="settleTime"
                                label="结算时间">
                                label="结算时间"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                prop="settler"
                                label="结算人">
                                label="结算人"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column label="操作">
                        </el-table-column>
@@ -262,7 +279,8 @@
                    <el-table :data="orderLevelList.rows"  :height="height" stripe:true  @sort-change="sortChange">
                        <el-table-column
                                prop="orderNo"
                                label="结算编号">
                                label="结算编号"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                prop="actualBalance"
@@ -278,11 +296,13 @@
                        </el-table-column>
                        <el-table-column
                                prop="setTime"
                                label="结算时间">
                                label="结算时间"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                prop="setMan"
                                label="结算人">
                                label="结算人"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                label="结算方式">
@@ -293,7 +313,8 @@
                        </el-table-column>
                        <el-table-column
                                prop="remark"
                                label="备注">
                                label="备注"
                                show-overflow-tooltip>
                        </el-table-column>
                    </el-table>
                </el-row>
@@ -332,7 +353,7 @@
        el: '#app',
        data: {
            activeName: 'first',
            height:'calc(100vh - 240px)',
            height:'calc(100vh - 340px)',
            //--基本数据
            basicdetail:{},
            //--时间选择
@@ -588,7 +609,8 @@
                    let order = _this.multipleSelection[i];
                    //待审核的计算到弹出框
                    let orderState = order.orderState;
                    if(orderState == 4 || orderState == 5){
                    let settleType = order.settleType;
                    if((orderState == 4 || orderState == 5) && settleType == 1){
                        let orderId = order.id;
                        name.push(order.customUserId);
                        orderNum = orderNum + 1;
@@ -626,7 +648,7 @@
            setOrderDone() {
                if(this.orderNumsDones > 0){
                    this.$message({
                        message: '订单状态【待评价】和【已评价】才允许结算',
                        message: '【待评价】和【已评价】状态下的【待结算】订单,才允许结算',
                        type: 'warning'
                    });
                }else if(this.orderNums > 0){
zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-update.html
@@ -31,43 +31,57 @@
        }
        .el-aside {
            color: #333;
            line-height: 50px;
            line-height: 15px;
        }
        .el-main {
            color: #333;
            line-height: 50px;
            line-height: 15px;
        }
        .box-card {
            width: 160px;
            border-radius: 5px;
            color: #ffffff;
            padding: 5px 5px;
            margin-right: 20px;
            cursor: pointer;
            float: right;
        }
        .el-card__body {
            padding: 0px;
        }
    </style>
</head>
<body>
<div class="ibox-content" id="app" v-cloak>
    <el-row>
        <p class="el-big-title">个人详情</p>
    </el-row>
    <el-container>
        <el-aside width="200px" style="display:flex;align-items: center;">
            <el-avatar :size="100" :src="basicdetail.avatarUrl" style="display:flex;align-items: center;margin-left: 50px"></el-avatar>
        <el-aside width="60px" style="display:flex;align-items: center;">
            <el-avatar :size="50" :src="basicdetail.avatarUrl" style="display:flex;align-items: center;margin-left: 10px"></el-avatar>
        </el-aside>
        <el-main>
            <el-row style="display:flex;align-items: center;">
                <el-col :span="3" style="display:flex;align-items: center;">
            <el-row style="display:flex;align-items: center;padding: 10px;">
                <el-col :span="8" style="display:flex;align-items: center;">
                    <span style="font-size: 20px;">{{basicdetail.nickname}} </span>
                </el-col>
                <el-col :span="3">
                <el-col :span="6">
                    <el-select v-model="basicdetail.grade" @focus="getDatalist()" @change="changeSaleManGrade(basicdetail.grade)" placeholder="请选择" filterable allow-create>
                        <el-option v-for="item in salemanGradeList " :key="item.id" :label="item.name" :value="item.id"></el-option>
                    </el-select>
                </el-col>
                <el-col :span="18">
                <el-col :span="10">
                </el-col>
            </el-row>
            <el-row style="display:flex;">
            <el-row style="display:flex;padding: 5px;">
                <el-col>
                    <span>
                        手机号码:{{basicdetail.phone}}   |
                        加入时间:{{basicdetail.createTime}}   |
                        加入时间:{{basicdetail.createTime}}
                    </span>
                </el-col>
            </el-row>
            <el-row style="display:flex;padding: 5px;">
                <el-col>
                    <span>
                        邀请人:{{basicdetail.parentUser}}   |
                        来源:
                            <span v-if="basicdetail.applyWay == 1">自主申请</span>
@@ -82,35 +96,30 @@
                </el-col>
            </el-row>
        </el-main>
    </el-container>
    <el-row style="padding: 30px;">
        <el-row :gutter="100">
            <el-col class="line" :span="6" style="text-align: center">
                <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
        <el-main>
            <el-row>
                <el-row style="display:flex;align-items: center;text-align: center;">
                    <el-card class="box-card" style="background-color: #0f9aef;">
                        <div style="padding:10px;font-size: 20px;">{{basicdetail.lowerLevelNum}}人</div>
                    <div>绑定客户</div>
                    <div style="padding: 5px;font-size: 18px;">{{basicdetail.lowerLevelNum}}人</div>
                </el-card >
            </el-col>
            <el-col class="line" :span="6" style="text-align: center">
                <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
                    <el-card class="box-card" style="background: #67C23A;">
                        <div style="padding:10px;font-size: 20px;">{{basicdetail.invitedNum}}人</div>
                    <div>邀请下级</div>
                    <div style="padding: 5px;font-size: 18px;">{{basicdetail.invitedNum}}人</div>
                </el-card >
            </el-col>
            <el-col class="line" :span="6" style="text-align: center">
                <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
                    <el-card class="box-card" style="background: rgb(121, 187, 255);">
                        <div style="padding:10px;font-size: 20px;">{{basicdetail.totalRevenue}}元</div>
                    <div>累计收益</div>
                    <div style="padding: 5px;font-size: 18px;">{{basicdetail.totalRevenue}}元</div>
                </el-card >
            </el-col>
            <el-col class="line" :span="6" style="text-align: center">
                <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
                    <el-card class="box-card" style="background: rgb(93 191 45);">
                        <div style="padding:10px;font-size: 20px;">{{basicdetail.balance}}元</div>
                    <div>待结算</div>
                    <div style="padding: 5px;font-size: 18px;">{{basicdetail.balance}}元</div>
                </el-card >
            </el-col>
        </el-row>
    </el-row>
        </el-main>
    </el-container>
    <el-row>
        <el-tabs v-model="activeName" >
            <el-tab-pane label="绑定客户" name="first">
@@ -132,7 +141,8 @@
                                type="selection">
                        </el-table-column>
                        <el-table-column
                                label="客户">
                                label="客户"
                                show-overflow-tooltip>
                            <template slot-scope="scope">
                                <img :src="scope.row.avatarUrl" width="40" height="40" class="head_pic"/>
                                {{scope.row.nickname}}
@@ -140,7 +150,8 @@
                        </el-table-column>
                        <el-table-column
                                prop="createTime"
                                label="绑定时间">
                                label="绑定时间"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                label="绑定方式">
@@ -267,7 +278,8 @@
                    <el-table id="proj" :data="orderLevelList.rows"  :height="height" stripe:true  @sort-change="sortChange">
                        <el-table-column
                                prop="orderNo"
                                label="订单编号">
                                label="订单编号"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                prop="orderMoney"
@@ -289,10 +301,12 @@
                        </el-table-column>
                        <el-table-column
                                prop="storeName"
                                label="下单门店">
                                label="下单门店"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                label="客户">
                                label="客户"
                                show-overflow-tooltip>
                            <template slot-scope="scope">
                                <img :src="scope.row.avatarUrl" width="40" height="40" class="head_pic"/>
                                {{scope.row.nickName}}
@@ -300,7 +314,8 @@
                        </el-table-column>
                        <el-table-column
                                prop="createTime"
                                label="时间">
                                label="时间"
                                show-overflow-tooltip>
                        </el-table-column>
                        <el-table-column
                                label="收益类型">
@@ -404,7 +419,7 @@
                pageSize:10,
                currentPage:1,
            },
            height:'calc(100vh - 240px)',
            height:'calc(100vh - 400px)',
        },
        created: function () {
zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-user.html
@@ -23,6 +23,9 @@
    <script type="text/javascript" charset="utf-8"
            th:src="@{/plugin/beditor/lang/zh-cn/zh-cn.js}"></script>
    <style>
        .panel-body{
            overflow: hidden;
        }
        .paginationStyle{
            background: #ffffff;
            padding: 10px 10px;
@@ -56,7 +59,7 @@
</head>
<body>
<div class="ibox-content" id="app" v-cloak>
<div class="panel-body" id="app" v-cloak>
        <el-row>
            <el-tabs v-model="activeName" >
                <el-tab-pane label="分销员管理" name="first">
@@ -99,15 +102,17 @@
                                        type="selection">
                                </el-table-column>
                                <el-table-column
                                        label="分销员" width="150">
                                        label="分销员"
                                        show-overflow-tooltip
                                        width="150">
                                    <template slot-scope="scope">
                                        <img :src="scope.row.avatarUrl" width="40" height="40" class="head_pic"/>
                                        {{scope.row.nickname}}
                                    </template>
                                </el-table-column>
                                <el-table-column
                                        prop="parentUser"
                                        label="邀请人">
                                        prop="parentUserNow"
                                        label="当前上级">
                                </el-table-column>
                                <el-table-column
                                        prop="lowerLevelNum"
@@ -132,6 +137,7 @@
                                <el-table-column
                                        prop="createTime"
                                        label="加入时间"
                                        show-overflow-tooltip
                                        :formatter="formatDate">
                                </el-table-column>
                                <el-table-column
@@ -142,6 +148,10 @@
                                        <span v-if="scope.row.applyStatus == 3">未通过</span>
                                        <span v-if="scope.row.applyStatus == 4">系统删除</span>
                                    </template>
                                </el-table-column>
                                <el-table-column
                                        prop="parentUser"
                                        label="注册邀请人">
                                </el-table-column>
                                <el-table-column
                                        label="来源">
@@ -211,7 +221,7 @@
                            <el-table-column label="操作" width="240">
                                <template slot-scope="scope">
                                    <el-row style="display:flex;">
                                        <el-button type="primary" v-if="scope.row.isDefault == 1" size="mini" @click="addFyfa()">新增</el-button>
                                        <el-button type="primary" v-if="scope.row.isDefault == 1" size="mini" @click="addFyfaReady()">新增</el-button>
                                        <el-button type="primary" size="mini" @click="updateFyfa(scope.row)">保存</el-button>
                                        <el-button type="danger" v-if="scope.row.isDefault == 2" size="mini" @click="delFyfa(scope.row)">删除</el-button>
                                    </el-row>
@@ -442,18 +452,23 @@
                this.loadFyfaSetting();
            },
            //新增
            addFyfa(){
            addFyfaReady(){
                let _this = this;
                AjaxProxy.requst({
                    app: _this,
                    data:[],
                    url: basePath + '/fenXiao/fenXiaoUser/addFyfa',
                    callback: function (data) {
                        _this.$message.success(data.info);
                        _this.loadFyfaSetting();
                    }
                });
                let fyfaReady = {};
                _this.fyfaList.rows.push(fyfaReady);
            },
            // addFyfa(){
            //     let _this = this;
            //     AjaxProxy.requst({
            //         app: _this,
            //         data:[],
            //         url: basePath + '/fenXiao/fenXiaoUser/addFyfa',
            //         callback: function (data) {
            //             _this.$message.success(data.info);
            //             _this.loadFyfaSetting();
            //         }
            //     });
            // },
            updateFyfa(row){
                let _this = this;
                let id = row.id;
@@ -489,7 +504,7 @@
                }).then(() => {
                    //通过
                    _this.delFyfaApply(row);
                    _this.loadFyfaSetting();
                }).catch(action => {
                    //不通过
                    if(action === 'cancel'){
@@ -513,6 +528,7 @@
                    url: basePath + '/fenXiao/fenXiaoUser/delFyfaApply',
                    callback: function (data) {
                        _this.$message.success(data.info);
                        _this.loadFyfaSetting();
                    }
                });
            },