|
@@ -33,6 +33,8 @@ class PayDetailController extends Curd
|
|
|
if ($where['pay_category'] == 'OTHER') {
|
|
|
$where['pay_status'] = 'SUCCESS';
|
|
|
$where['pay_category'] = ['<>', 'RECHARGE'];
|
|
|
+ } elseif ($where['pay_category'] == 'RECHARGE') {
|
|
|
+ $where['pay_category'] = ['in', ['RECHARGE', 'VIP']];
|
|
|
}
|
|
|
if (!empty($where['pay_addtimes'])) {
|
|
|
$where['pay_addtimes'][0] = !empty($where['pay_addtimes'][0]) ? strtotime($where['pay_addtimes'][0]) : '';
|
|
@@ -91,7 +93,7 @@ class PayDetailController extends Curd
|
|
|
}
|
|
|
if (empty($params['type'])) {
|
|
|
$model = $model->where(function ($query) {
|
|
|
- $query->whereIn('pay_prepayid', ['ALIPAY', 'WXPAY', 'OFFLINE_WXPAY', 'OFFLINE_ALIPAY', 'MONEY'])
|
|
|
+ $query->whereIn('pay_prepayid', ['ALIPAY', 'WXPAY', 'OFFLINE', 'OFFLINE_WXPAY', 'OFFLINE_ALIPAY', 'MONEY'])
|
|
|
->orWhere('pay_prepayid', 'like', '%CASH%')
|
|
|
->orWhere('pay_prepayid', 'like', '%WELFARE%');
|
|
|
});
|
|
@@ -101,6 +103,10 @@ class PayDetailController extends Curd
|
|
|
$query->whereIn('pay_prepayid', ['ALIPAY', 'WXPAY', 'OFFLINE_WXPAY', 'OFFLINE_ALIPAY', 'MONEY'])
|
|
|
->orWhere('pay_prepayid', 'like', '%CASH%');
|
|
|
});
|
|
|
+ } else if ($params['type'] == 'VIP') {
|
|
|
+ $model = $model->where(function ($query) {
|
|
|
+ $query->orWhere('pay_category', 'VIP');
|
|
|
+ });
|
|
|
} else {
|
|
|
$model = $model->where(function ($query) {
|
|
|
$query->orWhere('pay_prepayid', 'like', '%WELFARE%');
|
|
@@ -186,6 +192,8 @@ class PayDetailController extends Curd
|
|
|
$item->type = 'NORMAL';
|
|
|
if (isset($prepayId[1]) && $prepayId[1] == 'WELFARE') {
|
|
|
$item->type = 'WELFARE';
|
|
|
+ } else if ($item->pay_category == 'VIP') {
|
|
|
+ $item->type = 'VIP';
|
|
|
}
|
|
|
$memberAccount = [];
|
|
|
if (!empty($item->memberAccount)) {
|
|
@@ -204,11 +212,52 @@ class PayDetailController extends Curd
|
|
|
$item->premises_name = $payExtendJson['remark']['premises_name'] ?? '';
|
|
|
}
|
|
|
}
|
|
|
+ $item->to_account_amount = $item->pay_amount;
|
|
|
+ if (in_array($item['join_pay_order_id'], ['COMBINE', 'PARTNER']) && !empty($item->join_pay_object_json)) {
|
|
|
+ $payObjectJson = json_decode($item->join_pay_object_json, true);
|
|
|
+ if (isset($payObjectJson['recharge_order_id'])) {
|
|
|
+ $payDetails = PayDetail::whereJsonContains('join_pay_object_json->order_id', $payObjectJson['recharge_order_id'])
|
|
|
+ ->where('pay_status', 'SUCCESS')
|
|
|
+ ->get()
|
|
|
+ ->toArray();
|
|
|
+ if (count($payDetails) > 1){
|
|
|
+ $item->pay_prepayid = 'BY_STAGES';
|
|
|
+ }else if (count($payDetails) == 1){
|
|
|
+ $item->pay_prepayid = $payDetails[0]['pay_prepayid'];
|
|
|
+ }
|
|
|
+
|
|
|
+ $item->pay_amount = PayDetail::whereJsonContains('join_pay_object_json->order_id', $payObjectJson['recharge_order_id'])
|
|
|
+ ->where('pay_status', 'SUCCESS')
|
|
|
+ ->sum('pay_amount');
|
|
|
+ $orderStatus = OrderSheet::where('join_sheet_order_id', $payObjectJson['recharge_order_id'])->value('order_sheet_status');
|
|
|
+ if ($orderStatus == 'BEING') {
|
|
|
+ $item->pay_status = 'BEING';
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- if (in_array($item['join_pay_order_id'], ['COMBINE', 'PARTNER'])) {
|
|
|
- $item->pay_amount = PayDetail::where('join_pay_member_id',$item->join_pay_member_id)
|
|
|
- ->where('pay_category',$item['join_pay_order_id'])
|
|
|
- ->value('pay_amount');
|
|
|
+// $payDetail = PayDetail::where('join_pay_member_id', $item->join_pay_member_id)
|
|
|
+// ->where('pay_category', $item['join_pay_order_id'])
|
|
|
+// ->select('pay_amount', 'join_pay_object_json')
|
|
|
+// ->first();
|
|
|
+// $item->pay_amount = $payDetail->pay_amount ?? 0;
|
|
|
+// if (!empty($payDetail->join_pay_object_json)) {
|
|
|
+// $payObjectJson = json_decode($payDetail->join_pay_object_json, true);
|
|
|
+// if (isset($payObjectJson['order_id'])) {
|
|
|
+// $orderStatus = OrderSheet::where('join_sheet_order_id', $payObjectJson['order_id'])->value('order_sheet_status');
|
|
|
+// if ($orderStatus == 'BEING') {
|
|
|
+// $item->pay_status = 'BEING';
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+ }
|
|
|
+ if ($item->pay_category == 'VIP') {
|
|
|
+ $payObjectJson = json_decode($item->join_pay_object_json, true);
|
|
|
+ if (isset($payObjectJson['order_id'])) {
|
|
|
+ $orderStatus = OrderSheet::where('join_sheet_order_id', $payObjectJson['order_id'])->value('order_sheet_status');
|
|
|
+ if ($orderStatus == 'BEING') {
|
|
|
+ $item->pay_status = 'BEING';
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -243,7 +292,17 @@ class PayDetailController extends Curd
|
|
|
->get()
|
|
|
->toArray();
|
|
|
|
|
|
- return json_success('', $orderSheet);
|
|
|
+ $payDetails = PayDetail::whereJsonContains('join_pay_object_json->order_id',$orderId)
|
|
|
+ ->where('pay_status','SUCCESS')
|
|
|
+ ->select('pay_status','pay_amount','pay_paytimes','pay_prepayid')
|
|
|
+ ->get();
|
|
|
+
|
|
|
+ $data = [
|
|
|
+ 'payDetails'=>$payDetails,
|
|
|
+ 'goodsOrder' => $orderSheet
|
|
|
+ ];
|
|
|
+
|
|
|
+ return json_success('', $data);
|
|
|
}
|
|
|
|
|
|
/**
|