|
|
@@ -1326,22 +1326,34 @@ where (commodities.owner_id,commodity_barcodes.code) in (select commodities.owne
|
|
|
|
|
|
public function syncOrderTask()
|
|
|
{
|
|
|
- $start_data = Carbon::parse('2020-12-10 00:00:00');
|
|
|
- $orderHeaders = OracleDOCOrderHeader::query()->selectRaw(implode(',', OracleDOCOrderHeaderService::$columns))
|
|
|
- ->with(['oracleBASCustomer' => function ($query) {
|
|
|
- $query->selectRaw('BAS_CUSTOMER.CustomerID,BAS_CUSTOMER.Customer_Type,BAS_CUSTOMER.Descr_C,BAS_CUSTOMER.Active_Flag');
|
|
|
- }, 'oracleDOCOrderDetails' => function ($query) {
|
|
|
- $query->selectRaw('doc_order_details.orderNo,doc_order_details.customerid,doc_order_details.sku,doc_order_details.QtyOrdered,doc_order_details.Location');
|
|
|
- }, 'actAllocationDetails' => function ($query) {
|
|
|
- $query->selectRaw('ACT_Allocation_Details.AllocationDetailsID,ACT_Allocation_Details.OrderNo,ACT_Allocation_Details.Qty_Each,ACT_Allocation_Details.PickToTraceID,ACT_Allocation_Details.CustomerID,ACT_Allocation_Details.Sku,ACT_Allocation_Details.Location');
|
|
|
- }, 'oracleBASCode' => function ($query) {
|
|
|
- $query->selectRaw('BAS_Codes.CodeID,BAS_Codes.CodeName_C,BAS_Codes.Code');
|
|
|
- }, 'orderType' => function ($query) {
|
|
|
- $query->selectRaw('BAS_Codes.CodeID,BAS_Codes.CodeName_C,BAS_Codes.Code');
|
|
|
- }])->where('DOC_Order_Header.AddTime', '>', $start_data)
|
|
|
- ->get();
|
|
|
$service = new OrderService();
|
|
|
- $service->syncOrder($orderHeaders);
|
|
|
+ $start_data = Carbon::parse('2020-12-10 00:00:00');
|
|
|
+ $end_data = Carbon::parse('2020-12-11 00:00:00');
|
|
|
+ $orderNos = OracleDOCOrderHeader::query()->selectRaw('orderno')
|
|
|
+ ->where('addTime', '>=', $start_data)
|
|
|
+ ->where('addTime', '<=', $end_data)
|
|
|
+ ->get()->map(function($orderHeader){
|
|
|
+ return $orderHeader->orderno;
|
|
|
+ });
|
|
|
+ $order_no_list = $orderNos->chunk(3000);
|
|
|
+ foreach ($order_no_list as $order_nos) {
|
|
|
+ $orderHeaders = OracleDOCOrderHeader::query()->selectRaw(implode(',', OracleDOCOrderHeaderService::$columns))
|
|
|
+ ->with(['oracleBASCustomer' => function ($query) {
|
|
|
+ $query->selectRaw('BAS_CUSTOMER.CustomerID,BAS_CUSTOMER.Customer_Type,BAS_CUSTOMER.Descr_C,BAS_CUSTOMER.Active_Flag');
|
|
|
+ }, 'oracleDOCOrderDetails' => function ($query) {
|
|
|
+ $query->selectRaw('doc_order_details.orderNo,doc_order_details.customerid,doc_order_details.sku,doc_order_details.QtyOrdered,doc_order_details.Location');
|
|
|
+ }, 'actAllocationDetails' => function ($query) {
|
|
|
+ $query->selectRaw('ACT_Allocation_Details.AllocationDetailsID,ACT_Allocation_Details.OrderNo,ACT_Allocation_Details.Qty_Each,ACT_Allocation_Details.PickToTraceID,ACT_Allocation_Details.CustomerID,ACT_Allocation_Details.Sku,ACT_Allocation_Details.Location');
|
|
|
+ }, 'oracleBASCode' => function ($query) {
|
|
|
+ $query->selectRaw('BAS_Codes.CodeID,BAS_Codes.CodeName_C,BAS_Codes.Code');
|
|
|
+ }, 'orderType' => function ($query) {
|
|
|
+ $query->selectRaw('BAS_Codes.CodeID,BAS_Codes.CodeName_C,BAS_Codes.Code');
|
|
|
+ }])
|
|
|
+ ->whereIn('DOC_Order_Header.OrderNo', $order_nos)
|
|
|
+ ->get();
|
|
|
+ $service->syncOrder($orderHeaders);
|
|
|
+ unset($orderHeaders);
|
|
|
+ }
|
|
|
}
|
|
|
public function cleanOrderIssueRepeat()
|
|
|
{
|