|
|
|
@ -32,6 +32,9 @@ class Order_finance extends CI_Controller {
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 重新生成账单
|
|
|
|
|
// HT批量按钮调用
|
|
|
|
|
// 仅读取成本信息计算
|
|
|
|
|
public function single_order_report($coli_sn=0)
|
|
|
|
|
{
|
|
|
|
|
$order_info = $this->OrderFinance_model->get_order_info($coli_sn);
|
|
|
|
@ -45,6 +48,18 @@ class Order_finance extends CI_Controller {
|
|
|
|
|
return $this->generate_report($order_info);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 重新生成账单
|
|
|
|
|
// HT单团财务表页面调用, 先刷新一次成本
|
|
|
|
|
public function single_order_report_refresh($coli_sn=0)
|
|
|
|
|
{
|
|
|
|
|
// 刷新成本
|
|
|
|
|
$controller_name = "TulanduoApi";
|
|
|
|
|
require_once($controller_name . '.php');
|
|
|
|
|
$vendor_class = new $controller_name();
|
|
|
|
|
$ret = $vendor_class->insert_HT_order_operation($coli_sn);
|
|
|
|
|
$this->single_order_report($coli_sn);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/*!
|
|
|
|
|
* 单团财务表计算
|
|
|
|
|
* @date 2018-07-18
|
|
|
|
@ -261,15 +276,17 @@ class Order_finance extends CI_Controller {
|
|
|
|
|
if (empty($all_orders)) {
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
$ret->coli_sn = $coli_sn;
|
|
|
|
|
$payment_currency = "USD";
|
|
|
|
|
$currency_rate = 1;
|
|
|
|
|
$order_payment = $this->OrderFinance_model->get_order_payment($coli_sn, TRUE);
|
|
|
|
|
foreach ($order_payment as $kp => $vp) {
|
|
|
|
|
if ($vp->GAI_SQJE > 0) {
|
|
|
|
|
$payment_currency = trim($vp->GAI_SQJECurrency);
|
|
|
|
|
$currency_rate = bcdiv($vp->GAI_SSJE, $vp->GAI_SQJE);
|
|
|
|
|
break;
|
|
|
|
|
if ($coli_sn !== NULL) {
|
|
|
|
|
$ret->coli_sn = $coli_sn;
|
|
|
|
|
$payment_currency = "USD";
|
|
|
|
|
$currency_rate = 1;
|
|
|
|
|
$order_payment = $this->OrderFinance_model->get_order_payment($coli_sn, TRUE);
|
|
|
|
|
foreach ($order_payment as $kp => $vp) {
|
|
|
|
|
if ($vp->GAI_SQJE > 0) {
|
|
|
|
|
$payment_currency = trim($vp->GAI_SQJECurrency);
|
|
|
|
|
$currency_rate = bcdiv($vp->GAI_SSJE, $vp->GAI_SQJE);
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
$all_pags = array_map(function($ele){ return mb_strtoupper($ele->PAG_Code);}, $all_orders);
|
|
|
|
@ -355,33 +372,36 @@ class Order_finance extends CI_Controller {
|
|
|
|
|
$pag_sns[] = $vo->COLD_ServiceSN;
|
|
|
|
|
// 整团单拼时, 避免重复计算人数
|
|
|
|
|
// 订单人数不重复计
|
|
|
|
|
// 总人等
|
|
|
|
|
if ( ! in_array(mb_strtoupper($vo->PAG_Code), $pvt_code) && ! in_array($vo->COLI_SN, $unique_coli)) {
|
|
|
|
|
$unique_coli[] = $vo->COLI_SN;
|
|
|
|
|
$ret->person_num += $vo->COLD_PersonNum + $vo->COLD_ChildNum;
|
|
|
|
|
}
|
|
|
|
|
$ret->startdate = $vo->COLD_StartDate;
|
|
|
|
|
$tour_s = new stdClass();
|
|
|
|
|
if ($vo->COLI_SN == $coli_sn) {
|
|
|
|
|
$tour_s->COLD_SN = $vo->COLD_SN;
|
|
|
|
|
$tour_s->person_num = $vo->COLD_PersonNum + $vo->COLD_ChildNum;
|
|
|
|
|
$tour_s->adult_num = $vo->COLD_PersonNum;
|
|
|
|
|
$tour_s->child_num = $vo->COLD_ChildNum;
|
|
|
|
|
$tour_s->PAG_code = mb_strtoupper($vo->PAG_Code);
|
|
|
|
|
// $tour_s->real_code = isset($vo->real_code) ? $vo->real_code : $vo->PAG_Code;
|
|
|
|
|
$tour_s->real_code = isset($vo->real_code)&&in_array($vo->real_code, $ret->combine_pags) ? $vo->real_code : mb_strtoupper($vo->PAG_Code);
|
|
|
|
|
$tour_s->real_pag_sn = isset($vo->real_pag_sn) ? $vo->real_pag_sn : $vo->COLD_ServiceSN;
|
|
|
|
|
$tour_s->totalPrice = $vo->COLD_TotalPrice;
|
|
|
|
|
$ret->order_cost[] = $tour_s;
|
|
|
|
|
$ret->coli_id = $vo->coli_ID;
|
|
|
|
|
}
|
|
|
|
|
// 预定产品的团款转换人民币, 写入财务表产品的备注
|
|
|
|
|
// 补充的产品不算
|
|
|
|
|
if ( ! isset($vo->real_pag_sn) && $vo->COLI_SN == $coli_sn) {
|
|
|
|
|
$vo->COLD_TotalPrice = $vo->COLD_TotalPrice===NULL ? 0 : $vo->COLD_TotalPrice;
|
|
|
|
|
if ($payment_currency == "USD" ) {
|
|
|
|
|
$ret->totalPrice_RMB = bcadd($ret->totalPrice_RMB, bcmul($vo->COLD_TotalPrice, $currency_rate));
|
|
|
|
|
} else {
|
|
|
|
|
$ret->totalPrice_RMB = bcadd($ret->totalPrice_RMB, $this->OrderFinance_model->convert_to_RMB($vo->COLD_TotalPrice, 'USD'));
|
|
|
|
|
if ($coli_sn !== NULL) {
|
|
|
|
|
$tour_s = new stdClass();
|
|
|
|
|
if ($vo->COLI_SN == $coli_sn) {
|
|
|
|
|
$tour_s->COLD_SN = $vo->COLD_SN;
|
|
|
|
|
$tour_s->person_num = $vo->COLD_PersonNum + $vo->COLD_ChildNum;
|
|
|
|
|
$tour_s->adult_num = $vo->COLD_PersonNum;
|
|
|
|
|
$tour_s->child_num = $vo->COLD_ChildNum;
|
|
|
|
|
$tour_s->PAG_code = mb_strtoupper($vo->PAG_Code);
|
|
|
|
|
// $tour_s->real_code = isset($vo->real_code) ? $vo->real_code : $vo->PAG_Code;
|
|
|
|
|
$tour_s->real_code = isset($vo->real_code)&&in_array($vo->real_code, $ret->combine_pags) ? $vo->real_code : mb_strtoupper($vo->PAG_Code);
|
|
|
|
|
$tour_s->real_pag_sn = isset($vo->real_pag_sn) ? $vo->real_pag_sn : $vo->COLD_ServiceSN;
|
|
|
|
|
$tour_s->totalPrice = $vo->COLD_TotalPrice;
|
|
|
|
|
$ret->order_cost[] = $tour_s;
|
|
|
|
|
$ret->coli_id = $vo->coli_ID;
|
|
|
|
|
}
|
|
|
|
|
// 预定产品的团款转换人民币, 写入财务表产品的备注
|
|
|
|
|
// 补充的产品不算
|
|
|
|
|
if ( ! isset($vo->real_pag_sn) && $vo->COLI_SN == $coli_sn) {
|
|
|
|
|
$vo->COLD_TotalPrice = $vo->COLD_TotalPrice===NULL ? 0 : $vo->COLD_TotalPrice;
|
|
|
|
|
if ($payment_currency == "USD" ) {
|
|
|
|
|
$ret->totalPrice_RMB = bcadd($ret->totalPrice_RMB, bcmul($vo->COLD_TotalPrice, $currency_rate));
|
|
|
|
|
} else {
|
|
|
|
|
$ret->totalPrice_RMB = bcadd($ret->totalPrice_RMB, $this->OrderFinance_model->convert_to_RMB($vo->COLD_TotalPrice, 'USD'));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -515,7 +535,7 @@ class Order_finance extends CI_Controller {
|
|
|
|
|
{
|
|
|
|
|
return array(
|
|
|
|
|
"BJALC-209",
|
|
|
|
|
"BJSIC-16",
|
|
|
|
|
// "BJSIC-16",
|
|
|
|
|
"SHSIC-45",
|
|
|
|
|
"XASIC-16"
|
|
|
|
|
);
|
|
|
|
|