diff --git a/application/admin/controller/orders/Revisitorder.php b/application/admin/controller/orders/Revisitorder.php index de4da92..969b267 100644 --- a/application/admin/controller/orders/Revisitorder.php +++ b/application/admin/controller/orders/Revisitorder.php @@ -55,8 +55,27 @@ class Revisitorder extends Backend } list($where, $sort, $order, $offset, $limit) = $this->buildparams(); - $list = $this->model - //->with(['orderreview']) + $filter = $this->request->get("filter", ''); + $filter = (array)json_decode($filter); + + + $query = $this->model; + + if(isset($filter['is_refund'])){ + $returnvalue = $filter['is_refund'] == 1 ? 1 : -1; + + // 初始化 where 条件数组(注意这里必须是索引数组) + if ($returnvalue == 1) { + //$where2[] = ['aftersale_id', '<>', 0]; + $query = $query->where(function ($q) { + $q->where('worker_refund_amount', '>', 0) + ->whereOr('refund_amount', '>', 0); + }); + } else { + $query = $query->where('aftersale_id', '=', 0); + } + } + $list = $query ->where($where) ->whereIn('status',[Order::STATUS_FINISHED,Order::STATUS_CANCEL]) ->order($sort, $order) @@ -68,6 +87,11 @@ class Revisitorder extends Backend if($row->revisit_id){ $reviewIds[] = $row->revisit_id; } + if($row->refund_amount > 0 || $row->worker_refund_amount > 0){ + $row->is_refund = 1; + }else{ + $row->is_refund = 0; + } } if(!empty($reviewIds)){ @@ -131,11 +155,8 @@ class Revisitorder extends Backend $filter['revisit_id'] = 0; } $returnvalue = 0; - if(isset($filter['aftersale_id'])){ - if($filter['aftersale_id'] == 1){ - $returnvalue = 1; - } - $filter['aftersale_id'] = 0; + if(isset($filter['is_refund'])){ + unset($filter['is_refund']); } $op = (array)json_decode($op, true); @@ -146,12 +167,13 @@ class Revisitorder extends Backend $op['revisit_id'] = '='; } - if($returnvalue>0){ + /* if($returnvalue>0){ $op['aftersale_id'] = '>'; + $op['status'] = '70'; } if($returnvalue<=0){ $op['aftersale_id'] = '='; - } + }*/ $filter = $filter ? $filter : []; $where = []; diff --git a/public/assets/js/backend/orders/revisitorder.js b/public/assets/js/backend/orders/revisitorder.js index f4c5e5f..ebac4b3 100644 --- a/public/assets/js/backend/orders/revisitorder.js +++ b/public/assets/js/backend/orders/revisitorder.js @@ -46,11 +46,16 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin {field: 'revisit_id', title: __('回访状态'),searchList: {"-1":__('未回访'),"1":__('已回访')},visible:false}, {field: 'status', title: __('Status'), searchList: {"60":__('Status 60'),"-10":__('Status -10')}, formatter: Table.api.formatter.status}, - {field: 'aftersale_id', title: __('是否退款'),operate:false,formatter: function (val) { - return val >0 ? '是' : '否'; + {field: 'is_refund', title: __('是否退款'),operate:false,formatter: function (val) { + if(val >0){ + return '是'; + }else{ + return '否'; + } + //return val >0 ? '是' : '否'; }}, - {field: 'aftersale_id', title: __('是否退款'),searchList: {"-1":__('否'),"1":__('是')},visible:false}, + {field: 'is_refund', title: __('是否退款'),searchList: {"-1":__('否'),"1":__('是')},visible:false}, {field: 'revisit_truth', title: __('是否属实'),formatter(value){ if(value == -1){