trippest 地接计划 - 状态变更上报

todo 验证供应商账号
feature/pay
lyt 7 years ago
parent dc949c201e
commit 7b39d44c89

@ -135,10 +135,7 @@ class TulanduoApi extends CI_Controller
$this->Orders_model->BIZ_COLI_SN = $this->Orders_model->GRI_SN = $this->Orders_model->GCI_SN = null;
$this->Orders_model->get_SN_by_vendorOrderId($vo['orderId']); // 查询订单是否已经录入过
if ($this->Orders_model->BIZ_COLI_SN === null && in_array($vo['agcName'], array("D目的地桂林组"))) {
$tmp_groupCode = explode("-", $vo['agcOrderNo']);
$real_groupCode = $tmp_groupCode[0] . "-";
$real_groupCode .= mb_strstr($tmp_groupCode[1], "", true) ? mb_strstr($tmp_groupCode[1], "", true) : $tmp_groupCode[1];
$real_groupCode = mb_ereg_replace('(\s| )', '', $real_groupCode);
$real_groupCode = $this->analysis_groupCode($vo['agcOrderNo']);
// set BIZ_COLI_SN, GRI_SN at Orders_model
$this->Orders_model->get_SN_by_groupCode($real_groupCode);
}
@ -189,10 +186,12 @@ log_message('error','new coli ' . $this->Orders_model->BIZ_COLI_ID);
$this->Orders_model->COLD_PlanVEI_SN = empty($this->city_info[$vo['operationDep']]) ? 1343 : $this->city_info[$vo['operationDep']]['PlanVEI_SN'];
$this->Orders_model->COLD_MemoText = $COLD_MemoText;
$this->Orders_model->biz_confirm_detail_save();
/** SP_BIZ_Arrange */
if ($this->Orders_model->GRI_SN) {
$this->Orders_model->sp_biz_arrange();
}
/** SP_BIZ_Arrange
* 这里是其他社的订单, 不写这个操作
*/
// if ($this->Orders_model->GRI_SN) {
// $this->Orders_model->sp_biz_arrange();
// }
$cnt++;
}
@ -441,13 +440,56 @@ log_message('error','in GCI ' . json_decode($resp)->responseData->orderId);
$this->Orders_model->GCI_FromAgc = "D目的地桂林组";
$this->Orders_model->biz_groupcombineinfo_save();
}
// email 供应商 todo
echo "Order Push done.";
return;
}
/*!
* 订单状态变更,调度变更
* (地接社调用, 并邮件通知外联)
*/
public function order_change()
{
# code...
$this->load->model('Order_update');
$ret['status'] = -1;
$ret['errMsg'] = "未知错误";
$input = $this->input->post();
// todo 验证userID
$vas_info = $this->Orders_model->get_vendorarrangestate_byVendor($input['orderId']);
if (empty($vas_info) && ! empty($input['agcOrderNo'])) {
$real_groupCode = $this->analysis_groupCode($input['agcOrderNo']);
$vas_info = $this->Orders_model->get_vendorarrangestate_byGroup($real_groupCode);
}
if (empty($vas_info)) {
$ret['errMsg'] = "未找到订单.";
} else {
$update_vas = $this->Order_update->vendorStatus_update($vas_info[0]->VAS_SN, $input['orderRemark']);
$this->Order_update->coli_where_update = " COLI_SN=" . $vas_info[0]->COLI_SN;
$coli_update_column = array(
"COLI_State" => 7
);
$update_coli = $this->Order_update->biz_confirmlineinfo_update($coli_update_column);
if ($update_vas === TRUE) {
$ret['status'] = 1;
$ret['errMsg'] = "";
}
}
if ($ret['status'] !== 1) {
log_message('error','图兰朵确认上报失败. POST RAW: ' . json_encode($input) . "; Result: " . json_encode($ret));
}
// todo email 外联
return $this->output->set_content_type('application/json')->set_output(json_encode($ret));
}
public function analysis_groupCode($groupCode)
{
mb_regex_encoding("UTF-8");
$tmp_groupCode = explode("-", $groupCode);
$real_groupCode = $tmp_groupCode[0] . "-";
$real_groupCode .= mb_strstr($tmp_groupCode[1], "", true) ? mb_strstr($tmp_groupCode[1], "", true) : $tmp_groupCode[1];
$real_groupCode = mb_ereg_replace('(\s| )', '', $real_groupCode);
return $real_groupCode;
}
protected function excute_curl($url, $content_builder) {
@ -483,7 +525,6 @@ log_message('error','in GCI ' . json_decode($resp)->responseData->orderId);
return $reponse;
}
/*!
* 转换字符集编码
* @param $data

@ -40,7 +40,12 @@ class Order_update extends CI_Model {
return $update_exc;
}
public $gci_where_update = "";
/*!
* 更新拼团信息
* @date 2018-04-26
* @param array $column_data 需要更新的列数据数组
*/
public $gci_where_update = ""; // where 条件
public function biz_groupcombineinfo_update($column_data)
{
if ($this->gci_where_update == "" || empty($column_data)) {
@ -51,6 +56,11 @@ class Order_update extends CI_Model {
return $update_exc;
}
/*!
* 拼团的调度信息是否已存在
* @param string $combineNo 拼团团号
* @param string $operation 调度类型
*/
public function combineoperation_exist($combineNo='', $operation="")
{
if( ! $combineNo) { return array(); }
@ -63,60 +73,19 @@ class Order_update extends CI_Model {
return $query->result();
}
public function update_confirmLineInfo()
{
$sql = "UPDATE BIZ_ConfirmLineInfo SET
COLI_GRI_SN=?,
COLI_GroupCode=?
WHERE COLI_SN=?
";
$query = $this->HT->query($sql, array(
$this->BIZ_COLI_GRI_SN
,$this->BIZ_COLI_GroupCode
,$this->BIZ_COLI_SN
));
return $this->query;
}
/**
*
* 更新订单状态(商务订单)
*
/*!
* 地接计划状态变更
* @param [type] $vas_sn [description]
* @param string $confirminfo [description]
*/
public function update_biz_order($order_id, $pay_manager, $source_type, $state, $text = '') {
//更新订单
$sql = "UPDATE BIZ_ConfirmLineInfo SET COLI_PayManner=?,COLI_sourcetype=?,COLI_State=?,COLI_OrderDetailText=COLI_OrderDetailText+? WHERE COLI_ID=?";
$query = $this->HT->query($sql, array($pay_manager, $source_type, $state, $text, $order_id . ''));
$this->insert_acc_info($order_id);
return '是否执行:' . print_r($query, true) . ' sql:' . $sql . ' 参数:' . print_r(array($pay_manager, $source_type, $state, $text, $order_id . ''), true);
}
/**
*
* 更新火车订单购票截图
*
*/
public function update_train_order_pic($order_pic_id) {
//更新订单
$sql = "exec dbo.SP_BIZ_GroupFinanceList_Insert '" . $order_pic_id . "'";
//$query = $this->HT->query($sql);
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, $sql);
return $stmt;
public function vendorStatus_update($vas_sn, $confirminfo="")
{
$sql = "UPDATE VendorArrangeState set VAS_IsConfirm=1,VAS_ConfirmInfo=?+CHAR(10)+VAS_ConfirmInfo
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"

@ -141,6 +141,39 @@ class Orders_model extends CI_Model {
return $query->result();
}
/*!
* 获取团计划信息的记录 - 根据地接社订单id
* 计划变更和订单状态确认时使用
* @param integer $vendorOrderId 图兰朵地接社系统的订单id
*/
public function get_vendorarrangestate_byVendor($vendorOrderId)
{
$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));
return $query->result();
}
/*!
* 获取团计划信息的记录 - 根据组团社团号
* 计划变更和订单状态确认时使用
* @param integer $groupCode 图兰朵地接社系统的订单id
*/
public function get_vendorarrangestate_byGroup($groupCode)
{
$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);
return $query->result();
}
/*!
* 生成预定传真
*/

Loading…
Cancel
Save