From 9974b1fffff1cad712b7c30fb4c708ef45ec4b8c Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Wed, 17 Mar 2021 09:44:03 +0800 Subject: [PATCH] Merge branch 'score_shop' of http://120.27.238.55:7000/r/beauty-erp into score_shop --- zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-order.html | 665 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 665 insertions(+), 0 deletions(-) diff --git a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-order.html b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-order.html new file mode 100644 index 0000000..92aafbd --- /dev/null +++ b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-order.html @@ -0,0 +1,665 @@ +<!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"/> + <!-- 本框架基本脚本和样式 --> + <script type="text/javascript" th:src="@{/js/systools/MBaseVue.js}"></script> + <link rel="stylesheet" th:href="@{/plugin/element-ui/index.css}"> + <link rel="stylesheet" th:href="@{/plugin/bootstrap-3.3.5/css/bootstrap.min.css}"> + <link th:href="@{/css/styleOne/style.min.css}" rel="stylesheet" type="text/css"/> + + <!-- 富文本编辑器 --> + <script type="text/javascript" charset="utf-8" + th:src="@{/plugin/beditor/ueditor.config.js}"></script> + <script type="text/javascript" charset="utf-8" + th:src="@{/plugin/beditor/ueditor.all.js}"> + </script> + <script type="text/javascript" charset="utf-8" + th:src="@{/plugin/beditor/lang/zh-cn/zh-cn.js}"></script> + <style> + .paginationStyle{ + background: #ffffff; + padding: 10px 10px; + margin: 0px 0px 10px 0px; + text-align: right; + } + </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>待计算金额</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;"> + <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;"> + <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" > + <el-tab-pane label="分销订单" name="first"> + <el-row justify="space-between" type="flex"> + <el-col :span="6"> + <el-button type="primary" @click="setOrderDone()">批量结算</el-button> + </el-col> + <el-dialog title="本次结算分销订单" :visible.sync="dialogFormVisible"> + <el-form :model="formSelect"> + <el-form-item label="结算金额:" :label-width="formLabelWidth"> + <div style="font-size: 30px;color: #ff0000">¥{{formSelect.jsje}}</div> + </el-form-item> + <el-form-item label="结算订单:" :label-width="formLabelWidth"> + <div style="font-size: 20px;">{{formSelect.jsdds}}单</div> + </el-form-item> + <el-form-item label="结算人数:" :label-width="formLabelWidth"> + <div style="font-size: 20px;">{{formSelect.jsrs}}人</div> + </el-form-item> + <el-form-item label="结算方式:" :label-width="formLabelWidth"> + <el-radio-group v-model="formSelect.jsfs"> + <el-radio-button label="1">线下结算</el-radio-button> + <el-radio-button label="2">微信余额支付</el-radio-button> + </el-radio-group> + </el-form-item> + <el-form-item label="备注:" :label-width="formLabelWidth"> + <el-input type="textarea" :rows="3" v-model="formSelect.bz" autocomplete="off"></el-input> + </el-form-item> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button @click="dialogFormVisible = false">取 消</el-button> + <el-button type="primary" @click="updateSetOrderDone()">确 定</el-button> + </div> + </el-dialog> + + <el-col> + <el-form ref="form" :model="form" inline > + <el-form-item label="订单状态" prop="ddType"> + <el-select v-model="form.ddType" placeholder="订单状态"> + <el-option + v-for="item in ddTypeList" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item label="结算状态" prop="orderType"> + <el-select v-model="form.orderType" placeholder="结算状态"> + <el-option + v-for="item in orderTypeList" + :key="item.value" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + <el-form-item prop="userName" > + <el-input v-model="form.userName" placeholder="请输入客户名称"></el-input> + </el-form-item> + <el-form-item prop="tgy" > + <el-input v-model="form.tgy" placeholder="请输入推广员名称"></el-input> + </el-form-item> + <el-form-item prop="ddsj" > + <el-date-picker + v-model="form.ddsj" + type="datetimerange" + :picker-options="pickerOptions" + range-separator="至" + start-placeholder="开始日期" + end-placeholder="结束日期" + align="right"> + </el-date-picker> + </el-form-item> + <el-form-item prop="jsbh" > + <el-input v-model="form.jsbh" placeholder="请输入结算编号"></el-input> + </el-form-item> + <el-form-item prop="ddh" > + <el-input v-model="form.ddh" placeholder="请输入订单号"></el-input> + </el-form-item> + <el-button type="primary" @click="search" >搜索</el-button> + <el-button @click="resetForm('form')">重置</el-button> + </el-form> + </el-col> + </el-row> + + <el-row class="table-style" > + <el-table ref="multipleTable" + :data="fxyList.rows" + :height="height" + stripe:true + @sort-change="sortChange" + @selection-change="handleSelectionChange"> + <el-table-column + type="selection"> + </el-table-column> + <el-table-column + prop="orderNo" + label="订单编号"> + </el-table-column> + <el-table-column + prop="actualBalance" + label="实付金额(元)"> + </el-table-column> + <el-table-column + label="订单状态"> + <template slot-scope="scope"> + <span v-if="scope.row.orderState == 1">待付款</span> + <span v-if="scope.row.orderState == 2">待配送</span> + <span v-if="scope.row.orderState == 3">待收货</span> + <span v-if="scope.row.orderState == 4">待评价</span> + <span v-if="scope.row.orderState == 5">已评价</span> + <span v-if="scope.row.orderState == 6">申请退款</span> + <span v-if="scope.row.orderState == 7">退款成功</span> + <span v-if="scope.row.orderState == 8">退款拒绝</span> + <span v-if="scope.row.orderState == 9">已取消</span> + </template> + </el-table-column> + <el-table-column + prop="address" + label="下单门店"> + </el-table-column> + <el-table-column + prop="custom" + label="客户"> + </el-table-column> + <el-table-column + prop="parentSale" + label="推广员"> + </el-table-column> + <el-table-column + label="收益类型"> + <template slot-scope="scope"> + <span v-if="scope.row.profitType == 1">推广收益</span> + <span v-if="scope.row.profitType == 2">邀请收益</span> + </template> + </el-table-column> + <el-table-column + prop="profitBalance" + label="收益金额"> + </el-table-column> + <el-table-column + label="结算状态"> + <template slot-scope="scope"> + <span v-if="scope.row.settleType == 1">待结算</span> + <span v-if="scope.row.settleType == 2">已结算</span> + <span v-if="scope.row.settleType == 3">已退款</span> + </template> + </el-table-column> + <el-table-column + prop="settleNo" + label="结算编号" width="150"> + </el-table-column> + <el-table-column + prop="settleTime" + label="结算时间"> + </el-table-column> + <el-table-column + prop="settler" + label="结算人"> + </el-table-column> + <el-table-column label="操作"> + </el-table-column> + </el-table> + </el-row> + <el-row class="paginationStyle" > + <el-pagination background + @size-change="changePageSize" + @current-change="changeCurrentPage" + :current-page="fxyList.currentPage" + :page-sizes="[10, 20, 30, 50]" + :page-size="fxyList.pageSize" + layout="total, sizes, prev, pager, next, jumper" + :total="fxyList.total"> + </el-pagination> + </el-row> + </el-tab-pane> + + <el-tab-pane label="结算记录" name="second"> + <el-row style="display:flex;align-items: center;text-align: right;"> + <el-col> + <el-form ref="formOrder" :model="formOrder" inline > + <el-form-item prop="jssj" > + <el-date-picker + v-model="formOrder.jssj" + type="datetimerange" + :picker-options="pickerOptions" + range-separator="至" + start-placeholder="开始日期" + end-placeholder="结束日期" + align="right"> + </el-date-picker> + </el-form-item> + <el-form-item prop="userName"> + <el-input v-model="formOrder.userName" placeholder="请输入结算人姓名"></el-input> + </el-form-item> + <el-button type="primary" @click="searchFormOrder" >搜索</el-button> + <el-button @click="resetFormOrder('formOrder')">重置</el-button> + </el-form> + </el-col> + </el-row> + <el-row class="table-style" > + <el-table :data="orderLevelList.rows" :height="height" stripe:true @sort-change="sortChange"> + <el-table-column + prop="orderNo" + label="结算编号"> + </el-table-column> + <el-table-column + prop="actualBalance" + label="结算金额"> + </el-table-column> + <el-table-column + prop="setNum" + label="结算订单数"> + </el-table-column> + <el-table-column + prop="setManNum" + label="结算人数"> + </el-table-column> + <el-table-column + prop="setTime" + label="结算时间"> + </el-table-column> + <el-table-column + prop="setMan" + label="结算人"> + </el-table-column> + <el-table-column + label="结算方式"> + <template slot-scope="scope"> + <span v-if="scope.row.settlementWay == 1">线下结算</span> + <span v-if="scope.row.settlementWay == 2">微信余额结算</span> + </template> + </el-table-column> + <el-table-column + prop="remark" + label="备注"> + </el-table-column> + </el-table> + </el-row> + <el-row class="paginationStyle" > + <el-pagination background + @size-change="changePageSizeOrder" + @current-change="changeCurrentPageOrder" + :current-page="orderLevelList.currentPage" + :page-sizes="[10, 20, 30, 50]" + :page-size="orderLevelList.pageSize" + layout="total, sizes, prev, pager, next, jumper" + :total="orderLevelList.total"> + </el-pagination> + </el-row> + </el-tab-pane> + </el-tabs> + </el-row> +</div> +</body> +<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/bootstrap-3.3.5/js/bootstrap.min.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="@{/js/systools/MJsBase.js}"></script> +<script type="text/javascript" th:src="@{/plugin/layer/layer.js}"></script> +<script type="text/javascript" th:src="@{/plugin/moment.min.js}"></script> + +<script> + //获取传输的USERID对象 + var userId = $.query.get("userId"); + var applyId = $.query.get("applyId"); + + var app = new Vue({ + el: '#app', + data: { + activeName: 'first', + height:'calc(100vh - 240px)', + //--基本数据 + basicdetail:{}, + //--时间选择 + pickerOptions: { + shortcuts: [{ + text: '最近一周', + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 7); + picker.$emit('pick', [start, end]); + } + }, { + text: '最近一个月', + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 30); + picker.$emit('pick', [start, end]); + } + }, { + text: '最近三个月', + onClick(picker) { + const end = new Date(); + const start = new Date(); + start.setTime(start.getTime() - 3600 * 1000 * 24 * 90); + picker.$emit('pick', [start, end]); + } + }] + }, + + //--批量审核选中操作 + multipleSelection: [], + orderIds:"", + orderNums:0, + orderNumsDones:0, + dialogFormVisible: false, + formSelect: { + jsje: '', + jsdds: '', + jsrs: '', + jsfs: 1, + bz: '' + }, + formLabelWidth: '120px', + //--分销订单 + // 条件查询结算状态 + orderTypeList:[ + {value:'',label:'全部'}, + {value:1,label:'待结算'}, + {value:2,label:'已结算'}, + {value:3,label:'已退款'} + ], + ddTypeList:[ + {value:'',label:'全部'}, + {value:1,label:'待付款'}, + {value:2,label:'待配送'}, + {value:3,label:'待收货'}, + {value:4,label:'待评价'}, + {value:5,label:'已评价'}, + {value:6,label:'申请退款'}, + {value:7,label:'退款成功'}, + {value:8,label:'退款拒绝'}, + {value:9,label:'已取消'} + ], + form:{ + userName:'', + orderType:'', + ddType:'', + ddsj: '', + tgy:'', + jsbh:'', + ddh:'', + order:'', + sort:'' + }, + fxyList:{ + rows:[], + total:0, + pageSize:10, + currentPage:1, + }, + //--结算记录 + formOrder:{ + userName:'', + jssj:'', + order:'', + sort:'' + }, + orderLevelList:{ + rows:[], + total:0, + pageSize:10, + currentPage:1, + }, + }, + created: function () { + this.loadInfo(); + }, + mounted: function () { + }, + methods: { + //加载分类 + loadInfo() { + let _this = this; + _this.loadFenxiaoOrderBasic(); + _this.loadFenxiaoOrderList(); + _this.loadSetOrderList(); + }, + //--基础数据 + loadFenxiaoOrderBasic() { + let _this = this; + let obj = {}; + AjaxProxy.requst({ + app: _this, + data:obj, + url: basePath + '/fenXiao/fenXiaoOrder/loadFenxiaoOrderBasic', + callback: function (data) { + _this.basicdetail = data.mapInfo.basicdetail; + } + }); + }, + //--结算记录 + loadSetOrderList() { + let _this = this; + let data=_this.getRequestParamOrder(); + data.pageSize=_this.orderLevelList.pageSize; + data.pageNum=_this.orderLevelList.currentPage; + AjaxProxy.requst({ + app: _this, + data:data, + url: basePath + '/fenXiao/fenXiaoOrder/loadSetOrderList', + callback: function (data) { + _this.orderLevelList.rows = data.rows; + _this.orderLevelList.total = data.total; + } + }); + }, + //查询参数 + getRequestParamOrder(){ + let _this = this; + let startTime = ''; + let endTime = ''; + if(_this.formOrder.jssj.length > 0){ + startTime = _this.formOrder.jssj[0]; + endTime = _this.formOrder.jssj[1]; + } + return { + userName:_this.formOrder.userName, + startTime:startTime, + endTime:endTime, + order:_this.formOrder.order, + sort:_this.formOrder.sort, + } + }, + //查询 + searchFormOrder:function(){ + this.orderLevelList.currentPage=1; + this.loadSetOrderList(); + }, + //重置 + resetFormOrder(formName) { + this.$refs[formName].resetFields(); + }, + changePageSizeOrder(val) { + this.orderLevelList.pageSize = val; + this.loadSetOrderList(); + }, + changeCurrentPageOrder(val) { + this.orderLevelList.currentPage = val; + this.loadSetOrderList(); + }, + //--分销订单 + loadFenxiaoOrderList() { + let _this = this; + let data=_this.getRequestParam(); + data.pageSize=_this.fxyList.pageSize; + data.pageNum=_this.fxyList.currentPage; + AjaxProxy.requst({ + app: _this, + data:data, + url: basePath + '/fenXiao/fenXiaoOrder/loadFenxiaoOrderList', + callback: function (data) { + _this.fxyList.rows = data.rows; + _this.fxyList.total = data.total; + } + }); + }, + //查询参数 + getRequestParam(){ + let _this = this; + let startTime = ''; + let endTime = ''; + if(_this.form.ddsj.length > 0){ + startTime = _this.form.ddsj[0]; + endTime = _this.form.ddsj[1]; + } + return { + orderType:_this.form.orderType, + ddType:_this.form.ddType, + tgy:_this.form.tgy, + userName:_this.form.userName, + jsbh:_this.form.jsbh, + startTime:startTime, + endTime:endTime, + ddh:_this.form.ddh, + order:_this.form.order, + sort:_this.form.sort, + } + }, + //查询 + search:function(){ + this.fxyList.currentPage=1; + this.loadFenxiaoOrderList(); + }, + //重置 + resetForm(formName) { + this.$refs[formName].resetFields(); + }, + changePageSize(val) { + this.fxyList.pageSize = val; + this.loadFenxiaoOrderList(); + }, + changeCurrentPage(val) { + this.fxyList.currentPage = val; + this.loadFenxiaoOrderList(); + }, + //排序 + sortChange:function (column){ + if(column.order){ + if(column.order.indexOf("desc")){ + this.form.order="desc"; + }else{ + this.form.order="asc"; + } + this.form.sort=column.prop; + this.loadInfo(); + } + }, + //选择 + handleSelectionChange(val) { + let _this = this; + _this.multipleSelection = val; + //拼接出一个逗号隔开的字符串 + let submitDate = ""; + let orderNum = 0; + let orderBalance = 0; + let orderNumsDone = 0; + let name = []; + for (let i = 0; i < _this.multipleSelection.length; i++) { + let order = _this.multipleSelection[i]; + //待审核的计算到弹出框 + let orderState = order.orderState; + if(orderState == 4 || orderState == 5){ + let orderId = order.id; + name.push(order.customUserId); + orderNum = orderNum + 1; + orderBalance = orderBalance + order.profitBalance; + submitDate = submitDate +orderId+","; + }else{ + orderNumsDone = orderNumsDone + 1; + } + } + _this.orderNumsDones = orderNumsDone; + _this.orderIds = submitDate; + _this.orderNums = orderNum; + _this.formSelect.jsdds = orderNum; + _this.formSelect.jsje = orderBalance; + _this.formSelect.jsrs = _this.distinctFunction(name).length; + }, + //去重 + distinctFunction(name){ + var arr = name, + result = [], + i, + j, + len = arr.length; + for(i = 0; i < len; i++){ + for(j = i + 1; j < len; j++){ + if(arr[i] === arr[j]){ + j = ++i; + } + } + result.push(arr[i]); + } + return result; + }, + //批量结算 + setOrderDone() { + if(this.orderNumsDones > 0){ + this.$message({ + message: '订单状态【待评价】和【已评价】才允许结算', + type: 'warning' + }); + }else if(this.orderNums > 0){ + this.dialogFormVisible = true; + }else{ + this.$message({ + message: '至少需要选中一条数据', + type: 'warning' + }); + } + }, + updateSetOrderDone(){ + let _this = this; + let obj = { + orderIds: _this.orderIds, + setType: _this.formSelect.jsfs, + manCount: _this.formSelect.jsrs, + orderCount: _this.formSelect.jsdds, + amount: _this.formSelect.jsje, + remark: _this.formSelect.bz, + } + AjaxProxy.requst({ + app: _this, + data:obj, + url: basePath + '/fenXiao/fenXiaoOrder/updateSetOrderDone', + callback: function (data) { + _this.$message.success(data.info); + _this.loadFenxiaoOrderList(); + _this.dialogFormVisible = false; + } + }); + }, + } + }) +</script> + +</body> +</html> \ No newline at end of file -- Gitblit v1.9.1