| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383 |
- <style type="text/css">
- .xm-label-block {
- background-color: #287bd2
- }
- </style>
- <!-- 正文开始 -->
- <div class="layui-fluid">
- <div class="layui-card">
- <div class="layui-card-body">
- <div class="layui-form toolbar" id="tbToolBar">
- <div class="layui-form-item">
-
- <div class="layui-inline">
- <label class="layui-form-label">关键词:</label>
- <div class="layui-input-inline mr0">
- <input name="keywords" placeholder="关键词" class="layui-input"/>
- </div>
- </div>
- <div class="layui-inline">
- <label class="layui-form-label">所属区域:</label>
- <div class="layui-input-inline mr0">
- <input id="areaChoose" name="area" class="layui-input"/>
- </div>
- </div>
- <div class="layui-inline">
- <label class="layui-form-label">是否拼团:</label>
- <div class="layui-input-inline mr0">
- <select name="status">
- <option value="">请选择</option>
- <option value="0">否</option>
- <option value="1">是</option>
- </select>
- </div>
- </div>
- <div class="layui-inline">
- <label class="layui-form-label">状 态:</label>
- <div class="layui-input-inline mr0">
- <!-- 0: 已关闭 1:待支付, 2:待发货,3:待收货 , 4: 已完成 , 5: 待开团 , 6: 未中团-->
- <select name="status">
- <option value="">所有</option>
- <option value="0">已关闭</option>
- <option value="1">待支付</option>
- <option value="2">待发货</option>
- <option value="3">待收货</option>
- <option value="4">已完成</option>
- <option value="5">待开团</option>
- <option value="6">未中团</option>
- </select>
- </div>
- </div>
- <div class="layui-inline">
- <label class="layui-form-label">下单时间:</label>
- <div class="layui-input-inline">
- <input id="tbAdvSelDate" name="created_at" class="layui-input icon-date" placeholder="选择下单时间"
- autocomplete="off">
- </div>
- </div>
- <div class="layui-inline" style="padding-right: 110px;">
- <button class="layui-btn icon-btn" lay-filter="formSubSearchOrder" lay-submit>
- <i class="layui-icon"></i>查询
- </button>
- <button class="layui-btn icon-btn" lay-filter="formExportOrder" lay-submit="">
- <i class="layui-icon"></i>导出
- </button>
- </div>
- </div>
- </div>
- <div class="layui-tab layui-tab-brief">
- <table id="dataTable" lay-filter="dataTable"></table>
- </div>
- </div>
- </div>
- </div>
- <script type="text/html" id="toolBarTpl">
- <div class="layui-btn-group fl">
- <a table-data="{'url':'store/product/order/plectron','action':'put',param:{'status': 4}}" class="layui-btn layui-btn-sm layui-icon layui-icon-chart table-toolbar-btn"> 结束</a >
- <a table-data="{'url':'store/product/order/plectron','action':'put',param:{'status': 3}}" class="layui-btn layui-btn-sm layui-icon layui-icon-service table-toolbar-btn"> 发货</a >
- <a table-data="{'url':'store/product/order/plectron','action':'put',param:{'status': 0}}" confirm class="layui-btn layui-btn-sm layui-icon layui-icon-engine table-toolbar-btn"> 关闭</a>
- <a table-data="{'url':'store/product/order/plectron','action':'delete'}" confirm class="layui-btn layui-btn-sm layui-icon layui-icon-close table-toolbar-btn"> 删除</a>
- </div>
- </script>
- <!-- 表格操作列 -->
- <script type="text/html" id="tableBarUser">
- {{# if(d.status > 0){ }}
- <a class="layui-btn layui-btn-xs" lay-event="view">订单详情</a>
- {{# if(d.status == 2){ }}
- <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="ship">确认发货</a>
- {{# }else{ }}
- <a class="layui-btn layui-btn-xs layui-btn-disabled">确认发货</a>
- {{# } }}
- {{# if(d.status == 3){ }}
- <a class="layui-btn layui-btn-warm layui-btn-xs" lay-event="confirm">确认结单</a>
- {{# }else{ }}
- <a class="layui-btn layui-btn-xs layui-btn-disabled">确认结单</a>
- {{# } }}
- {{# }else{ }}
- <a class="layui-btn layui-btn-xs" lay-event="view">订单详情</a>
- <a class="layui-btn layui-btn-xs layui-btn-disabled">确认发货</a>
- <a class="layui-btn layui-btn-xs layui-btn-disabled">确认结单</a>
- {{# } }}
- <a class="layui-btn layui-btn-danger layui-btn-xs" perm-show="delete:/store/product/order/delete/<id>" lay-event="del">删除订单</a>
- </script>
- <!-- 表格状态列 -->
- <script type="text/html" id="tableStateUser">
- <!-- 0: 已关闭 1:待支付, 2:待发货,3:待收货 , 4: 已完成 , 5: 待开团 , 6: 未中团-->
- {{# if(d.status == 1){ }}
- <span class="layui-badge layui-bg-red">待支付</span>
- {{# }else if(d.status == 2){ }}
- <span class="layui-badge layui-bg-orange">待发货</span>
- {{# }else if(d.status == 3){ }}
- <span class="layui-badge layui-bg-blue">待收货</span>
- {{# }else if(d.status == 4){ }}
- <span class="layui-badge layui-bg-green">已完成</span>
- {{# }else if(d.status == 5){ }}
- <span class="layui-badge layui-bg-cyan">待开团</span>
- {{# }else if(d.status == 6){ }}
- <span class="layui-badge layui-bg-gray">未中团</span>
- {{# }else{ }}
- <span class="layui-badge layui-bg-black">订单关闭</span>
- {{# } }}
- </script>
- <!--详情列表-->
- <script type="text/html" id="modelOrderDetail">
- <table class="layui-table" id="OrderDetailTb" lay-filter="OrderDetailTb"></table>
- </script>
- <!-- js部分 -->
- <script type="text/javascript" src="../../assets/module/cascader/citys-data.js"></script>
- <script>
- layui.use(['layer', 'form', 'table', 'util', 'notice','md5', 'admin', 'setter', 'xmSelect', 'laydate', 'cascader'], function () {
- var $ = layui.jquery;
- var layer = layui.layer;
- var form = layui.form;
- var table = layui.table;
- var util = layui.util;
- var admin = layui.admin;
- var notice = layui.notice;
- var setter = layui.setter;
- var md5 = layui.md5;
- var xmSelect = layui.xmSelect;
- var laydate = layui.laydate;
- var cascader = layui.cascader;
- // 时间选择
- laydate.render({
- elem: '#tbAdvSelDate',
- type: 'date',
- format: 'yyyy/MM/dd',
- calendar: true,
- theme: '#ec6c44',
- range: true,
- trigger: 'click'
- });
- form.render('select');
- // 省市区选择
- var cas = cascader.render({
- elem: '#areaChoose',
- data: citysData,
- itemHeight: '200px',
- filterable: true
- });
- form.render('select');
- // 渲染表格
- var insTb = table.render({
- elem: '#dataTable',
- url: setter.baseServer + 'store/product/order',
- page: true,
- title: "商品订单表",
- // toolbar: true,
- toolbar: '#toolBarTpl',
- cellMinWidth: 100,
- cols: [[
- {type: 'checkbox'},
- {field: 'order_no', title: '订单号', width: 200},
- {field: 'selller', title: '所属商家', templet: function (d) {
- return '<a href="javascript:;" class="order-seller-view" style="color: #35cc98;border-bottom: 1px solid;"> ' +
- ((d.seller !== null) ? d.seller.seller_name : '商家已删除') + ' </a>';
- }, width: 200},
- {field: 'user', title: '下单用户', templet: function (d) {
- return '<a href="javascript:;" class="order-user-view" style="color: #35cc98;border-bottom: 1px solid;"> ' +
- ((d.user !== null) ? d.user.nickname : '用户已删除') + ' </a>';
- }, width: 200},
- {field: 'addr', title: '配送地址', templet: function (d) {
- return '<a href="javascript:;" class="order-user-view" style="color: #35cc98;border-bottom: 1px solid;"> '
- + ((d.addr !== null) ? d.addr.province + d.addr.city + d.addr.country + d.addr.detail + '(' + d.addr.name + d.addr.mobile + ')' : '地址已删除') + ' </a>';
- }, width: 500},
- {field: 'total_price', title: '订单总价', templet: function (d) {
- return "<p style='color:red'>¥" + d.total_price + "</p>";
- }, width: 100},
- {field: 'pay_price', title: '实际支付', templet: function (d) {
- return "<p style='color:red'>¥" + d.pay_price + "</p>";
- }, width: 100},
- {field: 'is_pin', title: '是否拼团', templet:function(d){
- return d.is_pin ? '<span class="layui-badge">是</span>' : '<span class="layui-badge layui-bg-gray">否</span>'
- },width: 100},
- {field: 'pin_rebate', title: '拼团返现', width: 200},
- {field: 'pin_rebate_expired', templet: function (d) {
- if(d.status > 0){
- return d.pin_rebate_expired > 0 &7 && d.pin_rebate > 0 ? util.toDateString(d.pin_rebate_expired * 1e3) : "";
- }
- return "订单关闭";
- }, title: '拼团返现过期', width: 180
- },
- {field: 'pin_rebate_rec', templet: function (d) {
- if(d.status > 0){
- return d.pin_rebate_rec > 0 ? "已领取" : "";
- }
- return "订单关闭";
- }, title: '返现领取', width: 200},
- {field: 'paid_at', sort: true, templet: function (d) {
- if(d.status > 0){
- return d.paid_at > 0 ? util.toDateString(d.paid_at * 1e3) : "待支付"
- }
- return "订单关闭";
- }, title: '支付时间', width: 180
- },
- {field: 'shipping_at', sort: true, templet: function (d) {
- if(d.status > 0){
- return d.shipping_at > 0 ? util.toDateString(d.shipping_at * 1e3) : "等待发货";
- }
- return "订单关闭";
- }, title: '发货时间', width: 180
- },
- {field: 'received_at', sort: true, templet: function (d) {
- if(d.status > 0){
- return d.received_at > 0 ? util.toDateString(d.received_at * 1e3) : "待收货物";
- }
- return "订单关闭";
- }, title: '收货时间', width: 180
- },
-
- {field: 'in_service', templet: function (d) {
- if(d.status == 4){
- return d.in_service == 2 ? "售后已处理" : d.in_service == 1 ? "售后申请中" : "无";
- }
- return "订单关闭";
- }, title: '售后状态', width: 200},
- {field: 'service_rec', templet: function (d) {
- if(d.status == 4){
- return d.service_rec == 1 ? "已处理" : "无";
- }
- return "订单关闭";
- }, title: '是否处理', width: 200},
- {field: 'created_at', sort: true, templet: function (d) {
- return util.toDateString(d.created_at * 1e3);
- }, title: '创建时间', width: 180
- },
- {field: 'status', templet: '#tableStateUser', title: '状态', width: 120},
- {align: 'center', toolbar: '#tableBarUser', title: '操作', minWidth: 360}
- ]],
- done:function () {
- admin.renderPerm()
- }
- });
- // 划过产品显示
- $(document).on('click','.order-goods-view', function () {
- console.log('goods')
- });
- // 划过用户显示
- $(document).on('click','.order-user-view', function () {
- console.log('user')
- });
- // 搜索
- form.on('submit(formSubSearchOrder)', function (data) {
- // 省市区地址处理
- var values = cas.getValue().split(",");
- data.field.area = values[values.length - 1];
- insTb.reload({where: data.field,page: {curr: 1}}, 'data');
- });
- // 导出
- form.on('submit(formExportOrder)', function (data) {
- admin.req("export/order",data.field,function (r) {
- if (r.code === 10000) {
- // 跳转
- window.open(r.data.url)
- } else {
- notice.msg(r.message, {icon: 2});
- }
- });
- });
- // 工具条点击事件
- table.on('tool(dataTable)', function (obj) {
- var data = obj.data;
- var layEvent = obj.event;
- if (layEvent === 'view') { // 查看
- showDetailModel(data);
- } else if (layEvent === 'del') { // 删除
- layer.confirm('确定要删除“' + data.order_no + '”吗?', {
- skin: 'layui-layer-admin',
- shade: .1
- }, function (i) {
- layer.close(i);
- layer.load(2);
- admin.req('store/product/order/' + data.id + '/delete', function (r) {
- layer.closeAll('loading');
- if (r.code === 10000) {
- notice.msg(r.message, {icon: 1});
- insTb.reload({}, 'data');
- } else {
- notice.msg(r.message, {icon: 2});
- }
- }, 'POST');
- });
- } else if (layEvent === 'confirm') { // 结束订单
- layer.confirm('确定要结束“' + data.order_no + '”吗?', {
- skin: 'layui-layer-admin',
- shade: .1
- }, function (i) {
- layer.close(i);
- layer.load(2);
- admin.req('store/product/order/' + data.id + '/confirm',function (r) {
- layer.closeAll('loading');
- if (r.code === 10000) {
- notice.msg(r.message, {icon: 1});
- insTb.reload({}, 'data');
- } else {
- notice.msg(r.message, {icon: 2});
- }
- }, 'POST');
- });
- } else if (layEvent === 'ship') { // 订单发货
- layer.confirm('确定要发货“' + data.order_no + '”吗?', {
- skin: 'layui-layer-admin',
- shade: .1
- }, function (i) {
- layer.close(i);
- layer.load(2);
- admin.req('store/product/order/' + data.id + '/ship',function (r) {
- layer.closeAll('loading');
- if (r.code === 10000) {
- notice.msg(r.message, {icon: 1});
- insTb.reload({}, 'data');
- } else {
- notice.msg(r.message, {icon: 2});
- }
- }, 'POST');
- });
- }
- });
- function showDetailModel(data){
- admin.open({
- id: 'LAY_OrderDetail',
- type: 1,
- area: '900px', //宽高
- title: '订单商品列表',
- content: $('#modelOrderDetail').html(),
- success: function (layero, dIndex) {
- $(layero).children('.layui-layer-content').css('overflow', 'visible');
- // 渲染表格
- var orderDetailTb = table.render({
- elem: '#OrderDetailTb',
- url: setter.baseServer + 'store/product/order/' + data.id + '/detail',
- page: true,
- title: "订单详情表",
- toolbar: false,
- // toolbar: '#toolBarTpl',
- cellMinWidth: 100,
- cols: [[
- {type: 'numbers'},
-
- {field: 'title', title: '商品', width: 200},
- {field: 'spec', title: '规格', width: 200},
- {field: 'count', title: '数量', width: 200},
- {field: 'price', title: '单价', width: 200},
- {field: 'total_price', title: '总价', width: 200}
- ]]
- });
- }
- })
- }
- });
- </script>
|