|
|
@@ -707,7 +707,7 @@ class OrderService extends BaseService
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 订单完成
|
|
|
+ * 订单完成(管理后台)
|
|
|
*/
|
|
|
public function completeOrder()
|
|
|
{
|
|
|
@@ -726,25 +726,20 @@ class OrderService extends BaseService
|
|
|
return ['code' => 1, 'msg' => '订单状态不正确,只有已发货订单可以完成'];
|
|
|
}
|
|
|
|
|
|
- // 计算商家佣金
|
|
|
- $bonus = round($order->pay_total * 0.05, 2);
|
|
|
-
|
|
|
- $updateData = [
|
|
|
- 'status' => 4, // 已完成
|
|
|
- 'bonus' => $bonus,
|
|
|
- 'update_time' => time()
|
|
|
- ];
|
|
|
-
|
|
|
- $result = $this->model->where('id', $id)->update($updateData);
|
|
|
-
|
|
|
+ // 调用用户端的订单完成方法,触发收益结算等业务逻辑
|
|
|
+ $apiOrderService = \App\Services\Api\OrderService::make();
|
|
|
+ $result = $apiOrderService->complete($order->user_id, $id);
|
|
|
+
|
|
|
if ($result) {
|
|
|
ActionLogModel::setTitle("订单完成");
|
|
|
ActionLogModel::record();
|
|
|
RedisService::keyDel("caches:orders:*");
|
|
|
- return ['code' => 0, 'msg' => '订单已完成'];
|
|
|
+ return ['code' => 0, 'msg' => '确认收货成功'];
|
|
|
}
|
|
|
|
|
|
- return ['code' => 1, 'msg' => '操作失败'];
|
|
|
+ // 获取错误信息
|
|
|
+ $error = $apiOrderService->getError();
|
|
|
+ return ['code' => 1, 'msg' => $error ?: '操作失败', 'error' => $error];
|
|
|
}
|
|
|
|
|
|
/**
|