diff --git a/app/Admin/Controllers/ImsCjdcOrderMainController.php b/app/Admin/Controllers/ImsCjdcOrderMainController.php index 4f4a340..3f56787 100644 --- a/app/Admin/Controllers/ImsCjdcOrderMainController.php +++ b/app/Admin/Controllers/ImsCjdcOrderMainController.php @@ -4,16 +4,24 @@ namespace App\Admin\Controllers; use App\Admin\Extensions\CheckRow; use App\Admin\Extensions\CouponTieEdit; +use App\Admin\Extensions\MyDetailPage; use App\Admin\Extensions\OrderDetail; use App\Admin\Extensions\OrderPrint; +use App\Admin\Extensions\OrderRefund; use App\Admin\Extensions\OrderStateHandle; use App\Admin\Forms\CouponTieForm; +use App\Admin\Renderable\PostChart; use App\Admin\Repositories\ImsCjdcOrderMain; use Dcat\Admin\Admin; use Dcat\Admin\Form; use Dcat\Admin\Grid; +use Dcat\Admin\Layout\Content; use Dcat\Admin\Show; -use Dcat\Admin\Controllers\AdminController;; +use Dcat\Admin\Controllers\AdminController; +use Dcat\Admin\Widgets\Lazy; +use Dcat\Admin\Widgets\Modal; + +; class ImsCjdcOrderMainController extends AdminController { @@ -60,10 +68,14 @@ class ImsCjdcOrderMainController extends AdminController }elseif ($state==3){ $actions->append(new OrderPrint('打印')); $actions->append(new CheckRow($actions->row->id,$grid->model()->getCurrentPage(),'自送')); + }elseif ($state==8){ + $actions->append(new OrderStateHandle('同意退款',9)); + $actions->append(new OrderRefund($actions->row->id,$grid->model()->getCurrentPage(),'拒绝退款')); } - $actions->append(new OrderDetail('详情')); + $actions->append(new OrderDetail($actions->row->id,'详情')); }); + $grid->filter(function (Grid\Filter $filter) { $filter->equal('id'); @@ -118,9 +130,16 @@ class ImsCjdcOrderMainController extends AdminController }); } - - public function orderDetail() + /** + * 订单详情 + * @param Content $content + * @return Content + */ + public function orderDetail(Content $content) { - echo 111; + $oid = request()->get('order_id'); + // 实例化表单类并传递自定义参数 + $detail = MyDetailPage::make(['order_id'=>$oid]); + return $content->header('订单详情')->body(Lazy::make($detail)); } } diff --git a/app/Admin/Controllers/Test.php b/app/Admin/Controllers/Test.php index 5dad7d8..bbb8dbd 100644 --- a/app/Admin/Controllers/Test.php +++ b/app/Admin/Controllers/Test.php @@ -63,6 +63,12 @@ class Test extends AdminController } return $response->getBody()->getContents(); } +public function getOrderDetail() + { + $oid = request()->get('oid'); + $order = ImsCjdcOrderMain::where('id',$oid)->first(); + return $order; + } diff --git a/app/Admin/Extensions/MyDetailPage.php b/app/Admin/Extensions/MyDetailPage.php new file mode 100644 index 0000000..394cf9b --- /dev/null +++ b/app/Admin/Extensions/MyDetailPage.php @@ -0,0 +1,66 @@ +order_id)->first()->toArray(); + if ($order){ + $order['created_at'] = date('Y-m-d H:i:s',$order['created_at']); + $order['updated_at'] =$order['updated_at'] ? date('Y-m-d H:i:s',$order['updated_at']):null; + $order['pay_type'] = config('order.pay_type')[$order['pay_type']]; + $order['shipping_type'] = config('order.shipping_type')[$order['shipping_type']]; + $order['horseman_name'] = LanzuServiceHorseman::getName($order['horseman_id']); + + + } + //配送距离 + //配送费 + //拒绝退款理由 + //退款总备注原因,单个商品或者单个子订单 + //dd($order); + Admin::script( + <<order_id = $orderId; parent::__construct($title); + } + /** + * 添加JS + * @return string + */ + protected function script() + { + return <<order_id}').on('click', function () { + window.location.href ="detail?order_id={$this->order_id}"; + }); +JS; } + + public function html() + { + $this->setHtmlAttribute(['class'=>"detail_{$this->order_id}"]); + return parent::html(); + } + } diff --git a/app/Admin/Extensions/OrderRefund.php b/app/Admin/Extensions/OrderRefund.php new file mode 100644 index 0000000..efd8324 --- /dev/null +++ b/app/Admin/Extensions/OrderRefund.php @@ -0,0 +1,36 @@ +order_id = $orderId; + $this->currentPage = $currentPage; + parent::__construct($title); + + } + + public function render() + { + + // 实例化表单类并传递自定义参数 + $form = RefundNote::make(['order_id'=>$this->order_id,'current_page'=>$this->currentPage]); + return Modal::make() + ->lg() + ->title('拒绝理由') + ->body($form) + ->button($this->title); + + } +} diff --git a/app/Admin/Extensions/OrderStateHandle.php b/app/Admin/Extensions/OrderStateHandle.php index e7b98a4..ac08eca 100644 --- a/app/Admin/Extensions/OrderStateHandle.php +++ b/app/Admin/Extensions/OrderStateHandle.php @@ -2,6 +2,7 @@ namespace App\Admin\Extensions; use App\Admin\Common\Rpc; +use App\Admin\Forms\RefundNote; use App\Models\ImsCjdcOrderMain; use Dcat\Admin\Grid\Displayers\Modal; use Dcat\Admin\Grid\RowAction; @@ -46,7 +47,10 @@ class OrderStateHandle extends RowAction Log::error('订单完成时分账接口调用失败',$result); return $this->response()->error('操作失败')->refresh(); } + }elseif ($res&&$state==9){//同意退款 + } + if ($res==true){ return $this->response()->success('操作成功')->refresh(); }else{ diff --git a/app/Admin/Forms/RefundNote.php b/app/Admin/Forms/RefundNote.php new file mode 100644 index 0000000..32ae947 --- /dev/null +++ b/app/Admin/Forms/RefundNote.php @@ -0,0 +1,54 @@ +get('refuse_refund_note'); + $oid = request()->get('order_id'); + $current_page = request()->get('current_page'); + $result = ImsCjdcOrderMain::where('id', $oid)->update([ + 'refuse_refund_note' => $note, + 'state'=>10, + 'updated_at' => time() + ]); + if ($result) { + return $this->success('操作成功', "order?page={$current_page}"); + } else { + return $this->error('操作失败'); + } + } + + /** + * Build a form here. + */ + public function form() + { + $this->textarea('refuse_refund_note', '原因')->placeholder('请填写拒绝退款的理由,字数不得超过50个字')->required(); + $this->hidden('order_id')->value($this->data['order_id']); + $this->hidden('current_page')->value($this->data['current_page']); + } + + /** + * The data of the form. + * + * @return array + */ + public function default() + { + + } +} diff --git a/app/Admin/Renderable/PostChart.php b/app/Admin/Renderable/PostChart.php new file mode 100644 index 0000000..9c1e393 --- /dev/null +++ b/app/Admin/Renderable/PostChart.php @@ -0,0 +1,12 @@ +name; + }else{ + return '-'; + } + } } diff --git a/composer.lock b/composer.lock index 4df8ea5..279785b 100644 --- a/composer.lock +++ b/composer.lock @@ -423,16 +423,16 @@ }, { "name": "dcat/laravel-admin", - "version": "1.7.1", + "version": "1.7.2", "source": { "type": "git", "url": "https://github.com/jqhph/dcat-admin.git", - "reference": "b2694de229a9fd52f9ab048870d4e93b8ee7a505" + "reference": "7755db86943a3f31d6ebe4f6852be3efc82aec2e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/jqhph/dcat-admin/zipball/b2694de229a9fd52f9ab048870d4e93b8ee7a505", - "reference": "b2694de229a9fd52f9ab048870d4e93b8ee7a505", + "url": "https://api.github.com/repos/jqhph/dcat-admin/zipball/7755db86943a3f31d6ebe4f6852be3efc82aec2e", + "reference": "7755db86943a3f31d6ebe4f6852be3efc82aec2e", "shasum": "", "mirrors": [ { @@ -491,7 +491,7 @@ "laravel", "laravel admin" ], - "time": "2020-09-02T13:19:24+00:00" + "time": "2020-09-07T03:01:31+00:00" }, { "name": "dnoegel/php-xdg-base-dir", diff --git a/config/admin.php b/config/admin.php index 2fe7924..8f513bc 100644 --- a/config/admin.php +++ b/config/admin.php @@ -11,7 +11,7 @@ return [ | login page. | */ - 'name' => '懒族后台管理系统', + 'name' => 'Dcat Admin', /* |-------------------------------------------------------------------------- @@ -22,8 +22,7 @@ return [ | `img` tag, eg 'Admin logo'. | */ - // 'logo' => '  懒族', - 'logo' => '  懒族', + 'logo' => '  Dcat Admin', /* |-------------------------------------------------------------------------- @@ -166,7 +165,7 @@ return [ |-------------------------------------------------------------------------- */ 'helpers' => [ - 'enable' => env('APP_ENV')=='prod'? false:true, + 'enable' => true, ], /* @@ -222,12 +221,12 @@ return [ 'upload' => [ // Disk in `config/filesystem.php`. - 'disk' => 'oss', + 'disk' => 'public', // Image and file upload path under the disk above. 'directory' => [ - 'image' => 'mp_images', - 'file' => 'mp_files', + 'image' => 'images', + 'file' => 'files', ], ], @@ -301,10 +300,18 @@ return [ | Admin map field provider |-------------------------------------------------------------------------- | - | Supported: "tencent", "google", "yandex". + | Supported: "tencent", "google", "yandex", "baidu". | */ - 'map_provider' => 'tencent', + 'map' => [ + 'provider' => 'baidu', + + 'keys' => [ + 'tencent' => env('TENCENT_MAP_API_KEY'), + 'google' => env('GOOGLE_API_KEY'), + 'baidu' => env('BAIDU_MAP_API_KEY'), + ], + ], /* |-------------------------------------------------------------------------- @@ -315,19 +322,19 @@ return [ */ 'layout' => [ // indigo, blue, blue-light, blue-dark, green - 'color' => 'green', + 'color' => 'indigo', - //'body_class' => 'dark-mode', 'body_class' => '', 'sidebar_collapsed' => false, - 'sidebar_dark' => false, + // light, primary, dark + 'sidebar_style' => 'light', 'dark_mode_switch' => false, // bg-primary, bg-info, bg-warning, bg-success, bg-danger, bg-dark - 'navbar_color' => 'bg-primary', + 'navbar_color' => '', ], /* diff --git a/config/order.php b/config/order.php index 2602b05..b28cdb7 100644 --- a/config/order.php +++ b/config/order.php @@ -30,6 +30,18 @@ return [ 1000=>'创建达达运单失败', ], + //支付类型 1.微信支付2.余额支付3.积分支付4.货到付款 + 'pay_type'=>[ + 1=>'微信支付', + 2=>'余额支付', + 3=>'积分支付', + 4=>'货到付款', + ], + + //配送方式:1服务站配送,2达达配送 + 'shipping_type'=>[1=>'服务站配送',2=>'达达配送'], + + //达达测试0 如果为1则用为正式环境 'online'=>0, 'dada_test_config'=>[ diff --git a/public/css/deatail.css b/public/css/deatail.css new file mode 100644 index 0000000..7a3aa2b --- /dev/null +++ b/public/css/deatail.css @@ -0,0 +1,49 @@ +#detail .table-bordered td { + width: 50%; + white-space: initial !important; + font-size: 1.4rem; +} + +.shop-box { + margin-top: 1rem; + font-size: 1.4rem; +} + +.logo-img { + width: 8vw; + height: 10vh; + margin-right: 1rem; +} + +.media { + padding: 1rem 2rem; + background-color: #f8f8f8; +} + +.shop-logo { + width: 2rem; + height: 2rem; + margin-right: 0.6rem; +} + +.alert { + margin-bottom: 0; + border-radius: 0; +} + +.mt-0 { + max-width: 50rem; + font-size: 1.4rem; +} + +.price { + max-width: 48rem; + display: inline-block; + overflow: hidden; + font-size: 1rem; + color: #27272788; +} +.money{ + float: right; + font-size: 1.4rem; +} diff --git a/resources/lang/zh-CN/admin.php b/resources/lang/zh-CN/admin.php index eee60f3..448cb02 100644 --- a/resources/lang/zh-CN/admin.php +++ b/resources/lang/zh-CN/admin.php @@ -31,6 +31,7 @@ return [ 'confirm' => '确认', 'cancel' => '取消', 'refresh_succeeded' => '刷新成功 !', + 'submit' => '提交', 'close' => '关闭', 'selected_options' => '已选中:num个选项', 'exceed_max_item' => '已超出最大可选数量', diff --git a/resources/lang/zh-TW/admin.php b/resources/lang/zh-TW/admin.php index cc9e276..0a6bd41 100644 --- a/resources/lang/zh-TW/admin.php +++ b/resources/lang/zh-TW/admin.php @@ -32,6 +32,7 @@ return [ 'cancel' => '取消', 'refresh_succeeded' => '刷新成功!', 'close' => '關閉', + 'submit' => '提交', 'selected_options' => '已選中:num個選項', 'exceed_max_item' => '已超出最大可選數量', diff --git a/resources/views/orderdetail.php b/resources/views/orderdetail.php index ec2878a..3629173 100644 --- a/resources/views/orderdetail.php +++ b/resources/views/orderdetail.php @@ -1,14 +1,65 @@ - - - - - Laravel +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
订单编号:{{order_num}}创建时间:{{created_at}}
用户名称:{{name}}联系电话:{{tel}}3
收货地址:{{address}}更新时间:{{updated_at}}
预约送达时间:{{delivery_time_note}}配送员:{{horseman_name}}
配送距离:-- km配送费:{{delivery_money}} 元
备注:{{note}}
+ + +
+ + 店铺商品 +
+ 商品图片 +
+
2222
+
+ 222 + X 2222 +
+

¥222

+
+
+
+
+ 总金额: {{total_money}} 元 +    + 优惠金额: -{{coupon_money}} 元 +    + 配送费: +{{delivery_money}} 元 +    + 增值服务费: +{{services_money}} 元 +    + 实付金额: {money} 元 - - - -

{{$id}}

- - +
+ +