You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
information-system/webht/third_party/trippestOrderSync/models/orderFinance_model.php

96 lines
4.1 KiB
PHTML

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class OrderFinance_model extends CI_Model {
7 years ago
function __construct() {
parent::__construct();
$this->HT = $this->load->database('HT', TRUE);
}
7 years ago
/** 订单的所有拼团号 */
public function get_order_combineNo($coli_sn=0)
{
$sql = "SELECT gci.GCI_combineNo,gci.GCI_groupType
from GroupCombineInfo gci
inner join BIZ_ConfirmLineInfo coli on gci.GCI_GRI_SN=COLI_GRI_SN
where coli.COLI_SN=$coli_sn
group by gci.GCI_combineNo,gci.GCI_groupType";
return $this->HT->query($sql)->result();
}
7 years ago
/** 拼团号下的所有订单 */
public function get_all_combine_order($combineNo="")
{
$sql = "SELECT gci.GCI_combineNo,gci.GCI_VendorOrderId
,COLI_SN,coli_ID--,COLI_ApplyDate,COLI_GroupCode
,COLD_SN,cold.COLD_ServiceSN--,COLD_EndDate
,PAG_Code ,pag_sub.PAGS_CN_Title, cold.COLD_StartDate,PAG_DefaultVEI_SN
,COLD_PersonNum ,COLD_ChildNum , cold.COLD_StartDate,COLD_EndDate
--,PAG_Title
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
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 =?
order by GCI_combineNo,cold.COLD_StartDate";
return $this->HT->query($sql, array($combineNo))->result();
}
/** 拼团的成本明细,总成本信息 */
public function get_combine_sumMoney($combineNo="")
{
$ret = new stdClass();
$sql = "SELECT GCOD_operationType,GCOD_subType,SUM(cast(gcod.GCOD_sumMoney as float)) cost
from GroupCombineOperationDetail gcod
where gcod.GCOD_GCI_combineNo =?
group by GCOD_GCI_combineNo,GCOD_operationType,GCOD_subType";
$ret->cost_detail = $this->HT->query($sql, array($combineNo))->result();
$ret->cost_sum = array_sum(array_map(function ($ele){return $ele->cost;}, $ret->cost_detail));
$ret->cost_category = array();
$ret->cost_category['water'] = 0;
$ret->cost_category['guide_meal'] = 0;
$ret->cost_category['otherCosts'] = 0;
$ret->cost_category['guiderOperations'] = 0;
$ret->cost_category['touristCarOperations'] = 0;
$ret->cost_category['sceneryOperations'] = 0;
foreach ($ret->cost_detail as $key => $value) {
if ($value->GCOD_operationType=='otherCosts' && $value->GCOD_subType=='客人水费') {
$ret->cost_category['water'] += $value->cost;
continue;
} elseif ($value->GCOD_operationType=='otherCosts' && $value->GCOD_subType=='餐补(司陪)') {
$ret->cost_category['guide_meal'] += $value->cost;
continue;
}
$ret->cost_category[$value->GCOD_operationType] += $value->cost;
}
return $ret;
}
/** 获取订单总人数 */
public function get_order_person_num($coli_sn=0)
{
$sql = "SELECT BPL_BPE_SN
from BIZ_ConfirmLineDetail cold
inner join BIZ_BookPeopleList bpl on bpl.BPL_COLD_SN=cold.COLD_SN
where cold.COLD_COLI_SN=$coli_sn
group by bpl.BPL_BPE_SN";
return $this->HT->query($sql)->num_rows();
}
/** 获取产品信息:产品名称,供应商等 */
public function get_pag_info($PAG_SN_str="")
{
$sql = "SELECT pag.PAG_SN,PAG_Code,PAG_DefaultVEI_SN,PAG_Title,vei2.VEI2_CompanyBN
from BIZ_PackageInfo pag
inner join VEndorInfo2 vei2 on VEI2_VEI_SN=PAG_DefaultVEI_SN and VEI2_LGC=2
where PAG_SN in ($PAG_SN_str) ";
return $this->HT->query($sql)->result();
}
}
/* End of file orderFinance_model.php */
/* Location: ./webht/third_party/trippestOrderSync/models/orderFinance_model.php */