覆盖冲突

feature/pay
lyt 8 years ago
commit 5c97f7cd81

File diff suppressed because it is too large Load Diff

@ -117,8 +117,9 @@ function raw_json_encode($input, $flags = 0) {
function analysis_groupCode($groupCode)
{
mb_regex_encoding("UTF-8");
$groupCode = trim_groupCode(trim($groupCode));
preg_match('/[\w\s\-]+/', characet($groupCode, "UTF-8"), $temp_array);
$temp_array[0] = strrchr($temp_array[0], " ") ? mb_strstr($temp_array[0], " ",true) : $temp_array[0];
// $temp_array[0] = strrchr($temp_array[0], " ") ? mb_strstr($temp_array[0], " ",true) : $temp_array[0];
$tmp_groupCode = explode("-", trim($temp_array[0]));
$real_groupCode = $tmp_groupCode[0];
if (isset($tmp_groupCode[1])) {
@ -131,9 +132,13 @@ function analysis_groupCode($groupCode)
$real_groupCode .= mb_strstr($tmp_groupCode[$i], "", true)!==false ? mb_strstr($tmp_groupCode[$i], "", true) : $tmp_groupCode[$i];
}
}
$real_groupCode = mb_ereg_replace('( )', '', trim($real_groupCode));
$real_groupCode = trim_groupCode(trim($real_groupCode));
return $real_groupCode;
}
function trim_groupCode($groupCode)
{
return mb_ereg_replace('( | | )', '', $groupCode);
}
/*!
* 转换字符集编码
* @param $data

@ -56,6 +56,20 @@ class Order_update extends CI_Model {
return $update_exc;
}
/*!
* 更新团信息
*/
public $gri_where_update = ""; // where 条件
public function biz_groupinfo_update($column_data)
{
if ($this->gri_where_update == "" || empty($column_data)) {
return false;
}
$update_str = $this->HT->update_string('GroupInfo', $column_data, $this->gri_where_update);
$update_exc = $this->HT->query($update_str);
return $update_exc;
}
/*!
* 地接计划状态变更
* @param [type] $vas_sn [description]

@ -122,18 +122,7 @@ class Orders_model extends CI_Model {
}
return NULL;
}
public function get_exists_vendorOrderId($vendorOrderIds="")
{
$sql = "SELECT GCI_VendorOrderId FROM GroupCombineInfo
WHERE GCI_VendorOrderId IN ($vendorOrderIds) ";
return $this->HT->query($sql)->result();
}
public function get_oldest_offset()
{
$sql = "SELECT top 1 CAST(GCI_travelDate as DATE) old_date from GroupCombineInfo
order by GCI_travelDate asc";
return $this->HT->query($sql)->row()->old_date;
}
/*!
* 需要更新调度信息的订单 -- 商务表
* @param integer $coli_sn [description]
@ -142,10 +131,10 @@ class Orders_model extends CI_Model {
*/
public function get_groupCombineInfo($coli_sn=0, $get_vendorID=null, $startDate=null, $endDate=NULL)
{
$sql = "SELECT top 10 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,
$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, gci.*
FROM GroupCombineInfo gci
LEFT JOIN BIZ_ConfirmLineInfo coli ON coli.COLI_GRI_SN=gci.GCI_GRI_SN and coli.COLI_State NOT IN ('30','40','50')
LEFT JOIN BIZ_ConfirmLineInfo coli ON coli.COLI_GRI_SN=gci.GCI_GRI_SN --and coli.COLI_State NOT IN ('30','40','50')
LEFT JOIN BIZ_ConfirmLineDetail cold ON cold.COLD_COLI_SN=coli.COLI_SN
WHERE 1=1 ";
if ($coli_sn !== 0) {
@ -278,7 +267,7 @@ class Orders_model extends CI_Model {
$this->GRI_Creator,
$this->GRI_OrderType
));
$this->GRI_SN = $this->HT->query("select MAX(GRI_SN) as insert_id FROM GRoupInfo WHERE GRI_No='" . $this->GRI_No . "'")->row('insert_id');
$this->GRI_SN = $this->HT->query("select MAX(GRI_SN) as insert_id FROM GRoupInfo WHERE GRI_operator=435 AND GRI_No='" . $this->GRI_No . "'")->row('insert_id');
return $this->GRI_SN;
}
@ -524,14 +513,20 @@ class Orders_model extends CI_Model {
return NULL;
}
/*!
* 1. 获取列表时: 按团号查询团是否已存在, 避免渠道和目的地组同时操作
* @param [type] $code [description]
* @param [type] $vendorOrderId [description]
*/
public function get_SN_by_groupCode($code, $vendorOrderId=NULL)
{
$sql = "SELECT top 1 COLI_SN,gri.GRI_SN,cold.COLD_PlanVEI_SN,cold.COLD_SN,coli.COLI_ID,coli.COLI_Memo,coli.COLI_OrderDetailText,coli.COLI_State,coli.COLI_OPI_ID,coli.COLI_Price,coli.COLI_CUrrency
,GRI_OPI_ID,GRI_operator,GRI_No,GRI_Name
FROM BIZ_ConfirmLineInfo coli
inner join BIZ_ConfirmLineDetail cold on cold.COLD_COLI_SN=COLI_SN and COLI_State not in (30,40,50)
inner join BIZ_ConfirmLineDetail cold on cold.COLD_COLI_SN=COLI_SN --and COLI_State not in (30,40,50)
LEFT JOIN GRoupInfo gri ON coli.COLI_GRI_SN=gri.GRI_SN and GRI_OrderType=227002
WHERE gri.GRI_No LIKE '%$code%'
and gri.GRI_operator<>435 and gri.GRI_operator is not null
WHERE coli.COLI_Department=30 and gri.GRI_No LIKE '%$code%'
order by COLI_SN desc"; // and gri.GRI_Name like '%$NoName%'
$query = $this->HT->query($sql);
if ($query->num_rows() > 0) {
@ -545,6 +540,27 @@ class Orders_model extends CI_Model {
return NULL;
}
/*!
* 更新时:
* @date 2018-08-23
* @param [type] $code [description]
*/
public function get_order_by_groupcode($code)
{
$sql = "SELECT COLI_SN,gri.GRI_SN,cold.COLD_PlanVEI_SN,cold.COLD_SN,coli.COLI_ID,
coli.COLI_OrderDetailText,
coli.COLI_State,coli.COLI_OPI_ID,coli.COLI_Price,coli.COLI_CUrrency
GRI_OPI_ID,GRI_operator,GRI_No,GRI_Name,
coli.COLI_Memo
FROM BIZ_ConfirmLineInfo coli
inner join BIZ_ConfirmLineDetail cold on cold.COLD_COLI_SN=COLI_SN
left JOIN GRoupInfo gri ON coli.COLI_GRI_SN=gri.GRI_SN and GRI_OrderType=227002
WHERE coli.COLI_Department=30 and gri.GRI_No LIKE '%$code%'
order by case COLI_OPI_ID when 435 then 1 else 0 end asc,COLI_SN desc";
$query = $this->HT->query($sql);
return $query->result();
}
/*!
* 获取地接社接受计划的人员信息
* @param $vendorID 地接社ID

@ -6,27 +6,6 @@ class Tulanduo_sync_model extends CI_Model {
function __construct() {
parent::__construct();
$this->HT = $this->load->database('HT', TRUE);
//读取默认配置
$this->COLI_WebCode = $this->config->item('Site_Code');
$this->COLI_Area = $this->config->item('Site_Area');
$this->COLI_CustomerType = $this->config->item('Site_DepartmentID');
$this->COLI_department = $this->config->item('Site_Department');
$this->COLI_Currency = $this->config->item('Site_Currency');
$this->COLI_InterestRate = $this->config->item('Site_InterestRate');
$this->COLI_TrueCardRate = $this->config->item('Site_TrueCardRate');
$this->COLI_TouristLGC = $this->config->item('Site_ServiceLGC');
$this->COLI_OrderStartDate = null;
$this->COLI_Keywords = NULL;
switch ($this->check_device()) {
case 'mobile':
$this->COLI_OrderSource = '62003';
break;
case 'tablet':
$this->COLI_OrderSource = '62002';
break;
default:
$this->COLI_OrderSource = '62001';
}
}
/*!
@ -35,19 +14,34 @@ class Tulanduo_sync_model extends CI_Model {
*/
public function get_exists_vendorOrderId($vendorOrderIds="")
{
$sql = "SELECT GCI_VendorOrderId FROM GroupCombineInfo
WHERE GCI_VendorOrderId IN ($vendorOrderIds) ";
return $this->HT->query($sql)->result();
$sql = "SELECT GCI_VendorOrderId FROM GroupCombineInfo
WHERE GCI_VendorOrderId IN ($vendorOrderIds) ";
return $this->HT->query($sql)->result();
}
/*!
* 从图兰朵同步历史数据的日期偏移
* 获取HT内图兰朵订单的最老出发日期
* * 由于获取列表时根据发团日期或得到更早时间的发团日期
* * 因此这里取最早的10个, 找出不连续的为滚动日期的开始
*/
public function get_oldest_offset()
{
$sql = "SELECT top 1 CAST(GCI_travelDate as DATE) old_date from GroupCombineInfo
order by GCI_travelDate asc";
return $this->HT->query($sql)->row()->old_date;
$sql = "SELECT DISTINCT TOP 10 CAST(GCI_travelDate as DATE) old_date from GroupCombineInfo
order by old_date asc";
$all_date = $this->HT->query($sql)->result();
$all_date_arr = array_map(function($ele)
{
return $ele->old_date;
}, $all_date);
for ($i=count($all_date_arr)-1; $i > 0; $i--) {
$d1 = new DateTime($all_date_arr[$i]);
$d2 = new DateTime($all_date_arr[$i-1]);
$date_diff = $d2->diff($d1);
if (intval($date_diff->format('%R%a')) > 1) {
return $all_date_arr[$i];
}
}
return $all_date_arr[0];
}
/*!
* 图兰朵订单在HT内的信息
@ -59,62 +53,6 @@ class Tulanduo_sync_model extends CI_Model {
# code...
}
public $GCI_SN;
public $GCI_VEI_SN;
public $GCI_combineNo=''; // 拼团团号
public $GCI_GRI_SN; // 团key
public $GCI_VendorOrderId; // 地接社系统订单id
public $GCI_FromAgc; // 组团社来源
public $GCI_groupType; // 组团社来源
public $GCI_travelDate;
public $GCI_leaveDate;
public $GCI_createTime;
/** 目的地订单 拼团信息 */
public function biz_groupcombineinfo_save()
{
$sql = "IF NOT EXISTS(
SELECT TOP 1 1
FROM GroupCombineInfo
WHERE GCI_VendorOrderId = ? and GCI_GRI_SN=? and GCI_VEI_SN=?
)
INSERT INTO GroupCombineInfo
(GCI_combineNo
,GCI_GRI_SN
,GCI_VEI_SN
,GCI_VendorOrderId
,GCI_FromAgc
,GCI_groupType
,GCI_travelDate
,GCI_leaveDate
,GCI_createTime)
VALUES
(N?
,?
,?
,?
,N?
,?
,?
,?
,?)
";
$query = $this->HT->query($sql, array(
$this->GCI_VendorOrderId
,$this->GCI_GRI_SN
,$this->GCI_VEI_SN
,$this->GCI_combineNo
,$this->GCI_GRI_SN
,$this->GCI_VEI_SN
,$this->GCI_VendorOrderId
,$this->GCI_FromAgc
,$this->GCI_groupType
,$this->GCI_travelDate
,$this->GCI_leaveDate
,$this->GCI_createTime
));
$this->GCI_SN = $this->HT->query("select MAX(GCI_SN) as insert_id FROM GroupCombineInfo WHERE GCI_combineNo='" . $this->GCI_combineNo . "'")->row('insert_id');
return $this->GCI_SN;
}
}

Loading…
Cancel
Save