|
|
@ -3,10 +3,12 @@
|
|
|
|
if (!defined('BASEPATH'))
|
|
|
|
if (!defined('BASEPATH'))
|
|
|
|
exit('No direct script access allowed');
|
|
|
|
exit('No direct script access allowed');
|
|
|
|
|
|
|
|
|
|
|
|
class Tulanduo extends CI_Controller
|
|
|
|
class Tulanduo
|
|
|
|
{
|
|
|
|
{
|
|
|
|
/** Live */
|
|
|
|
protected $ci;
|
|
|
|
/**
|
|
|
|
|
|
|
|
|
|
|
|
/*! Live */
|
|
|
|
|
|
|
|
/*!
|
|
|
|
目的地
|
|
|
|
目的地
|
|
|
|
$this->userId = "1134";
|
|
|
|
$this->userId = "1134";
|
|
|
|
$this->key = "73d180d05d425fd192e1c5b3097e75ff";
|
|
|
|
$this->key = "73d180d05d425fd192e1c5b3097e75ff";
|
|
|
@ -14,29 +16,29 @@ class Tulanduo extends CI_Controller
|
|
|
|
$this->userId = "18";
|
|
|
|
$this->userId = "18";
|
|
|
|
$this->key = "d05c25e6e6c5d4898161e0aaf700d9c7";
|
|
|
|
$this->key = "d05c25e6e6c5d4898161e0aaf700d9c7";
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
// private $send_host = array(
|
|
|
|
|
|
|
|
// "30" => array(
|
|
|
|
|
|
|
|
// "userId" => 1134
|
|
|
|
|
|
|
|
// ,"key" => "73d180d05d425fd192e1c5b3097e75ff"
|
|
|
|
|
|
|
|
// )
|
|
|
|
|
|
|
|
// ,"1" => array(
|
|
|
|
|
|
|
|
// "userId" => 18
|
|
|
|
|
|
|
|
// ,"key" => "d05c25e6e6c5d4898161e0aaf700d9c7"
|
|
|
|
|
|
|
|
// )
|
|
|
|
|
|
|
|
// );
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* test
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
private $send_host = array(
|
|
|
|
private $send_host = array(
|
|
|
|
"30" => array(
|
|
|
|
"30" => array(
|
|
|
|
"userId" => 512
|
|
|
|
"userId" => 1134
|
|
|
|
,"key" => "4d9bde5ce79d6093e4a98bebbd3892c2"
|
|
|
|
,"key" => "73d180d05d425fd192e1c5b3097e75ff"
|
|
|
|
)
|
|
|
|
)
|
|
|
|
,"1" => array(
|
|
|
|
,"1" => array(
|
|
|
|
"userId" => 512
|
|
|
|
"userId" => 18
|
|
|
|
,"key" => "4d9bde5ce79d6093e4a98bebbd3892c2"
|
|
|
|
,"key" => "d05c25e6e6c5d4898161e0aaf700d9c7"
|
|
|
|
)
|
|
|
|
)
|
|
|
|
);
|
|
|
|
);
|
|
|
|
|
|
|
|
/*!
|
|
|
|
|
|
|
|
* test
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
// private $send_host = array(
|
|
|
|
|
|
|
|
// "30" => array(
|
|
|
|
|
|
|
|
// "userId" => 6035
|
|
|
|
|
|
|
|
// ,"key" => "3bd16efd5f4165378f144da1f4829996"
|
|
|
|
|
|
|
|
// )
|
|
|
|
|
|
|
|
// ,"1" => array(
|
|
|
|
|
|
|
|
// "userId" => 6035
|
|
|
|
|
|
|
|
// ,"key" => "3bd16efd5f4165378f144da1f4829996"
|
|
|
|
|
|
|
|
// )
|
|
|
|
|
|
|
|
// );
|
|
|
|
|
|
|
|
|
|
|
|
// userId key
|
|
|
|
// userId key
|
|
|
|
// 1343 2e47c3721e3ff6e816fe6b928d7acc7d
|
|
|
|
// 1343 2e47c3721e3ff6e816fe6b928d7acc7d
|
|
|
@ -44,28 +46,28 @@ class Tulanduo extends CI_Controller
|
|
|
|
// 30548 9db75a2dc17156eb122364295804b7a2
|
|
|
|
// 30548 9db75a2dc17156eb122364295804b7a2
|
|
|
|
|
|
|
|
|
|
|
|
// test
|
|
|
|
// test
|
|
|
|
public $list_url = "http://ltdj.ltsoftware.net:19919/action/api/searchRouteOrder/";
|
|
|
|
// public $list_url = "http://ltdj.ltsoftware.net:19919/action/api/searchRouteOrder/";
|
|
|
|
public $detail_url = "http://ltdj.ltsoftware.net:19919/action/api/detailRouteOrder/";
|
|
|
|
// public $detail_url = "http://ltdj.ltsoftware.net:19919/action/api/detailRouteOrder/";
|
|
|
|
public $neworder_url = "http://ltdj.ltsoftware.net:19919/action/api/addOrUpdateRouteOrder/";
|
|
|
|
// public $neworder_url = "http://ltdj.ltsoftware.net:19919/action/api/addOrUpdateRouteOrder/";
|
|
|
|
// Live
|
|
|
|
// Live
|
|
|
|
// public $list_url = "http://djb3c.ltsoftware.net:9921/action/api/searchRouteOrder/";
|
|
|
|
public $list_url = "http://djb3c.ltsoftware.net:9921/action/api/searchRouteOrder/";
|
|
|
|
// public $detail_url = "http://djb3c.ltsoftware.net:9921/action/api/detailRouteOrder/";
|
|
|
|
public $detail_url = "http://djb3c.ltsoftware.net:9921/action/api/detailRouteOrder/";
|
|
|
|
// public $neworder_url = "http://djb3c.ltsoftware.net:9921/action/api/addOrUpdateRouteOrder/";
|
|
|
|
public $neworder_url = "http://djb3c.ltsoftware.net:9921/action/api/addOrUpdateRouteOrder/";
|
|
|
|
|
|
|
|
|
|
|
|
public function __construct(){
|
|
|
|
public function __construct(){
|
|
|
|
parent::__construct();
|
|
|
|
$this->ci =& get_instance();
|
|
|
|
mb_regex_encoding("UTF-8");
|
|
|
|
mb_regex_encoding("UTF-8");
|
|
|
|
bcscale(4);
|
|
|
|
bcscale(4);
|
|
|
|
$this->load->helper('array');
|
|
|
|
$this->ci->load->helper('array');
|
|
|
|
$this->load->library('trippest');
|
|
|
|
$this->ci->load->library('trippest');
|
|
|
|
$this->load->model('Group_model');
|
|
|
|
$this->ci->load->model('Group_model');
|
|
|
|
$this->load->model('orders_model');
|
|
|
|
$this->ci->load->model('orders_model');
|
|
|
|
$this->load->model('BIZ_orders_model', 'BIZ_order');
|
|
|
|
$this->ci->load->model('BIZ_orders_model', 'BIZ_order');
|
|
|
|
$this->load->model('TuLanDuo_queryContentBuilder', 'tld_order');
|
|
|
|
$this->ci->load->model('TuLanDuo_queryContentBuilder', 'tld_order');
|
|
|
|
$this->load->model('TuLanDuo_addOrUpdateRouteOrderContentBuilder', 'tldOrderBuilder');
|
|
|
|
$this->ci->load->model('TuLanDuo_addOrUpdateRouteOrderContentBuilder', 'tldOrderBuilder');
|
|
|
|
// $this->output->enable_profiler(TRUE);
|
|
|
|
// $this->output->enable_profiler(TRUE);
|
|
|
|
|
|
|
|
|
|
|
|
$this->vendor_ids = $this->trippest->tulanduo_vei_sn;
|
|
|
|
$this->vendor_ids = array(1343,30548,29188);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public function order_push($order=null)
|
|
|
|
public function order_push($order=null)
|
|
|
@ -76,10 +78,12 @@ class Tulanduo extends CI_Controller
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// 商务
|
|
|
|
// 商务
|
|
|
|
if (strval($order->GRI_OrderType) === "227002") {
|
|
|
|
if (strval($order->GRI_OrderType) === "227002") {
|
|
|
|
|
|
|
|
return false; // for Trippest deploy
|
|
|
|
return $this->push_tour($order);
|
|
|
|
return $this->push_tour($order);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// 传统订单
|
|
|
|
// 传统订单
|
|
|
|
if (strval($order->GRI_OrderType) === "227001") {
|
|
|
|
if (strval($order->GRI_OrderType) === "227001") {
|
|
|
|
|
|
|
|
return false; // for Trippest deploy
|
|
|
|
return $this->push_tour($order);
|
|
|
|
return $this->push_tour($order);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -92,6 +96,7 @@ class Tulanduo extends CI_Controller
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public function push_tour($vas=null)
|
|
|
|
public function push_tour($vas=null)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
return false; // for Trippest deploy
|
|
|
|
$userId = $this->send_host["1"]["userId"];
|
|
|
|
$userId = $this->send_host["1"]["userId"];
|
|
|
|
$userKey = $this->send_host["1"]["key"];
|
|
|
|
$userKey = $this->send_host["1"]["key"];
|
|
|
|
$gri_sn = $vas->GRI_SN;
|
|
|
|
$gri_sn = $vas->GRI_SN;
|
|
|
@ -104,19 +109,22 @@ class Tulanduo extends CI_Controller
|
|
|
|
$change_info = $change_arr[0][0];
|
|
|
|
$change_info = $change_arr[0][0];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$change_info = str_replace("\n", "<br>", $change_info);
|
|
|
|
$change_info = str_replace("\n", "<br>", $change_info);
|
|
|
|
$grd_info = $this->Group_model->get_vendor_plan_info($gri_sn, $vei_sn);
|
|
|
|
$grd_info = $this->ci->Group_model->get_vendor_plan_info($gri_sn, $vei_sn);
|
|
|
|
|
|
|
|
if (empty($grd_info)) {
|
|
|
|
|
|
|
|
return false;
|
|
|
|
|
|
|
|
}
|
|
|
|
$all_day_no = array_map(function($ele){return $ele->GRD_DayNo;}, $grd_info);
|
|
|
|
$all_day_no = array_map(function($ele){return $ele->GRD_DayNo;}, $grd_info);
|
|
|
|
$routeType = "桂林海纳国旅"; // todo 线路类型
|
|
|
|
$arrange_info = $this->ci->Group_model->get_arrange_info($gri_sn, $vei_sn);
|
|
|
|
$arrange_info = $this->Group_model->get_arrange_info($gri_sn, $vei_sn);
|
|
|
|
$routeName = "中华游" . $arrange_info[0]->tocity . "线路"; // TODO 线路名称
|
|
|
|
$routeName = "中华游" . $arrange_info[0]->tocity . "线路"; // todo 线路名称
|
|
|
|
$routeType = "桂林海纳国旅"; // TODO 线路类型
|
|
|
|
$agcOrderNo = $vas->GRI_Name . "-" . $arrange_info[0]->citycode;
|
|
|
|
$agcOrderNo = $vas->GRI_Name . "-" . $arrange_info[0]->citycode;
|
|
|
|
$agcOrderNo .= "(" . $vas->operator . ")";
|
|
|
|
$agcOrderNo .= "(" . $vas->operator . ")";
|
|
|
|
$first_date = $grd_info[0]->day_no_raw;
|
|
|
|
$first_date = $grd_info[0]->day_no_raw;
|
|
|
|
$last_date = count($grd_info)-1;
|
|
|
|
$last_date = count($grd_info)-1;
|
|
|
|
$end_date = $grd_info[$last_date]->day_no_raw;
|
|
|
|
$end_date = $grd_info[$last_date]->day_no_raw;
|
|
|
|
$request_info = $this->Group_model->get_plan_request($gri_sn);
|
|
|
|
$request_info = $this->ci->Group_model->get_plan_request($gri_sn);
|
|
|
|
$order_type = 1;
|
|
|
|
$order_type = 1;
|
|
|
|
$this->tldOrderBuilder->setUserId($userId)
|
|
|
|
$this->ci->tldOrderBuilder->setUserId($userId)
|
|
|
|
->setKey($userKey)
|
|
|
|
->setKey($userKey)
|
|
|
|
->setOrderType($order_type)
|
|
|
|
->setOrderType($order_type)
|
|
|
|
->setRouteName($routeName)
|
|
|
|
->setRouteName($routeName)
|
|
|
@ -127,33 +135,34 @@ class Tulanduo extends CI_Controller
|
|
|
|
->setDestination($arrange_info[0]->tocity)
|
|
|
|
->setDestination($arrange_info[0]->tocity)
|
|
|
|
->setTravelDate($first_date)
|
|
|
|
->setTravelDate($first_date)
|
|
|
|
->setLeavedDate($end_date)
|
|
|
|
->setLeavedDate($end_date)
|
|
|
|
// ->setOrderRemark($order_remark) // 订单备注
|
|
|
|
// ->setOrderRemark($order_remark) // 订单备注 TODO
|
|
|
|
->setRoomStandard($request_info->GCI_HotelRequest) // 住房标准
|
|
|
|
->setRoomStandard($request_info->GCI_HotelRequest) // 住房标准
|
|
|
|
->setRouteStandard($request_info->GCI_Request) // 行程服务标准
|
|
|
|
->setRouteStandard($request_info->GCI_Request) // 行程服务标准
|
|
|
|
;
|
|
|
|
;
|
|
|
|
$guestlist = $this->orders_model->get_customer_list($gri_sn);
|
|
|
|
$guestlist = $this->ci->orders_model->get_customer_list($gri_sn);
|
|
|
|
foreach ($guestlist as $key => $vg) {
|
|
|
|
foreach ($guestlist as $key => $vg) {
|
|
|
|
$this->tldOrderBuilder->setCustomersName($key, $vg->MemberName )
|
|
|
|
$this->ci->tldOrderBuilder->setCustomersName($key, $vg->MemberName )
|
|
|
|
->setCustomersPeopleType($key, (calc_age_type($vg->BirthDay)==1 ? "成人" : "儿童"))
|
|
|
|
->setCustomersPeopleType($key, (calc_age_type($vg->BirthDay)==1 ? "成人" : "儿童"))
|
|
|
|
->setCustomersDocumentType($key, "护照") // Passport No.
|
|
|
|
->setCustomersDocumentType($key, "护照") // Passport No.
|
|
|
|
->setCustomersDocumentNo($key, $vg->PassportNo)
|
|
|
|
->setCustomersDocumentNo($key, $vg->PassportNo)
|
|
|
|
->setCustomersOtherInfo($key, $vg->Country);
|
|
|
|
->setCustomersOtherInfo($key, $vg->Country);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$travel_fee = 0;
|
|
|
|
// $travel_fee = 0;
|
|
|
|
foreach ($arrange_info as $kaci => $vaci) {
|
|
|
|
// foreach ($arrange_info as $kaci => $vaci) {
|
|
|
|
$travel_fee = bcadd($travel_fee, $vaci->ACI_Amount);
|
|
|
|
// $travel_fee = bcadd($travel_fee, $vaci->ACI_Amount);
|
|
|
|
}
|
|
|
|
// }
|
|
|
|
$this->tldOrderBuilder->setTravelFeesType(0, "Per Group")
|
|
|
|
// // TODO 是否需要travelFee
|
|
|
|
->setTravelFeesMoney(0, $travel_fee)
|
|
|
|
// $this->ci->tldOrderBuilder->setTravelFeesType(0, "Per Group")
|
|
|
|
->setTravelFeesNum(0, 1)
|
|
|
|
// ->setTravelFeesMoney(0, $travel_fee)
|
|
|
|
->setTravelFeesUnit(0, 1)
|
|
|
|
// ->setTravelFeesNum(0, 1)
|
|
|
|
->setTravelFeesSumMoney(0, $travel_fee)
|
|
|
|
// ->setTravelFeesUnit(0, 1)
|
|
|
|
->setTravelFeesRemark(0, "");
|
|
|
|
// ->setTravelFeesSumMoney(0, $travel_fee)
|
|
|
|
// 补全空的日期,行车为空
|
|
|
|
// ->setTravelFeesRemark(0, "");
|
|
|
|
|
|
|
|
// 补全空的日期,行程为空
|
|
|
|
$date1 = new DateTime($first_date);
|
|
|
|
$date1 = new DateTime($first_date);
|
|
|
|
$date_end = new DateTime($end_date);
|
|
|
|
$date_end = new DateTime($end_date);
|
|
|
|
$date_diff = $date_end->diff($date1);
|
|
|
|
$date_diff = $date_end->diff($date1);
|
|
|
|
$d = ($date_diff->format("%d"));
|
|
|
|
$d = ($date_diff->format("%a"));
|
|
|
|
$all_date = array();
|
|
|
|
$all_date = array();
|
|
|
|
for ($j=0; $j < ($d+1); $j++) {
|
|
|
|
for ($j=0; $j < ($d+1); $j++) {
|
|
|
|
$all_date[] = date('Y-m-d', strtotime("+$j day", strtotime($first_date)));
|
|
|
|
$all_date[] = date('Y-m-d', strtotime("+$j day", strtotime($first_date)));
|
|
|
@ -161,7 +170,7 @@ class Tulanduo extends CI_Controller
|
|
|
|
$real_date = array_map(function ($ele){return $ele->day_no_raw;}, $grd_info);
|
|
|
|
$real_date = array_map(function ($ele){return $ele->day_no_raw;}, $grd_info);
|
|
|
|
foreach ($all_date as $kd => $vd) {
|
|
|
|
foreach ($all_date as $kd => $vd) {
|
|
|
|
if ( ! in_array($vd, $real_date)) {
|
|
|
|
if ( ! in_array($vd, $real_date)) {
|
|
|
|
$this->tldOrderBuilder->setScheduleDetailsTitle($kd, "无")
|
|
|
|
$this->ci->tldOrderBuilder->setScheduleDetailsTitle($kd, "无")
|
|
|
|
->setScheduleDetailsContent($kd, "无")
|
|
|
|
->setScheduleDetailsContent($kd, "无")
|
|
|
|
->setScheduleDetailsAccommodation($kd, "")
|
|
|
|
->setScheduleDetailsAccommodation($kd, "")
|
|
|
|
// ->setScheduleDetailsTraffic($kd, ($vso->PAG_Vehicle>60001 ? 1 : 0))
|
|
|
|
// ->setScheduleDetailsTraffic($kd, ($vso->PAG_Vehicle>60001 ? 1 : 0))
|
|
|
@ -173,7 +182,7 @@ class Tulanduo extends CI_Controller
|
|
|
|
}
|
|
|
|
}
|
|
|
|
foreach ($grd_info as $kgrd => $vgrd) {
|
|
|
|
foreach ($grd_info as $kgrd => $vgrd) {
|
|
|
|
if ($vd==$vgrd->day_no_raw) {
|
|
|
|
if ($vd==$vgrd->day_no_raw) {
|
|
|
|
$this->tldOrderBuilder->setScheduleDetailsTitle($kd, $vgrd->GRD_OrderDate)
|
|
|
|
$this->ci->tldOrderBuilder->setScheduleDetailsTitle($kd, $vgrd->GRD_OrderDate)
|
|
|
|
->setScheduleDetailsContent($kd, $vgrd->GRD_Landscape)
|
|
|
|
->setScheduleDetailsContent($kd, $vgrd->GRD_Landscape)
|
|
|
|
->setScheduleDetailsAccommodation($kd, $vgrd->GRD_Hotel)
|
|
|
|
->setScheduleDetailsAccommodation($kd, $vgrd->GRD_Hotel)
|
|
|
|
->setScheduleDetailsTraffic($kd, ($vgrd->GRD_Traffic))
|
|
|
|
->setScheduleDetailsTraffic($kd, ($vgrd->GRD_Traffic))
|
|
|
@ -184,55 +193,39 @@ class Tulanduo extends CI_Controller
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// 查询是否变更
|
|
|
|
// 查询是否变更 TODO deprecated
|
|
|
|
$sync_orderstate = 10;
|
|
|
|
$sync_orderstate = 10;
|
|
|
|
$vps_sn = 0;
|
|
|
|
$vps_sn = 0;
|
|
|
|
$vendor_orderid = 0;
|
|
|
|
$vendor_orderid = 0;
|
|
|
|
$plan_detail_page_url = "http://p.mycht.cn/Cooperate/Plan_Detail.aspx?GSN=" . $gri_sn;
|
|
|
|
$this->ci->tldOrderBuilder->clearModifyLogInfo();
|
|
|
|
$plan_detail_page = "<br>计划下载:<a href='$plan_detail_page_url'>$plan_detail_page_url</a><br>";
|
|
|
|
// $resp = $this->excute_curl($this->neworder_url, $this->ci->tldOrderBuilder);
|
|
|
|
if (intval($is_send_vary)===1) {
|
|
|
|
$resp = '{"status":1,"errMsg":"","responseData":{"orderId":' . rand(1000,9999) . '}}'; // test
|
|
|
|
$vps = $this->Group_model->get_sync_info($vas_sn);
|
|
|
|
echo $this->ci->tldOrderBuilder->getBizContent();
|
|
|
|
if ( ! empty($vps)) {
|
|
|
|
log_message('error',$resp);
|
|
|
|
$vps_sn = $vps->VPS_SN;
|
|
|
|
|
|
|
|
$vendor_orderid = $vps->VPS_externalId;
|
|
|
|
|
|
|
|
$sync_orderstate = 11;
|
|
|
|
|
|
|
|
$modifyLogInfo = "$plan_detail_page<br>$change_info<br>";
|
|
|
|
|
|
|
|
$this->tldOrderBuilder->setOrderId($vendor_orderid)
|
|
|
|
|
|
|
|
->setModifyLogInfo($modifyLogInfo)
|
|
|
|
|
|
|
|
;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
$modifyLogInfo = $plan_detail_page;
|
|
|
|
|
|
|
|
$this->tldOrderBuilder->clearModifyLogInfo();
|
|
|
|
|
|
|
|
$this->tldOrderBuilder->setModifyLogInfo($modifyLogInfo)
|
|
|
|
|
|
|
|
;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
$resp = $this->excute_curl($this->neworder_url, $this->tldOrderBuilder);
|
|
|
|
|
|
|
|
// $resp = '{"status":1,"errMsg":"","responseData":{"orderId":' . rand(1000,9999) . '}}'; // test
|
|
|
|
|
|
|
|
$response = json_decode($resp);
|
|
|
|
$response = json_decode($resp);
|
|
|
|
if ($response->status == 1) {
|
|
|
|
if ($response->status == 1) {
|
|
|
|
/** VendorPlanSync */
|
|
|
|
/** VendorPlanSync */
|
|
|
|
$sync_ret = array(
|
|
|
|
$sync_ret = array(
|
|
|
|
"VPS_VAS_SN" => $vas_sn
|
|
|
|
"VPS_VAS_SN" => $vas_sn
|
|
|
|
,"VPS_GRI_SN" => $gri_sn
|
|
|
|
,"VPS_GRI_SN" => $gri_sn
|
|
|
|
,"VPS_VEI_SN" => $vei_sn
|
|
|
|
,"VPS_VEI_SN" => $vei_sn
|
|
|
|
,"VPS_startDate" => $first_date
|
|
|
|
,"VPS_startDate" => $first_date
|
|
|
|
,"VPS_endDate" => $end_date
|
|
|
|
,"VPS_endDate" => $end_date
|
|
|
|
,"VPS_sendHost" => $userId
|
|
|
|
,"VPS_sendHost" => $userId
|
|
|
|
,"VPS_externalId" => $response->responseData->orderId
|
|
|
|
,"VPS_externalId" => $response->responseData->orderId
|
|
|
|
,"VPS_externalorderType" => $order_type
|
|
|
|
,"VPS_externalorderType" => $order_type
|
|
|
|
,"VPS_externalorderState" => $sync_orderstate
|
|
|
|
,"VPS_externalorderState" => $sync_orderstate
|
|
|
|
,"VPS_sendTime" => date('Y-m-d H:i:s')
|
|
|
|
,"VPS_sendTime" => date('Y-m-d H:i:s')
|
|
|
|
);
|
|
|
|
);
|
|
|
|
if ($vps_sn === 0) {
|
|
|
|
if ($vps_sn === 0) {
|
|
|
|
$sync_id = $this->Group_model->insert_VendorPlanSync($sync_ret);
|
|
|
|
$sync_id = $this->ci->Group_model->insert_VendorPlanSync($sync_ret);
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
$update = $this->Group_model->update_VendorPlanSync($vps_sn, $sync_ret);
|
|
|
|
$update = $this->ci->Group_model->update_VendorPlanSync($vps_sn, $sync_ret);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/** VendorArrangeState VAS_IsReceive */
|
|
|
|
/** VendorArrangeState VAS_IsReceive */
|
|
|
|
$this->Group_model->set_plan_received($vas_sn);
|
|
|
|
$this->ci->Group_model->set_plan_received($vas_sn);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// return $this->tldOrderBuilder->getBizContent() . "[Tulanduo>push_tour] Done. ";
|
|
|
|
// return $this->ci->tldOrderBuilder->getBizContent() . "[Tulanduo>push_tour] Done. ";
|
|
|
|
return "[Tulanduo>push_tour] Done. ";
|
|
|
|
return "[Tulanduo>push_tour] Done. ";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -243,7 +236,6 @@ class Tulanduo extends CI_Controller
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public function push_trippest($vas=null)
|
|
|
|
public function push_trippest($vas=null)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
// return "[Tulanduo>push_trippest] Done. "; // test
|
|
|
|
|
|
|
|
/** 目的地 */
|
|
|
|
/** 目的地 */
|
|
|
|
$userId = $this->send_host["30"]["userId"];
|
|
|
|
$userId = $this->send_host["30"]["userId"];
|
|
|
|
$userKey = $this->send_host["30"]["key"];
|
|
|
|
$userKey = $this->send_host["30"]["key"];
|
|
|
@ -259,45 +251,88 @@ class Tulanduo extends CI_Controller
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$change_info = str_replace("\n", "<br>", $change_info);
|
|
|
|
$change_info = str_replace("\n", "<br>", $change_info);
|
|
|
|
$vei_sn_str = implode(",", $this->vendor_ids);
|
|
|
|
$vei_sn_str = implode(",", $this->vendor_ids);
|
|
|
|
$orderinfo = $this->BIZ_order->get_orderinfo_detail($gri_sn, $vei_sn_str);
|
|
|
|
$orderinfo = $this->ci->BIZ_order->get_orderinfo_detail($gri_sn, $vei_sn_str);
|
|
|
|
if(empty($orderinfo)) {return "[Tulanduo>push_trippest] Not found order detail. ";}
|
|
|
|
if(empty($orderinfo)) {return "[Tulanduo>push_trippest] Not found order detail. ";}
|
|
|
|
$COLI_ID = $orderinfo[0]->COLI_ID;
|
|
|
|
$COLI_ID = $orderinfo[0]->COLI_ID;
|
|
|
|
$set_pvt = strval($orderinfo[0]->COLI_PVT);
|
|
|
|
$set_pvt = strval($orderinfo[0]->is_pvt);
|
|
|
|
$travelFees = $this->BIZ_order->get_paymentDetails($COLI_ID);
|
|
|
|
// 增加收款方参数, 增加代收款项
|
|
|
|
// 按产品拆分 todo:按订单类型拆分? 单团/拼团
|
|
|
|
$vei_with_haina = $GLOBALS['__HAINA_VEI__'] . "," . $vei_sn_str;
|
|
|
|
|
|
|
|
$all_payment = $this->ci->BIZ_order->get_paymentDetails($COLI_ID, $vei_with_haina);
|
|
|
|
|
|
|
|
$paid_to_trippest = array();
|
|
|
|
|
|
|
|
$pay_to_vendor = array();
|
|
|
|
|
|
|
|
foreach ($all_payment as $kall => $vall) {
|
|
|
|
|
|
|
|
if (in_array($vall->payment_vei, array($GLOBALS['__HAINA_VEI__'], 0)) ) {
|
|
|
|
|
|
|
|
$paid_to_trippest[] = $vall;
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
$pay_to_vendor[] = $vall;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// 收款合并为一条
|
|
|
|
|
|
|
|
if ( ! empty($paid_to_trippest)) {
|
|
|
|
|
|
|
|
$travel_fees = $paid_to_trippest[0];
|
|
|
|
|
|
|
|
$travel_fees->SUM_SSJE = 0;
|
|
|
|
|
|
|
|
foreach ($paid_to_trippest as $ktf => $vtf) {
|
|
|
|
|
|
|
|
$travel_fees->SUM_SSJE = bcadd($travel_fees->SUM_SSJE, $vtf->GAI_SSJE);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// 代收合并为一条
|
|
|
|
|
|
|
|
if ( ! empty($pay_to_vendor)) {
|
|
|
|
|
|
|
|
$replace_collections = $pay_to_vendor[0];
|
|
|
|
|
|
|
|
$replace_collections->SUM_SSJE = 0;
|
|
|
|
|
|
|
|
$replace_collections->ALL_Memo = "";
|
|
|
|
|
|
|
|
foreach ($pay_to_vendor as $ktv => $vtv) {
|
|
|
|
|
|
|
|
$replace_collections->SUM_SSJE = bcadd($replace_collections->SUM_SSJE, $vtv->GAI_SSJE);
|
|
|
|
|
|
|
|
$replace_collections->ALL_Memo .= $vtv->ALL_Memo;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// 按产品拆分 按订单类型拆分? 单团/拼团; 未设置则按产品类型:接送
|
|
|
|
$fill_order = array();
|
|
|
|
$fill_order = array();
|
|
|
|
$processed_date = array();
|
|
|
|
$processed_date = array();
|
|
|
|
$processed_cold = array();
|
|
|
|
$processed_cold = array();
|
|
|
|
foreach ($orderinfo as $ko => $cold) {
|
|
|
|
foreach ($orderinfo as $ko => $cold) {
|
|
|
|
if ( ! in_array($cold->COLD_SN, $processed_cold) && $cold->pag_code != '') {
|
|
|
|
if ( ! in_array($cold->COLD_SN, $processed_cold) && $cold->pag_code != '') {
|
|
|
|
$processed_cold[] = $cold->COLD_SN;
|
|
|
|
$processed_cold[] = $cold->COLD_SN;
|
|
|
|
$all_package = $this->trippest->tour_code($cold->pag_code);
|
|
|
|
$all_package = $this->ci->trippest->tour_code($cold->pag_code);
|
|
|
|
$pag_info = $this->BIZ_order->get_packageDetails(my_implode("'",",",$all_package));
|
|
|
|
$pag_info = $this->ci->BIZ_order->get_packageDetails(my_implode("'",",",$all_package));
|
|
|
|
if ($set_pvt==='1') {
|
|
|
|
if ($set_pvt==='1') {
|
|
|
|
$fill_order[0]["cold"][] = $cold;
|
|
|
|
$fill_order[0]["cold"][] = $cold;
|
|
|
|
$fill_order[0]["package_info"] = $pag_info; // todo ??? 这里是否丢失了产品
|
|
|
|
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
$fill_order[$cold->pag_code]["cold"][] = $cold;
|
|
|
|
$fill_order[$cold->pag_code]["cold"][] = $cold;
|
|
|
|
$fill_order[$cold->pag_code]["package_info"] = $pag_info;
|
|
|
|
$fill_order[$cold->pag_code]["package_info"] = $pag_info;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
// 多产品PVT的合并,避免丢失产品
|
|
|
|
|
|
|
|
$pvt_pagcode = array();
|
|
|
|
|
|
|
|
if ($set_pvt==='1') {
|
|
|
|
|
|
|
|
foreach ($fill_order[0]['cold'] as $kcd => $vcd) {
|
|
|
|
|
|
|
|
$multi_package = $this->ci->trippest->tour_code($vcd->pag_code);
|
|
|
|
|
|
|
|
$pvt_pagcode = array_merge($pvt_pagcode, $multi_package);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
$fill_order[0]["package_info"] = $this->ci->BIZ_order->get_packageDetails(my_implode("'",",",$pvt_pagcode));
|
|
|
|
|
|
|
|
}
|
|
|
|
// $fill_order = array_values($fill_order);
|
|
|
|
// $fill_order = array_values($fill_order);
|
|
|
|
$i=0;
|
|
|
|
$i=0;
|
|
|
|
$take_apart = count($fill_order)>1 ? true : false;
|
|
|
|
$take_apart = count($fill_order)>1 ? true : false;
|
|
|
|
|
|
|
|
$coli_sn = 0;
|
|
|
|
foreach ($fill_order as $kf => $vf) {
|
|
|
|
foreach ($fill_order as $kf => $vf) {
|
|
|
|
$i++;
|
|
|
|
$i++;
|
|
|
|
$this->tldOrderBuilder->resetBizContent();
|
|
|
|
$coli_sn = $vf['cold'][0]->COLI_SN;
|
|
|
|
$order_type = intval($vf["package_info"][0]->PAG_ExtendType)===39009 ? 1 : 2;
|
|
|
|
$this->ci->tldOrderBuilder->resetBizContent();
|
|
|
|
|
|
|
|
$order_type = $set_pvt;
|
|
|
|
|
|
|
|
if ($set_pvt==='0') {
|
|
|
|
|
|
|
|
$code_type_arr = array_map(function($pag) { return intval($pag->PAG_ExtendType); }, $vf["package_info"]);
|
|
|
|
|
|
|
|
$order_type = in_array(39009, $code_type_arr) ? 1 : 2;
|
|
|
|
|
|
|
|
}
|
|
|
|
$last_code = count($vf["package_info"])-1;
|
|
|
|
$last_code = count($vf["package_info"])-1;
|
|
|
|
$last_date = count($vf["cold"])-1;
|
|
|
|
$last_date = count($vf["cold"])-1;
|
|
|
|
$tour_code = "";
|
|
|
|
$tour_code = mb_strtoupper($vf["cold"][0]->pag_code);
|
|
|
|
$routeName = $vf["package_info"][0]->PAG2_Name . "(" . mb_strtoupper($vf["cold"][0]->pag_code) . ")";
|
|
|
|
$routeName = $vf["package_info"][0]->PAG2_Name . "(" . $tour_code . ")";
|
|
|
|
$first_date = strstr($vf["cold"][0]->COLD_StartDate, " ", true);
|
|
|
|
$first_date = strstr($vf["cold"][0]->COLD_StartDate, " ", true);
|
|
|
|
$end_date = strstr($vf["cold"][$last_date]->COLD_EndDate, " ", true);
|
|
|
|
$end_date = strstr($vf["cold"][$last_date]->COLD_EndDate, " ", true);
|
|
|
|
if (isset($this->trippest->special_route[$vf["cold"][0]->pag_code])) {
|
|
|
|
if (isset($this->ci->trippest->special_route[$vf["cold"][0]->pag_code])) {
|
|
|
|
$routeName = $this->trippest->special_route[$vf["cold"][0]->pag_code]["name"];
|
|
|
|
$routeName = $this->ci->trippest->special_route[$vf["cold"][0]->pag_code]["name"];
|
|
|
|
$extra_day = $this->trippest->special_route[$vf["cold"][0]->pag_code]["day"]-1;
|
|
|
|
$extra_day = $this->ci->trippest->special_route[$vf["cold"][0]->pag_code]["day"]-1;
|
|
|
|
$end_date = date("Y-m-d", strtotime("+$extra_day day", strtotime($vf["cold"][0]->COLD_StartDate)));
|
|
|
|
$end_date = date("Y-m-d", strtotime("+$extra_day day", strtotime($vf["cold"][0]->COLD_StartDate)));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$agcOrderNo = $vf["cold"][0]->COLI_GroupCode . "-" . $vf["package_info"][0]->city_code;
|
|
|
|
$agcOrderNo = $vf["cold"][0]->COLI_GroupCode . "-" . $vf["package_info"][0]->city_code;
|
|
|
@ -307,12 +342,14 @@ class Tulanduo extends CI_Controller
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$agcOrderNo .= "(" . $vf["cold"][0]->operator . ")";
|
|
|
|
$agcOrderNo .= "(" . $vf["cold"][0]->operator . ")";
|
|
|
|
$order_remark = "";
|
|
|
|
$order_remark = "";
|
|
|
|
if (trim($vf['cold'][0]->GUT_TEL) != "") {
|
|
|
|
if ($i===1) { // 只写一次备注.备注中可能包含代收信息,避免多次收取
|
|
|
|
$order_remark = "预定人电话:" . trim($vf["cold"][0]->GUT_TEL);
|
|
|
|
$order_remark_arr = array_filter(array_map( function($element){return $element->COLD_vendorMemo;}, $vf["cold"] )) ;
|
|
|
|
|
|
|
|
$order_remark = empty($order_remark_arr) ? "" : implode("\n", $order_remark_arr) ;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
$COLD_SN_str = implode(',', array_map( function($element){return $element->COLD_SN;}, $vf["cold"] )) ;
|
|
|
|
$COLD_SN_str = implode(',', array_map( function($element){return $element->COLD_SN;}, $vf["cold"] )) ;
|
|
|
|
$guestlist = $this->BIZ_order->get_guestlist($COLD_SN_str);
|
|
|
|
$guestlist = $this->ci->BIZ_order->get_guestlist($COLD_SN_str);
|
|
|
|
$this->tldOrderBuilder->setUserId($userId)
|
|
|
|
$this->ci->tldOrderBuilder->setUserId($userId)
|
|
|
|
->setKey($userKey)
|
|
|
|
->setKey($userKey)
|
|
|
|
->setOrderType($order_type)
|
|
|
|
->setOrderType($order_type)
|
|
|
|
->setRouteName($routeName)
|
|
|
|
->setRouteName($routeName)
|
|
|
@ -324,19 +361,27 @@ class Tulanduo extends CI_Controller
|
|
|
|
->setTravelDate(strstr($vf["cold"][0]->COLD_StartDate, " ", true))
|
|
|
|
->setTravelDate(strstr($vf["cold"][0]->COLD_StartDate, " ", true))
|
|
|
|
->setLeavedDate($end_date)
|
|
|
|
->setLeavedDate($end_date)
|
|
|
|
->setOrderRemark($order_remark)
|
|
|
|
->setOrderRemark($order_remark)
|
|
|
|
// ->setOrderRemark(trim($orderinfo[0]->COLI_Memo . "\r\n" . $orderinfo[0]->COLD_Memo . "\r\n" . $orderinfo[0]->COLD_MemoText))
|
|
|
|
|
|
|
|
// todo 抵离交通
|
|
|
|
// todo 抵离交通
|
|
|
|
// ->setToTraffic($toTraffic)
|
|
|
|
// ->setToTraffic($toTraffic)
|
|
|
|
// ->setBackTraffic($backTraffic)
|
|
|
|
// ->setBackTraffic($backTraffic)
|
|
|
|
;
|
|
|
|
;
|
|
|
|
|
|
|
|
// 客人列表
|
|
|
|
foreach ($guestlist as $key => $vg) {
|
|
|
|
foreach ($guestlist as $key => $vg) {
|
|
|
|
$this->tldOrderBuilder->setCustomersName($key, $vg->BPE_FirstName . " " . $vg->BPE_LastName )
|
|
|
|
$this_otherinfo = "";
|
|
|
|
|
|
|
|
$this->ci->tldOrderBuilder->setCustomersName($key, $vg->BPE_FirstName . " " . $vg->BPE_LastName )
|
|
|
|
->setCustomersPeopleType($key, ($vg->BPE_GuestType==1 ? "成人" : "儿童"))
|
|
|
|
->setCustomersPeopleType($key, ($vg->BPE_GuestType==1 ? "成人" : "儿童"))
|
|
|
|
->setCustomersDocumentType($key, "护照") // Passport No.
|
|
|
|
->setCustomersDocumentType($key, "护照") // Passport No.
|
|
|
|
->setCustomersDocumentNo($key, $vg->BPE_Passport)
|
|
|
|
->setCustomersDocumentNo($key, $vg->BPE_Passport)
|
|
|
|
->setCustomersOtherInfo($key, $this->BIZ_order->GetNationalityName($vg->BPE_Nationality));
|
|
|
|
;
|
|
|
|
|
|
|
|
$this_otherinfo .= $this->ci->BIZ_order->GetNationalityName($vg->BPE_Nationality);
|
|
|
|
|
|
|
|
if (trim($vf['cold'][0]->GUT_TEL) != "" && $key===0) {
|
|
|
|
|
|
|
|
$this_otherinfo .= "; 电话:";
|
|
|
|
|
|
|
|
$this_otherinfo .= trim($vf["cold"][0]->GUT_POST)!=="" ? "+".trim($vf["cold"][0]->GUT_POST) : "" ;
|
|
|
|
|
|
|
|
$this_otherinfo .= " " . trim($vf["cold"][0]->GUT_TEL);
|
|
|
|
|
|
|
|
$this->ci->tldOrderBuilder->setCustomersOtherInfo($key, $this_otherinfo);
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$scheduleDetails = $this->BIZ_order->get_scheduleDetails($COLD_SN_str);
|
|
|
|
$scheduleDetails = $this->ci->BIZ_order->get_scheduleDetails($COLD_SN_str);
|
|
|
|
$schedule_obj = array();
|
|
|
|
$schedule_obj = array();
|
|
|
|
foreach ($scheduleDetails as $ks => $vs) {
|
|
|
|
foreach ($scheduleDetails as $ks => $vs) {
|
|
|
|
$schedule_obj[substr($vs->COLD_StartDate, 0, 10)]['date'] = substr($vs->COLD_StartDate, 0, 10);
|
|
|
|
$schedule_obj[substr($vs->COLD_StartDate, 0, 10)]['date'] = substr($vs->COLD_StartDate, 0, 10);
|
|
|
@ -359,10 +404,12 @@ class Tulanduo extends CI_Controller
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$this_content .= substr($this_guest, 1);
|
|
|
|
$this_content .= substr($this_guest, 1);
|
|
|
|
// 酒店
|
|
|
|
// 酒店
|
|
|
|
$hotels = $this->BIZ_order->get_package_order($vs->COLD_SN);
|
|
|
|
$hotels = $this->ci->BIZ_order->get_package_order($vs->COLD_SN);
|
|
|
|
if (trim($hotels[0]->POI_HotelAddress) != "") {
|
|
|
|
if (trim($hotels[0]->POI_HotelAddress) != "") {
|
|
|
|
$this_content .= "\r\n酒店地址:" . $hotels[0]->POI_HotelAddress;
|
|
|
|
$this_content .= "\r\n酒店地址:" . $hotels[0]->POI_HotelAddress;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
$this_content .= trim($hotels[0]->POI_HotelCheckInName)!=="" ? "\r\n入住人:".$hotels[0]->POI_HotelCheckInName : "";
|
|
|
|
|
|
|
|
$this_content .= trim($hotels[0]->POI_HotelCheckIn)!=="" ? "\r\n入住日期:".$hotels[0]->POI_HotelCheckIn : "";
|
|
|
|
if ($hotels[0]->POI_FlightsNo) {
|
|
|
|
if ($hotels[0]->POI_FlightsNo) {
|
|
|
|
$this_content .= "\r\n航/车次:" . $hotels[0]->POI_FlightsNo;
|
|
|
|
$this_content .= "\r\n航/车次:" . $hotels[0]->POI_FlightsNo;
|
|
|
|
if ($hotels[0]->POI_FromCity || $hotels[0]->POI_ToCity) {
|
|
|
|
if ($hotels[0]->POI_FromCity || $hotels[0]->POI_ToCity) {
|
|
|
@ -379,16 +426,16 @@ class Tulanduo extends CI_Controller
|
|
|
|
$schedule_obj[substr($vs->COLD_StartDate, 0, 10)]['accommodation'] = $hotels[0]->POI_Hotel;
|
|
|
|
$schedule_obj[substr($vs->COLD_StartDate, 0, 10)]['accommodation'] = $hotels[0]->POI_Hotel;
|
|
|
|
// 补充行程
|
|
|
|
// 补充行程
|
|
|
|
$fill_date = array();
|
|
|
|
$fill_date = array();
|
|
|
|
if (isset($this->trippest->special_route[$vs->PAG_Code])) {
|
|
|
|
if (isset($this->ci->trippest->special_route[$vs->PAG_Code])) {
|
|
|
|
for ($j=0; $j < $this->trippest->special_route[$vs->PAG_Code]['day']; $j++) {
|
|
|
|
for ($j=0; $j < $this->ci->trippest->special_route[$vs->PAG_Code]['day']; $j++) {
|
|
|
|
$e_day = date("Y-m-d", strtotime("+$j day", strtotime($vs->COLD_StartDate)));
|
|
|
|
$e_day = date("Y-m-d", strtotime("+$j day", strtotime($vs->COLD_StartDate)));
|
|
|
|
if ( ! isset($schedule_obj[$e_day]['content'])) {
|
|
|
|
if ( ! isset($schedule_obj[$e_day]['content'])) {
|
|
|
|
$schedule_obj[$e_day]['content'] = "";
|
|
|
|
$schedule_obj[$e_day]['content'] = "";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
$schedule_obj[$e_day]['date'] = $e_day;
|
|
|
|
$schedule_obj[$e_day]['date'] = $e_day;
|
|
|
|
$fill_date[] = $e_day;
|
|
|
|
$fill_date[] = $e_day;
|
|
|
|
$schedule_obj[$e_day]['code'] = $this->trippest->special_route[$vs->PAG_Code]['code'][$j];
|
|
|
|
$schedule_obj[$e_day]['code'] = $this->ci->trippest->special_route[$vs->PAG_Code]['code'][$j];
|
|
|
|
$pag_detail = $this->BIZ_order->get_packageDetails("'" . $schedule_obj[$e_day]['code'] . "'");
|
|
|
|
$pag_detail = $this->ci->BIZ_order->get_packageDetails("'" . $schedule_obj[$e_day]['code'] . "'");
|
|
|
|
$schedule_obj[$e_day]['title'] = $pag_detail[0]->PAG2_Name;
|
|
|
|
$schedule_obj[$e_day]['title'] = $pag_detail[0]->PAG2_Name;
|
|
|
|
$schedule_obj[$e_day]['lunch'] = (in_array($pag_detail[0]->PAG_Meal, array('61002', '61004')) ? 1 : 0);
|
|
|
|
$schedule_obj[$e_day]['lunch'] = (in_array($pag_detail[0]->PAG_Meal, array('61002', '61004')) ? 1 : 0);
|
|
|
|
$schedule_obj[$e_day]['dinner'] = (in_array($pag_detail[0]->PAG_Meal, array('61003', '61004')) ? 1 : 0);
|
|
|
|
$schedule_obj[$e_day]['dinner'] = (in_array($pag_detail[0]->PAG_Meal, array('61003', '61004')) ? 1 : 0);
|
|
|
@ -424,7 +471,7 @@ class Tulanduo extends CI_Controller
|
|
|
|
$date1 = new DateTime($first_date);
|
|
|
|
$date1 = new DateTime($first_date);
|
|
|
|
$date_end = new DateTime($end_date);
|
|
|
|
$date_end = new DateTime($end_date);
|
|
|
|
$date_diff = $date_end->diff($date1);
|
|
|
|
$date_diff = $date_end->diff($date1);
|
|
|
|
$d = ($date_diff->format("%d"));
|
|
|
|
$d = ($date_diff->format("%a"));
|
|
|
|
$all_date = array();
|
|
|
|
$all_date = array();
|
|
|
|
for ($j=0; $j < ($d+1); $j++) {
|
|
|
|
for ($j=0; $j < ($d+1); $j++) {
|
|
|
|
$all_date[] = date('Y-m-d', strtotime("+$j day", strtotime($first_date)));
|
|
|
|
$all_date[] = date('Y-m-d', strtotime("+$j day", strtotime($first_date)));
|
|
|
@ -432,65 +479,50 @@ class Tulanduo extends CI_Controller
|
|
|
|
$real_date = array_column(array_values($schedule_obj), 'date');
|
|
|
|
$real_date = array_column(array_values($schedule_obj), 'date');
|
|
|
|
foreach ($all_date as $kd => $vd) {
|
|
|
|
foreach ($all_date as $kd => $vd) {
|
|
|
|
if ( ! in_array($vd, $real_date)) {
|
|
|
|
if ( ! in_array($vd, $real_date)) {
|
|
|
|
$this->tldOrderBuilder->setScheduleDetailsTitle($kd, "无")
|
|
|
|
$this->ci->tldOrderBuilder->setScheduleDetailsTitle($kd, "无")
|
|
|
|
->setScheduleDetailsContent($kd, "无")
|
|
|
|
->setScheduleDetailsContent($kd, "无")
|
|
|
|
->setScheduleDetailsAccommodation($kd, "")
|
|
|
|
->setScheduleDetailsAccommodation($kd, "")
|
|
|
|
// ->setScheduleDetailsTraffic($kd, ($vso->PAG_Vehicle>60001 ? 1 : 0))
|
|
|
|
// ->setScheduleDetailsTraffic($kd, ($vso->PAG_Vehicle>60001 ? 1 : 0))
|
|
|
|
->setScheduleDetailsBreakFirst($kd, 0 )
|
|
|
|
->setScheduleDetailsBreakFirst($kd, 0 )
|
|
|
|
->setScheduleDetailsDinner($kd, 0)
|
|
|
|
->setScheduleDetailsDinner($kd, 0)
|
|
|
|
->setScheduleDetailsLunch($kd, 0)
|
|
|
|
->setScheduleDetailsLunch($kd, 0)
|
|
|
|
;
|
|
|
|
;
|
|
|
|
continue;
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
foreach (array_values($schedule_obj) as $kso => $vso) {
|
|
|
|
foreach (array_values($schedule_obj) as $kso => $vso) {
|
|
|
|
if ($vd==$vso['date']) {
|
|
|
|
if ($vd==$vso['date']) {
|
|
|
|
$this->tldOrderBuilder->setScheduleDetailsTitle($kd, $vso['date'])
|
|
|
|
$this->ci->tldOrderBuilder->setScheduleDetailsTitle($kd, $vso['date'])
|
|
|
|
->setScheduleDetailsContent($kd, $vso['content'])
|
|
|
|
->setScheduleDetailsContent($kd, $vso['content'])
|
|
|
|
->setScheduleDetailsAccommodation($kd, $vso['accommodation'])
|
|
|
|
->setScheduleDetailsAccommodation($kd, $vso['accommodation'])
|
|
|
|
// ->setScheduleDetailsTraffic($kd, ($vso->PAG_Vehicle>60001 ? 1 : 0))
|
|
|
|
// ->setScheduleDetailsTraffic($kd, ($vso->PAG_Vehicle>60001 ? 1 : 0))
|
|
|
|
->setScheduleDetailsBreakFirst($kd, 0 )
|
|
|
|
->setScheduleDetailsBreakFirst($kd, 0 )
|
|
|
|
->setScheduleDetailsDinner($kd, $vso['dinner'] )
|
|
|
|
->setScheduleDetailsDinner($kd, $vso['dinner'] )
|
|
|
|
->setScheduleDetailsLunch($kd, $vso['lunch'])
|
|
|
|
->setScheduleDetailsLunch($kd, $vso['lunch'])
|
|
|
|
;
|
|
|
|
;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// 拆分的订单团款录第一个
|
|
|
|
// 拆分的订单团款录第一个
|
|
|
|
if ($i===1) {
|
|
|
|
if ($i===1) {
|
|
|
|
foreach ($travelFees as $kf => $vf) {
|
|
|
|
if ( ! empty($travel_fees) ) {
|
|
|
|
$this->tldOrderBuilder->setTravelFeesType($kf, "Per Group")
|
|
|
|
$this->ci->tldOrderBuilder->setTravelFeesType(0, "Per Group")
|
|
|
|
->setTravelFeesMoney($kf, $vf->GAI_SSJE)
|
|
|
|
->setTravelFeesMoney(0, $travel_fees->SUM_SSJE)
|
|
|
|
->setTravelFeesNum($kf, 1)
|
|
|
|
->setTravelFeesNum(0, 1)
|
|
|
|
->setTravelFeesUnit($kf, 1)
|
|
|
|
->setTravelFeesUnit(0, 1)
|
|
|
|
->setTravelFeesSumMoney($kf, $vf->GAI_SSJE)
|
|
|
|
->setTravelFeesSumMoney(0, $travel_fees->SUM_SSJE);
|
|
|
|
->setTravelFeesRemark($kf, $vf->GAI_Memo);
|
|
|
|
}
|
|
|
|
|
|
|
|
if ( ! empty($replace_collections) ) {
|
|
|
|
|
|
|
|
$this->ci->tldOrderBuilder->setReplaceCollectionsType(0, "Per Group")
|
|
|
|
|
|
|
|
->setReplaceCollectionsMoney(0, $replace_collections->SUM_SSJE)
|
|
|
|
|
|
|
|
->setReplaceCollectionsRemark(0, $replace_collections->ALL_Memo);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// 查询是否变更
|
|
|
|
// 查询是否变更 TODO deprecated
|
|
|
|
$sync_orderstate = 10;
|
|
|
|
$sync_orderstate = 10;
|
|
|
|
$vps_sn = 0;
|
|
|
|
$vps_sn = 0;
|
|
|
|
$vendor_orderid = 0;
|
|
|
|
$vendor_orderid = 0;
|
|
|
|
$plan_detail_page_url = "http://p.mycht.cn/Cooperate/Plan_Detail.aspx?GSN=" . $gri_sn;
|
|
|
|
$this->ci->tldOrderBuilder->clearModifyLogInfo();
|
|
|
|
$plan_detail_page = "<br>计划下载:<a href='$plan_detail_page_url'>$plan_detail_page_url</a><br>";
|
|
|
|
$resp = $this->excute_curl($this->neworder_url, $this->ci->tldOrderBuilder);
|
|
|
|
if (intval($is_send_vary)===1) {
|
|
|
|
|
|
|
|
$vps = $this->Group_model->get_sync_info($vas_sn, $tour_code);
|
|
|
|
|
|
|
|
if ( ! empty($vps)) {
|
|
|
|
|
|
|
|
$vps_sn = $vps->VPS_SN;
|
|
|
|
|
|
|
|
$vendor_orderid = $vps->VPS_externalId;
|
|
|
|
|
|
|
|
$sync_orderstate = 11;
|
|
|
|
|
|
|
|
$modifyLogInfo = "$plan_detail_page<br>$change_info<br>";
|
|
|
|
|
|
|
|
$this->tldOrderBuilder->setOrderId($vendor_orderid)
|
|
|
|
|
|
|
|
->setModifyLogInfo($modifyLogInfo)
|
|
|
|
|
|
|
|
;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
$modifyLogInfo = $plan_detail_page;
|
|
|
|
|
|
|
|
$this->tldOrderBuilder->clearModifyLogInfo();
|
|
|
|
|
|
|
|
$this->tldOrderBuilder->setModifyLogInfo($modifyLogInfo)
|
|
|
|
|
|
|
|
;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
$resp = $this->excute_curl($this->neworder_url, $this->tldOrderBuilder);
|
|
|
|
|
|
|
|
// $resp = '{"status":1,"errMsg":"","responseData":{"orderId":' . rand(1000,9999) . '}}'; // test
|
|
|
|
|
|
|
|
$response = json_decode($resp);
|
|
|
|
$response = json_decode($resp);
|
|
|
|
if ($response->status == 1) {
|
|
|
|
if ($response->status == 1) {
|
|
|
|
/** VendorPlanSync */
|
|
|
|
/** VendorPlanSync */
|
|
|
@ -508,19 +540,22 @@ class Tulanduo extends CI_Controller
|
|
|
|
,"VPS_sendTime" => date('Y-m-d H:i:s')
|
|
|
|
,"VPS_sendTime" => date('Y-m-d H:i:s')
|
|
|
|
);
|
|
|
|
);
|
|
|
|
if ($vps_sn === 0) {
|
|
|
|
if ($vps_sn === 0) {
|
|
|
|
$sync_id = $this->Group_model->insert_VendorPlanSync($sync_ret);
|
|
|
|
$sync_id = $this->ci->Group_model->insert_VendorPlanSync($sync_ret);
|
|
|
|
|
|
|
|
$this->ci->BIZ_order->insert_biz_order_log($coli_sn, "vendorPlanSendout_" . $tour_code);
|
|
|
|
} else {
|
|
|
|
} else {
|
|
|
|
$update = $this->Group_model->update_VendorPlanSync($vps_sn, $sync_ret);
|
|
|
|
$update = $this->ci->Group_model->update_VendorPlanSync($vps_sn, $sync_ret);
|
|
|
|
|
|
|
|
$this->ci->BIZ_order->insert_biz_order_log($coli_sn, "vendorPlanUpdateSendout_" . $tour_code);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
/** VendorArrangeState VAS_IsReceive */
|
|
|
|
/** VendorArrangeState VAS_IsReceive */
|
|
|
|
$this->Group_model->set_plan_received($vas_sn);
|
|
|
|
$this->ci->Group_model->set_plan_received($vas_sn);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return "[Tulanduo>push_trippest] Done. ";
|
|
|
|
return "[Tulanduo>push_trippest] Done. " . $COLI_ID;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public function tourguide_update($input, $vps, $eva)
|
|
|
|
public function tourguide_update($input, $vps, $eva)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
return false; // for Trippest deploy
|
|
|
|
$ret['status'] = -1;
|
|
|
|
$ret['status'] = -1;
|
|
|
|
$ret['err'] = 100;
|
|
|
|
$ret['err'] = 100;
|
|
|
|
$ret['errMsg'] = "未知错误";
|
|
|
|
$ret['errMsg'] = "未知错误";
|
|
|
@ -594,6 +629,7 @@ class Tulanduo extends CI_Controller
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public function order_change()
|
|
|
|
public function order_change()
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
return false; // for Trippest deploy
|
|
|
|
$this->load->model('Order_update');
|
|
|
|
$this->load->model('Order_update');
|
|
|
|
$ret['status'] = -1;
|
|
|
|
$ret['status'] = -1;
|
|
|
|
$ret['errMsg'] = "未知错误";
|
|
|
|
$ret['errMsg'] = "未知错误";
|
|
|
@ -658,7 +694,8 @@ class Tulanduo extends CI_Controller
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private function excute_curl($url, $content_builder) {
|
|
|
|
private function excute_curl($url, $content_builder)
|
|
|
|
|
|
|
|
{
|
|
|
|
$ch = curl_init();
|
|
|
|
$ch = curl_init();
|
|
|
|
curl_setopt($ch, CURLOPT_URL, $url);
|
|
|
|
curl_setopt($ch, CURLOPT_URL, $url);
|
|
|
|
curl_setopt($ch, CURLOPT_FAILONERROR, false);
|
|
|
|
curl_setopt($ch, CURLOPT_FAILONERROR, false);
|