From f6e63e5c6ff1268aeca020fcd3f0aeb7fac94e59 Mon Sep 17 00:00:00 2001 From: 935090232@qq.com <ak473600000> Date: Wed, 05 Jan 2022 20:28:42 +0800 Subject: [PATCH] 报表新增2022导出选择 --- zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html | 182 ++++++++++++++++++++++++++++++++++++--------- 1 files changed, 145 insertions(+), 37 deletions(-) diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html b/zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html index 444302c..e1eed9a 100644 --- a/zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html +++ b/zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html @@ -2,21 +2,22 @@ <!DOCTYPE HTML> <html xmlns:th="http://www.thymeleaf.org" xmlns:matrix="http://www.w3.org/1999/xhtml"> <head> -<meta charset="utf-8"> -<META HTTP-EQUIV="Pragma" CONTENT="no-cache"> -<meta name="renderer" content="webkit|ie-comp|ie-stand"> -<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> -<meta name="viewport" - content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" /> -<meta http-equiv="Cache-Control" content="no-siteapp" /> -<LINK rel="Bookmark" href="../images/favicon.ico"> -<!-- 本框架基本脚本和样式 --> -<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"/> + <meta charset="utf-8"> + <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> + <meta name="renderer" content="webkit|ie-comp|ie-stand"> + <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> + <meta name="viewport" + content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" /> + <meta http-equiv="Cache-Control" content="no-siteapp" /> + <LINK rel="Bookmark" href="../images/favicon.ico"> + <!-- 本框架基本脚本和样式 --> + <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> <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" @@ -44,7 +69,16 @@ end-placeholder="结束日期"> </el-date-picker> </el-form-item> - + <el-form-item label="业绩规则" prop="achieveRuleId"> + <el-select v-model="form.achieveRuleId" filterable placeholder="请选择业绩规则"> + <el-option + v-for="item in achieveRulsList" + :key="item.id" + :label="item.name" + :value="item.id"> + </el-option> + </el-select> + </el-form-item> <el-form-item label="会员"> <el-input v-model="form.vipQueryKey"></el-input> </el-form-item> @@ -61,38 +95,51 @@ <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"> + :key="item.id" + :label="item.shopName" + :value="item.id"> </el-option> </el-select> </el-form-item> <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="achieveRuleName" 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="cardCash" 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 @@ -112,19 +159,26 @@ <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 : [], + achieveRulsList : [], shopList : [], achieveUsers : [], + years : [2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022], + months : ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"], + days : [], form : { + year : '', + month : '', + day : '', timeRange : '', vipQueryKey : '', beaultId : '', + achieveRuleId : '', shopId : '' }, page : { @@ -134,16 +188,27 @@ } }, created : function() { + this.initDays(); this.queryCustomColumns(); this.queryShops(); this.queryAchieveUsers(); + this.getAchieveRule(); }, methods : { queryTableData () { + let _this = this; - var form = _this.form; - var page = _this.page; - var params = _this.form; + let form = _this.form; + let page = _this.page; + let params = {}; + params.year=form.year; + params.achieveRuleId=form.achieveRuleId; + params.month=form.month; + params.year=form.year; + params.day=form.day; + params.vipQueryKey=form.vipQueryKey; + params.beaultId=form.beaultId; + params.shopId=form.shopId; params.limit = page.size; params.offset = (page.currentPage - 1) * page.size; @@ -151,11 +216,15 @@ 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"):''; } - $.AjaxProxy({ - p:params - }).invoke(basePath + "/admin/achieve/findDailyInfoNew", function (loj) { - _this.tableData = loj.getValue("rows"); - _this.page.total = loj.getResult().total; + + AjaxProxy.requst({ + app: _this, + data: params, + url: basePath + "/admin/achieve/findDailyInfoNew", + callback: function (loj) { + _this.tableData = loj.rows; + _this.page.total = loj.total; + } }); }, queryCustomColumns() { @@ -166,6 +235,20 @@ callback: function (data) { _this.customColumns = data.rows; _this.queryTableData(); + } + }); + }, + /** + * 获取规则 + */ + getAchieveRule(){ + let _this = this; + AjaxProxy.requst({ + app: _this, + data: {pageNum:1,pageSize:1000}, + url: basePath + "/admin/achieveRule/selectList", + callback: function (data) { + _this.achieveRulsList=data.rows; } }); }, @@ -208,6 +291,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); + } } } }); -- Gitblit v1.9.1