OrderIssueRejectedBillController.php 3.0 KB

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