OracleDOCOrderHeaderService.php 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?php
  2. namespace App\Services;
  3. use App\OracleDOCOrderDetail;
  4. use App\OracleDOCOrderHeader;
  5. use App\Owner;
  6. Class OracleDOCOrderHeaderService
  7. {
  8. function first(array $params){
  9. $order = OracleDOCOrderHeader::query();
  10. foreach ($params as $column => $value){
  11. $order->where($column, $value);
  12. }
  13. return $order->first();
  14. }
  15. public function 根据时间获取在这段时间内创建的WMS订单($startDate){
  16. /** @var OwnerService $ownerService */
  17. $ownerService = app('ownerService');
  18. $owners = $ownerService->获取订单跟踪的货主();
  19. $ownerIds = data_get($owners, '*.code');
  20. return OracleDOCOrderHeader::query()
  21. ->with(['oracleDOCOrderDetails', 'actAllocationDetails','oracleBASCode'])
  22. ->where('addtime', '>=', $startDate)
  23. ->whereIn('customerID', $ownerIds)
  24. ->get();
  25. }
  26. public function 根据时间获取在这段时间内更新的WMS订单($startDate){
  27. /** @var OwnerService $ownerService */
  28. $ownerService = app('ownerService');
  29. $owners = $ownerService->获取订单跟踪的货主();
  30. $ownerIds = data_get($owners, '*.code');
  31. return OracleDOCOrderHeader::query()
  32. ->with(['oracleDOCOrderDetails', 'actAllocationDetails','oracleBASCode'])
  33. ->where('EditTime','>=',$startDate)
  34. ->whereColumn('EditTime','<>','addtime')
  35. ->whereIn('customerID', $ownerIds)
  36. ->get();
  37. }
  38. public function getWmsOrderOnStartDateCreate($startDate){
  39. /** @var Owner $owners */
  40. $owners = app(OrderTrackingOwnerService::class)->getTrackingOrderOwner();
  41. return OracleDOCOrderHeader::query()
  42. ->with(['oracleDOCOrderDetails', 'actAllocationDetails','oracleBASCode'])
  43. ->where('addTime','>=',$startDate)
  44. ->whereIn('customerID',data_get($owners,'*.code'))
  45. ->get();
  46. }
  47. public function getWmsOrderOnStartDateEdit($startDate){
  48. /** @var Owner $owners */
  49. $owners = app(OrderTrackingOwnerService::class)->getTrackingOrderOwner();
  50. return OracleDOCOrderHeader::query()
  51. ->with(['oracleDOCOrderDetails', 'actAllocationDetails','oracleBASCode'])
  52. ->where('EditTime','>=',$startDate)
  53. ->whereColumn('EditTime','<>','addTime')
  54. ->whereIn('customerID',data_get($owners,'*.code'))
  55. ->get();
  56. }
  57. }