feat: Trippest计划:区分是否按综费结算

mobile-first
lyt 6 years ago
parent 381e91d508
commit 4b9bc60606

@ -700,8 +700,11 @@ class Tulanduo
$processed_cold[] = $cold->COLD_SN; $processed_cold[] = $cold->COLD_SN;
$all_package = $this->ci->trippest->tour_code($cold->pag_code); $all_package = $this->ci->trippest->tour_code($cold->pag_code);
$pag_info = $this->ci->BIZ_order->get_packageDetails(my_implode("'",",",$all_package), implode(",",$this->vendor_ids)); $pag_info = $this->ci->BIZ_order->get_packageDetails(my_implode("'",",",$all_package), implode(",",$this->vendor_ids));
if (strval($cold->settle) === '4') {
$fill_order['normal_' . $cold->COLD_PlanVEI_SN]["cold"][] = $cold;
} else
if ($set_pvt==='1') { if ($set_pvt==='1') {
$fill_order[0]["cold"][] = $cold; $fill_order['pvt_' . $cold->COLD_PlanVEI_SN]["cold"][] = $cold;
} 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;
@ -709,14 +712,25 @@ class Tulanduo
} }
} }
// 多产品PVT的合并,避免丢失产品 // 多产品PVT的合并,避免丢失产品
$pvt_pagcode = array(); // if ($set_pvt==='1') {
if ($set_pvt==='1') { // foreach ($fill_order['pvt']['cold'] as $kcd => $vcd) {
foreach ($fill_order[0]['cold'] as $kcd => $vcd) { // $multi_package = $this->ci->trippest->tour_code($vcd->pag_code);
$multi_package = $this->ci->trippest->tour_code($vcd->pag_code); // $pvt_pagcode = array_merge($pvt_pagcode, $multi_package);
$pvt_pagcode = array_merge($pvt_pagcode, $multi_package); // }
// $fill_order['pvt']["package_info"] = $this->ci->BIZ_order->get_packageDetails(my_implode("'",",",$pvt_pagcode), implode(",",$this->vendor_ids));
// }
foreach ($fill_order as $key => $part) {
$pvt_pagcode = array();
if (strpos($key, 'pvt_') ===0 || strpos($key, 'normal_')===0) {
foreach ($part['cold'] as $kcd => $vcd) {
$multi_package = $this->ci->trippest->tour_code($vcd->pag_code);
$pvt_pagcode = array_merge($pvt_pagcode, $multi_package);
}
$fill_order[$key]["package_info"] = $this->ci->BIZ_order->get_packageDetails(my_implode("'",",",$pvt_pagcode), implode(",",$this->vendor_ids));
$multi_package = null; $pvt_pagcode=null;
} }
$fill_order[0]["package_info"] = $this->ci->BIZ_order->get_packageDetails(my_implode("'",",",$pvt_pagcode), implode(",",$this->vendor_ids));
} }
// echo json_encode($fill_order);exit;
// $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;
@ -747,7 +761,7 @@ class Tulanduo
} }
// $agcOrderNo .= "(" . $vf["cold"][0]->operator . ")"; // $agcOrderNo .= "(" . $vf["cold"][0]->operator . ")";
$agcOrderNo = $vf["cold"][0]->COLI_GroupCode; $agcOrderNo = $vf["cold"][0]->COLI_GroupCode;
if (trim($vf["cold"][0]->COLI_PriceMemo) !== '') { if (trim($vf["cold"][0]->COLI_PriceMemo) !== '' && '4' !== strval($vf["cold"][0]->settle)) {
$agcOrderNo .= " (" . $vf["cold"][0]->COLI_PriceMemo . ")"; $agcOrderNo .= " (" . $vf["cold"][0]->COLI_PriceMemo . ")";
} }
$order_remark = ""; $order_remark = "";
@ -939,17 +953,31 @@ class Tulanduo
} }
} }
} }
$fee_index=0;
if (strval($vf['cold'][0]->settle) !== '4') {
$cold_amount = $this->ci->BIZ_order->get_cold_amount($COLD_SN_str);
if ( ! empty($cold_amount) ) {
foreach ($cold_amount as $kca => $vca) {
$this->ci->tldOrderBuilder->setTravelFeesType($fee_index, "Per Group")
->setTravelFeesMoney($fee_index, $vca->CNY_price)
->setTravelFeesNum($fee_index, 1)
->setTravelFeesUnit($fee_index, 1)
->setTravelFeesSumMoney($fee_index, $vca->CNY_price);
++$fee_index;
}
}
}
// 拆分的订单团款录第一个 // 拆分的订单团款录第一个
if ($i===1) { if ($i===1) {
$fee_index=0; // if ( ! empty($travel_fees) ) {
if ( ! empty($travel_fees) ) { // $this->ci->tldOrderBuilder->setTravelFeesType($fee_index, "Per Group")
$this->ci->tldOrderBuilder->setTravelFeesType($fee_index, "Per Group") // ->setTravelFeesMoney($fee_index, $travel_fees->SUM_SSJE)
->setTravelFeesMoney($fee_index, $travel_fees->SUM_SSJE) // ->setTravelFeesNum($fee_index, 1)
->setTravelFeesNum($fee_index, 1) // ->setTravelFeesUnit($fee_index, 1)
->setTravelFeesUnit($fee_index, 1) // ->setTravelFeesSumMoney($fee_index, $travel_fees->SUM_SSJE);
->setTravelFeesSumMoney($fee_index, $travel_fees->SUM_SSJE); // ++$fee_index;
++$fee_index; // }
}
if ( ! empty($replace_collections) ) { if ( ! empty($replace_collections) ) {
$this->ci->tldOrderBuilder->setReplaceCollectionsType(0, "Per Group") $this->ci->tldOrderBuilder->setReplaceCollectionsType(0, "Per Group")
->setReplaceCollectionsMoney(0, $replace_collections->SUM_SSJE) ->setReplaceCollectionsMoney(0, $replace_collections->SUM_SSJE)

@ -20,8 +20,10 @@ class BIZ_Orders_model extends CI_Model {
(select PAG_Code from biz_packageinfo where PAG_SN=cold.COLD_ServiceSN) as pag_code, (select PAG_Code from biz_packageinfo where PAG_SN=cold.COLD_ServiceSN) as pag_code,
cold.COLD_ServiceSN2, cold.COLD_ServiceSN2,
cold.COLD_ServiceCity, cold.COLD_ServiceCity,
cold.COLD_PlanVEI_SN,
gut.GUT_NationalityID, gut.GUT_NationalityID,
isnull(COLI_PVT, 0) is_pvt, isnull(COLI_PVT, 0) is_pvt,
(select POI_QuotationType from BIZ_PackageOrderInfo where POI_COLD_SN=COLD_SN) as settle,
(select opi2_name from tourmanager.dbo.operatorinfo2 where opi2_opi_sn=coli_opi_id and opi2_lgc=2) as operator, (select opi2_name from tourmanager.dbo.operatorinfo2 where opi2_opi_sn=coli_opi_id and opi2_lgc=2) as operator,
* *
FROM BIZ_ConfirmLineInfo coli FROM BIZ_ConfirmLineInfo coli
@ -132,6 +134,23 @@ class BIZ_Orders_model extends CI_Model {
return $query->result(); return $query->result();
} }
public function get_cold_amount($COLD_SN_str)
{
$sql = "SELECT COLD_TotalPrice, dbo.GetSSJEFromSQJE(
(select top 1 GAI_Type from BIZ_GroupAccountInfo b where gai_coli_sn=cold.COLD_COLI_SN and b.DeleteFlag=0)
,'USD',COLD_TotalPrice) as CNY_price
,(select top 1 GAI_Type from BIZ_GroupAccountInfo b where gai_coli_sn=cold.COLD_COLI_SN and b.DeleteFlag=0)
as payment_type
-- ,cold.*
from BIZ_ConfirmLineDetail cold
where cold.COLD_SN in ($COLD_SN_str)
and not exists (
select 1 from BIZ_PackageOrderInfo where POI_COLD_SN=cold.COLD_SN and POI_QuotationType=4
) ";
$query = $this->HT->query($sql);
return $query->result();
}
/*! /*!
* 获取团计划信息的记录 - 根据地接社订单id * 获取团计划信息的记录 - 根据地接社订单id
* 计划变更和订单状态确认时使用 * 计划变更和订单状态确认时使用

Loading…
Cancel
Save