HT = $this->load->database('TOURMANAGER_LOCAL', TRUE); $this->INFO = $this->load->database('INFORMATION_LOCAL', TRUE); } //传入一组BPE_SN获取乘客信息 function in_bpesn_people_info($bpe_sn){ $sql = " SELECT bbp.BPE_SN ,bbp.BPE_FirstName ,bbp.BPE_MiddleName ,bbp.BPE_LastName ,bbp.BPE_GuestType ,bbp.BPE_Passport ,bbp.BPE_PassportType ,bbp.BPE_SEX ,CONVERT(VARCHAR(10),BPE_BirthDate,120) as BPE_BirthDate ,(case ISDATE(BPE_PassExpdate) when 1 then CONVERT(VARCHAR(10),CONVERT(datetime,BPE_PassExpdate,120),120) else null end) as BPE_PassExpdate ,(select top 1 COI_Code from COuntryInfo where COI_SN=bbp.BPE_Nationality) as BPE_Nationality FROM BIZ_BookPeople bbp WHERE BPE_SN in(".$bpe_sn.") "; $query = $this->HT->query($sql); return $query->result(); } //传入主订单翰特订单号COLI_ID(161014006M),获取子订单中火车订单的COLD_SN function get_biz_cold($cols_id) { $sql = "SELECT COLD_SN FROM BIZ_ConfirmLineDetail bcld WHERE bcld.COLD_COLI_SN=( SELECT COLI_SN FROM BIZ_ConfirmLineInfo bcli WHERE bcli.COLI_ID=?) AND bcld.DeleteFlag=0 AND bcld.COLD_ServiceType='2'"; $query = $this->HT->query($sql, $cols_id); return $query->result(); } //传入子订单COLD_SN,获取子订单对应的乘客信息 function biz_people($cold_sn) { $sql = " SELECT bbp.BPE_SN ,bbp.BPE_FirstName ,bbp.BPE_MiddleName ,bbp.BPE_LastName ,bbp.BPE_GuestType ,bbp.BPE_Passport ,bbp.BPE_PassportType ,CONVERT(VARCHAR(10),BPE_BirthDate,120) as BPE_BirthDate ,(case ISDATE(BPE_PassExpdate) when 1 then CONVERT(VARCHAR(10),CONVERT(datetime,BPE_PassExpdate,120),120) else null end) as BPE_PassExpdate ,(select top 1 COI_Code from COuntryInfo where COI_SN=bbp.BPE_Nationality) as BPE_Nationality ,(select top 1 COI_ID from COuntryInfo where COI_SN=bbp.BPE_Nationality) as Nationality FROM BIZ_BookPeople bbp WHERE EXISTS( SELECT TOP 1 1 FROM BIZ_BookPeopleList bbpl WHERE bbpl.BPL_BPE_SN = bbp.BPE_SN AND bbpl.BPL_COLD_SN = ? ) "; $query = $this->HT->query($sql, $cold_sn); return $query->result(); } //获取订单信息 function biz_order_detail($cold_sn) { $sql = " SELECT TOP 1 bfoi.FOI_SN ,bfoi.DepartureCity ,bfoi.ArrivalCity ,bfoi.FOI_COLD_SN ,bfoi.DepartAirport ,bfoi.ArrivalAirport ,bfoi.FlightsNo ,bfoi.Aircraft ,bfoi.Cabin ,bfoi.DepartureDate ,bfoi.FOI_SelectedSeat ,( SELECT TOP 1 TRS_StationCN FROM TrainStation WHERE TRS_Code = DepartAirport and ISNULL(TRS_StationCN,'')<>'' ) AS DepartAirport_cn ,( SELECT TOP 1 TRS_StationCN FROM TrainStation WHERE TRS_Code = ArrivalAirport and ISNULL(TRS_StationCN,'')<>'' ) AS ArrivalAirport_cn, FOI_TrainNetOrderNo, bfoi.adultcost, bfoi.childcost, bfoi.adultprice, bfoi.childprice, bfoi.ArrivalTime, bfoi.DepartureTime, bfoi.FOI_SaleDate FROM BIZ_FlightsOrderInfo bfoi WHERE bfoi.FOI_COLD_SN = ? "; $query = $this->HT->query($sql, $cold_sn); if ($query->num_rows() > 0) { return $query->row(); } else { return false; } } //传入COLD_SN,获取BIZ_JuheOrderList是否存在此子订单,用来判断是否提交过给聚合 function get_biz_jol($cold_sn) { $sql = "SELECT top 1 JOL_SN FROM BIZ_JuheOrderList WHERE JOL_COLD_SN= ?"; $query = $this->HT->query($sql, $cold_sn); if($query->num_rows() == 0){ return true; }else{ return false; } } //传入COLI_ID,获取外联名 function get_operatorInfo($cols_id) { $sql = " SELECT Name, OPI_Name, case when OPI_SN=375 then OPI_EmailBak else OPI_Email end as OPI_Email, tel, Mobile, Email FROM OperatorInfo left join agenter_user on AU_OPI_SN = OPI_SN WHERE OPI_SN = ( SELECT COLI_OPI_ID FROM BIZ_ConfirmLineInfo bcli WHERE bcli.COLI_ID = ? and COLi_ServiceType = '2' ) and agenter in ('cht', 'train_vac', 'jp', 'train_it', 'vc', 'ru') "; $query = $this->HT->query($sql, $cols_id); return $query->result(); } //新增支付记录 public function add_train_payment($data){ //主表ID,下面两个地方用到,所以先筛选出来,不知道能不能通过合并提高效率 $sql="SELECT COLD_COLI_SN FROM BIZ_ConfirmLineDetail WHERE COLD_SN=?"; $query=$this->HT->query($sql,$data->TOC_COLD_SN); $query=$query->result(); $CCSN=$query[0]->COLD_COLI_SN; //删除多余支付记录 $sql = "delete from BIZ_TrainOrderCost where TOC_COLI_SN = '{$CCSN}' and TOC_TicketCost is null"; $query=$this->HT->query($sql); // if(empty($data->FOI_TrainNetOrderNo)){ //由于取票号不再是必传回来的参数,所以退票单独做一个函数 // //退票 // $sql="IF NOT EXISTS( // SELECT TOP 1 1 FROM BIZ_TrainOrderCost // WHERE TOC_COLD_SN = ? AND TOC_Memo like ? // ) // INSERT INTO BIZ_TrainOrderCost( // TOC_Memo, // TOC_CreateDate, // TOC_COLI_SN, // TOC_COLD_SN, // TOC_TrainNumber, // TOC_DepartureDate, // TOC_TicketCost, // TOC_WL, // TOC_VEI_SN // ) // VALUES(?,getdate(),{$CCSN},?,?,?,?,(SELECT COLI_OPI_ID FROM BIZ_ConfirmLineInfo WHERE COLI_SN={$CCSN}),?)"; // $query = $this->HT->query($sql,array($data->TOC_COLD_SN,"%".$data->TOC_Memo."%","退票费 ".$data->TOC_Memo,$data->TOC_COLD_SN,$data->TOC_TrainNumber,$data->TOC_DepartureDate,$data->TOC_TicketCost,$data->TOC_VEI_SN)); // }else{ // } //---------出票---- //BIZ_FlightsOrderInfo.FOI_TrainNetOrderNo,更新取票号 /* UPDATE BIZ_FlightsOrderInfo SET FOI_TrainNetOrderNo=? WHERE FOI_COLD_SN=? */ $sql="IF EXISTS( select * from BIZ_FlightsOrderInfo where FOI_COLD_SN = '$data->TOC_COLD_SN' and (FOI_TrainNetOrderNo is null or FOI_TrainNetOrderNo = '' or FOI_TrainNetOrderNo = '$data->FOI_TrainNetOrderNo')) UPDATE BIZ_FlightsOrderInfo SET FOI_TrainNetOrderNo='$data->FOI_TrainNetOrderNo' WHERE FOI_COLD_SN='$data->TOC_COLD_SN' ELSE IF NOT EXISTS(select * from BIZ_FlightsOrderInfo where FOI_COLD_SN = '$data->TOC_COLD_SN' and FOI_TrainNetOrderNo LIKE '%$data->FOI_TrainNetOrderNo%') UPDATE BIZ_FlightsOrderInfo SET FOI_TrainNetOrderNo=(select FOI_TrainNetOrderNo from BIZ_FlightsOrderInfo where FOI_COLD_SN = '$data->TOC_COLD_SN') + '&' + '$data->FOI_TrainNetOrderNo' WHERE FOI_COLD_SN='$data->TOC_COLD_SN'"; $this->HT->query($sql); $sql="IF NOT EXISTS( SELECT TOP 1 1 FROM BIZ_TrainOrderCost WHERE TOC_COLD_SN = ? AND TOC_Memo like ? ) INSERT INTO BIZ_TrainOrderCost( TOC_Memo, TOC_CreateDate, TOC_COLI_SN, TOC_COLD_SN, TOC_TrainNumber, TOC_DepartureDate, TOC_TicketCost, TOC_WL, TOC_OtherCost, TOC_VEI_SN ) VALUES(?,getdate(),{$CCSN},?,?,?,?,(SELECT isnull(COLI_OPI_ID,29) FROM BIZ_ConfirmLineInfo WHERE COLI_SN={$CCSN}),null,?)"; //,(?,getdate(),{$CCSN},?,?,?,?,(SELECT isnull(COLI_OPI_ID,29) FROM BIZ_ConfirmLineInfo WHERE COLI_SN={$CCSN}),1,?) $query = $this->HT->query($sql,array($data->TOC_COLD_SN,"%".$data->TOC_Memo."%",$data->TOC_Memo,$data->TOC_COLD_SN,$data->TOC_TrainNumber,$data->TOC_DepartureDate,$data->TOC_TicketCost,$data->TOC_VEI_SN)); //,$data->TOC_Memo." 手续费",$data->TOC_COLD_SN,$data->TOC_TrainNumber,$data->TOC_DepartureDate,$data->poundage,$data->TOC_VEI_SN return $query; } //新增退款记录 refund public function refund_train_payment($data){ //主表ID,下面两个地方用到,所以先筛选出来,不知道能不能通过合并提高效率 $sql="SELECT COLD_COLI_SN FROM BIZ_ConfirmLineDetail WHERE COLD_SN=?"; $query=$this->HT->query($sql,$data->TOC_COLD_SN); $query=$query->result(); $CCSN=$query[0]->COLD_COLI_SN; //删除多余支付记录 $sql = "delete from BIZ_TrainOrderCost where TOC_COLI_SN = '{$CCSN}' and TOC_TicketCost is null"; $query=$this->HT->query($sql); //退款记录 $sql="IF NOT EXISTS( SELECT TOP 1 1 FROM BIZ_TrainOrderCost WHERE TOC_COLD_SN = ? AND TOC_Memo like ? ) INSERT INTO BIZ_TrainOrderCost( TOC_Memo, TOC_CreateDate, TOC_COLI_SN, TOC_COLD_SN, TOC_TrainNumber, TOC_DepartureDate, TOC_TicketCost, TOC_WL, TOC_VEI_SN ) VALUES(?,getdate(),{$CCSN},?,?,?,?,(SELECT isnull(COLI_OPI_ID,29) FROM BIZ_ConfirmLineInfo WHERE COLI_SN={$CCSN}),?)"; $query = $this->HT->query($sql,array($data->TOC_COLD_SN,"%".$data->TOC_Memo."%","退款: ".$data->TOC_Memo,$data->TOC_COLD_SN,$data->TOC_TrainNumber,$data->TOC_DepartureDate,$data->TOC_TicketCost,$data->TOC_VEI_SN)); } //新增退款记录 refund public function returnticket_train($data){ //主表ID,下面两个地方用到,所以先筛选出来,不知道能不能通过合并提高效率 $sql="SELECT COLD_COLI_SN FROM BIZ_ConfirmLineDetail WHERE COLD_SN=?"; $query=$this->HT->query($sql,$data->TOC_COLD_SN); $query=$query->result(); $CCSN=$query[0]->COLD_COLI_SN; //退票手续费记录 $sql="IF NOT EXISTS( SELECT TOP 1 1 FROM BIZ_TrainOrderCost WHERE TOC_COLD_SN = ? AND TOC_Memo like ? ) INSERT INTO BIZ_TrainOrderCost( TOC_Memo, TOC_CreateDate, TOC_COLI_SN, TOC_COLD_SN, TOC_TrainNumber, TOC_DepartureDate, TOC_TicketCost, TOC_WL, TOC_VEI_SN ) VALUES(?,getdate(),{$CCSN},?,?,?,?,(SELECT isnull(COLI_OPI_ID,29) FROM BIZ_ConfirmLineInfo WHERE COLI_SN={$CCSN}),?)"; $query = $this->HT->query($sql,array($data->TOC_COLD_SN,"%".$data->TOC_Memo."%","退票: ".$data->TOC_Memo,$data->TOC_COLD_SN,$data->TOC_TrainNumber,$data->TOC_DepartureDate,$data->TOC_TicketCost,$data->TOC_VEI_SN)); } public function update_cold_planvei_sn($cold_sn,$planveiSn){ $sql = "update BIZ_ConfirmLineDetail set COLD_PlanVEI_SN = '{$planveiSn}' where COLD_SN = ?"; $query = $this->HT->query($sql,$cold_sn); } //自动获取符合自动出票要求的订单的coli_sn function auto_check_ticket(){ $sql = "SELECT distinct top 50 COLD_SN ,coli_id,COLD_SPFS,COLI_State,(SELECT TOP 1 GAI_Type FROM BIZ_GroupAccountInfo WHERE GAI_COLI_SN=bcli.COLI_SN AND ISNULL(DeleteFlag,0)=0) as GAI_Type FROM BIZ_ConfirmLineInfo bcli inner join BIZ_ConfirmLineDetail bcld on COLD_COLI_SN=COLI_SN WHERE bcli.COLI_ServiceType = '2' AND bcli.COLI_State in ('11','13','8','63') AND bcli.COLI_WebCode in ('cht', 'JP', 'train_it', 'VC', 'train_ru','GM-Train','SHT','CT','WebMob-biz','WeChat-biz','CHTAPP-biz') AND EXISTS(SELECT GAI_SN FROM BIZ_GroupAccountInfo WHERE GAI_COLI_SN=bcli.COLI_SN AND (bcli.COLI_Price - GAI_SQJE) <= 20 AND (GAI_SQJE - bcli.COLI_Price) >= -20 AND DeleteFlag = 0) --AND COLI_IsSuccess = 1 AND bcli.DeleteFlag = 0 AND bcld.DeleteFlag = 0 AND COLD_SPFS < 2 AND NOT EXISTS ( SELECT TOP 1 1 FROM InfoManager.dbo.trainsystem WHERE ts_cold_sn = COLD_SN ) and (((COLI_State<>8 and COLI_State<>63) and COLD_StartDate < CONVERT(varchar(100),GETDATE()+29,23)) or ((COLI_State=8 or COLI_State=63) and COLD_StartDate between CONVERT(varchar(100),GETDATE()+29,23) and CONVERT(varchar(100),GETDATE()+29,23)+' 23:59')) "; $query = $this->HT->query($sql); return $query->result(); } //获取能够自动出票的订单列表2.0版本 20240130 zp (coli_state 11 我的订单 8 已收款 63 出票中 13 新订单(已支付)) function auto_check_ticket_2(){ $sql = "SELECT top 10 COLD_SN ,coli_id,COLD_SPFS,COLI_State,(SELECT TOP 1 GAI_Type FROM BIZ_GroupAccountInfo WHERE GAI_COLI_SN=bcli.COLI_SN AND ISNULL(DeleteFlag,0)=0) as GAI_Type ,cold_startdate ,isnull((select top 1 ts_autotimes from InfoManager.dbo.trainsystem where ts_cold_sn= bcld.cold_sn order by ts_id desc),0) as ts_autotimes ,(select top 1 ts_autolasttime from InfoManager.dbo.trainsystem where ts_cold_sn= bcld.cold_sn order by ts_id desc) as ts_autolasttime FROM BIZ_ConfirmLineInfo bcli inner join BIZ_ConfirmLineDetail bcld on COLD_COLI_SN=COLI_SN INNER JOIN dbo.OperatorInfo ON OPI_SN=COLI_OPI_ID and OPI_DEI_SN=10 AND ISNULL(dbo.OperatorInfo.DeleteFlag,0)=0 WHERE bcli.COLI_ServiceType = '2' AND bcli.COLI_State in ('13','63') AND EXISTS(SELECT sum(GAI_SQJE) FROM BIZ_GroupAccountInfo WHERE GAI_COLI_SN=bcli.COLI_SN AND isnull(DeleteFlag,0) = 0 having (bcli.COLI_Price - Sum(GAI_SQJE)) <= 20 AND (Sum(GAI_SQJE) - bcli.COLI_Price) >= -20 ) AND isnull(bcli.DeleteFlag,0) = 0 AND isnull(bcld.DeleteFlag,0) = 0 AND COLD_SPFS < 2 AND ( NOT EXISTS ( SELECT TOP 1 1 FROM InfoManager.dbo.trainsystem WHERE ts_cold_sn = COLD_SN ) or EXISTS(select Top 1 1 from InfoManager.dbo.trainsystem WHERE ts_cold_sn = COLD_SN and (ts_status = '5' or ts_status='11') and ts_cold_sn not in (select ts_cold_sn from InfoManager.dbo.trainsystem where (ts_status='4' or ts_status='3' or ts_status='2' or ts_status='10') and ts_cold_sn = COLD_SN) )) AND COLD_SN NOT IN ( select FOI_COLD_SN from BIZ_FlightsOrderInfo where FOI_COLD_SN=COLD_SN and FOI_TrainNetOrderNo>'') and (COLD_StartDate between GETDATE() and CONVERT(varchar(100),GETDATE()+14,23)+' 23:59') and isnull((select top 1 ts_autotimes from InfoManager.dbo.trainsystem where ts_cold_sn= bcld.cold_sn order by ts_id desc),0)<4 order by CONVERT(date,cold_startdate),ISNULL(CAST((select TOP 1 TST_saletime from TrainSaleTime where TST_station_cn = ( SELECT TOP 1 TRS_StationCN FROM TrainStation WHERE TRS_Code = (select top 1 DepartAirport from BIZ_FlightsOrderInfo where FOI_COLD_SN = cold_sn) and ISNULL(TRS_StationCN,'')<>'' )) as Time),'18:00') "; $query = $this->HT->query($sql); return $query->result(); } public function get_saletime($station){ $sql = 'select TST_saletime from TrainSaleTime where TST_station_cn = ?'; $query = $this->HT->query($sql,$station); return $query->row(); } //预售时间列表 public function get_presale_list($pagesize=10,$page=0,$where="1=1"){ $data=new StdClass(); //获取总条数 $sql="SELECT COUNT(*) AS count FROM TrainSaleTime WHERE {$where} "; $query = $this->HT->query($sql); $count=$query->result(); $data->count=$count[0]->count; $sql="SELECT TOP {$pagesize} TST_id,TST_station_cn,TST_station_code,TST_saletime,TST_updatetime from TrainSaleTime WHERE TST_id not in ( select top {$page} TST_id from TrainSaleTime where {$where} Order by isnull(TST_updatetime,0) desc,TST_id desc) AND {$where} ORDER BY isnull(TST_updatetime,0) desc,TST_id desc "; $query = $this->HT->query($sql); $data->list=$query->result(); return $data; } //预售时间详细 public function get_saletime_detail($tstid){ $sql = 'select * from TrainSaleTime where TST_id = ?'; $query = $this->HT->query($sql,$tstid); return $query->row(); } //更新预售时间 public function update_saletime($data){ $sql = "update TrainSaleTime set TST_station_cn = '{$data->TST_station_cn}', TST_saletime = '{$data->TST_saletime}', TST_station_code = '{$data->TST_station_code}', TST_updatetime = getdate() where TST_id = '{$data->TST_id}' "; $query = $this->HT->query($sql); } //添加预售时间 public function add_saletime($data){ $sql = " insert into TrainSaleTime (TST_station_cn,TST_saletime,TST_station_code,TST_updatetime) values (?,?,?,getdate()) "; $query = $this->HT->query($sql ,array($data->TST_station_cn,$data->TST_saletime,$data->TST_station_code)); } //筛选符合发送邮件的订单 public function auto_sendmail(){ $time = date('Y-m-d',time()); $sql = "SELECT ts_cold_sn, ts_ordernumber, ts_status, ts_isauto FROM trainsystem left join Tourmanager.dbo.BIZ_ConfirmLineDetail bcld on bcld.COLD_SN = ts_cold_sn left join Tourmanager.dbo.BIZ_ConfirmLineInfo bcli on bcld.COLD_COLI_SN = bcli.COLI_SN WHERE ts_sendmail is null AND ts_isauto = 1 AND ts_status != '0' AND ts_status != 'e' AND ts_status != '2' AND ts_subtime > '{$time}' AND bcli.COLI_WebCode in ('cht','WebMob-biz','WeChat-biz') "; $query = $this->INFO->query($sql); return $query->result(); } // 传入 cold_sn 获取订单号 public function cold_sn_get_coli_id($cold_sn){ $sql="SELECT COLI_ID FROM BIZ_ConfirmLineInfo WHERE COLI_SN = ( SELECT COLD_COLI_SN FROM BIZ_ConfirmLineDetail WHERE COLD_SN = ? ) "; $query = $this->HT->query($sql,array($cold_sn)); return $query->result(); } //邮件使用 function get_user_info($jh_order){ $sql = "select * from Tourmanager.dbo.BIZ_ConfirmLineDetail where COLD_SN = ( select top 1 ts_cold_sn from trainsystem where ts_ordernumber = ? )"; $query = $query = $this->INFO->query($sql, $jh_order); if ($query->num_rows() > 0) { return $query->row(); } else { return false; } } //用于自动出票,传入主订单翰特订单号 COLI_ID ,获取客人的姓名和邮箱 public function get_guest_info($COLI_ID){ $sql = "SELECT GUT_FirstName,GUT_LastName,GUT_Email FROM BIZ_GUEST bg WHERE bg.GUT_SN = ( SELECT COLI_GUT_SN FROM BIZ_ConfirmLineInfo bcli WHERE bcli.COLI_ID = ? and COLI_servicetype = '2') "; $query = $this->HT->query($sql,$COLI_ID); return $query->result(); } //获取paypal付款记录 function get_paypal($coli_id){ $sql = " select GAI_SQJE,GAI_SQJECurrency,COLI_Price from BIZ_ConfirmLineInfo left join BIZ_GroupAccountInfo on COLI_ID = GAI_COLI_ID where COLI_ID = ?"; $query = $query = $this->HT->query($sql, $coli_id); if ($query->num_rows() > 0) { return $query->row(); } else { return false; } } //通过 JOL_JuheOrder 获取 BIZ_JuheOrderList 获取聚合订单详情 public function get_biz_jol_info($cold_sn,$jol_jo){ $sql = "SELECT top 1 * FROM trainsystem WHERE ts_cold_sn = ? AND ts_ordernumber = ? "; $query = $this->INFO->query($sql,array($cold_sn,$jol_jo)); return $query->row(); } //获取跟踪号 public function getTrackingCode(){ include('c:/database_conn.php'); $connection = array( 'UID' => $db['HT']['username'], 'PWD' => $db['HT']['password'], 'Database' => 'tourmanager', 'ConnectionPooling' => 1, 'CharacterSet' => 'utf-8', 'ReturnDatesAsStrings' => 1 ); $conn = sqlsrv_connect($db['HT']['hostname'], $connection); $stmt = sqlsrv_query($conn, "exec dbo.SP_getTrackingCode;"); if ($stmt === false) { echo "Error in executing statement 3.\n"; die(print_r(sqlsrv_errors(), true)); }else{ //存储过程中每一个select都会产生一个结果集,取某个结果集就需要从第一个移动到需要的那个结果集 //如果结果集为空就移到下一个 while (sqlsrv_has_rows($stmt) !== TRUE) { sqlsrv_next_result($stmt); } $result_object = array(); while ($row = sqlsrv_fetch_object($stmt)) { $result_object[] = $row; } sqlsrv_free_stmt($stmt); sqlsrv_close($conn); return($result_object[0]->TrackingCode); } } //接收聚合订单号,获取翰特订单号,即BIZ_ConfirmLineInfo的COLI_ID function jh_order_get_coli_id($ordernumber){ $sql="SELECT COLI_ID,COLI_SN,COLI_OPI_ID FROM BIZ_ConfirmLineInfo bcli WHERE bcli.COLI_SN= (SELECT COLD_COLI_SN FROM BIZ_ConfirmLineDetail bcld WHERE bcld.COLD_SN= (SELECT ts_cold_sn FROM InfoManager.dbo.trainsystem WHERE ts_ordernumber = ? and ts_channel = 'juhe')) "; $query = $this->HT->query($sql, $ordernumber); return $query->result(); } function getErrorOrdersList(){ $sql = "select cold_sn from BIZ_ConfirmLineDetail left join BIZ_ConfirmLineInfo on COLD_COLI_SN = COLI_SN where COLD_State = '41' and COLI_State = '63' and COLI_WebCode in ('cht','WebMob-biz','WeChat-biz')"; $query = $this->HT->query($sql); return $query->result(); } //跟踪号与订单关联 public function linkTrackingCode($coli_sn,$TrackCode){ include('c:/database_conn.php'); $connection = array( 'UID' => $db['HT']['username'], 'PWD' => $db['HT']['password'], 'Database' => 'tourmanager', 'ConnectionPooling' => 1, 'CharacterSet' => 'utf-8', 'ReturnDatesAsStrings' => 1 ); $conn = sqlsrv_connect($db['HT']['hostname'], $connection); $stmt = sqlsrv_query($conn, "exec dbo.SP_recordTrackingCode '$coli_sn', '$TrackCode'"); if ($stmt === false) { echo "Error in executing statement 3.\n"; die(print_r(sqlsrv_errors(), true)); }else{ //存储过程中每一个select都会产生一个结果集,取某个结果集就需要从第一个移动到需要的那个结果集 //如果结果集为空就移到下一个 /* while (sqlsrv_has_rows($stmt) !== TRUE) { sqlsrv_next_result($stmt); } $result_object = array(); while ($row = sqlsrv_fetch_object($stmt)) { $result_object[] = $row; } */ sqlsrv_free_stmt($stmt); sqlsrv_close($conn); } } //根据订单号获取所有子订单号 public function getAllColdSn($coliId){ $sql = "select cold_sn,COLI_ApplyDate from BIZ_ConfirmLineInfo left join BIZ_ConfirmLineDetail on coli_sn = cold_coli_sn where coli_id = ? and COLI_servicetype = '2'"; $query = $this->HT->query($sql, array($coliId)); return $query->result(); } //通过COLI_ID获取团名 即 GroupInfo的GRI_No function get_gri_no($coli_id){ $sql="SELECT GRI_No FROM GroupInfo WHERE GRI_SN=( SELECT COLI_GRI_SN FROM BIZ_ConfirmLineInfo WHERE COLI_ID=? and COLI_servicetype = '2' ) "; $query = $this->HT->query($sql, $coli_id); return $query->result(); } //获取子订单状态 function getColdState($coldSn){ $sql = "select COLD_State from BIZ_ConfirmLineDetail where cold_sn = ?"; $query = $this->HT->query($sql, array($coldSn)); return $query->row(); } //更新子订单状态 function updateColdState($coldSn){ $sql = "update BIZ_ConfirmLineDetail set COLD_State = 42 where COLD_SN = ? "; $query = $this->HT->query($sql, array($coldSn)); } //修改 function update_biz_jol($where,$data){ return $this->INFO->where($where)->update("trainsystem", $data); } function delete_other(){ $sql = "delete from trainsystem where ts_id = '860'"; $query = $this->INFO->query($sql); } //添加澜海账单到汉特 function add_lanhai_bill($data){ //2.添加 $sql2 = "insert into BIZ_Platform_BookingInfo_XC ( XC_BillSN,XC_BillDate,XC_OrderID,XC_VEIName,XC_From,XC_BillType,XC_Cost,XC_Memo,XC_Creator,XC_CreateDate ) values ( '{$data->BillSn}', '{$data->BillDate}', '{$data->OrderId}', '{$data->VEIName}', '{$data->From}', '{$data->BillType}', '{$data->Cost}', '{$data->Memo}', '29', getdate() )"; $query = $this->HT->query($sql2); } //删除重复数据 function del_lanhai_bill($BillSn){ //1.删除数据 ,防止重复,根据 XC_BillSn $sql = "delete from BIZ_Platform_BookingInfo_XC where XC_BillSn = '{$BillSn}' and XC_VEIName='9082253783' "; $query=$this->HT->query($sql); } }