|
@@ -742,7 +742,7 @@ class NewCustomerController extends Curd
|
|
|
$query->select('member_id', 'member_mobile', 'member_is_owner', 'join_member_role_id');
|
|
|
},
|
|
|
'goods' => function ($query) {
|
|
|
- $query->select('goods_id', 'goods_name', 'goods_cover', 'goods_market_price', 'goods_sales_price', 'goods_classify', 'goods_if_express');
|
|
|
+ $query->select('goods_id', 'goods_name', 'goods_cover', 'goods_market_price', 'goods_sales_price', 'goods_classify', 'goods_if_express','goods_attribute_json');
|
|
|
},
|
|
|
'memberInfo',
|
|
|
'cert',
|
|
@@ -760,11 +760,11 @@ class NewCustomerController extends Curd
|
|
|
->toArray();
|
|
|
|
|
|
$order = Order::where('order_id', $orderId)->first();
|
|
|
- $express = OrderExpress::where('join_express_order_id', $orderId)->first();
|
|
|
- $premises = '';
|
|
|
- if ($express && $express->order_express_type == '自提') {
|
|
|
- $premises = $express->order_express_company;
|
|
|
- }
|
|
|
+ // $express = OrderExpress::where('join_express_order_id', $orderId)->first();
|
|
|
+ // $premises = '';
|
|
|
+ // if ($express && $express->order_express_type == '自提') {
|
|
|
+ // $premises = $express->order_express_company;
|
|
|
+ // }
|
|
|
$sheetAmount = 0;
|
|
|
foreach ($orderSheet as &$item) {
|
|
|
$sheetAmount += $item['order_sheet_amount'];
|
|
@@ -831,55 +831,24 @@ class NewCustomerController extends Curd
|
|
|
} else {
|
|
|
$item['skus'] = [];
|
|
|
}
|
|
|
- if (in_array($item['goods']['goods_classify'], ['SERVICE', 'CHNMED', 'CHNNCD', 'PACKAGE']) && $order->order_status_system == 'DONE') {
|
|
|
- $item['appontment'] = [];
|
|
|
- $appontments = Appointment::where('join_appointment_order_id', $orderId)
|
|
|
- ->where('appointment_status', 'DONE')
|
|
|
- ->select('appointment_status', 'appointment_id', 'appointment_done_datetime', 'appointment_done_json', 'appointment_apply_json')
|
|
|
- ->get()
|
|
|
- ->toArray();
|
|
|
- foreach ($appontments as $appontment) {
|
|
|
- $doneJson = [];
|
|
|
- $username = '';
|
|
|
- if (!empty($appontment['appointment_done_json'])) {
|
|
|
- $doneJson = json_decode($appontment['appointment_done_json'], true);
|
|
|
- if (isset($doneJson['charge'])) {
|
|
|
- $username = SysUser::where('user_id', $doneJson['charge']['charge_user_id'])->value('user_name');
|
|
|
- }
|
|
|
- }
|
|
|
- $person = 1;
|
|
|
- if (!empty($appontment->appointment_apply_json)) {
|
|
|
- $applyJson = json_decode($appontment->appointment_apply_json, true);
|
|
|
- if (isset($applyJson['person'])) {
|
|
|
- $person = $applyJson['person'];
|
|
|
+ $coupons = [];
|
|
|
+ // 产品携带的优惠券
|
|
|
+ if (!empty($item['goods']['goods_attribute_json'])){
|
|
|
+ $goodsAttributeJson = json_decode($item['goods']['goods_attribute_json'],true);
|
|
|
+ if (isset($goodsAttributeJson['coupon'])){
|
|
|
+ $couponIds = array_keys($goodsAttributeJson['coupon']);
|
|
|
+ $coupons = Coupon::whereIn('coupon_id',$couponIds)
|
|
|
+ ->select('coupon_id','coupon_name','coupon_classify','coupon_is_period','coupon_period_json','coupon_addtimes')
|
|
|
+ ->get()
|
|
|
+ ->toArray();
|
|
|
+ foreach($coupons as &$coupon){
|
|
|
+ if (isset($goodsAttributeJson['coupon'][$coupon['coupon_id']])){
|
|
|
+ $coupon['num'] = $goodsAttributeJson['coupon'][$coupon['coupon_id']]['num'];
|
|
|
}
|
|
|
}
|
|
|
- $item['appontment'][] = [
|
|
|
- 'member' => ($item['cert'] ? $item['cert']['member_cert_name'] . '-' : '') . ($item['member'] ? $item['member']['member_mobile'] : ''),
|
|
|
- 'goods_name' => $item['goods']['goods_name'],
|
|
|
- 'premisses' => isset($doneJson['charge']) ? $doneJson['charge']['charge_premises'] : '',
|
|
|
- 'username' => $username,
|
|
|
- 'nbr' => $person,
|
|
|
- 'done_time' => $appontment['appointment_done_datetime'],
|
|
|
- 'appointment_status' => $appontment['appointment_status'],
|
|
|
- ];
|
|
|
- }
|
|
|
- }
|
|
|
- if (!empty($item['order_sheet_extend_json']) && !$express) {
|
|
|
- $extendJson = json_decode($item['order_sheet_extend_json'], true);
|
|
|
- if (isset($extendJson['address_id'])) {
|
|
|
- $address = ClientConfig::where('client_config_id', $extendJson['address_id'])->first();
|
|
|
- if (!empty($address)) {
|
|
|
- $valJson = json_decode($address->client_config_val_json, true);
|
|
|
- $express = [
|
|
|
- 'order_express_address' => $valJson['address'] . ($valJson['numbers'] ?? ''),
|
|
|
- 'order_express_city' => $valJson['city'],
|
|
|
- 'order_express_mobile' => $valJson['mobile'],
|
|
|
- 'order_express_person' => $valJson['person']
|
|
|
- ];
|
|
|
- }
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
$item['member']['level'] = '普通会员';
|
|
|
if (!empty($item['member']['join_member_role_id'])) {
|
|
|
$item['member']['level'] = MemberRole::where('member_role_id', $item['member']['join_member_role_id'])->value('member_role_name');
|
|
@@ -999,12 +968,13 @@ class NewCustomerController extends Curd
|
|
|
$discount['value'] = sprintf("%.2f", $discount['value']);
|
|
|
$order->discount = $discount;
|
|
|
|
|
|
- $order->premises = $order->premises ?? $premises;
|
|
|
+ // $order->premises = $order->premises ?? $premises;
|
|
|
$data = [
|
|
|
'order' => $order,
|
|
|
'refund' => json_decode(json_encode($refund)),
|
|
|
'sheet' => json_decode(json_encode($orderSheet)),
|
|
|
- 'express' => json_decode(json_encode($express)),
|
|
|
+ 'coupons' => $coupons,
|
|
|
+ // 'express' => json_decode(json_encode($express)),
|
|
|
'payDetails' => json_decode(json_encode($payDetails))
|
|
|
];
|
|
|
|