From 70df6b14fa111253362d9a6ed785c1aad02b5fe0 Mon Sep 17 00:00:00 2001 From: liuyu <33367671@qq.com> Date: Wed, 3 Aug 2022 14:23:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=94=AE=E5=90=8E=E7=9B=91=E6=8E=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/define.php | 35 +++++++++++ control/index.php | 96 +++++++++++++++++++------------ view/templates/index/after_sale_list.html | 39 +++++++------ view/templates/index/order_list.html | 9 +-- 4 files changed, 117 insertions(+), 62 deletions(-) diff --git a/config/define.php b/config/define.php index c32a536..05e3d65 100644 --- a/config/define.php +++ b/config/define.php @@ -64,7 +64,42 @@ # 13:买家逾期,超过有效期 14:换货补寄待商家处理 15:换货补寄待用户处理 16:换货补寄成功 17:换货补寄失败 18:换货补寄待用户确认完成 21:待商家同意维修 22:待用户确认发货 24:维修关闭 25:维修成功 27:待用户确认收货 31:已同意拒收退款,待用户拒收 32:补寄待商家发货 define('AFTER_SALES_STATUS_NO', 0); define('AFTER_SALES_STATUS_BUYER_APPLIES_FOR_REFUND', 2); + define('AFTER_SALES_STATUS_RETURN_REFUND', 3); + define('AFTER_SALES_STATUS_SELLER_AGREE_REFUND', 4); + define('AFTER_SALES_STATUS_PLATFORM_AGREE_REFUND', 5); + define('AFTER_SALES_STATUS_REFUSE_REFUND', 6); + define('AFTER_SALES_STATUS_RETURN_REFUND_AGREE', 7); define('AFTER_SALES_STATUS_PLATFORM_PROCESSING', 8); + define('AFTER_SALES_STATUS_PLATFORM_REFUSE_REFUND', 9); + define('AFTER_SALES_STATUS_REFUND_SUCC', 10); + define('AFTER_SALES_STATUS_BUYER_REVOKE', 11); + define('AFTER_SALES_STATUS_EXPECTED_UNHANDLED', 12); + $GLOBALS['after_sales_status'] = array( + AFTER_SALES_STATUS_NO => '无售后', + AFTER_SALES_STATUS_BUYER_APPLIES_FOR_REFUND => '买家申请退款,待商家处理', + AFTER_SALES_STATUS_RETURN_REFUND => '退货退款,待商家处理', + AFTER_SALES_STATUS_SELLER_AGREE_REFUND => '商家同意退款,退款中', + AFTER_SALES_STATUS_PLATFORM_AGREE_REFUND => '平台同意退款,退款中', + AFTER_SALES_STATUS_REFUSE_REFUND => '驳回退款,待买家处理', + AFTER_SALES_STATUS_RETURN_REFUND_AGREE => '已同意退货退款,待用户发货', + AFTER_SALES_STATUS_PLATFORM_REFUSE_REFUND => '平台拒绝退款,退款关闭', + AFTER_SALES_STATUS_REFUND_SUCC => '退款成功', + AFTER_SALES_STATUS_BUYER_REVOKE => '买家撤销', + AFTER_SALES_STATUS_EXPECTED_UNHANDLED => '买家逾期未处理,退款失败', + 13 => '买家逾期,超过有效期', + 14 => '换货补寄待商家处理', + 15 => '换货补寄待用户处理', + 16 => '换货补寄成功', + 17 => '换货补寄失败', + 18 => '换货补寄待用户确认完成', + 21 => '待商家同意维修', + 22 => '待用户确认发货', + 24 => '维修关闭', + 25 => '维修成功', + 27 => '待用户确认收货', + 31 => '已同意拒收退款,待用户拒收', + 32 => '补寄待商家发货', + ); # 同步历史订单 diff --git a/control/index.php b/control/index.php index aa039b4..22dfac8 100644 --- a/control/index.php +++ b/control/index.php @@ -33,6 +33,8 @@ class index extends publicBase { $this->ajax_json(true, 'succ', $list); } + public function order_list() {} + public function ajax_get_order_list() { $shopinfo = $this->get_shopinfo(); @@ -54,6 +56,19 @@ class index extends publicBase { $goodsid2skuid2info[$goods['goods_id']][$goods['sku_id']] = $goods; } + $GLOBALS['order_status2class'] = array( + ORDER_STATUS_WAIT_DELIVER_GOODS => 'list_status_grey01', + ORDER_STATUS_DELIVERED => 'list_status_grey01', + ORDER_STATUS_SIGNED_FOR => 'list_status_yellow01', + ); + + $GLOBALS['refund_status2class'] = array( + REFUND_STATUS_NO_AFTER_SALES => 'list_status_grey01', + REFUND_STATUS_ING => 'list_status_red01', + REFUND_STATUS_AFTER_SALE_ING => 'list_status_yellow01', + REFUND_STATUS_SUCC => 'list_status_green01', + ); + $nlist = array(); foreach ($list as $info) { @@ -66,9 +81,8 @@ class index extends publicBase { $ninfo['goods_name'] = $goodsid2skuid2info[$info['goods_id']][$info['sku_id']]['goods_name'].' '.$goodsid2skuid2info[$info['goods_id']][$info['sku_id']]['sku_name']; $ninfo['goods_id'] = $info['goods_id']; $ninfo['sku_id'] = $info['sku_id']; - $ninfo['is_wait_deliver_goods'] = $info['order_status']==ORDER_STATUS_WAIT_DELIVER_GOODS ? true : false; - $ninfo['is_refund'] = $info['refund_status']==REFUND_STATUS_NO_AFTER_SALES ? false : true; - $ninfo['is_refund_succ'] = $info['refund_status']==REFUND_STATUS_SUCC ? true : false; + $ninfo['order_status_class'] = $GLOBALS['order_status2class'][$info['order_status']]; + $ninfo['refund_status_class'] = $GLOBALS['refund_status2class'][$info['refund_status']]; $nlist['data'][] = $ninfo; } @@ -78,44 +92,17 @@ class index extends publicBase { $this->ajax_json(true, 'succ', $nlist); } - public function order_list() { - $url = '/index/order_list'; + public function after_sale_list() {} + public function ajax_get_after_sale_order_list() { $shopinfo = $this->get_shopinfo(); - $uid = $shopinfo['uid']; - $shop_id = $shopinfo['id']; - - $order_status = $this->get('order_status')+0; - if ($order_status) $url .= '/order_status/'.$order_status; - - $refund_status = $this->get('refund_status')+0; - if ($refund_status) $url .= '/refund_status/'.$refund_status; + $page = $this->get('page')+0; + $pagesize = $this->get('limit')+0; $obj = new mOrder(); - $count = $obj->getOrdersCount($uid, $shop_id, $order_status, $refund_status); - - // 分页 - $page = new Page(); - $page->setTotalnum($count); - $page->setUrl($url.'/page/'); - $curpage = $this->get('page')>0 ? $this->get('page') : 1; - $page->setPage($curpage); - $pagesize = $page->pagesize = 50; - $this->view['page_list'] = $page->getPageList(); - $this->view['curpage'] = $curpage; - - if ($curpage > 1) $this->view['prev_page'] = $page->url . ($curpage - 1); //上一页连接 - if ($curpage < $page->totalpage) $this->view['post_page'] = $page->url . ($curpage + 1); //下一页连接 - - //只取出当前页显示 - $list = $obj->getOrderList($uid, $shop_id, $order_status, $refund_status, $curpage, $pagesize); - - $this->view['list'] = $list ? $list : array(); - - $this->view['order_status'] = $GLOBALS['order_status']; - $this->view['refund_status'] = $GLOBALS['refund_status']; - if (empty($list)) return true; + $list = $obj->getOrderList($shopinfo['uid'], $shopinfo['id'], 0, REFUND_STATUS_AFTER_SALE_ING, $page, $pagesize); + if (empty($list)) $this->ajax_json(false, 'empty list'); $goods_ids = array_unique(array_column($list, 'goods_id')); @@ -127,7 +114,42 @@ class index extends publicBase { foreach ($goods_list as $goods) { $goodsid2skuid2info[$goods['goods_id']][$goods['sku_id']] = $goods; } - $this->view['goodsid2skuid2info'] = $goodsid2skuid2info; + + $GLOBALS['order_status2class'] = array( + ORDER_STATUS_WAIT_DELIVER_GOODS => 'list_status_grey01', + ORDER_STATUS_DELIVERED => 'list_status_red01', + ORDER_STATUS_SIGNED_FOR => 'list_status_yellow01', + ); + + $GLOBALS['refund_status2class'] = array( + REFUND_STATUS_NO_AFTER_SALES => 'list_status_grey01', + REFUND_STATUS_ING => 'list_status_red01', + REFUND_STATUS_AFTER_SALE_ING => 'list_status_yellow01', + REFUND_STATUS_SUCC => 'list_status_green01', + ); + + $nlist = array(); + foreach ($list as $info) { + + $ninfo = array(); + $ninfo['order_sn'] = $info['order_sn']; + $ninfo['pay_time'] = $info['pay_time']; + $ninfo['pay_amount'] = $info['pay_amount']; + $ninfo['order_status_desc'] = $GLOBALS['order_status'][$info['order_status']]; + $ninfo['refund_status_desc'] = $GLOBALS['refund_status'][$info['refund_status']]; + $ninfo['after_sales_status_desc'] = $GLOBALS['after_sales_status'][$info['after_sales_status']]; + $ninfo['goods_name'] = $goodsid2skuid2info[$info['goods_id']][$info['sku_id']]['goods_name'].' '.$goodsid2skuid2info[$info['goods_id']][$info['sku_id']]['sku_name']; + $ninfo['goods_id'] = $info['goods_id']; + $ninfo['sku_id'] = $info['sku_id']; + $ninfo['order_status_class'] = $GLOBALS['order_status2class'][$info['order_status']]; + $ninfo['refund_status_class'] = $GLOBALS['refund_status2class'][$info['refund_status']]; + + $nlist['data'][] = $ninfo; + } + + $nlist['total'] = $obj->getOrdersCount($shopinfo['uid'], $shopinfo['id'], 0, REFUND_STATUS_AFTER_SALE_ING)+0; + + $this->ajax_json(true, 'succ', $nlist); } public function export_wait_deliver_goods_tids() { diff --git a/view/templates/index/after_sale_list.html b/view/templates/index/after_sale_list.html index 158df39..703ae30 100644 --- a/view/templates/index/after_sale_list.html +++ b/view/templates/index/after_sale_list.html @@ -6,7 +6,7 @@ - 首页 + 售后监控 @@ -30,7 +30,7 @@
售后监控/
售后列表
-
导出列表
+
导出列表
@@ -70,40 +70,41 @@ layui.use(['element', 'layer', 'util', 'table'], function(){ var showTips = null; table.render({ elem: '#deliver_remind_list' - ,url:'/tpl/ajax_sale_monitor_list' + ,url:'/index/ajax_get_after_sale_order_list' ,toolbar: false ,title: '用户数据表' ,totalRow: false ,className:'deliver_remind_list_table_class' ,cols: [[ - {field:'goods_name', title:'商品名称'} + {field:'goods_name', title:'商品名称', + templet: function(d){ + return ''+d.goods_name+''; + }} ,{field:'tid', title:'订单号' ,templet: function(d){ - return ''+ d.tid +' '; + return ''+d.order_sn+' '; }} - ,{field:'count_down', title:'售后时间' + ,{field:'pay_time', title:'支付时间' ,templet: function(d){ - return ''+d.sale_date+''; + return ''+d.pay_time+''; }} - ,{field:'income', title:'收入(元)'} + ,{field:'pay_amount', title:'支付金额(元)'} ,{field:'order_status', title:'订单状态' ,templet: function(d){ - if(d.order_status == 1) return '待发货'; - if(d.order_status == 2) return '已签收'; - return '待签收'; + return ''+d.order_status_desc+''; + }} + ,{field:'refund_status_desc', title:'退款状态' + ,templet: function(d){ + return ''+d.refund_status_desc+''; + }} - ,{field:'status', title:'状态' + ,{field:'after_sales_status_desc', title:'售后状态' ,templet: function(d){ - if(d.status == 1) return '退款中'; - if(d.status == 2) return '补寄中'; - if(d.status == 3) return '待补寄'; - if(d.status == 4) return '待签收'; - if(d.status == 5) return '平台…'; - return '待处理'; + return ''+d.after_sales_status_desc+''; }} ,{field:'option', title:'操作' ,templet: function(d){ - return '处理'; + return '去处理'; }} ]] ,page: true diff --git a/view/templates/index/order_list.html b/view/templates/index/order_list.html index c1fc179..7c25cb2 100644 --- a/view/templates/index/order_list.html +++ b/view/templates/index/order_list.html @@ -6,7 +6,7 @@ - 首页 + 订单列表 @@ -91,14 +91,11 @@ layui.use(['element', 'layer', 'util', 'table'], function(){ ,{field:'pay_amount', title:'支付金额(元)'} ,{field:'order_status_desc', title:'订单状态' ,templet: function(d){ - if(d.is_wait_deliver_goods == false) return ''+d.order_status_desc+''; - return ''+d.order_status_desc+''; + return ''+d.order_status_desc+''; }} ,{field:'refund_status_desc', title:'退款状态' ,templet: function(d){ - if(d.is_refund == false) return ''+d.refund_status_desc+''; - if(d.is_refund_succ == true) return ''+d.refund_status_desc+''; - return ''+d.refund_status_desc+''; + return ''+d.refund_status_desc+''; }} ]]