OrderIssueRejectedBillController.php 3.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\OrderIssue;
  4. use App\Services\OrderIssueRejectedBillService;
  5. use Illuminate\Http\Request;
  6. use Illuminate\Support\Facades\Gate;
  7. class OrderIssueRejectedBillController extends Controller
  8. {
  9. public function joinRejectedBillApi(Request $request)
  10. {
  11. if (!Gate::allows('订单管理-问题件-编辑')) return ['success'=>false,'error'=>'没有对应权限'];
  12. if(!$request->has('logistic_number_return'))return ['success' => false,'error'=>'参数为空'];
  13. /** @var OrderIssue $orderIssue */
  14. $orderIssue = OrderIssue::query()->find($request['id']);
  15. if(!$orderIssue)return ['success' =>false,'error'=>'参数为空'];
  16. $result = app(OrderIssueRejectedBillService::class)->joinRejectedBill($orderIssue,$request['logistic_number_return']);
  17. if(is_null($result))return ['success' => false,'error' => '已有对应的关联关系'];
  18. if(!$result)return ['success' => false,'error' => '创建关联关系时出现异常'];
  19. return ['success' => true,'data' => ['orderIssueRejectedBill' => $result,'orderIssue' => $orderIssue]];
  20. }
  21. public function unJoinRejectedBillApi(Request $request)
  22. {
  23. if (!Gate::allows('订单管理-问题件-编辑')) return ['success'=>false,'error'=>'没有对应权限'];
  24. if(!$request->has('logistic_number_return') || !$request->has('id')) return ['success' => false,'error'=>'参数为空'];
  25. /** @var OrderIssue $orderIssue */
  26. $orderIssue = OrderIssue::query()->where('id',$request->id)->first();
  27. if(!$orderIssue)return ['success' => false, 'message'=>'没有找到对应的记录'];
  28. $result = app(OrderIssueRejectedBillService::class)->unJoinRejectedBill($orderIssue,$request['logistic_number_return']);
  29. if(is_null($result))return ['success' => false,'message' => '没有相对应的连接关系!请刷新页面后重试'];
  30. return ['success' => true , 'orderIssue' => $orderIssue];
  31. }
  32. public function reviseJoinRejectedBillApi(Request $request)
  33. {
  34. if (!Gate::allows('订单管理-问题件-编辑')) return ['success'=>false,'error'=>'没有对应权限'];
  35. if (!$request->has('logistic_number_return_update'))
  36. return ['success' => false,'error' => '退回单号为空'];
  37. /** @var OrderIssue $orderIssue */
  38. $orderIssue = OrderIssue::query()->where('id',$request->id)->first();
  39. if(!$orderIssue)return ['success' => false,'error' => '没有找到对应的记录'];
  40. $result = app(OrderIssueRejectedBillService::class)->unJoinRejectedBill($orderIssue,$request['logistic_number_return'],$request['logistic_number_return_update']);
  41. if(is_null($result))return ['success' => false,'error' => '需更新的对应关系不存在!请刷新页面后重试'];
  42. if(!$result)return ['success' => false,'error' => '更新关联关系时出现异常'];
  43. return ['success' => true,'data' => ['orderIssueRejectedBill' => $result,'orderIssue' => $orderIssue]];
  44. }
  45. }