From 098b97d4924eb7d8b3657f062685b91fb8f48c25 Mon Sep 17 00:00:00 2001 From: lyt Date: Fri, 27 Apr 2018 14:50:58 +0800 Subject: [PATCH] =?UTF-8?q?trippest=20=E5=9C=B0=E6=8E=A5=E8=AE=A1=E5=88=92?= =?UTF-8?q?=20-=20=E7=8A=B6=E6=80=81=E5=8F=98=E6=9B=B4=E4=B8=8A=E6=8A=A5,?= =?UTF-8?q?=20=E6=9B=B4=E6=96=B0=E7=A1=AE=E8=AE=A4=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controllers/TulanduoApi.php | 13 +++++--- .../trippestOrderSync/models/order_update.php | 33 ++++++++----------- .../trippestOrderSync/models/orders_model.php | 14 ++++---- 3 files changed, 29 insertions(+), 31 deletions(-) diff --git a/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php b/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php index 57b76c9d..d6a77a74 100644 --- a/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php +++ b/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php @@ -456,15 +456,20 @@ log_message('error','in GCI ' . json_decode($resp)->responseData->orderId); $ret['errMsg'] = "未知错误"; $input = $this->input->post(); // todo 验证userID - $vas_info = $this->Orders_model->get_vendorarrangestate_byVendor($input['orderId']); + // $vendorID = $input['userId']; + $vendorID = 29188;//29188 1343; // test + $vas_info = $this->Orders_model->get_vendorarrangestate_byVendor($input['orderId'], $vendorID); if (empty($vas_info) && ! empty($input['agcOrderNo'])) { $real_groupCode = $this->analysis_groupCode($input['agcOrderNo']); - $vas_info = $this->Orders_model->get_vendorarrangestate_byGroup($real_groupCode); + $vas_info = $this->Orders_model->get_vendorarrangestate_byGroup($real_groupCode, $vendorID); } if (empty($vas_info)) { $ret['errMsg'] = "未找到订单."; } else { - $update_vas = $this->Order_update->vendorStatus_update($vas_info[0]->VAS_SN, $input['orderRemark']); + $vendor_manager = $this->Orders_model->get_vendorContact($vendorID); + $VAS_ConfirmInfo = $input['orderRemark'] . "\r\n======确认人: " . $input['orderDuty'] . ", 确认时间: " . $input['orderTime']; + $VAS_ConfirmInfo .= "\r\n" . $vas_info[0]->VAS_ConfirmInfo; + $update_vas = $this->Order_update->vendorStatus_update($vas_info[0]->VAS_SN, $vendor_manager->LMI_SN, $VAS_ConfirmInfo); $this->Order_update->coli_where_update = " COLI_SN=" . $vas_info[0]->COLI_SN; $coli_update_column = array( "COLI_State" => 7 @@ -476,7 +481,7 @@ log_message('error','in GCI ' . json_decode($resp)->responseData->orderId); } } if ($ret['status'] !== 1) { - log_message('error','图兰朵确认上报失败. POST RAW: ' . json_encode($input) . "; Result: " . json_encode($ret)); + log_message('error','图兰朵确认上报失败. POST RAW: ' . raw_json_encode($input) . "; Result: " . raw_json_encode($ret)); } // todo email 外联 return $this->output->set_content_type('application/json')->set_output(json_encode($ret)); diff --git a/webht/third_party/trippestOrderSync/models/order_update.php b/webht/third_party/trippestOrderSync/models/order_update.php index 29b1b7f9..4e61eda7 100644 --- a/webht/third_party/trippestOrderSync/models/order_update.php +++ b/webht/third_party/trippestOrderSync/models/order_update.php @@ -78,28 +78,21 @@ class Order_update extends CI_Model { * @param [type] $vas_sn [description] * @param string $confirminfo [description] */ - public function vendorStatus_update($vas_sn, $confirminfo="") + public function vendorStatus_update($vas_sn, $lmi_sn, $confirminfo="") { - $sql = "UPDATE VendorArrangeState set VAS_IsConfirm=1,VAS_ConfirmInfo=?+CHAR(10)+VAS_ConfirmInfo + $sql = "UPDATE VendorArrangeState + SET VAS_IsConfirm=1 + ,VAS_ConfirmInfo=? + ,VAS_ConfirmTime=getdate() + ,VAS_ConfirmSN=? WHERE VAS_SN=?"; - $query = $this->HT->query($sql, array($confirminfo, $vas_sn)); - return $query; - } - - function SendMail($fromName, $fromEmail, $toName, $toEmail, $subject, $body) { - $sql = "INSERT INTO Email_AutomaticSend \n" - . " ( \n" - . " M_ReplyToName, M_ReplyToEmail, M_ToName, M_ToEmail, M_Title, M_Body, M_Web, \n" - . " M_FromName, M_State \n" - . " ) \n" - . "VALUES \n" - . " ( \n" - . " ?, ?, ?, ?, ?, N?, ?, ?, 0 \n" - . " ) "; - $query = $this->HT->query($sql, - array(substr($fromName, 0, 127), $fromEmail, substr($toName, 0, 127), $toEmail, $subject, $body, $this->config->item('Site_Code'), $this->config->item('Site_SenderName')) - ); - return $query; + $query = $this->HT->query($sql, array($confirminfo, $lmi_sn, $vas_sn)); + // affected_rows() doesn't work with the 'sqlsrv' driver in CI2 + // The solution: Upgrade to the latest CodeIgniter 3.0.x version + $ssql = "SELECT 1 as 'exist' from VendorArrangeState where VAS_IsConfirm=1 and VAS_SN=? "; + $squery = $this->HT->query($ssql, array($vas_sn)); + $ret = $squery->result(); + return !empty($ret); } } diff --git a/webht/third_party/trippestOrderSync/models/orders_model.php b/webht/third_party/trippestOrderSync/models/orders_model.php index 67a7672a..5cca3c03 100644 --- a/webht/third_party/trippestOrderSync/models/orders_model.php +++ b/webht/third_party/trippestOrderSync/models/orders_model.php @@ -146,15 +146,15 @@ class Orders_model extends CI_Model { * 计划变更和订单状态确认时使用 * @param integer $vendorOrderId 图兰朵地接社系统的订单id */ - public function get_vendorarrangestate_byVendor($vendorOrderId) + public function get_vendorarrangestate_byVendor($vendorOrderId, $vei_sn) { $sql = "SELECT coli.COLI_ID, coli.COLI_SN, vas.VAS_ChangeText, vas.VAS_ConfirmInfo, vas.VAS_SN FROM BIZ_GroupCombineInfo gci INNER JOIN BIZ_ConfirmLineInfo coli ON gci.GCI_GRI_SN=coli.COLI_GRI_SN INNER JOIN VendorArrangeState vas ON vas.VAS_GRI_SN=coli.COLI_GRI_SN - WHERE gci.GCI_VendorOrderId=?"; - $query = $this->HT->query($sql, array($vendorOrderId)); + WHERE gci.GCI_VendorOrderId=? and vas.VAS_VEI_SN=? "; + $query = $this->HT->query($sql, array($vendorOrderId, $vei_sn)); return $query->result(); } /*! @@ -162,15 +162,15 @@ class Orders_model extends CI_Model { * 计划变更和订单状态确认时使用 * @param integer $groupCode 图兰朵地接社系统的订单id */ - public function get_vendorarrangestate_byGroup($groupCode) + public function get_vendorarrangestate_byGroup($groupCode, $vei_sn) { $sql = "SELECT coli.COLI_ID, coli.COLI_SN, vas.VAS_ChangeText, vas.VAS_ConfirmInfo, vas.VAS_SN FROM GRoupInfo gri INNER JOIN BIZ_ConfirmLineInfo coli ON gri.GRI_SN=coli.COLI_GRI_SN INNER JOIN VendorArrangeState vas ON vas.VAS_GRI_SN=coli.COLI_GRI_SN - WHERE gri.GRI_No LIKE '$groupCode%'"; - $query = $this->HT->query($sql); + WHERE vas.VAS_VEI_SN=? and gri.GRI_No LIKE '$groupCode%'"; + $query = $this->HT->query($sql, array($vei_sn)); return $query->result(); } @@ -465,7 +465,7 @@ class Orders_model extends CI_Model { lmi.LMI_Mobile, lmi.LMI_ListMail FROM LinkmanInfo lmi - INNER JOIN LinkManInfo2 lmi2 ON lmi2.LMI2_LMI_SN=lmi.LMI_SN + INNER JOIN LinkManInfo2 lmi2 ON lmi2.LMI2_LMI_SN=lmi.LMI_SN AND lmi2.LMI2_LGC=2 WHERE LMI_Receiver='Yes' AND LMI_VEI_SN=$vendorID"; $query = $this->HT->query($sql); return $query->row();