OrderApiController.php
2.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<?php
namespace App\Http\Controllers\Api;
use App\Http\ApiHelper\ApiCode;
use App\Http\Requests\UserRegister;
use App\Http\Services\CartService;
use App\Http\Services\InquiryService;
use App\Http\Services\OrderService;
use App\Models\User;
use Facade\Ignition\Support\Packagist\Package;
use Illuminate\Foundation\Auth\RegistersUsers;
use Illuminate\Foundation\Auth\ThrottlesLogins;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Mail;
use Illuminate\Support\Facades\Redis;
use Illuminate\Support\Facades\Validator;
//订单控制器
class OrderApiController extends Controller
{
//生成订单
public function addOrder(Request $request)
{
$validator = Validator::make($request->all(), [
'billing_address_id' => 'required|string',
'shipping_address_id' => 'required|string',
'items' => 'required|string',
], [
'items.min' => 'items must be at least 1 characters long.'
]);
if ($validator->fails()) {
return $this->setError($validator->errors()->first());
}
$data = $request->only([
'items',
'billing_address_id',
'shipping_address_id',
]);
$order_id = OrderService::addOrder($data, $request->user->id);
return !$order_id ? $this->setError('Add order failed , please contact administrator'):$this->setSuccessData($order_id,0,ApiCode::API_CODE_SUCCESS,'Add order success');
}
//订单列表
public function orderLists(Request $request){
$result = OrderService::orderLists($request->user->id,$request->input());
return $this->setSuccessData($result);
}
//取消订单
public function cancelOrder(Request $request){
$result = OrderService::cancelOrder($request->user->id,$request->input("order_id"));
return $result[0] > 0 ? $this->setError($result[1],$result[0]):$this->setSuccessData($result[1]);
}
//订单详情
public function orderDetail(Request $request){
$result = OrderService::orderDetail($request->user->id,$request->input("order_id"));
return $this->setSuccessData($result);
}
//单个订单售后列表
public function orderServiceDetail(Request $request){
$result = OrderService::orderServiceDetail($request->user->id,$request->input("order_id"));
return $this->setSuccessData($result);
}
}