|
@@ -23,10 +23,10 @@ class OrderService implements OrderServiceInterface
|
|
|
*/
|
|
|
public function getAD(array $data): array
|
|
|
{
|
|
|
- if(!empty($data)){
|
|
|
+ if (!empty($data)) {
|
|
|
$where = [
|
|
|
|
|
|
- 'ad_place.ad_size_id' => $data['ad_size_id']
|
|
|
+ 'ad_place.ad_size_id' => $data['ad_size_id'],
|
|
|
];
|
|
|
$start = Carbon::parse($data['starttime']);
|
|
|
$end = Carbon::parse($data['endtime']);
|
|
@@ -96,14 +96,13 @@ class OrderService implements OrderServiceInterface
|
|
|
return Result::error("暂无符合您条件的广告位!");
|
|
|
|
|
|
}
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
$data = AdSize::get();
|
|
|
- if(empty($data)){
|
|
|
+ if (empty($data)) {
|
|
|
return Result::error('暂无广告尺寸!');
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
return Result::success($data);
|
|
|
}
|
|
|
/**
|
|
@@ -142,16 +141,17 @@ class OrderService implements OrderServiceInterface
|
|
|
$page = isset($data['page']) ? (int) $data['page'] : 1;
|
|
|
$perPage = isset($data['pagesize']) ? (int) $data['pagesize'] : 10;
|
|
|
|
|
|
+ var_dump($data, 'p---------------------');
|
|
|
// 构建查询条件
|
|
|
$where = [];
|
|
|
- if(!empty($data['status'])) {
|
|
|
+ if (!empty($data['status'])) {
|
|
|
$where = [
|
|
|
'order.status' => $data['status'], // 明确指定 order 表的 status 列
|
|
|
];
|
|
|
- }
|
|
|
+ }
|
|
|
|
|
|
//广告订单状态
|
|
|
- if(!empty($data['ad_status'])){
|
|
|
+ if (!empty($data['ad_status'])) {
|
|
|
$where = [
|
|
|
'order.ad_status' => $data['ad_status'],
|
|
|
];
|
|
@@ -163,8 +163,8 @@ class OrderService implements OrderServiceInterface
|
|
|
}
|
|
|
|
|
|
// 处理时间范围查询
|
|
|
- $start = $data['sttime']??'';
|
|
|
- $end = $data['edtime']??'';
|
|
|
+ $start = $data['sttime'] ?? '';
|
|
|
+ $end = $data['edtime'] ?? '';
|
|
|
|
|
|
// 查询数据并分页
|
|
|
$query = Order::where($where)
|
|
@@ -212,13 +212,17 @@ class OrderService implements OrderServiceInterface
|
|
|
'order.*',
|
|
|
'admin_user.user_name as admin_user_name',
|
|
|
'user.user_name as user_name'
|
|
|
+
|
|
|
)->first();
|
|
|
if (empty($order)) {
|
|
|
return Result::error("没有信息数据");
|
|
|
}
|
|
|
|
|
|
$pid = $order['id'];
|
|
|
- $ad = OrderAd::where('order_id', $pid)->get();
|
|
|
+ $ad = OrderAd::where('order_id', $pid)
|
|
|
+ ->leftJoin('ad_place as ad', 'order_ad.pid', '=', 'ad.id')
|
|
|
+ ->select('order_ad.*', 'ad.name as ad_name')
|
|
|
+ ->get();
|
|
|
$order['ad'] = $ad;
|
|
|
return Result::success($order);
|
|
|
}
|
|
@@ -411,7 +415,7 @@ class OrderService implements OrderServiceInterface
|
|
|
public function getWebsiteAd(array $data): array
|
|
|
{
|
|
|
$where = [
|
|
|
- 'ad_place.ad_size_id' => $data['ad_size_id']
|
|
|
+ 'ad_place.ad_size_id' => $data['ad_size_id'],
|
|
|
];
|
|
|
$start = Carbon::parse($data['starttime']);
|
|
|
$end = Carbon::parse($data['endtime']);
|
|
@@ -516,18 +520,18 @@ class OrderService implements OrderServiceInterface
|
|
|
// $data['pid'] = [15,16];
|
|
|
$startTime = strtotime($data['starttime']);
|
|
|
$endTime = strtotime($data['endtime']);
|
|
|
- $days = ($endTime - $startTime) / (24 * 60 * 60); //计算共计多少天
|
|
|
+ $days = ($endTime - $startTime) / (24 * 60 * 60); //计算共计多少天
|
|
|
$price = 0;
|
|
|
- if(isset($data['pid'])){
|
|
|
- $ad_price = AdPlace::whereIn('id', $data['pid'])->select('id','price')->get();
|
|
|
- foreach($ad_price as $v){
|
|
|
- $price += number_format($v['price']*$days, 2, '.', '');
|
|
|
+ if (isset($data['pid'])) {
|
|
|
+ $ad_price = AdPlace::whereIn('id', $data['pid'])->select('id', 'price')->get();
|
|
|
+ foreach ($ad_price as $v) {
|
|
|
+ $price += number_format($v['price'] * $days, 2, '.', '');
|
|
|
}
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
$price = 0;
|
|
|
}
|
|
|
// 确保 $price带有两位小数位数
|
|
|
- $price = number_format((float)$price, 2, '.', '');
|
|
|
+ $price = number_format((float) $price, 2, '.', '');
|
|
|
return Result::success($price);
|
|
|
}
|
|
|
|
|
@@ -542,12 +546,12 @@ class OrderService implements OrderServiceInterface
|
|
|
$time = time();
|
|
|
$startTime = strtotime($data['starttime']);
|
|
|
$endTime = strtotime($data['endtime']);
|
|
|
- $days = ($endTime - $startTime) / (24 * 60 * 60); //计算共计多少天
|
|
|
+ $days = ($endTime - $startTime) / (24 * 60 * 60); //计算共计多少天
|
|
|
$timestamp = date('YmdHis', $time);
|
|
|
$catetime = date('Y-m-d H:i:s', $time);
|
|
|
$randomNumber = mt_rand(1000, 9999);
|
|
|
$ordernum = $randomNumber . $timestamp; // 时间戳与随机数拼接
|
|
|
- $order_size = AdSize::where('id',$data['ad_size_id'])->first();
|
|
|
+ $order_size = AdSize::where('id', $data['ad_size_id'])->first();
|
|
|
// var_dump(($time));
|
|
|
Db::beginTransaction();
|
|
|
try {
|
|
@@ -601,7 +605,7 @@ class OrderService implements OrderServiceInterface
|
|
|
];
|
|
|
return Result::success($result);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
/**
|
|
|
* 获取订单列表
|
|
|
* @param
|
|
@@ -616,30 +620,30 @@ class OrderService implements OrderServiceInterface
|
|
|
if (isset($data['status'])) {
|
|
|
$where['status'] = $data['status'];
|
|
|
}
|
|
|
- $orders = Order::where($where)
|
|
|
- ->limit($data['pageSize'])
|
|
|
- ->offset(($data['page'] - 1) * $data['pageSize'])
|
|
|
- ->orderBy("updated_at", "desc")
|
|
|
- ->get()
|
|
|
- ->all();
|
|
|
+ $orders = Order::where($where)
|
|
|
+ ->limit($data['pageSize'])
|
|
|
+ ->offset(($data['page'] - 1) * $data['pageSize'])
|
|
|
+ ->orderBy("updated_at", "desc")
|
|
|
+ ->get()
|
|
|
+ ->all();
|
|
|
//订单状态:1:通过;2:驳回;3:撤回;4:修改;5:过期;6:待审核;7:结束
|
|
|
$count['all'] = Order::where($where)->count();
|
|
|
- $count['pass'] = Order::where($where)->where('status',1)->count();
|
|
|
- $count['return'] = Order::where($where)->where('status',2)->count();
|
|
|
- $count['recall'] = Order::where($where)->where('status',3)->count();
|
|
|
- $count['update'] = Order::where($where)->where('status',4)->count();
|
|
|
- $count['fail'] = Order::where($where)->where('status',5)->count();
|
|
|
- $count['waite'] = Order::where($where)->where('status',6)->count();
|
|
|
- $count['over'] = Order::where($where)->where('status',7)->count();
|
|
|
- foreach($orders as $key => $val){
|
|
|
- $adsnum = OrderAd::where('order_id',$val['id'])->count();
|
|
|
+ $count['pass'] = Order::where($where)->where('status', 1)->count();
|
|
|
+ $count['return'] = Order::where($where)->where('status', 2)->count();
|
|
|
+ $count['recall'] = Order::where($where)->where('status', 3)->count();
|
|
|
+ $count['update'] = Order::where($where)->where('status', 4)->count();
|
|
|
+ $count['fail'] = Order::where($where)->where('status', 5)->count();
|
|
|
+ $count['waite'] = Order::where($where)->where('status', 6)->count();
|
|
|
+ $count['over'] = Order::where($where)->where('status', 7)->count();
|
|
|
+ foreach ($orders as $key => $val) {
|
|
|
+ $adsnum = OrderAd::where('order_id', $val['id'])->count();
|
|
|
$rep[$key] = $val;
|
|
|
$rep[$key]['num'] = $adsnum;
|
|
|
}
|
|
|
if (empty($rep)) {
|
|
|
return Result::error("您暂时还没有下单");
|
|
|
} else {
|
|
|
-
|
|
|
+
|
|
|
$data = [
|
|
|
'rows' => $rep,
|
|
|
'count' => $count,
|
|
@@ -657,12 +661,12 @@ class OrderService implements OrderServiceInterface
|
|
|
$order = Order::where('id', $data['order_id'])->first();
|
|
|
$orderads = OrderAd::where('order_ad.order_id', $data['order_id'])
|
|
|
->leftJoin('website', 'order_ad.website_id', 'website.id')
|
|
|
- ->leftJoin('ad_place','order_ad.pid','ad_place.id')
|
|
|
- ->select('order_ad.*', 'website.website_name', 'website.id','ad_place.name')
|
|
|
+ ->leftJoin('ad_place', 'order_ad.pid', 'ad_place.id')
|
|
|
+ ->select('order_ad.*', 'website.website_name', 'website.id', 'ad_place.name')
|
|
|
->selectSub('website.id', 'webid')
|
|
|
->selectSub('order_ad.id', 'oid')
|
|
|
- ->selectSub('order_ad.name','adname')
|
|
|
- ->selectSub('ad_place.name','apname')
|
|
|
+ ->selectSub('order_ad.name', 'adname')
|
|
|
+ ->selectSub('ad_place.name', 'apname')
|
|
|
->orderBy("website.id", "asc")
|
|
|
->limit($data['pageSize'])
|
|
|
->offset(($data['page'] - 1) * $data['pageSize'])
|
|
@@ -674,7 +678,7 @@ class OrderService implements OrderServiceInterface
|
|
|
$result = [
|
|
|
'order' => $order,
|
|
|
'orderads' => $orderads,
|
|
|
- 'count' => $count
|
|
|
+ 'count' => $count,
|
|
|
];
|
|
|
return Result::success($result);
|
|
|
}
|
|
@@ -701,7 +705,7 @@ class OrderService implements OrderServiceInterface
|
|
|
'order' => $order,
|
|
|
'ads' => $ads,
|
|
|
];
|
|
|
- if($order==0){
|
|
|
+ if ($order == 0) {
|
|
|
return Result::error("此订单不可撤回");
|
|
|
}
|
|
|
return Result::success($result);
|
|
@@ -736,6 +740,5 @@ class OrderService implements OrderServiceInterface
|
|
|
}
|
|
|
return Result::success($order);
|
|
|
}
|
|
|
-
|
|
|
|
|
|
}
|