|
@@ -494,6 +494,10 @@ class WholeController extends Curd
|
|
$order->dept_table_id = $orderConfigJson['tableid'];
|
|
$order->dept_table_id = $orderConfigJson['tableid'];
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ if (!empty($order->order_extend_json)){
|
|
|
|
+ $orderExtendJson = json_decode($order->order_extend_json,true);
|
|
|
|
+ $order->referee = $orderExtendJson['referee'] ?? '';
|
|
|
|
+ }
|
|
|
|
|
|
$order->premises = $premises;
|
|
$order->premises = $premises;
|
|
$data = [
|
|
$data = [
|
|
@@ -704,6 +708,9 @@ class WholeController extends Curd
|
|
if (!$order){
|
|
if (!$order){
|
|
return json_fail('订单异常');
|
|
return json_fail('订单异常');
|
|
}
|
|
}
|
|
|
|
+ if ($order->order_status_system != 'PAYING'){
|
|
|
|
+ return json_fail('订单不是可支付状态');
|
|
|
|
+ }
|
|
if (!empty($order->order_config_json)){
|
|
if (!empty($order->order_config_json)){
|
|
$orderConfigJson = json_decode($order->order_config_json,true);
|
|
$orderConfigJson = json_decode($order->order_config_json,true);
|
|
if (isset($orderConfigJson['premises'])){
|
|
if (isset($orderConfigJson['premises'])){
|
|
@@ -725,7 +732,7 @@ class WholeController extends Curd
|
|
|
|
|
|
$systemStatus = 'SENDING'; // 待发货
|
|
$systemStatus = 'SENDING'; // 待发货
|
|
// 立即结算
|
|
// 立即结算
|
|
- if(in_array($params['goods_classify'],['SERVICE','CHNMED','CHNNCD','MEALS'])){
|
|
|
|
|
|
+ if(in_array($params['goods_classify'],['SERVICE','CHNMED','CHNNCD','MEALS','VIP'])){
|
|
$systemStatus = 'DONE';
|
|
$systemStatus = 'DONE';
|
|
}
|
|
}
|
|
Db::beginTransaction();
|
|
Db::beginTransaction();
|
|
@@ -973,6 +980,11 @@ class WholeController extends Curd
|
|
}
|
|
}
|
|
$order->order_config_json = json_encode($orderConfigJson);
|
|
$order->order_config_json = json_encode($orderConfigJson);
|
|
$order->order_amount_pay = $params['order_amount_pay']+$qrcodePayAmount;
|
|
$order->order_amount_pay = $params['order_amount_pay']+$qrcodePayAmount;
|
|
|
|
+ // 康养城订单,支付完就结束了
|
|
|
|
+ if ($order->order_status_payment == 'SUCCESS' && $params['goods_classify'] == 'VIP'){
|
|
|
|
+ $order->order_is_complete = 'Y';
|
|
|
|
+ }
|
|
|
|
+
|
|
// 主订单
|
|
// 主订单
|
|
$order->save();
|
|
$order->save();
|
|
|
|
|
|
@@ -1263,7 +1275,7 @@ class WholeController extends Curd
|
|
// 立即结算
|
|
// 立即结算
|
|
if($params['settlement_now'] == 'Y'){
|
|
if($params['settlement_now'] == 'Y'){
|
|
$params['order_is_complete'] = 'Y';
|
|
$params['order_is_complete'] = 'Y';
|
|
- if(in_array($params['goods_classify'],['SERVICE','CHNMED','CHNNCD','MEALS'])){
|
|
|
|
|
|
+ if(in_array($params['goods_classify'],['SERVICE','CHNMED','CHNNCD','MEALS','VIP'])){
|
|
$systemStatus = 'DONE';
|
|
$systemStatus = 'DONE';
|
|
}
|
|
}
|
|
}
|
|
}
|
|
@@ -1511,16 +1523,16 @@ class WholeController extends Curd
|
|
}
|
|
}
|
|
|
|
|
|
// 配送方式
|
|
// 配送方式
|
|
- if ($params['delivery'] == 'PICKUP' || $params['delivery'] == 'ARRIVAL') { // 自提/ 到店
|
|
|
|
|
|
+ if (isset($params['delivery']) && ($params['delivery'] == 'PICKUP' || $params['delivery'] == 'ARRIVAL')) { // 自提/ 到店
|
|
$orderConfigJson['premises'] = $params['dept_premises_id'];
|
|
$orderConfigJson['premises'] = $params['dept_premises_id'];
|
|
- } else if ($params['delivery'] == 'LOGISTICS') {
|
|
|
|
|
|
+ } else if (isset($params['delivery']) && $params['delivery'] == 'LOGISTICS') {
|
|
// $params['order_express_json'] = json_encode([
|
|
// $params['order_express_json'] = json_encode([
|
|
// 'express' => 'Y',
|
|
// 'express' => 'Y',
|
|
// ]);
|
|
// ]);
|
|
}
|
|
}
|
|
$params['order_amount_pay'] = $params['order_amount_pay'] + $qrcodePayAmount;
|
|
$params['order_amount_pay'] = $params['order_amount_pay'] + $qrcodePayAmount;
|
|
|
|
|
|
- if (in_array($params['delivery'],['PICKUP','ARRIVAL']) && !empty($params['dept_premises_id'])){
|
|
|
|
|
|
+ if (isset($params['delivery']) && in_array($params['delivery'],['PICKUP','ARRIVAL']) && !empty($params['dept_premises_id'])){
|
|
// $premises = SysDept::where('dept_name',$params['dept_premises_id'])->where('dept_category','营业场所')->first();
|
|
// $premises = SysDept::where('dept_name',$params['dept_premises_id'])->where('dept_category','营业场所')->first();
|
|
if (!$premises){
|
|
if (!$premises){
|
|
Db::rollBack();
|
|
Db::rollBack();
|
|
@@ -1554,11 +1566,11 @@ class WholeController extends Curd
|
|
$this->insertPayDetail($params);
|
|
$this->insertPayDetail($params);
|
|
|
|
|
|
$params['order_express_goods'] = json_encode(['sheet' => [$sheetId]]);
|
|
$params['order_express_goods'] = json_encode(['sheet' => [$sheetId]]);
|
|
- if ($params['delivery'] == 'LOGISTICS') {
|
|
|
|
|
|
+ if (isset($params['delivery']) && $params['delivery'] == 'LOGISTICS') {
|
|
$params['order_express_type'] = '配送';
|
|
$params['order_express_type'] = '配送';
|
|
// 入配送
|
|
// 入配送
|
|
$this->saveExpress($params);
|
|
$this->saveExpress($params);
|
|
- } else if ($params['delivery'] == 'PICKUP') {
|
|
|
|
|
|
+ } else if (isset($params['delivery']) && $params['delivery'] == 'PICKUP') {
|
|
$params['order_express_type'] = '自提';
|
|
$params['order_express_type'] = '自提';
|
|
if (!$premises) {
|
|
if (!$premises) {
|
|
throw new BusinessException('自提门店不存在');
|
|
throw new BusinessException('自提门店不存在');
|
|
@@ -1689,11 +1701,13 @@ class WholeController extends Curd
|
|
return json_success('创建订单成功');
|
|
return json_success('创建订单成功');
|
|
}catch(BusinessException $e){
|
|
}catch(BusinessException $e){
|
|
Db::rollBack();
|
|
Db::rollBack();
|
|
|
|
+ dump($e->getMessage());
|
|
dump($e->getTrace());
|
|
dump($e->getTrace());
|
|
_syslog("订单",$e->getMessage());
|
|
_syslog("订单",$e->getMessage());
|
|
return json_fail($e->getMessage());
|
|
return json_fail($e->getMessage());
|
|
} catch (\Exception $e) {
|
|
} catch (\Exception $e) {
|
|
Db::rollBack();
|
|
Db::rollBack();
|
|
|
|
+ dump($e->getMessage());
|
|
dump($e->getTrace());
|
|
dump($e->getTrace());
|
|
_syslog("订单","创建订单失败");
|
|
_syslog("订单","创建订单失败");
|
|
return json_fail('创建订单失败');
|
|
return json_fail('创建订单失败');
|
|
@@ -1712,6 +1726,24 @@ class WholeController extends Curd
|
|
public function insertMain($params)
|
|
public function insertMain($params)
|
|
{
|
|
{
|
|
try {
|
|
try {
|
|
|
|
+ $orderCategory = 'NORMAL';
|
|
|
|
+ if (!empty($params['order_category'])){
|
|
|
|
+ $orderCategory = $params['order_category'];
|
|
|
|
+ }else if(isset($params['submit_goods_classify']) && $params['submit_goods_classify'] == 'MEALS'){
|
|
|
|
+ $orderCategory = 'DISHES';
|
|
|
|
+ }else if (isset($params['goods_classify'])){
|
|
|
|
+ $orderCategory = $params['goods_classify'];
|
|
|
|
+ }
|
|
|
|
+ if (empty($params['order_extend_json'])){
|
|
|
|
+ $params['order_extend_json'] = [];
|
|
|
|
+ }else{
|
|
|
|
+ if(is_json($params['order_extend_json'])){
|
|
|
|
+ $params['order_extend_json'] = json_decode($params['order_extend_json'],true);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ // 推荐人
|
|
|
|
+ $params['order_extend_json']['referee'] = $params['referee'] ?? '';
|
|
|
|
+
|
|
$data = [
|
|
$data = [
|
|
'order_id' => $params['orderId'],
|
|
'order_id' => $params['orderId'],
|
|
'order_groupby' => $params['orderGroupId'],
|
|
'order_groupby' => $params['orderGroupId'],
|
|
@@ -1719,7 +1751,7 @@ class WholeController extends Curd
|
|
'order_name' => date('Y-m-d H:i:s') . '-订单',
|
|
'order_name' => date('Y-m-d H:i:s') . '-订单',
|
|
'order_amount_total' => $params['order_amount_total'],
|
|
'order_amount_total' => $params['order_amount_total'],
|
|
'order_amount_pay' => $params['order_amount_pay'],
|
|
'order_amount_pay' => $params['order_amount_pay'],
|
|
- 'order_category' => (isset($params['submit_goods_classify']) && $params['submit_goods_classify'] == 'MEALS') ? 'DISHES' : $params['goods_classify'],
|
|
|
|
|
|
+ 'order_category' => $orderCategory,
|
|
'order_is_complete' => $params['order_is_complete'] ?? 'N',
|
|
'order_is_complete' => $params['order_is_complete'] ?? 'N',
|
|
'order_status_system' => $params['order_status_system'],
|
|
'order_status_system' => $params['order_status_system'],
|
|
'order_status_payment' => $params['order_status_payment'],
|
|
'order_status_payment' => $params['order_status_payment'],
|
|
@@ -1728,7 +1760,7 @@ class WholeController extends Curd
|
|
'order_remark' => $params['order_remark'] ?? '',
|
|
'order_remark' => $params['order_remark'] ?? '',
|
|
'order_config_json' => $params['order_config_json'] ?? '[]',
|
|
'order_config_json' => $params['order_config_json'] ?? '[]',
|
|
'order_express_json' => $params['order_express_json'] ?? '[]',
|
|
'order_express_json' => $params['order_express_json'] ?? '[]',
|
|
- 'order_extend_json' => $params['order_extend_json'] ?? '[]',
|
|
|
|
|
|
+ 'order_extend_json' => $params['order_extend_json'] ? json_encode($params['order_extend_json']) : '[]',
|
|
'order_addtimes' => time()
|
|
'order_addtimes' => time()
|
|
];
|
|
];
|
|
|
|
|