Helius
2021-03-17 8f9e3814fd49efd763f06305ffbfff6d87012627
modify daliy-list-new
5 files modified
601 ■■■■■ changed files
zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java 2 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html 39 ●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/templates/views/admin/hive-erp/statistics/daily-list-new.html 462 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html 13 ●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html 85 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
@@ -447,8 +447,10 @@
        if(orderVo.getId()!=null){
            WebUtil.getRequest().setAttribute("orderParam", orderVo.getId());
            WebUtil.getRequest().setAttribute("orderId", orderVo.getId());
        }else if(StringUtils.isNotBlank(orderVo.getOrderNo())){
            WebUtil.getRequest().setAttribute("orderParam", orderVo.getOrderNo());
            WebUtil.getRequest().setAttribute("orderNo", orderVo.getOrderNo());
        }
        return "admin/hive/beautySalon/orderXq-form";
    }
zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html
@@ -108,7 +108,8 @@
                        </el-col>
                        <el-col :span="14" style="text-align: right;">
                            <label>¥ {{order.total}}</label>
                            <label>¥ {{(order.zkTotal - order.total).toFixed(2)}}</label>
                            <!-- 退款订单不能显示为负数 -->
                            <label>¥ {{(order.zkTotal - order.total>0?order.zkTotal - order.total:0).toFixed(2)}}</label>
                            <label>¥ {{order.zkTotal}}</label>
                            <label>¥ {{order.arrears}}</label>
                            <label>¥ {{order.repay}}</label>
@@ -256,11 +257,15 @@
                                        label="收款">
                                </el-table-column>
                                <el-table-column
                                        prop="t3"
                                        prop="payMethod"
                                        label="支付方式">
                                </el-table-column>
                                <el-table-column
                                        prop="achieveType"
                                        label="业绩类型">
                                </el-table-column>
                                <el-table-column
                                        prop="t1"
                                        prop="goodsCash"
                                        label="原业绩">
                                </el-table-column>
                                <el-table-column
@@ -544,7 +549,16 @@
        created : function() {
            let _this = this;
            this.orderParam = /*[[${orderParam}]]*/
                this.queryOrderDetailData(this.orderParam);
            var orderId = /*[[${orderId}]]*/
            var orderNo = /*[[${orderNo}]]*/
            var param = {};
            if(orderId) {
                param.id = orderId;
            } else {
                param.orderNo = orderNo;
            }
            this.queryOrderDetailData(param);
            // 业绩类型
            AjaxProxy.requst({
                app: _this,
@@ -570,7 +584,7 @@
                let _this = this;
                AjaxProxy.requst({
                    app: _this,
                    data: {id: param, orderNo:param},
                    data: param,
                    contentType: 'application/x-www-form-urlencoded',
                    url: basePath + '/admin/order/findOrderDetailByIdOrNo',
                    callback: function (data) {
@@ -664,6 +678,10 @@
                }
                _this.data.items = dataItems;
                _this.data.zkTotal =  _this.refundMoney;
                _this.data.total =  _this.total;
                AjaxProxy.requst({
                    app: _this,
                    data: _this.data,
@@ -717,6 +735,7 @@
                let _this = this;
                let items = this.orderItems;
                _this.refundMoney = 0;
                _this.total = 0;
                for(var i = 0; i < items.length; i++) {
                    let item = items[i]
@@ -732,6 +751,8 @@
                        }
                        _this.refundMoney += parseFloat(item.refundPrice * item.refundCount);
                        //记录一下未优惠之前的价格
                        _this.total += parseFloat(item.price * item.refundCount);
                    }
                }
@@ -742,7 +763,7 @@
                _this.dialogSettleVisible = true;
            },
            calOrderTotalFormatter(row, column) {
                return row.count * row.price;
                return row.count * row.zkPrice;
            },
            getVipMoneyCards() {
                let _this = this;
@@ -915,14 +936,14 @@
                        if(jsqMap[key]>achieve.zkTotal) {
                            this.$message.error("【"+achieve.goodsName + "】业绩分配金额大于支付金额");
                            isOk = false;
                            return;
                            break;
                        }
                    }else{
                        this.$message.error("【"+achieve.goodsName + "】业绩分配金额请填写数字");
                        isOk=false;
                        return;
                        break;
                    }
                };
                }
                console.log("isOk",isOk);
                return isOk;
            },
zq-erp/src/main/resources/templates/views/admin/hive-erp/statistics/daily-list-new.html
@@ -11,219 +11,273 @@
<meta http-equiv="Cache-Control" content="no-siteapp" />
<LINK rel="Bookmark" href="../images/favicon.ico">
<!-- 本框架基本脚本和样式 -->
<script type="text/javascript"
        th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
<script type="text/javascript" th:src="@{/js/systools/MBase.js}"></script>
<script type="text/javascript" th:src="@{/js/systools/MBaseVue.js}"></script>
<script type="text/javascript" th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
<script type="text/javascript" th:src="@{/js/plugin/jquery.query.js}"></script>
<script type="text/javascript" th:src="@{/plugin/moment.min.js}"></script>
<link rel="stylesheet" th:href="@{/plugin/element-ui/index.css}">
<link th:href="@{/css/styleOne/style.min.css}" rel="stylesheet" type="text/css"/>
<script type="text/javascript" th:src="@{/js/function/public.js}"></script>
</head>
<body class="gray-bg">
<style>
    .table-style {
        margin: 20px 0;
        padding: 20px 10px;
        border: 1px solid #DCDFE6;
        background-color: white;
    }
    .search-form {
        background-color: white;
        padding-top: 10px;
        padding-left: 20px;
        padding-bottom: 10px;
    }
</style>
<body>
<div id="app" style="">
    <el-row class="search-form">
        <el-form ref="form" :model="form" inline>
            <el-form-item label="选择年月">
                <el-select v-model="form.year" style="width:120px;" placeholder="请选择">
                    <el-option v-for="item in years"
                               :key="item"
                               :label="item"
                               :value="item"></el-option>
                </el-select>
            </el-form-item>
            <el-form-item>
                <el-select v-model="form.month" style="width:120px;" placeholder="请选择">
                    <el-option v-for="item in months"
                               :key="item"
                               :label="item"
                               :value="item"></el-option>
                </el-select>
            </el-form-item>
            <el-form-item>
                <el-select v-model="form.day" style="width:120px;" placeholder="请选择">
                    <el-option v-for="item in days"
                               :key="item"
                               :label="item"
                               :value="item"></el-option>
                </el-select>
            </el-form-item>
            <el-form-item label="日期范围">
                <el-date-picker v-model="form.timeRange"
                                type="datetimerange"
                                range-separator="至"
                                start-placeholder="开始日期"
                                end-placeholder="结束日期">
                </el-date-picker>
            </el-form-item>
    <div class="ibox-content">
        <!-- 搜索框部分start -->
        <form class="form-inline" id="serchform">
        <div class="row mb-10">
                <div class="col-sm-8">
                    <button  onclick="myGrid.serchData()" type="button" class="btn btn-info btn-sm"><i class="fa fa-search" ></i> 搜索</button>
                    <button  onclick="myGrid.resetForm()" type="button"   class="btn btn-default btn-sm"><i class="fa fa-refresh " ></i> 重置</button>
                    <button  matrix:btn="ygyjbb-exportExcel"  onclick="exportExcel()" type="button" class="btn btn-default btn-sm"><i class="fa fa-download" ></i> 导出</button>
                </div>
            </div>
            <div class="form-group mr-20">
                <label >选择年月</label> <select
                    class="form-control" name="year" id="select_year">
                    <option value="">年份</option>
                    <option value="2010">2010</option>
                    <option value="2011">2011</option>
                    <option value="2012">2012</option>
                    <option value="2013">2013</option>
                    <option value="2014">2014</option>
                    <option value="2015">2015</option>
                    <option value="2016">2016</option>
                    <option value="2017">2017</option>
                    <option value="2018">2018</option>
                    <option value="2019">2019</option>
                    <option value="2020">2020</option>
                    <option value="2021">2021</option>
                </select> <select class="form-control" name="month" id="select_month">
                    <option value="01">1</option>
                    <option value="02">2</option>
                    <option value="03">3</option>
                    <option value="04">4</option>
                    <option value="05">5</option>
                    <option value="06">6</option>
                    <option value="07">7</option>
                    <option value="08">8</option>
                    <option value="09">9</option>
                    <option value="10">10</option>
                    <option value="11">11</option>
                    <option value="12">12</option>
                </select>
                <select class="form-control" name="day" id="select_day">
                 <option value="">日</option>
                <th:block th:each="i:${#numbers.sequence(1, 31)}"   >
                    <option th:value="${i }" th:text="${i }"></option>
                </th:block>
                </select>
            </div>
            <div class="form-group mr-20">
                <label>日期范围</label>
                <input name="beginTime" type="text" class="form-control datetimepicker" id="beginTime">-
                <input name="endTime"  type="text" class="form-control datetimepicker" id="endTime">
            </div>
            <el-form-item label="会员">
                <el-input v-model="form.vipQueryKey"></el-input>
            </el-form-item>
            <div class="form-group mr-20">
                <label>会员</label>
                <input autocomplete="off" placeholder="姓名/编号/电话"  name="vipQueryKey" type="text" class="form-control"  >
            </div>
            <el-form-item label="业绩归属人">
                <el-select v-model="form.beaultId" placeholder="请选择">
                    <el-option v-for="item in achieveUsers"
                               :key="item.suId"
                               :label="item.suName"
                               :value="item.suId"></el-option>
                </el-select>
            </el-form-item>
            <div class="form-group mr-20">
                <label>业绩归属人</label>
                <select class="form-control autoFull select2"
                        th:data-url="@{/admin/getShopStaffByRoleName?roleName=美疗师}"
                        data-value="suId"
                        data-filed="suName"
                        name="beaultId"
                        id="beaultId">
                    <option value="">--请选择--</option>
                </select>
            </div>
            <el-form-item label="门店">
                <el-select v-model="form.shopId" placeholder="请选择所属门店">
                    <el-option v-for="item in shopList"
                            :key="item.id"
                            :label="item.shopName"
                            :value="item.id">
                    </el-option>
                </el-select>
            </el-form-item>
            <div class="form-group mr-20">
                <label>门店</label>
                <select class="form-control autoFull" data-filed="shopName" name="shopId" id="shopId"
                        th:data-url="@{/admin/shopInfo/findAllWithPermi}">
                    <option value=''>--请选择部所属门店--</option>
                </select>
            </div>
        </form>
            <el-button type="primary" @click="search" >搜索</el-button>
            <el-button @click="resetForm('form')">重置</el-button>
            <el-button type="warning" @click="exportExcel">导出</el-button>
        </el-form>
        <table id="mgrid">
            <thead>
                <tr>
                    <th data-formatter="MGrid.indexfn" data-align="center"
                        data-width="30px" data-footer-formatter="footCountTitle">序号</th>
                    <th data-field="datatime">时间</th>
                    <th data-field="orderNo" data-formatter="buildOpenDetail" >订单编号</th>
                    <th data-field="orderType">订单类型</th>
                    <th data-field="vipName">会员姓名</th>
                    <th data-field="proName">产品</th>
                    <th data-field="cateName">产品分类</th>
                    <th data-field="zkTotal" data-footer-formatter="countColumn">订单金额</th>
                    <th data-field="goodsCash" data-footer-formatter="countColumn">订单业绩</th>
                    <th data-field="payMethod">收款方式</th>
                    <th data-field="achieveType">业绩类型</th>
                    <th data-field="meiliao">员工</th>
                    <th data-field="hisConsume" data-footer-formatter="countColumn">本金消耗
                        <i data-toggle="tooltip" data-placement="top" title="消耗金额:客户做服务时划扣的本金" class="fa fa-question-circle"></i>
                    </th>
                    <th data-field="freeConsume" data-footer-formatter="countColumn">赠送消耗
                        <i data-toggle="tooltip" data-placement="top" title="赠送消耗:客户做服务时划扣的赠送金额" class="fa fa-question-circle"></i>
                    </th>
                    <th data-field="projPercentage" data-footer-formatter="countColumn">服务提成
                        <i data-toggle="tooltip" data-placement="top" title="服务提成:为美疗师手动设置的项目服务提成" class="fa fa-question-circle"></i>
                    </th>
                    <th data-field="numberOfPeople" data-footer-formatter="countColumn">人头</th>
                    <th data-field="projNum" data-footer-formatter="countColumn">项目个数</th>
                    <th data-field="projTime" data-footer-formatter="countColumn">项目时间</th>
                    <th data-field="guwen">操作人</th>
                    <th data-field="shopName">门店</th>
                </tr>
            </thead>
        </table>
    </div>
    <script type="text/javascript" th:src="@{/js/systools/MJsBase.js}"></script>
    <script type="text/javascript" th:src="@{/js/function/public.js}"></script>
    <script type="text/javascript">
        var myGrid;
        var initParam = {
                format : "yyyy-mm-dd hh:ii", //默认显示年与日,如果想显示十分秒:"yyyy-mm-dd hh:ii:ss"
                minView: "hour",     //"month",只显示年月日的选择,不会再跳转去选择时分秒;如果想要选择时分秒的:"hour"
    </el-row>
    <el-row class="table-style">
        <el-table :data="tableData" style="width: 100%">
            <el-table-column type="index" width="30"></el-table-column>
            <el-table-column prop="datatime" width="150" label="时间"></el-table-column>
            <el-table-column prop="orderNo" width="180" label="订单编号">
                <template slot-scope="scope">
                    <el-link @click="jumpOrder(scope.row.orderType, scope.row.orderNo)" type="primary">{{scope.row.orderNo}}</el-link>
                </template>
            </el-table-column>
            <el-table-column prop="orderType" label="订单类型"></el-table-column>
            <el-table-column prop="vipName" label="会员姓名"></el-table-column>
            <el-table-column prop="proName" label="产品" width="200"></el-table-column>
            <el-table-column prop="cateName" label="产品分类"></el-table-column>
            <el-table-column prop="zkTotal" label="订单金额"></el-table-column>
<!--            <el-table-column prop="goodsCash" label="订单业绩"></el-table-column>-->
            <el-table-column prop="meiliao" label="员工"></el-table-column>
            <el-table-column v-for="(item, index) in customColumns" width="120" :key="index" :label="item.value">
                <template slot-scope="scope">
                    <span v-if="item.value == scope.row.achieveType">{{scope.row.goodsCash}}</span>
                </template>
            </el-table-column>
            <el-table-column prop="hisConsume" label="本金消耗"></el-table-column>
            <el-table-column prop="freeConsume" label="赠送消耗"></el-table-column>
            <el-table-column prop="projPercentage" label="服务提成"></el-table-column>
            <el-table-column prop="numberOfPeople" label="人头"></el-table-column>
            <el-table-column prop="projNum" label="项目个数"></el-table-column>
            <el-table-column prop="projTime" label="服务时间"></el-table-column>
            <el-table-column prop="guwen" label="操作人"></el-table-column>
            <el-table-column prop="shopName" label="门店"></el-table-column>
        </el-table>
        <el-row style="margin-top: 10px;">
            <el-pagination
                    @size-change="handleSizeChange"
                    @current-change="handleCurrentChange"
                    :current-page="page.currentPage"
                    :page-sizes="[10, 20, 30, 50]"
                    :page-size="page.size"
                    layout="total, sizes, prev, pager, next, jumper"
                    :total="page.total">
            </el-pagination>
        </el-row>
    </el-row>
</div>
<script type="text/javascript" th:src="@{/plugin/layer/layer.js}"></script>
<script type="text/javascript" th:src="@{/js/systools/AjaxProxyVue.js}"></script>
<script type="text/javascript" th:src="@{/js/plugin/vue.js}"></script>
<script type="text/javascript" th:src="@{/plugin/element-ui/index.js}"></script>
<script type="text/javascript" th:src="@{/plugin/moment.min.js}"></script>
<script type="text/javascript" th:src="@{/js/systools/MJsBase.js}"></script>
<script type="text/javascript" th:inline="javascript">
    var vue = new Vue({
        el : "#app",
        data : {
            tableData : [],
            customColumns : [],
            shopList : [],
            achieveUsers : [],
            years : [2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021],
            months : ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"],
            days : [],
            form : {
                year : '',
                month : '',
                day : '',
                timeRange : '',
                vipQueryKey : '',
                beaultId : '',
                shopId : ''
            },
            page : {
                currentPage : 1,
                size : 10,
                total : 0
            }
         MTools.ininDatetimepicker(initParam);
        //限制结束时间不小于开始时间
         MTools.limitStartEndTime({});
        var date = new Date();
        var year = date.getFullYear();
        var month = date.getMonth() + 1;
        var year_options = "";
        for (var i = 9; i > 0; i--) {
            year_options += "<option value='" + (year - i) + "'>" + (year - i)
                    + "</option>";
        }
        year_options += "<option value='"+year+"' selected='selected'>" + year
                + "</option>";
        $("#select_year").html(year_options);
        $("#select_month").find("option").each(function(row) {
            var option_month = $(this).val();
            if (month == option_month) {
                $(this).attr("selected", true);
            }
        });
        },
        created : function() {
            this.initDays();
            this.queryCustomColumns();
            this.queryShops();
            this.queryAchieveUsers();
        },
        methods : {
            queryTableData () {
                let _this = this;
                var form = _this.form;
                var page = _this.page;
                var params = _this.form;
                params.limit = page.size;
                params.offset = (page.currentPage - 1) * page.size;
        function buildOpenDetail(value, row, index){
            var html = [];
            if(row.orderType=='服务单'){
                html[0] = '<a  onClick="fnPublci.showServiceOrder(1 , \'' + value +'\')"   class="text-primary " >'+value+'</a>'
            }else{
                html[0] = '<a  onClick="fnPublci.showOrder(1 , \'' + value +'\')"   class="text-primary " >'+value+'</a>'
            }
            return html.join("");
        }
        $(function() {
            MTools.autoFullSelect();
            myGrid = MGrid.initGrid({
                url : basePath+"/admin/achieve/findDailyInfoNew",
                showExport : true,
                showFooter : true,
                height:'auto',
                width:'auto',
                exportDataType : "basic", //basic', 'all', 'selected'.
                exportTypes : [ 'excel', 'xlsx' ], //导出类型
                exportOptions : {
                    ignoreColumn : [ 0 ],
                    fileName : "每日单据统计" + MTools.getTime(), //文件名称设置
                    worksheetName : 'Sheet1', //表格工作区名称
                    tableName : '每日单据统计',
                    excelstyles : [ 'background-color', 'color', 'font-size',
                            'font-weight' ],
                if (form.timeRange) {
                    params.beginTime = form.timeRange?moment(form.timeRange[0]).format("YYYY-MM-DD HH:mm"):'';
                    params.endTime = form.timeRange?moment(form.timeRange[1]).format("YYYY-MM-DD HH:mm"):'';
                }
            });
            $('[data-toggle="tooltip"]').tooltip()
        });
        function footCountTitle(data) {
            return "<b>合计</b>";
        };
        function countColumn(data) {
            console.log(data)
             field = this.field;
                var resultsumQuantity = parseFloat((data.reduce(function(sum, row) {
                    console.log(sum,row[field]);
                    return sum + (+row[field]);
                }, 0)).toFixed(2));//保留有效数字
                return "<b>"+resultsumQuantity+"</b>";
        };
        function exportExcel(){
            var param=MForm.toUrlParam("#serchform");
            window.location.href=basePath+"/admin/achieve/exportDailyInfoNew?"+param;
                $.AjaxProxy({
                    p:params
                }).invoke(basePath + "/admin/achieve/findDailyInfoNew", function (loj) {
                    _this.tableData = loj.getValue("rows");
                    _this.page.total = loj.getResult().total;
                });
            },
            queryCustomColumns() {
                let _this = this;
                AjaxProxy.requst({
                    app: _this,
                    url: basePath + '/admin/customerDictionary/getListByParentCode/YJLX',
                    callback: function (data) {
                        _this.customColumns = data.rows;
                        _this.queryTableData();
                    }
                });
            },
            queryShops() {
                let _this = this;
                AjaxProxy.requst({
                    app: _this,
                    url: basePath + '/admin/shopInfo/findAllWithPermi',
                    callback: function (data) {
                        _this.shopList = data.rows;
                    }
                });
            },
            queryAchieveUsers() {
                let _this = this;
                AjaxProxy.requst({
                    app: _this,
                    url: basePath + '/admin/getShopStaffByRoleName?roleName=美疗师',
                    callback: function (data) {
                        _this.achieveUsers = data.rows;
                    }
                });
            },
            resetForm(formName) {
                // this.$refs[formName].resetFields();
                this.form = {
                    timeRange : '',
                    vipQueryKey : '',
                    beaultId : '',
                    shopId : ''
                }
            },
            search() {
                this.queryTableData();
            },
            handleSizeChange(val) {
                this.page.size = val;
                this.queryTableData();
            },
            handleCurrentChange(val) {
                this.page.currentPage = val;
                this.queryTableData();
            },
            initDays() {
                let _this = this;
                for (var i = 1; i <= 31 ; i++) {
                    _this.days.push(i);
                }
            },
            getRequestParam() {
                var form = this.form;
                var params = form;
                if (form.timeRange) {
                    params.beginTime = form.timeRange?moment(form.timeRange[0]).format("YYYY-MM-DD HH:mm"):'';
                    params.endTime = form.timeRange?moment(form.timeRange[1]).format("YYYY-MM-DD HH:mm"):'';
                }
                return params;
            },
            exportExcel() {
                window.location.href=basePath+"/admin/achieve/exportDailyInfoNew?"+MTools.jsonToUrlParam(this.getRequestParam());
            },
            jumpOrder(type, value) {
                if(type=='服务单') {
                    fnPublci.showServiceOrder(1, value);
                } else {
                    fnPublci.showOrder(1, value);
                }
            }
        }
    </script>
    });
</script>
</body>
</html>
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html
@@ -549,7 +549,16 @@
        created : function() {
            let _this = this;
            this.orderParam = /*[[${orderParam}]]*/
                this.queryOrderDetailData(this.orderParam);
            var orderId = /*[[${orderId}]]*/
            var orderNo = /*[[${orderNo}]]*/
            var param = {};
            if(orderId) {
                param.id = orderId;
            } else {
                param.orderNo = orderNo;
            }
            this.queryOrderDetailData(param);
            // 业绩类型
            AjaxProxy.requst({
                app: _this,
@@ -575,7 +584,7 @@
                let _this = this;
                AjaxProxy.requst({
                    app: _this,
                    data: {id: param, orderNo:param},
                    data: param,
                    contentType: 'application/x-www-form-urlencoded',
                    url: basePath + '/admin/order/findOrderDetailByIdOrNo',
                    callback: function (data) {
zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html
@@ -17,6 +17,7 @@
<script type="text/javascript" th:src="@{/plugin/moment.min.js}"></script>
<link rel="stylesheet" th:href="@{/plugin/element-ui/index.css}">
<link th:href="@{/css/styleOne/style.min.css}" rel="stylesheet" type="text/css"/>
<script type="text/javascript" th:src="@{/js/function/public.js}"></script>
</head>
<style>
    .table-style {
@@ -36,6 +37,30 @@
<div id="app" style="">
    <el-row class="search-form">
        <el-form ref="form" :model="form" inline>
            <el-form-item label="选择年月">
                <el-select v-model="form.year" style="width:120px;" placeholder="请选择">
                    <el-option v-for="item in years"
                               :key="item"
                               :label="item"
                               :value="item"></el-option>
                </el-select>
            </el-form-item>
            <el-form-item>
                <el-select v-model="form.month" style="width:120px;" placeholder="请选择">
                    <el-option v-for="item in months"
                               :key="item"
                               :label="item"
                               :value="item"></el-option>
                </el-select>
            </el-form-item>
            <el-form-item>
                <el-select v-model="form.day" style="width:120px;" placeholder="请选择">
                    <el-option v-for="item in days"
                               :key="item"
                               :label="item"
                               :value="item"></el-option>
                </el-select>
            </el-form-item>
            <el-form-item label="日期范围">
                <el-date-picker v-model="form.timeRange"
                                type="datetimerange"
@@ -70,29 +95,39 @@
            <el-button type="primary" @click="search" >搜索</el-button>
            <el-button @click="resetForm('form')">重置</el-button>
            <el-button type="warning" @click="exportExcel">导出</el-button>
        </el-form>
    </el-row>
    <el-row class="table-style">
        <el-table :data="tableData" style="width: 100%">
            <el-table-column type="index" width="50"></el-table-column>
            <el-table-column prop="datatime" label="时间"></el-table-column>
            <el-table-column prop="orderNo" label="订单编号"></el-table-column>
            <el-table-column type="index" width="30"></el-table-column>
            <el-table-column prop="datatime" width="150" label="时间"></el-table-column>
            <el-table-column prop="orderNo" width="180" label="订单编号">
                <template slot-scope="scope">
                    <el-link @click="jumpOrder(scope.row.orderType, scope.row.orderNo)" type="primary">{{scope.row.orderNo}}</el-link>
                </template>
            </el-table-column>
            <el-table-column prop="orderType" label="订单类型"></el-table-column>
            <el-table-column prop="vipName" label="会员姓名"></el-table-column>
            <el-table-column prop="proName" label="产品"></el-table-column>
            <el-table-column prop="proName" label="产品" width="200"></el-table-column>
            <el-table-column prop="cateName" label="产品分类"></el-table-column>
            <el-table-column prop="zkTotal" label="订单金额"></el-table-column>
            <el-table-column prop="goodsCash" label="订单业绩"></el-table-column>
<!--            <el-table-column prop="goodsCash" label="订单业绩"></el-table-column>-->
            <el-table-column prop="meiliao" label="员工"></el-table-column>
            <el-table-column prop="hisConsume" label="本金消耗"></el-table-column>
            <el-table-column prop="freeConsume" label="赠送消耗"></el-table-column>
            <el-table-column v-for="(item, index) in customColumns" :key="index" :label="item.value">
            <el-table-column v-for="(item, index) in customColumns" width="120" :key="index" :label="item.value">
                <template slot-scope="scope">
                    <span v-if="item.value == scope.row.achieveType">{{scope.row.goodsCash}}</span>
                </template>
            </el-table-column>
            <el-table-column prop="hisConsume" label="本金消耗"></el-table-column>
            <el-table-column prop="freeConsume" label="赠送消耗"></el-table-column>
            <el-table-column prop="projPercentage" label="服务提成"></el-table-column>
            <el-table-column prop="numberOfPeople" label="人头"></el-table-column>
            <el-table-column prop="projNum" label="项目个数"></el-table-column>
            <el-table-column prop="projTime" label="服务时间"></el-table-column>
            <el-table-column prop="guwen" label="操作人"></el-table-column>
            <el-table-column prop="shopName" label="门店"></el-table-column>
        </el-table>
        <el-row style="margin-top: 10px;">
            <el-pagination
@@ -121,7 +156,13 @@
            customColumns : [],
            shopList : [],
            achieveUsers : [],
            years : [2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021],
            months : ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"],
            days : [],
            form : {
                year : '',
                month : '',
                day : '',
                timeRange : '',
                vipQueryKey : '',
                beaultId : '',
@@ -134,6 +175,7 @@
            }
        },
        created : function() {
            this.initDays();
            this.queryCustomColumns();
            this.queryShops();
            this.queryAchieveUsers();
@@ -208,6 +250,31 @@
            handleCurrentChange(val) {
                this.page.currentPage = val;
                this.queryTableData();
            },
            initDays() {
                let _this = this;
                for (var i = 1; i <= 31 ; i++) {
                    _this.days.push(i);
                }
            },
            getRequestParam() {
                var form = this.form;
                var params = form;
                if (form.timeRange) {
                    params.beginTime = form.timeRange?moment(form.timeRange[0]).format("YYYY-MM-DD HH:mm"):'';
                    params.endTime = form.timeRange?moment(form.timeRange[1]).format("YYYY-MM-DD HH:mm"):'';
                }
                return params;
            },
            exportExcel() {
                window.location.href=basePath+"/admin/achieve/exportDailyInfoNew?"+MTools.jsonToUrlParam(this.getRequestParam());
            },
            jumpOrder(type, value) {
                if(type=='服务单') {
                    fnPublci.showServiceOrder(1, value);
                } else {
                    fnPublci.showOrder(1, value);
                }
            }
        }
    });