trippest财务表: 图兰朵未返回调度数据时按照旧方法计算

feature/pay
lyt 8 years ago
parent e9ba5ca5c5
commit 5df369937f

@ -65,7 +65,6 @@ class Order_finance extends CI_Controller {
/** 单团财务表 */
$report_order = array();
$report_order['OrderYJLR'] = 0; //预计利润
$report_order['basemoney'] = 0; // 总成本
$report_order['money'] = 0; // 总收入, 实收金额
$report_order['profitmoney'] = 0; // 利润
$report_order['adultnumber'] = 0;
@ -83,7 +82,7 @@ class Order_finance extends CI_Controller {
$report_order['reservedate'] = $order_info->reservedate;
$report_order['guesttype'] = ($order_info->guesttype===null) ? 1 : $order_info->guesttype;
$report_order['RO_GRI_SN'] = $report_order['RO_CGI_SN'] = $order_info->GRI_SN;
// $report_order['basemoney'] = $order_info->basemoney; // 总成本
$report_order['basemoney'] = $order_info->otherCost; // 总成本=SUM(COLD_TotalCOst)+COLI_OtherCost
// $report_order['OrderPrice'] = $order_info->OrderPrice; // 总报价
/** 订单支付信息 */
$order_payment = $this->OrderFinance_model->get_order_payment($coli_sn);
@ -118,9 +117,11 @@ class Order_finance extends CI_Controller {
}
}
/** 保存图兰朵包价线路产品的成本到report_tour */
$processed_cold_sn = array();
// pvt
$report_tour_pvt = array();
if ( ! empty($ret->pvt)) {
$processed_cold_sn = array_merge($processed_cold_sn,$ret->pvt->cold_sn);
$report_tour_pvt['ordernumber'] = $ret->pvt->coli_id;
$report_tour_pvt['tourCode'] = mb_substr($ret->pvt->PAG_Code, 0, 50);
$report_tour_pvt['tourname'] = mb_substr($ret->pvt->pag_name, 0, 200);
@ -167,6 +168,7 @@ class Order_finance extends CI_Controller {
if ($coc->PAG_code === $coc->real_code) {
$cost_c_price = bcadd($cost_c_price, $coc->totalPrice);
}
$processed_cold_sn[] = $coc->COLD_SN;
}
$cost_c['tourPrice'] = $this->OrderFinance_model->convert_to_RMB($cost_c_price);
$cost_c['tourProfit'] = ($cost_c['tourPrice']>0) ? bcsub($cost_c['tourPrice'], $cost_c['tourcost']) : 0;
@ -188,6 +190,7 @@ class Order_finance extends CI_Controller {
$report_order['basemoney'] = bcadd($report_order['basemoney'], $cost_c['tourcost']);
}
}
$ret->processed_cold_sn = array_unique($processed_cold_sn);
/** 开始写入数据库 */
/** 图兰朵供应商 */
if ( ! empty($ret->report_tour)) {
@ -195,7 +198,7 @@ class Order_finance extends CI_Controller {
}
/** 非图兰朵供应商的包价线路产品 */
$other_tour = $this->OrderFinance_model->get_order_detail($coli_sn, 'D', false);
if ( ! empty($other_tour)) {
if ( ! empty($other_tour) || empty($ret->processed_cold_sn)) {
$ret->others = $this->OrderFinance_model->insert_report_tour_others($coli_sn);
foreach ($ret->others as $kro => $vro) {
$report_order['basemoney'] = bcadd($report_order['basemoney'], $vro->tourcost);
@ -366,6 +369,7 @@ class Order_finance extends CI_Controller {
}
$ret->coli_sn = $coli_sn;
$ret->coli_id = $all_orders[0]->coli_ID;
$ret->cold_sn = array_unique(array_map(function($ele) {return $ele->COLD_SN;}, $all_orders));
// 总报价
$ret->totalPrice = 0;
foreach ($all_orders as $kal => $val) {

@ -16,6 +16,7 @@ class OrderFinance_model extends CI_Model {
coli.COLI_WebCode as Agenter,
coli.COLI_ApplyDate as reservedate
,coli.COLI_Cost as basemoney
,ISNULL(coli.COLI_OtherCost,0) as otherCost
,dbo.ConvertToRMB('USD',ISNULL(coli.COLI_Price,0)) OrderPrice
,gri.GRI_SN ,gri.GRI_No as TuanName
,opi.OPI_Name as ChinaName,opi.OPI_SN as operater,opi.OPI_DEI_SN
@ -76,7 +77,7 @@ class OrderFinance_model extends CI_Model {
from GroupCombineInfo gci
inner join BIZ_ConfirmLineInfo coli on gci.GCI_GRI_SN=COLI_GRI_SN
inner join BIZ_ConfirmLineDetail cold on cold.COLD_COLI_SN=coli.COLI_SN
and cold.COLD_ServiceType='D' and cold.DeleteFlag=0
and cold.COLD_ServiceType='D' and cold.DeleteFlag=0 and COLD_PlanVEI_SN in (1343,29188,30548,30016)
left join BIZ_PackageInfo pag on PAG_SN=COLD_ServiceSN
left join BIZ_PackageInfoSub pag_sub on pag_sub.PAGS_SN=COLD_ServiceSN2
where gci.GCI_combineNo =?
@ -395,8 +396,7 @@ class OrderFinance_model extends CI_Model {
INNER JOIN dbo.BIZ_PackageInfo ON dbo.BIZ_ConfirmLineDetail.COLD_ServiceSN = dbo.BIZ_PackageInfo.PAG_SN
WHERE (dbo.BIZ_ConfirmLineDetail.COLD_ServiceType='D')
AND (dbo.BIZ_ConfirmLineDetail.DeleteFlag = 0)
AND (dbo.BIZ_ConfirmLineDetail.COLD_COLI_SN=$coli_sn)
and dbo.BIZ_ConfirmLineDetail.COLD_PlanVEI_SN not in (1343,29188,30548,30016) ";
AND (dbo.BIZ_ConfirmLineDetail.COLD_COLI_SN=$coli_sn) ";
return $this->HT->query($sql)->result();
}

Loading…
Cancel
Save