From d982e1ef1c13c21ac28728eae1717fc6e922b0e8 Mon Sep 17 00:00:00 2001 From: lyt Date: Fri, 12 Oct 2018 09:32:24 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=8C=E6=AD=A5:=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E5=BE=85=E5=90=8C=E6=AD=A5=E7=9A=84sql?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controllers/TulanduoApi.php | 3 ++ .../trippestOrderSync/models/orders_model.php | 52 +++++++++++++------ 2 files changed, 40 insertions(+), 15 deletions(-) diff --git a/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php b/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php index b2054ddf..7f8b086a 100644 --- a/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php +++ b/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php @@ -194,6 +194,9 @@ class TulanduoApi extends CI_Controller $startDate = date('Y-m-d'); $endDate = date('Y-m-d', strtotime("+2 days")); $to_update_list = $this->Orders_model->get_groupCombineInfo(0, null, $startDate, $endDate); + if (empty($to_update_list)) { + $to_update_list = $this->Orders_model->get_groupCombineInfo_finance(); + } } if (empty($to_update_list)) { return false; diff --git a/webht/third_party/trippestOrderSync/models/orders_model.php b/webht/third_party/trippestOrderSync/models/orders_model.php index be08730d..6fd1032c 100644 --- a/webht/third_party/trippestOrderSync/models/orders_model.php +++ b/webht/third_party/trippestOrderSync/models/orders_model.php @@ -152,26 +152,48 @@ class Orders_model extends CI_Model { and gci.GCI_createTime < '" . date($createTime_format) . "' "; } // 近期的订单同步完成之后, 同步历史数据 - $sql .= " UNION ALL "; - $sql .= " SELECT top 1 coli.COLI_ID, coli.COLI_SN, coli.COLI_GRI_SN, cold.COLD_SN, coli.COLI_OrderDetailText, coli.COLI_Memo,coli.COLI_State,coli.COLI_OPI_ID, - cold.COLD_PlanVEI_SN, cold.COLD_MemoText, gci.*,'1' as 'isHistory' - from GroupCombineInfo gci - inner join GRoupInfo on GRI_SN=GCI_GRI_SN and GRI_No<>'' - LEFT JOIN BIZ_ConfirmLineInfo coli ON coli.COLI_GRI_SN=gci.GCI_GRI_SN - and coli.COLI_State<>50 - and (select OPI_DEI_SN from OperatorInfo where OPI_SN=coli.COLI_OPI_ID)=30 - LEFT JOIN BIZ_ConfirmLineDetail cold ON cold.COLD_COLI_SN=coli.COLI_SN - where - GCI_combineNo is not null and GCI_combineNo not in ('cancel','forbidden') - and GCI_leaveDate < '" . date('Y-m-d', strtotime("-7 days")) . "' - and gci.GCI_createTime < '" . date('Y-m-d') . "' - and GCI_combineNo not like '%取消%' - "; + // 这个sql很慢, 导致锁表, 分开处理 + // $sql .= " UNION ALL "; + // $sql .= " SELECT top 1 coli.COLI_ID, coli.COLI_SN, coli.COLI_GRI_SN, cold.COLD_SN, coli.COLI_OrderDetailText, coli.COLI_Memo,coli.COLI_State,coli.COLI_OPI_ID, + // cold.COLD_PlanVEI_SN, cold.COLD_MemoText, gci.*,'1' as 'isHistory' + // from GroupCombineInfo gci + // inner join GRoupInfo on GRI_SN=GCI_GRI_SN and GRI_No<>'' + // LEFT JOIN BIZ_ConfirmLineInfo coli ON coli.COLI_GRI_SN=gci.GCI_GRI_SN + // and coli.COLI_State<>50 + // and (select OPI_DEI_SN from OperatorInfo where OPI_SN=coli.COLI_OPI_ID)=30 + // LEFT JOIN BIZ_ConfirmLineDetail cold ON cold.COLD_COLI_SN=coli.COLI_SN + // where + // GCI_combineNo is not null and GCI_combineNo not in ('cancel','forbidden') + // and GCI_leaveDate < '" . date('Y-m-d', strtotime("-7 days")) . "' + // and gci.GCI_createTime < '" . date('Y-m-d') . "' + // and GCI_combineNo not like '%取消%' + // "; $sql .= " ORDER BY isHistory ASC,GCI_createTime ASC "; $query = $this->HT->query($sql); return $query->result(); } + public function get_groupCombineInfo_finance() + { + $sql = " SELECT top 1 coli.COLI_ID, coli.COLI_SN, coli.COLI_GRI_SN, cold.COLD_SN, coli.COLI_OrderDetailText, coli.COLI_Memo,coli.COLI_State,coli.COLI_OPI_ID, + cold.COLD_PlanVEI_SN, cold.COLD_MemoText, gci.*,'1' as 'isHistory' + from GroupCombineInfo gci + inner join GRoupInfo on GRI_SN=GCI_GRI_SN and GRI_No<>'' + LEFT JOIN BIZ_ConfirmLineInfo coli ON coli.COLI_GRI_SN=gci.GCI_GRI_SN + and coli.COLI_State<>50 + and (select OPI_DEI_SN from OperatorInfo where OPI_SN=coli.COLI_OPI_ID)=30 + LEFT JOIN BIZ_ConfirmLineDetail cold ON cold.COLD_COLI_SN=coli.COLI_SN + where + GCI_combineNo is not null and GCI_combineNo not in ('cancel','forbidden') + and GCI_leaveDate < '" . date('Y-m-d', strtotime("-7 days")) . "' + and gci.GCI_createTime < '" . date('Y-m-d') . "' + and GCI_combineNo not like '%取消%' + "; + $sql .= " ORDER BY isHistory ASC,GCI_createTime ASC "; + $query = $this->HT->query($sql); + return $query->result(); + } + /*! * 获取团计划信息的记录 - 根据地接社订单id * 计划变更和订单状态确认时使用