|
|
@@ -167,8 +167,8 @@ class GroupActivityLogic extends BaseLogic
|
|
|
Db::startTrans();
|
|
|
try {
|
|
|
|
|
|
- $userOrder = GroupUserOrder::where(['group_activity_id' => $params['group_activity_id'], 'user_id' => $params['user_id']])->findOrEmpty()->toArray();
|
|
|
- if ($userOrder && $userOrder['pay_status'] == 1 && $userOrder['refund_status'] == 0) {
|
|
|
+ $userOrder = GroupUserOrder::where(['group_activity_id' => $params['group_activity_id'], 'user_id' => $params['user_id'],'refund_status' => 0])->findOrEmpty()->toArray();
|
|
|
+ if ($userOrder && $userOrder['pay_status'] == 1) {
|
|
|
throw new Exception('您已参加过该活动!');
|
|
|
}
|
|
|
|
|
|
@@ -237,6 +237,8 @@ class GroupActivityLogic extends BaseLogic
|
|
|
'group_order_id' => $groupOrder['id'],
|
|
|
'group_activity_id' => $params['group_activity_id'],
|
|
|
'user_id' => $params['user_id'],
|
|
|
+ 'area' => $params['area'],
|
|
|
+ 'address' => $params['address'],
|
|
|
'remark' => isset($params['remark']) ? $params['remark'] : '',
|
|
|
'order_amount' => $order_amount,
|
|
|
'order_terminal' => $params['terminal'],
|
|
|
@@ -286,7 +288,7 @@ class GroupActivityLogic extends BaseLogic
|
|
|
}
|
|
|
|
|
|
//将用户订单状态更新为已取消
|
|
|
- GroupUserOrder::where('id',$detail['id'])->update(['status' => 4, 'pay_status' => 2]);
|
|
|
+ GroupUserOrder::where('id',$detail['id'])->update(['status' => 3, 'pay_status' => 2]);
|
|
|
|
|
|
Db::commit();
|
|
|
return true;
|
|
|
@@ -310,7 +312,7 @@ class GroupActivityLogic extends BaseLogic
|
|
|
$order = GroupUserOrder::where([
|
|
|
'user_id' => $params['user_id'],
|
|
|
'id'=>$params['order_id']
|
|
|
- ])->field('id,sn,status,order_amount,pay_status,pay_way,user_equity_id,user_id,order_terminal')->findOrEmpty()->toArray();
|
|
|
+ ])->field('id,group_order_id,sn,status,order_amount,pay_status,pay_way,user_equity_id,user_id,order_terminal,transaction_id')->findOrEmpty()->toArray();
|
|
|
if(empty($order)){
|
|
|
throw new Exception('订单不存在');
|
|
|
}
|
|
|
@@ -329,7 +331,12 @@ class GroupActivityLogic extends BaseLogic
|
|
|
}
|
|
|
|
|
|
//将用户订单状态更新为申请退款
|
|
|
- GroupUserOrder::where('id',$order['id'])->update(['status' => 3,'refund_status' => 1]);
|
|
|
+ GroupUserOrder::where('id',$order['id'])->update(['status' => 2,'refund_status' => 1]);
|
|
|
+
|
|
|
+ //更新拼团订单
|
|
|
+ GroupOrder::where('id',$order['group_order_id'])->update([
|
|
|
+ 'num' => Db::raw('num-1'),
|
|
|
+ ]);
|
|
|
|
|
|
// 生成退款记录
|
|
|
$recordSn = generate_sn(RefundRecord::class, 'sn');
|
|
|
@@ -362,6 +369,7 @@ class GroupActivityLogic extends BaseLogic
|
|
|
catch (\Exception $e) {
|
|
|
Db::rollback();
|
|
|
self::$error = $e->getMessage();
|
|
|
+ Log::write("[拼团订单退款失败]:".$e->getMessage());
|
|
|
return [false, $e->getMessage()];
|
|
|
}
|
|
|
}
|
|
|
@@ -396,11 +404,11 @@ class GroupActivityLogic extends BaseLogic
|
|
|
public static function getQRCode($params,$url)
|
|
|
{
|
|
|
try {
|
|
|
- $mnp_page = 'pages/group/team';
|
|
|
+ $mnp_page = 'pages/web_view/group';
|
|
|
|
|
|
- $scene_page = 'group';
|
|
|
+ $scene_page = 'team';
|
|
|
$response = (new WeChatMnpService())->getUnlimitedQRCode(
|
|
|
- 'page='.$scene_page.'&id='.$params['id'].'&order_id='.$params['order_id'],
|
|
|
+ 'page='.$scene_page.'&id='.$params['id'].'&oid='.$params['order_id']."&cid=".$params['category_id'],
|
|
|
$mnp_page,
|
|
|
env('miniprogram.mini_env_version', 'release'),
|
|
|
false
|