139 lines
4.3 KiB
PHP
139 lines
4.3 KiB
PHP
<?php
|
|
|
|
namespace App\Admin\Controllers;
|
|
|
|
use Carbon\Carbon;
|
|
use App\Http\Controllers\Controller;
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Http\Response;
|
|
use Illuminate\Support\Facades\Storage;
|
|
use App\Models\{Good,GoodsCategory,GoodsType,TypeAttr,GoodsAttr,Order,Guess,User,QuanTicket};
|
|
use App\Http\Resources\OrderInfoResource;
|
|
use Dcat\Admin\Http\JsonResponse;
|
|
|
|
class ApiController extends Controller
|
|
{
|
|
public function getGoodsCategories(Request $request){
|
|
$q = $request->get('q');
|
|
|
|
$query = GoodsCategory::select('id', 'category_name as text');
|
|
if($q){
|
|
$query->where('category_name', 'like', "%$q%");
|
|
return $query->paginate(null);
|
|
}
|
|
return response()->json($query->get());
|
|
}
|
|
|
|
public function getGoodsTypes(Request $request){
|
|
$q = $request->get('q');
|
|
|
|
$query = GoodsType::select('id', 'type_name as text')->where('is_use', 1);
|
|
if($q){
|
|
$query->where('type_name', 'like', "%$q%");
|
|
return $query->paginate(null);
|
|
}
|
|
return response()->json($query->get());
|
|
}
|
|
|
|
public function getTypeAttrs(Request $request){
|
|
$q = $request->get('type_id');
|
|
|
|
$query = TypeAttr::select('id', 'attr_name', 'ext')->where('type_id', $q);
|
|
// if($q){
|
|
// $query->where('type_name', 'like', "%$q%");
|
|
// return $query->paginate(null);
|
|
// }
|
|
return response()->json($query->get());
|
|
}
|
|
|
|
public function getGoodsAttrs(Request $request){
|
|
$q = $request->get('goods_id');
|
|
|
|
$query = GoodsAttr::select('id', 'attr_value', 'value_price', 'is_use')->where('goods_id', $q);
|
|
// if($q){
|
|
// $query->where('type_name', 'like', "%$q%");
|
|
// return $query->paginate(null);
|
|
// }
|
|
return response()->json($query->get());
|
|
}
|
|
|
|
public function getGoods(Request $request){
|
|
$q = $request->get('q');
|
|
$is_sell = intval($request->get('is_sell', 1));
|
|
|
|
$query = Good::select('id', 'goods_name as text');
|
|
if($is_sell){
|
|
$query->where('is_sell', 1);
|
|
}
|
|
if($q){
|
|
$query->where('goods_name', 'like', "%$q%");
|
|
return $query->paginate(null);
|
|
}
|
|
return response()->json($query->get());
|
|
}
|
|
|
|
public function getOrder(Request $request){
|
|
$order_number = $request->get('order_number');
|
|
$start_time = Carbon::now()->startOfDay();
|
|
$end_time = Carbon::now()->endOfDay();
|
|
// $order = Order::with('goods')->findOrFail(296);
|
|
$order = Order::with('goods')
|
|
->whereBetween('number_time', [$start_time, $end_time])
|
|
->where('order_number', $order_number)->first();
|
|
if(!$order){
|
|
return JsonResponse::make()->error('未查询到订单');
|
|
}
|
|
$data = OrderInfoResource::make($order);
|
|
$data->offsetSet('is_admin', 1);
|
|
// if($q){
|
|
// $query->where('goods_name', 'like', "%$q%");
|
|
// return $query->paginate(null);
|
|
// }
|
|
return $data;
|
|
}
|
|
|
|
public function guess(Request $request)
|
|
{
|
|
$q = $request->get('q');
|
|
$data = Guess::where('name', 'like', "%$q%")->paginate(null, ['id', 'name as text']);
|
|
return $data ?: [];
|
|
}
|
|
|
|
public function user(Request $request)
|
|
{
|
|
$q = $request->get('q');
|
|
|
|
$query = User::select('id', 'nick_name as text');
|
|
|
|
if($q){
|
|
$query->where('phone', 'like', "%$q%");
|
|
return $query->paginate(null);
|
|
}
|
|
return response()->json($query->get());
|
|
}
|
|
|
|
public function ticketValue(Request $request){
|
|
$q = $request->get('q');
|
|
if($q == 0){//指定所有商品
|
|
return [];
|
|
}
|
|
if($q == 1){//查询上架商品
|
|
$query = Good::select('id', 'goods_name as text')->where('is_sell', 1);
|
|
}
|
|
if($q == 2){
|
|
$query = GoodsCategory::select('id', 'category_name as text');
|
|
}
|
|
return response()->json($query->get());
|
|
}
|
|
|
|
public function quanTicket(Request $request){
|
|
$q = $request->get('q');
|
|
|
|
$query = QuanTicket::select('id', 'quan_name as text')->where('is_use', 1);
|
|
if($q){
|
|
$query->where('quan_name', 'like', "%$q%");
|
|
return $query->paginate(null);
|
|
}
|
|
return response()->json($query->get());
|
|
}
|
|
} |