Merge branch 'master' of gitee.com:hainatravel/information-system

mobile-first
LiaoYijun 6 years ago
commit 5f8ff681db

@ -440,7 +440,9 @@ class Information extends CI_Controller
$update_info_log = $this->update_cache($ic_url, true);
} else if (strcasecmp($site_code, "cht") == 0 && !empty($auto_update_cache)) {
$update_info_log = $this->update_cache($ic_url);
} else if (strcasecmp($site_code, "cht") != 0 && strcasecmp($site_code, "gm") != 0) { //非cht站点并且非GM
} else if (strcasecmp($site_code, "ah") == 0 && !empty($auto_update_cache)) {
$update_info_log = $this->update_cache($ic_url);
} else if (strcasecmp($site_code, "cht") != 0 && strcasecmp($site_code, "gm") != 0 && strcasecmp($site_code, "ah") != 0) { //非cht站点并且非GM并且非AH
$update_info_log = $this->update_cache($ic_url);
}

@ -317,8 +317,19 @@ class ctrip_train extends CI_Controller{
$ResponseJson = post_ctrip($url,'','GET');
//$ResponseData = json_decode($ResponseJson);
print_r($ResponseJson);
$ResponseData = json_decode($ResponseJson);
$priceAddSeats = ['软卧','硬卧'];
foreach ($ResponseData->TransferLines as $methodsItems){
foreach($methodsItems->Trains as $trainsItems){
foreach ($trainsItems->Seats as $seatsItems){
if(in_array($seatsItems->SeatName,$priceAddSeats)){
$seatsItems->Price = ceil($seatsItems->Price * 1.2);
}
}
}
}
print_r(json_encode($ResponseData));
}
}
}

@ -0,0 +1,21 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
//途牛apiurl
define("TUNIU_FLIGHT_API","http://silkroad.tuniu.com/atd/dist/api");
//id
define("TUNIU_FLIGHT_ID","23770");
//途牛apikey
define("TUNIU_FLIGHT_KEY","MIIBVgIBADANBgkqhkiG9w0BAQEFAASCAUAwggE8AgEAAkEAq2ueljB82bcpF228w5mpCVs+ZK8kE7TQuw2LDegNRUJyP8PlVJXpB438bkTq6J/riqMNLaztUVVXFTL8YXeh7QIDAQABAkEAp9GUUDToBbzq3aTxSA0HD8HkM23DRAeg0X9QwyyK0WHBe/zXgvJ4t6SArTSWUOV3esxGbZQUSOB3U7m89rR0AQIhANUsDojh5WCkNo8Oaqfv35DE9JD5JvixoGMnrNCnozZJAiEAzdwsiYUp2Mlem6bizVsVGejHYMdAG1LCnSbpkUtQ/oUCIGuwuhcEp7BOxRE4I0F7uOGV3kdu1vVEJtZwsKkoRxehAiEAkAYZVsFGjLgdq7JvfRLbSXw1eX0NWdBl/gLKaG+UI+0CIQDFvEQz3ueuyfj/4DnPUnfo0QnAiKJ5Mv57adjoeAOIpg==");
//订单状态说明
$config["train_order_status_msg"]=array(
"0"=>"待处理",
"1"=>"失效订单",
"2"=>"待支付",
"3"=>"已支付,待出票",
"4"=>"出票成功",
"5"=>"出票失败",
"6"=>"线上退票处理中",
"7"=>"有乘客退票(改签)成功",
"8"=>"乘客退票失败",
"e"=>"数据错误,提交失败"
);

@ -0,0 +1,72 @@
<?php
if (!defined('BASEPATH'))
exit('No direct script access allowed');
class api extends CI_Controller{
public function __construct(){
parent::__construct();
$this->load->helper('tuniu');
}
public function index(){
}
public function searchForHt(){
$departDate = $this->input->get_post('departDate');
$departCode = $this->input->get_post('departCode');
$arriveCode = $this->input->get_post('arriveCode');
if(empty($departDate) || empty($departCode) || empty($arriveCode)){
exit('请传入正确的参数,如有疑问请联系CYC');
}
$url = 'https://www.trainspread.com/guide.php/flight/search/?departDate='.$departDate.'&departCode='.$departCode.'&arriveCode='.$arriveCode;
$json = post_tuniu($url);
$data['data'] = json_decode($json);
$this->load->view('searchForHt',$data);
}
public function addorders(){
//接收参数
$departime = $this->input->get_post('departime');
$fromcode = $this->input->get_post('fromcode');
$tocode = $this->input->get_post('tocode');
$flightnumber = $this->input->get_post('flightnumber');
//测试数据
$deparTime = '2019-08-15';
$fromCode = 'BJS';
$toCode = 'SHA';
$flightNumber = 'KN5955';
//查询到sessionid
$searchJson = get_serach_json($deparTime,$fromCode,$toCode,$flightNumber);
$returnJson = post_tuniu(TUNIU_FLIGHT_API,$searchJson,'POST');
$returnData = json_decode($returnJson);
$sessionId = $returnData->data->queryResultList['0']->resourceList['0']->sessionId;
//$sessionId = 'eyJuYW1lIjoiZGlzdE5ldyIsImZrIjoiTkFZI1NIQSNLTjU5NTUjMjAxOS0wOC0xNSIsInNpIjo4LCJjYSI6IlkiLCJjbyI6IkgiLCJhcCI6IjUxOCIsImNwIjoiNzcyIn0';
echo $sessionId;
//获取航班信息,订单信息
//拼接下单报文
$data = '{"contactTel":"18877381547","flight":{"adtPrice":1111,"arriveCityCode":"SHA","cabinClass":"Y","cabinCode":"H","departureCityCode":"BJS","departureDate":"2019-08-15","flightNum":"KN5955"},"remark":"haina123456","sessionId":"'.$sessionId.'","touristList":[{"birthday":"1992-08-13","firstName":"chen","lastName":"yuchao","name":"陈宇超","personType":"ADT","psptId":"450302199208131039","psptType":1,"tel":"18877381547"}]}';
$timestamp = time();
$sign = md5(TUNIU_FLIGHT_KEY.$data.$timestamp);
$bookJson = '{
"purchaseId": '.TUNIU_FLIGHT_ID.',
"sign": "'.$sign .'",
"timestamp": '.$timestamp.',
"function": "createOrder",
"data":'.$data.'
}';
//echo $bookJson;die();
$returnJson = post_tuniu(TUNIU_FLIGHT_API,$bookJson,'POST');
//print_r($returnData);
echo $returnJson;
//生成报文
}
}

@ -0,0 +1,20 @@
<?php
if (!defined('BASEPATH'))
exit('No direct script access allowed');
class pages extends CI_Controller{
public function __construct(){
parent::__construct();
$this->load->helper('tuniu');
}
public function index(){
exit('前方高能!!!');
}
public function homepage(){
$this->load->view('common/header');
$this->load->view('homepage');
$this->load->view('common/footer');
}
}

@ -0,0 +1,90 @@
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
//验证参数是否存在并且是否为数字
function checkNum($num){
if(isset($num)){
if(is_numeric($num)){
return true;
}else{
return false;
}
}else{
return false;
}
}
//余票转换
function ticket_exchange($num,$iseven){
if($iseven){
return '有';
}else{
if(is_numeric($num)){
if($num == 0){
return '无';
}elseif($num >= 99){
return '有';
}else{
return $num;
}
}
}
}
//获取毫秒数
function get_microtime (){
list($s1, $s2) = explode(' ', microtime());
return (float)sprintf('%.0f', (floatval($s1) + floatval($s2)) * 1000);
}
//获取飞机查询报文
function get_serach_json($departime,$fromcode,$tocode,$flightnumber=null){
$timestamp = time();
$function = 'queryNew';
$flightnumberstr = '';
if(!empty($flightnumber)){
$flightnumberstr = ',"flightNum":"'.$flightnumber.'"';
}
$data = '{"channelId":7,"departureDate":"'.$departime.'","dstCityCode":"'.$tocode.'"'.$flightnumberstr.',"orgCityCode":"'.$fromcode.'"}';
$sign = md5(TUNIU_FLIGHT_KEY.$data.$timestamp);
$postJson = '{
"purchaseId": '.TUNIU_FLIGHT_ID.',
"sign": "'.$sign .'",
"timestamp": '.$timestamp.',
"function": "'.$function.'",
"data":'.$data.'
}';
return $postJson;
}
//发送请求函数
function post_tuniu($url, $data = '', $method = 'GET') {
$curl = curl_init(); // 启动一个CURL会话
curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0); // 从证书中检查SSL加密算法是否存在
curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); // 模拟用户使用的浏览器
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转
curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动设置Referer
if ($method == 'POST' && !empty($data)) {
curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求
curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Post提交的数据包
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));
}
curl_setopt($curl, CURLOPT_TIMEOUT, 40); // 设置超时限制防止死循环
curl_setopt($curl, CURLOPT_TIMEOUT_MS, 40000); // 设置超时限制防止死循环
curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回
$tmpInfo = curl_exec($curl); // 执行操作
$errno = curl_errno($curl);
if ($errno !== 0) {
return false;
echo $errno . curl_error($curl); //记录错误日志
}
curl_close($curl); //关闭CURL会话
return $tmpInfo; //返回数据
}
?>

@ -0,0 +1,43 @@
<?php // 代码各服务器已经同步 2016.06.01 ycc ?>
<div class="container-fluid footer">
<div class="row">
<div class="col-xs-5"></div>
<div class="col-xs-17">
<legend></legend>
<p class="muted pull-right"><strong>{elapsed_time}</strong> seconds , <strong>{memory_usage}</strong> memory ,技术支持:YCC 08987705</p>
</div>
<div class="col-xs-2"></div>
</div>
</div>
<!-- 静态化更新窗口 -->
<div class="modal fade" id="cache_refresh_modal" tabindex="-1" role="dialog" data-backdrop="false">
<div class="modal-dialog" role="document">
<div class="modal-content" >
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 style="margin:0;">静态化更新-系列站专用</h3>
</div>
<div class="modal-body">
<label>需要更新的页面</label>
<input type="text" class="form-control" name="static_html_url" id="static_html_url" placeholder="如http://www.voyageschine.com/shanghai-voyage/" />
<input type="hidden" name="updatecdn_byhand" id="updatecdn_byhand" value="">
<p class="text-danger" id="cache_refresh_modal_msg" name="cache_refresh_modal_msg"></p>
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal">关闭</button>
<a class="btn btn-primary" href="javascript:void(0);" onclick="$('#updatecdn_byhand').val('1');
updateCache($('#static_html_url').val(), 'cache_refresh_modal_msg');" >更新</a>
</div>
</div>
</div>
</div>
<!-- 静态化更新窗口 -->
</body>
</html>

@ -0,0 +1,131 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>出票系统</title>
<link rel="stylesheet" href="/css/information-system3.css?v=201508112" type="text/css" />
<script type="text/javascript" src="/min/?f=/js/information-system3.min.js,/js/common.js"></script>
<link rel="shortcut icon" href="/bootstrap/img/glyphicons_290_skull.png">
</head>
<body>
<nav class="navbar navbar-inverse">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-9" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="/"><span class="glyphicon glyphicon-home text-white"></span></a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-9">
<ul class="nav navbar-nav">
<li><a href="<?php echo site_url(''); ?>">信息管理</a></li>
<li><a href="<?php echo site_url('product') ?>">产品管理</a></li>
<li><a href="<?php echo site_url('author'); ?>">作者平台</a></li>
<li><a href="<?php echo site_url('keyworlds') ?>">关键词</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
更多<b class="caret"></b>
</a>
<ul class="dropdown-menu">
<li><a href="<?php echo site_url('seo') ?>">SEO管理</a></li>
<li> <a href="<?php echo site_url('thirdparty/public/infopayauthor') ?>">打赏统计</a></li>
<li> <a href="<?php echo site_url('thirdparty/form') ?>">表单管理</a></li>
<li><a href="<?php echo site_url('thirdparty/advertise') ?>">广告管理</a></li>
<li><a href="<?php echo site_url('setting') ?>">系统设置</a></li>
</ul>
</li>
</ul>
<form id="form_information_search" name="form_information_search" method="post" action="<?php echo $this->router->class == 'infoshare' ? site_url('infoshare/search/') : site_url('welcome/search/'); ?>" class="navbar-form navbar-left" >
<div class="input-group">
<span class="input-group-addon">
<input type="checkbox" title="全文搜索" name="all_text_search" id="all_text_search" value="true" >
</span>
<input type="text" class="form-control input-sm" name="keywords" id="keywords" value="<?php echo isset($keywords) ? $keywords : false; ?>" style="min-width:450px;">
<span class="input-group-btn">
<button class="btn btn-default btn-sm" type="submit">搜索</button>
<a href="#" onclick="openKCFinder_fast();" class="btn btn-default btn-sm" title="快速上传图片" ><span class="glyphicon glyphicon-picture"></span></a>
<a href="#" title="静态化更新" class="btn btn-default btn-sm" data-toggle="modal" data-target="#cache_refresh_modal" ><span class="glyphicon glyphicon-repeat"></span></a>
</span>
</div>
</form>
<ul class="nav navbar-nav navbar-right">
<?php
$all_unread_sms = get_all_unread_sms();
$info_unread_sms = get_all_unread_sms('info');
if (isset($information->ic_id))
$current_msg = $information->ic_id;
if (isset($task->t_id))
$current_msg = $task->t_id;
$total_count = $all_unread_sms['sms_count'] + $info_unread_sms['sms_count']; //计算未读消息总数
$unread_sms_ic_id = 0; //用于设置所有收录消息为已读
if ($total_count != 0) {
?>
<!-- 如果当前页面存在未读消息,则消息数减一 -->
<?php
if (isset($current_msg) && isset($all_unread_sms['sms'][$current_msg])) {
$total_count = $total_count - count($all_unread_sms['sms'][$current_msg]);
unset($all_unread_sms['sms'][$current_msg]);
}
?>
<?php
if (isset($current_msg) && isset($info_unread_sms['sms'][$current_msg])) {
$total_count = $total_count - count($info_unread_sms['sms'][$current_msg]);
unset($info_unread_sms['sms'][$current_msg]);
}
?>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
<i class="icon-envelope icon-white pull-left" style="margin-top:3px;"></i> <span class="badge badge-important pull-right"><?php echo $total_count; ?></span>
</a>
<ul class="dropdown-menu">
<!-- 信息平台的消息 -->
<?php if (isset($info_unread_sms['sms']) && !empty($info_unread_sms['sms'])) { ?>
<a style="padding-left:20px;" href="javascript:void(0);" onclick="set_allmsg_to_read($('#unreadinfomsg').val());">标记全部收录信息为已读</a>
<li class="divider"></li>
<?php foreach ($info_unread_sms['sms'] as $m) { ?>
<li><a href="<?php echo site_url('information/edit/' . $m[0]->is_id); ?>"><?php
$t_title = get_text_short($m[0]->t_title, 15);
echo '[' . $m[0]->ic_sitecode . '] ' . $t_title['content'] . ' (' . $m[0]->m_content . ')';
?></a></li>
<?php $unread_sms_ic_id.=',' . $m[0]->m_object_id; ?>
<?php } ?>
<li class="divider"></li>
<input type="hidden" name="unreadinfomsg" id="unreadinfomsg" value="<?php echo $unread_sms_ic_id; ?>">
<?php } ?>
<!--作者平台的消息-->
<?php foreach ($all_unread_sms['sms'] as $am) { ?>
<li><a href="<?php echo site_url('author/edit_task/' . $am[0]->m_object_id); ?>"><?php
$t_title = get_text_short($am[0]->t_title, 15);
echo $t_title['content'] . ' (' . count($am) . ')';
?></a></li>
<?php } ?>
</ul>
</li>
<?php } ?>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">
<?php
echo $this->config->item('site_code');
echo ' -';
$admin_info = $this->session->userdata('session_admin');
echo $admin_info['OPI_Name'];
?>
<b class="caret"></b>
</a>
<ul class="dropdown-menu">
<?php foreach ($this->config->item('site') as $site_item) { ?>
<li> <a href="<?php echo site_url('login/change_site/' . $site_item['site_code']); ?>" ><?php echo $site_item['site_code'] ?></a></li>
<?php } ?>
<li><a href="<?php echo site_url('login/out'); ?>" >退出</a></li>
</ul>
</li>
</ul>
</div>
</div>
</nav>

@ -0,0 +1,122 @@
<style>
.clear {clear: both;}
.train-summary{ font-size:12px; margin-bottom:10px;}
.train-summary span{ color:#9a0918;}
a:link.seat-a{background-image:url(/css/images/train/a-seat.jpg); background-repeat:no-repeat; width:131px; display:block; height:42px; float:left;}
a:hover.seat-a{background-image:url(/css/images/train/a-seath.jpg);}
.selected_seat-a{background-image:url(/css/images/train/a-seata.jpg)!important; background-repeat:no-repeat; width:55px; display:block; height:42px; float:left;}
a:link.seat-b{background-image:url(/css/images/train/b-seat.jpg); background-repeat:no-repeat; text-decoration:none; width:55px; display:block; height:42px; float:left;}
a:hover.seat-b{background-image:url(/css/images/train/b-seath.jpg);}
.selected_seat-b{background-image:url(/css/images/train/b-seata.jpg)!important; background-repeat:no-repeat; width:55px; display:block; height:42px; float:left;}
a:link.seat-c{background-image:url(/css/images/train/c-seat.jpg); background-repeat:no-repeat; width:131px; display:block; height:42px; float:left;}
a:hover.seat-c{background-image:url(/css/images/train/c-seath.jpg);}
.selected_seat-c{background-image:url(/css/images/train/c-seata.jpg)!important; background-repeat:no-repeat; width:55px; display:block; height:42px; float:left;}
a:link.seat-d{background-image:url(/css/images/train/d-seat.jpg); background-repeat:no-repeat; width:55px; display:block; height:42px; float:left;}
a:hover.seat-d{background-image:url(/css/images/train/d-seath.jpg);}
.selected_seat-d{background-image:url(/css/images/train/d-seata.jpg)!important; background-repeat:no-repeat; width:136px; display:block; height:42px; float:left;}
a:link.seat-f{background-image:url(/css/images/train/f-seat.jpg); background-repeat:no-repeat; width:136px; display:block; height:42px; float:left;}
a:hover.seat-f{background-image:url(/css/images/train/f-seath.jpg);}
.selected_seat-f{background-image:url(/css/images/train/f-seata.jpg)!important; background-repeat:no-repeat; width:136px; display:block; height:42px; float:left;}
a:link.sleep-a {background-image:url(/css/images/train/l-up.jpg); background-repeat:no-repeat; width:163px; display:block; height:38px; float:left; }
a:hover.sleep-a { background-image:url(/css/images/train/l-upa.jpg); }
.selected_sleep-a { background-image:url(/css/images/train/l-upa.jpg)!important; width:163px; display:block; height:38px; float:left; }
a:link.sleep-b {background-image:url(/css/images/train/r-up.jpg); background-repeat:no-repeat; width:104px; display:block; height:38px; float:left; }
a:hover.sleep-b { background-image:url(/css/images/train/r-upa.jpg); }
.selected_sleep-b { background-image:url(/css/images/train/r-upa.jpg)!important; width:163px; display:block; height:38px; float:left; }
a:link.sleep-c {background-image:url(/css/images/train/l-mid.jpg); background-repeat:no-repeat; width:163px; display:block; height:38px; float:left; }
a:hover.sleep-c { background-image:url(/css/images/train/l-mida.jpg); }
.selected_sleep-c { background-image:url(/css/images/train/l-mida.jpg)!important; width:163px; display:block; height:38px; float:left; }
a:link.sleep-d {background-image:url(/css/images/train/r-mid.jpg); background-repeat:no-repeat; width:104px; display:block; height:38px; float:left; }
a:hover.sleep-d { background-image:url(/css/images/train/r-mida.jpg); }
.selected_sleep-d { background-image:url(/css/images/train/r-mida.jpg)!important; width:163px; display:block; height:38px; float:left; }
a:link.sleep-e {background-image:url(/css/images/train/l-low.jpg); background-repeat:no-repeat; width:163px; display:block; height:38px; float:left; }
a:hover.sleep-e { background-image:url(/css/images/train/l-lowa.jpg); }
.selected_sleep-e { background-image:url(/css/images/train/l-lowa.jpg)!important; width:163px; display:block; height:38px; float:left; }
a:link.sleep-f {background-image:url(/css/images/train/r-low.jpg); background-repeat:no-repeat; width:104px; display:block; height:38px; float:left; }
a:hover.sleep-f { background-image:url(/css/images/train/r-lowa.jpg); }
.selected_sleep-f { background-image:url(/css/images/train/r-lowa.jpg)!important; width:104px; display:block; height:38px; float:left; }
</style>
<div style="width:90%;margin:30px auto;">
<div class="panel panel-primary">
<div class="panel-heading">
<h3 class="panel-title">翰特订单号&nbsp;<a style="margin-left:50px;" target='_blank' href="<?php echo site_url('apps/trainsystem/pages/order_list');?>">订单列表>></a><span style="margin-left:200px;">版本V1.0</span></h3>
</div>
<div class="panel-body">
<form style="width: 300px;float: left;" action="/info.php/apps/trainsystem/pages/index/" method="post">
<input type="text" name="ht_order" value="<?php echo isset($cols_id)?$cols_id:""; ?>">
<button type="submit" id="sub" class="btn btn-warning btn-sm"><span class="glyphicon glyphicon-download-alt"></span> 获取信息</button>
</form>
<p style="margin: 0 0 10px; width: 200px; float: left; line-height: 30px;">外联:<span><?php if(!empty($wl)){echo $wl[0]->OPI_Name;}?></span></p>
</div>
</div>
<div class="panel panel-primary">
<div class="panel-heading">
<h3 class="panel-title">飞机订单信息</h3>
</div>
<div class="panel-body">
<table class="table table-bordered table-hover" style="text-align:center;">
<thead>
<tr>
<th style="text-align:center;">序号</th>
<th style="text-align:center;">航班号</th>
<th style="text-align:center;">舱位</th>
<th style="text-align:center;">出发城市</th>
<th style="text-align:center;">抵达城市</th>
<th style="text-align:center;">起飞日期</th>
<th style="text-align:center;">起飞时间</th>
<th style="text-align:center;">抵达时间</th>
<th style="text-align:center;">票价</th>
<th style="text-align:center;">是否提交过</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>ZH1521</td>
<td>经济舱(F)</td>
<td>北京</td>
<td>上海</td>
<td>2019-10-30</td>
<td>20:00</td>
<td>23:30</td>
<td>800</td>
<td></td>
</tr>
<tr>
<td colspan="11">
<table class="table table-condensed table-bordered">
<thead>
<tr>
<th style="text-align:center;"><input class="check_people" type="checkbox" /></th>
<th style="text-align:center;">序号</th>
<th style="text-align:center;">姓名</th>
<th style="text-align:center;">护照</th>
<th style="text-align:center;">年龄类型</th>
</tr>
</thead>
<tbody>
<tr>
<td><input name="" type="checkbox" checked="checked" value="" num=""/></td>
<td>1</td>
<td class="people_name">陈宇超</td>
<td>4564651635213246546</td>
<td>成人</td>
</tr>
<tr style="text-align:;">
<td>
<button type="button" class="btn btn-success">途牛订票</button>
</td>
<td colspan="4" class="biaoqian"><span class="back_mes" style="color:red;line-height: 30px;"></span>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>

@ -0,0 +1,83 @@
<link href="/css/webht/bootstrap.min.css" rel="stylesheet">
<script src="http://www.mycht.cn/min?f=/js/jquery.js,/js/bootstrap.min.js"></script>
<div class="container">
<div class="row">
<h1>单程:<?php echo $data->queryResultList['0']->flight->departCityName.'-----'.$data->queryResultList['0']->flight->arriveCityName ?></h1>
<div class="row" style="border-bottom:1px #ccc dashed;margin-bottom:20px;">
<div class="col-md-6">In the Morning (06 ~ 12) <input type="radio" id="morning" name="fliter" class="fliter"/></div>
<div class="col-md-6">In the Afternoon (12 ~ 18)<input type="radio" id="afternoon" name="fliter" class="fliter"/></div>
<div class="col-md-6">In the Evening (18 ~ 24)<input type="radio" id="evening" name="fliter" class="fliter"/></div>
<div class="col-md-6">All time<input type="radio" id="alltime" name="fliter"/></div>
</div>
<?php
foreach ($data->queryResultList as $items){
echo '<div class="row flightItems" style="border-bottom:1px #ccc dashed;margin-bottom:10px;">';
echo '<div class="col-md-4"><p>'.$items->flight->airlineCompany.' ('.$items->flight->flightNo.')</p></div>';
echo '<div class="col-md-4 departime">'.$items->flight->departAirportName.' ('.$items->flight->departAirportTerminal.') '.$items->flight->departTime.'</div>';
echo '<div class="col-md-2">'.$items->flight->duration.':00</div>';
echo '<div class="col-md-4">'.$items->flight->arriveAirportName.' ('.$items->flight->arriveAirportTerminal.') '.$items->flight->arriveTime.'</div>';
echo '<div class="col-md-2">'.$items->flight->craftType.' ('.$items->flight->meal.')</div>';
echo '<div class="col-md-4">经济舱 ('.$items->resourceList['0']->price->cabinClassFullPrice.') 全价:<input type="radio" name="bookSeat" value="'.$items->flight->flightNo.','.$items->flight->departCityIataCode.','.$items->flight->arriveCityIataCode.','.$items->flight->departDate.','.$items->flight->arriveDate.','.$items->flight->departTime.','.$items->flight->departAirportCode.','.$items->flight->departAirportTerminal.','.$items->flight->arriveTime.','.$items->flight->arriveAirportCode.','.$items->flight->arriveAirportTerminal.',经济舱,'.$items->resourceList['0']->price->cabinClassFullPrice.','.$items->flight->meal.'" /></div>';
echo '<div class="col-md-4"><a role="button" data-toggle="collapse" href="#'.$items->flight->flightNo.'" ria-expanded="true" aria-controls="collapseOne">展示舱位信息</a></div>';
echo '</div>';
echo '<div id="'.$items->flight->flightNo.'" class="panel-collapse collapse">';
foreach ($items->resourceList as $seatItems){
echo '<div class="row seatList" style="border-bottom:1px #ccc dashed;margin-bottom:8px;">';
echo '<div class="col-md-4">'.$seatItems->cabinList['0']->cabinClassName.'('.$seatItems->cabinList['0']->cabinClass.')</div>';
echo '<div class="col-md-4">免费托运行李额:'.$seatItems->cabinList['0']->freeLuggage.$seatItems->cabinList['0']->freeLuggageUnit.'</div>';
if($seatItems->price->adultFacePrice != $seatItems->price->cabinClassFullPrice){
echo '<div class="col-md-4">票面价(折扣)'.$seatItems->price->adultFacePrice.' ('.round(($seatItems->price->adultFacePrice / $seatItems->price->cabinClassFullPrice),2) *10 .')</div>';
}else{
echo '<div class="col-md-4">票面价:'.$seatItems->price->adultFacePrice.'(全价)</div>';
}
//echo '<div class="col-md-4">全价:'.$seatItems->price->cabinClassFullPrice.'</div>';
echo '<div class="col-md-4">余票数:'.$seatItems->cabinList['0']->seatStatus.'</div>';
echo '<div class="col-md-4"><input class="bookSeat" type="radio" name="bookSeat" value="'.$items->flight->flightNo.','.$items->flight->departCityIataCode.','.$items->flight->arriveCityIataCode.','.$items->flight->departDate.','.$items->flight->arriveDate.','.$items->flight->departTime.','.$items->flight->departAirportCode.','.$items->flight->departAirportTerminal.','.$items->flight->arriveTime.','.$items->flight->arriveAirportCode.','.$items->flight->arriveAirportTerminal.','.$seatItems->cabinList['0']->cabinClassName.','.$seatItems->price->adultFacePrice.','.$items->flight->meal.'" /></div>';
echo '</div>';
}
echo '</div>';
}
?>
</div>
</div>
<script>
$(function(){
$('.fliter').click(function(){
var types = $(this).attr('id');
var fliterRule = '';
var time = '';
$('.flightItems').hide();
$('.departime').each(function(){
if(types == 'morning'){
fliterRuleMin = '06';
fliterRuleMax = '12';
}else if(types == 'afternoon'){
fliterRuleMin = '12';
fliterRuleMax = '18';
}else if(types == 'evening'){
fliterRuleMin = '19';
fliterRuleMax = '24';
}
time = $(this).text();
if(time > fliterRuleMin && time < fliterRuleMax){
$(this).parent().show();
}
//console.log($(this).text());
});
});
$('#alltime').click(function(){
$('.flightItems').show();
});
$('.seatList').hover(function(){
$('.seatList').css('background-color','#fff');
$(this).css('background-color','#ccc');
});
});
</script>

@ -111,6 +111,7 @@ class callback extends CI_Controller{
$add_train_order_data->TOC_TicketCost = $data->orderamount;
$add_train_order_data->poundage = (count($data->passengers)*2)."";//手续费,每人两块,转换成字符串
$add_train_order_data->FOI_TrainNetOrderNo = $data->ordernumber;
$add_train_order_data->TOC_VEI_SN = 30427;
$this->BIZ_train_model->add_train_payment($add_train_order_data);
$update_data->confirmcallback = $data_post["data"];
@ -150,7 +151,7 @@ class callback extends CI_Controller{
$add_train_order_data->TOC_DepartureDate = $data->train_date;
$add_train_order_data->TOC_TicketCost = -$refund_money;
$add_train_order_data->FOI_TrainNetOrderNo = null;//退票不用更新取票号,以此在模型里面判断是否为退票消息
$add_train_order_data->TOC_VEI_SN = 30427;
$this->BIZ_train_model->add_train_payment($add_train_order_data);
}else{
//有可能提交了退票或者还没有退票
@ -261,6 +262,7 @@ class callback extends CI_Controller{
$data_passager->ticketprice = $tickets_item->OrderTicketPrice;
$data_passager->seatype = $tickets_item->OrderTicketSeat;
$data_passager->seatdetail = $ticket_item2->SeatNo;
$data_passager->TOC_VEI_SN = 28209;
$this->train_system_model->add_passagers($data_passager);
}
}else{
@ -271,6 +273,7 @@ class callback extends CI_Controller{
$data_passager->ticketprice = $tickets_item->OrderTicketPrice;
$data_passager->seatype = $tickets_item->OrderTicketSeat;
$data_passager->seatdetail = $tickets_item->DetailInfos->DetailInfo->SeatNo;
$data_passager->TOC_VEI_SN = 28209;
$this->train_system_model->add_passagers($data_passager);
}
}
@ -286,6 +289,7 @@ class callback extends CI_Controller{
$data_passager->ticketprice = $ctrip_backdata->TrainOrderService->OrderInfo->TicketInfoFinal->Tickets->Ticket->OrderTicketPrice;
$data_passager->seatype = $ctrip_backdata->TrainOrderService->OrderInfo->TicketInfoFinal->Tickets->Ticket->OrderTicketSeat;
$data_passager->seatdetail = $items->SeatNo;
$data_passager->TOC_VEI_SN = 28209;
$this->train_system_model->add_passagers($data_passager);
}
}
@ -300,6 +304,7 @@ class callback extends CI_Controller{
$data_passager->ticketprice = $ctrip_backdata->TrainOrderService->OrderInfo->TicketInfoFinal->Tickets->Ticket->OrderTicketPrice;
$data_passager->seatype = $ctrip_backdata->TrainOrderService->OrderInfo->TicketInfoFinal->Tickets->Ticket->OrderTicketSeat;
$data_passager->seatdetail = $ctrip_backdata->TrainOrderService->OrderInfo->TicketInfoFinal->Tickets->Ticket->DetailInfos->DetailInfo->SeatNo;
$data_passager->TOC_VEI_SN = 28209;
$this->train_system_model->add_passagers($data_passager);
}

@ -194,10 +194,11 @@ class BIZ_train_model extends CI_Model {
TOC_TrainNumber,
TOC_DepartureDate,
TOC_TicketCost,
TOC_WL
TOC_WL,
TOC_VEI_SN
)
VALUES(?,getdate(),{$CCSN},?,?,?,?,(SELECT COLI_OPI_ID FROM BIZ_ConfirmLineInfo WHERE COLI_SN={$CCSN}))";
$query = $this->HT->query($sql,array($data->TOC_COLD_SN,"%".$data->TOC_Memo."%","退票费 ".$data->TOC_Memo,$data->TOC_COLD_SN,$data->TOC_TrainNumber,$data->TOC_DepartureDate,$data->TOC_TicketCost));
VALUES(?,getdate(),{$CCSN},?,?,?,?,(SELECT COLI_OPI_ID FROM BIZ_ConfirmLineInfo WHERE COLI_SN={$CCSN}),?)";
$query = $this->HT->query($sql,array($data->TOC_COLD_SN,"%".$data->TOC_Memo."%","退票费 ".$data->TOC_Memo,$data->TOC_COLD_SN,$data->TOC_TrainNumber,$data->TOC_DepartureDate,$data->TOC_TicketCost,$data->TOC_VEI_SN));
}else{
//出票
//BIZ_FlightsOrderInfo.FOI_TrainNetOrderNo,更新取票号
@ -238,10 +239,11 @@ class BIZ_train_model extends CI_Model {
TOC_DepartureDate,
TOC_TicketCost,
TOC_WL,
TOC_OtherCost
TOC_OtherCost,
TOC_VEI_SN
)
VALUES(?,getdate(),{$CCSN},?,?,?,?,(SELECT isnull(COLI_OPI_ID,29) FROM BIZ_ConfirmLineInfo WHERE COLI_SN={$CCSN}),null),(?,getdate(),{$CCSN},?,?,?,?,(SELECT isnull(COLI_OPI_ID,29) FROM BIZ_ConfirmLineInfo WHERE COLI_SN={$CCSN}),1)";
$query = $this->HT->query($sql,array($data->TOC_COLD_SN,"%".$data->TOC_Memo."%",$data->TOC_Memo,$data->TOC_COLD_SN,$data->TOC_TrainNumber,$data->TOC_DepartureDate,$data->TOC_TicketCost,$data->TOC_Memo." 手续费",$data->TOC_COLD_SN,$data->TOC_TrainNumber,$data->TOC_DepartureDate,$data->poundage));
VALUES(?,getdate(),{$CCSN},?,?,?,?,(SELECT isnull(COLI_OPI_ID,29) FROM BIZ_ConfirmLineInfo WHERE COLI_SN={$CCSN}),null,?),(?,getdate(),{$CCSN},?,?,?,?,(SELECT isnull(COLI_OPI_ID,29) FROM BIZ_ConfirmLineInfo WHERE COLI_SN={$CCSN}),1,?)";
$query = $this->HT->query($sql,array($data->TOC_COLD_SN,"%".$data->TOC_Memo."%",$data->TOC_Memo,$data->TOC_COLD_SN,$data->TOC_TrainNumber,$data->TOC_DepartureDate,$data->TOC_TicketCost,$data->TOC_VEI_SN,$data->TOC_Memo." 手续费",$data->TOC_COLD_SN,$data->TOC_TrainNumber,$data->TOC_DepartureDate,$data->poundage,$data->TOC_VEI_SN));
}
return $query;
}

@ -339,6 +339,12 @@
$('#goto_test_page_button').attr("href", site_url + $('#ic_url').val());
return true;
}
//ah跳转测试页面
function goto_ahtest_page() {
var site_url = 'https://www.asiahighlights.com/index.php/information/detail/?no_cache=true&static_html_url=';
$('#goto_test_page_button').attr("href", site_url + $('#ic_url').val());
return true;
}
function goto_test_page_pgr() {
var site_url = 'http://192.155.250.125:8011/guide.php/travelguide/guide/?static_html_url=';
$('#goto_test_page_button').attr("href", site_url + $('#ic_url').val());
@ -620,6 +626,9 @@ if ($embody == 1) {
<?php if ($information->ic_sitecode == 'gm') {?>
<a href="javascript:void(0);" onclick="goto_gmtest_page();" id="goto_test_page_button" name="goto_test_page_button" target="_blank" title="查看测试页面" ><i class="glyphicon glyphtext-muted glyphicon glyphicon-random text-muted"></i></a>
<?php }?>
<?php if ($information->ic_sitecode == 'ah') {?>
<a href="javascript:void(0);" onclick="goto_ahtest_page();" id="goto_test_page_button" name="goto_test_page_button" target="_blank" title="查看测试页面" ><i class="glyphicon glyphtext-muted glyphicon glyphicon-random text-muted"></i></a>
<?php }?>
</div>
<input class="form-control col-xs-24" type="text" id="ic_url" name="ic_url" value="<?php echo $information->ic_url; ?>" >
</div>
@ -1443,7 +1452,7 @@ foreach ($author_list as $author_item) {
<input type="checkbox" name="ignore_url_check" id="ignore_url_check" />忽略URL重复
</label>
<div class="clearfix"></div>
<?php if (in_array($this->config->item('site_code'), array('cht', 'gm'))) {?>
<?php if (in_array($this->config->item('site_code'), array('cht', 'gm','ah'))) {?>
<label class="checkbox col-xs-24" style="font-weight: normal;margin-top:0;padding-left: 21px;">
<input type="checkbox" name="auto_update_cache_checkbox" id="auto_update_cache_checkbox" onclick="get_update_cache_url();" value="<?php echo $information->ic_url; ?>" />静态更新
</label>

@ -32,27 +32,7 @@ class PaymentService extends CI_Controller {
} else {
$data['notelist'] = $this->note_model->search_date($data['date']);
}
array_walk($data["notelist"], function(&$ele, $key)
{
$ele->brand_name = "none";
switch ($ele->OPN_accountMethod) {
case '15016':
$ele->brand_name = "WeChat";
break;
case '15010':
case '15002':
$ele->brand_name = "PayPal";
break;
case '15018':
$ele->brand_name = "Credit Card";
break;
case '15015':
$ele->brand_name = "Alipay";
break;
default:
break;
}
});
array_walk($data["notelist"], 'PaymentService::set_brandname');
/**
* 导出记录用的记录节点
@ -70,10 +50,33 @@ class PaymentService extends CI_Controller {
$data = array();
$data['date'] = date('Y-m-d');
$data['notelist'] = $this->note_model->failnote(100);
array_walk($data["notelist"], 'PaymentService::set_brandname');
$this->load->view("payment_list",$data);
return;
}
public function set_brandname(&$ele)
{
$ele->brand_name = "none";
switch ($ele->OPN_accountMethod) {
case '15016':
$ele->brand_name = "WeChat";
break;
case '15010':
case '15002':
$ele->brand_name = "PayPal";
break;
case '15018':
$ele->brand_name = "Credit Card";
break;
case '15015':
$ele->brand_name = "Alipay";
break;
default:
break;
}
}
public function send_notify($opn_id=NULL, $old_ssje=NULL)
{
ignore_user_abort(true);

@ -604,7 +604,7 @@ class IPayLinksService extends CI_Controller
// APP 组的退款查不到原始收款记录
$pure_orderid = strstr($parent_order,"_",true);
$pure_orderid = $pure_orderid===false ? $parent_order : $pure_orderid;
if (empty($parent_note) && true === $this->IPayLinks_model->if_APP_order($pure_orderid) ) {
if (true === $this->IPayLinks_model->if_APP_order($pure_orderid) ) {
$parent_note = $parent_payment;
// 补充字段
$parent_note->IPL_orderId = $parent_order . '_B';
@ -903,12 +903,13 @@ class IPayLinksService extends CI_Controller
bcscale(2);
/** 退款成功 */
if (isset($asyns_resp->data->refundOrderId) && strcmp($asyns_resp->data->resultCode, '2') == 0) {
$notice_time = $asyns_resp->data->completeTime=='' ? time() : strtotime($asyns_resp->data->completeTime);
$this->Note_model->save_refund(
strval($asyns_resp->data->dealId)
, strval($asyns_resp->data->orderId)
, strval("-" . bcdiv(floatval($asyns_resp->data->refundAmount), 100))
, strval(date('Y-m-d H:i:s',strtotime($asyns_resp->data->refundTime)))
, strval(date('Y-m-d H:i:s',strtotime($asyns_resp->data->completeTime)))
, strval(date('Y-m-d H:i:s',$notice_time))
, $asyns_resp->data->resultCode
, null
, json_encode($asyns_resp->data)

@ -260,6 +260,15 @@
</body>
<script type="text/javascript" src="/js/flatpickr-4.4.4.min.js"></script>
<script type="text/javascript">
jQuery.browser = {};
(function () {
jQuery.browser.msie = false;
jQuery.browser.version = 0;
if (navigator.userAgent.match(/MSIE ([0-9]+)\./)) {
jQuery.browser.msie = true;
jQuery.browser.version = RegExp.$1;
}
})();
$(document).ready(function() {
$("#datepicker").flatpickr({
inline: true,

@ -846,6 +846,12 @@ class Index extends CI_Controller {
continue;
}
// 状态=已完成 退款行为:撤销付款/拒付等
if (floatval($item->pn_mc_gross) < 0) {
$this->send_refund($item, $handpick, $old_ssje);
continue;
}
//根据note信息找到订单号
$get_order_no = $item->pn_invoice;
$orderid_info = $this->analysis_orderid($item->pn_invoice);
@ -1315,6 +1321,13 @@ class Index extends CI_Controller {
echo json_encode('没找到数据!');
}
public function get_export_record_currency($currency)
{
// $currency = $this->input->get_post('currency');
$records = $this->Note_model->list_export_record(0, $currency);
return $this->output->set_content_type('application/json')->set_output(json_encode($records));
}
public function export_list()
{
$from_date = $this->input->post("from_date");

@ -185,10 +185,11 @@ class Note_model extends CI_Model {
$this->info->insert('Transaction_Export_Log', $db);
}
public function list_export_record($sn=0)
public function list_export_record($sn=0, $currency=null)
{
$this->info = $this->load->database('INFO', TRUE);
$search_sql = $sn===0 ? "" : " and TEL_SN=$sn ";
$search_sql = $sn===0 ? "" : " AND TEL_SN=$sn ";
$search_sql .= $currency===null ? "" : " AND TEL_transactionCurrency='" . $currency . "'";
$sql = "SELECT TOP 10 *
FROM [InfoManager].[dbo].[Transaction_Export_Log]
WHERE 1=1

@ -162,7 +162,12 @@ class Paypal_model extends CI_Model {
IF NOT EXISTS(
SELECT TOP 1 1
FROM BIZ_GroupAccountInfo
WHERE GAI_COLI_SN = ? AND GAI_SQJE=? AND DeleteFlag=0 AND GAI_Type='15010'
WHERE GAI_COLI_SN = ? AND DeleteFlag=0 AND GAI_Type='15010'
and (
(GAI_AccreditNo IS NULL AND GAI_SQJE=? )
OR
(GAI_AccreditNo='$GAI_AccreditNo')
)
)
INSERT INTO BIZ_GroupAccountInfo (
GAI_COLI_SN

@ -65,6 +65,23 @@
</div>
<div class="modal-body">
<form class="form-horizontal" role="form" method="post" id="search_list" action="/webht.php/apps/paypal/index/export_list/">
<div class="form-group row">
<label for="currency" class="col-md-4">Currency</label>
<div class="col-md-16">
<select class="form-control" id="currency" name="currency" required onchange="set_target_currency(this)">
<option value="">所有币种</option>
<option value="CNY">CNY</option>
<option value="USD">USD</option>
<option value="EUR">EUR</option>
<option value="CAD">CAD</option>
<option value="AUD">AUD</option>
<option value="GBP">GBP</option>
<option value="NZD">NZD</option>
<option value="SGD">SGD</option>
<option value="CHF">CHF</option>
</select>
</div>
</div>
<div class="form-group row">
<label for="from_date" class="col-md-4">使用上次</label>
<div class="col-md-16">
@ -97,23 +114,6 @@ echo "<option value=\"$vf->TEL_SN@" . strstr($vf->TEL_transactionDate, " ", true
<input type="text" class="form-control" id="to_date" name="to_date" placeholder="结束日期" required>
</div>
</div>
<div class="form-group row">
<label for="currency" class="col-md-4">Currency</label>
<div class="col-md-16">
<select class="form-control" id="currency" name="currency" required>
<option value="">所有币种</option>
<option value="CNY">CNY</option>
<option value="USD">USD</option>
<option value="EUR">EUR</option>
<option value="CAD">CAD</option>
<option value="AUD">AUD</option>
<option value="GBP">GBP</option>
<option value="NZD">NZD</option>
<option value="SGD">SGD</option>
<option value="CHF">CHF</option>
</select>
</div>
</div>
<div class="form-group row">
<label for="set_amount" class="col-md-4">总金额(元)</label>
<div class="col-md-16">
@ -285,6 +285,7 @@ echo "<option value=\"$vf->TEL_SN@" . strstr($vf->TEL_transactionDate, " ", true
$('#from_date').prop("readonly",false);
$('#to_date').prop("readonly",false).parents('.form-group').show();
$("#to_date").datepicker( "option", "disabled", false );
$("#currency").prop("disabled", false);
} else {
var this_date = select.value.split('@')[1];
$('#from_date').val(this_date).prop("readonly",true);
@ -293,7 +294,7 @@ echo "<option value=\"$vf->TEL_SN@" . strstr($vf->TEL_transactionDate, " ", true
$("#to_date" ).datepicker( "option", "disabled", true );
$("#set_amount").prop("required", true);
$("#currency option[value='" + select.value.split('@')[2] + "']").prop("selected", true);
$("#currency").prop("disabled", true);
// $("#currency").prop("disabled", true);
}
}
@ -307,6 +308,32 @@ echo "<option value=\"$vf->TEL_SN@" . strstr($vf->TEL_transactionDate, " ", true
}
}
function set_target_currency(currency) {
if (currency.value=='') {
return false;
}
$.ajax({
type: "get",
dataType: "json",
url: '<?php echo site_url('apps/paypal/index/get_export_record_currency/'); ?>' + '/' + currency.value,
success: function(data, textStatus) {
let new_option = '<option value="">选择一个开始记录</option>';
for (let i = 0; i < data.length; i++) {
new_option += `<option value="${data[i].TEL_SN}@${data[i].TEL_transactionDate.substr(0,10)}@${data[i].TEL_transactionCurrency}"> [${data[i].TEL_exportDate.substr(0,10)}] ${data[i].TEL_transactionCurrency} ${data[i].TEL_transactionAmount}-${data[i].TEL_exportAmount} / ${data[i].TEL_orderId} / ${data[i].TEL_transactionDate.substr(0,16)}</option>`;
}
$('#date_history').find('option').remove();
$('#date_history').append(new_option);
$('#from_date').val('').prop("readonly",false);
$("#from_date").datepicker( "option", "disabled", false );
$('#to_date').prop("readonly",false).parents('.form-group').show();
$("#to_date").datepicker( "option", "disabled", false );
},
error: function(msg) {
alert('\u53d1\u751f\u9519\u8bef\uff0c\u8bf7\u8054\u7cfbYoyo...');
}
});
}
function show_order_modal(pn_txn_id, pn_invoice) {
$.ajax({
type: "get",

@ -95,6 +95,9 @@ class TulanduoApi extends CI_Controller
if ( ! empty($order_number)) {
$this->tld_order->setAgcOrderNo($order_number);
} else {
if (date('i') == '00') {
return;
}
$get_type = rand(0, 1); // 需要按预定时间和出发时间, 避免有漏的
if ($get_type === 0) {
log_message('error','Got order list From TuLanDuo By travel Date' );
@ -211,6 +214,7 @@ class TulanduoApi extends CI_Controller
}
}
if (empty($to_update_list)) {
echo "empty";
return false;
}
$unique_orderGroupCombine = array(); // 录入拼团调度时,避免重复
@ -236,6 +240,7 @@ class TulanduoApi extends CI_Controller
$this->order_cancel($order->COLI_ID);
}
}
echo "cancel";
return;
}
if (isset($detail_jsonResp->orderDetail->agcOrderNo) && $detail_jsonResp->orderDetail->agcOrderNo!="") {
@ -272,6 +277,10 @@ class TulanduoApi extends CI_Controller
$allDetails_to_HT .= "[". $vtc->remark . "]; ";
}
}
if (strval($detail_jsonResp->orderDetail->orderStatus) !== '1') {
echo "not confirm";
return;
}
/** HT 开始 */
$vei_SN = $this->city_info[$detail_jsonResp->orderDetail->operationDep]['PlanVEI_SN'] ? $this->city_info[$detail_jsonResp->orderDetail->operationDep]['PlanVEI_SN'] : 1343;
$getInfo_byGroupCode = null;
@ -282,7 +291,7 @@ class TulanduoApi extends CI_Controller
if (strlen($real_groupCode) < 9) {
$real_groupCode = $real_groupCode_info['all'];
}
$getInfo_byGroupCodeArr = $this->Orders_model->get_order_by_groupcode($real_groupCode, $order->GCI_VendorOrderId);
$getInfo_byGroupCodeArr = $this->Orders_model->get_order_by_groupcode($real_groupCode, $order->GCI_VendorOrderId, $vei_SN);
}
$duplicate = false;
// 由同步新增的订单 或 未找到团号关联

@ -30,17 +30,30 @@ class Vendor_money extends CI_Controller {
return $this->settlement();
}
$start_date = $date_range_arr[0][0];
$end_date =$date_range_arr[0][1] . " 23:59:59";
$end_date =$date_range_arr[0][1] . " 23:59";
if ($end_date == null) {
$end_date = date("Y-m-d H:i:s", strtotime("+1 month", strtotime($start_date))-1);
}
$vendors = $this->input->post("vendors");
$vendor_sourcetype = $this->trippest->vendor_sourcetype();
// 不同地接社但是拼团号相同
$actual_vendor_duplicate_combineno = $this->money_model->get_duplicate_vei_combineno($start_date, $end_date, implode(",", $vendors));
$duplicate_coli_sn = array_column($actual_vendor_duplicate_combineno, 'COLI_SN');
if ($download_vendor !== null) {
$vendors = array($download_vendor);
$sourcetype = $vendor_sourcetype[strval($download_vendor)]["sourcetype"];
$vendor_name = $vendor_sourcetype[strval($download_vendor)]["vendor_name"];
$vendor_data = $this->money_model->group_detail_list($download_vendor, $sourcetype, $start_date, $end_date, implode(',', $vendors));
$vendor_data = $this->money_model->group_detail_list($download_vendor, $sourcetype, $start_date, $end_date, implode(',', $vendors), implode(',', $duplicate_coli_sn));
foreach ($actual_vendor_duplicate_combineno as $kad => $vad) {
if ($vad['vendor1'] == $download_vendor) {
$tmp['haina_income'] = $vad['trippest_sum'];
$tmp['vendor_income'] = $vad['vendor_sum'];
$tmp['GRI_No'] = $vad['gri_no'];
$tmp['group_vendor_cost'] = $vad['report_cost'];
$vendor_data[] = $tmp;
$tmp = array();
}
}
$file_name = str_replace(" ", "_", $date_range) . "_" . $vendor_name;
return $this->download_output($vendor_data, $file_name);
}
@ -65,9 +78,22 @@ class Vendor_money extends CI_Controller {
,"sum_payout" => 0
,"sum_other" => 0
),
"vendor" => array(
// "vendor" => array(
// "sum_trippest_cost" => 0
// ,"sum_vendor_cost" => 0
// ,"sum_trippest_sum" => 0
// ,"sum_vendor_sum" => 0
// ,"sum_profit" => 0
// ,"sum_trippest_profit" => 0
// ,"sum_vendor_profit" => 0
// ,"sum_payout" => 0
// ,"sum_other" => 0
// ),
"sync" => array(
"sum_trippest_cost" => 0
,"sum_vendor_cost" => 0
,"sum_cost_sum" => 0
,"sum_price_sum" => 0
,"sum_trippest_sum" => 0
,"sum_vendor_sum" => 0
,"sum_profit" => 0
@ -80,10 +106,16 @@ class Vendor_money extends CI_Controller {
);
$result['trippest_order_multi_city'] = array_merge($result['trippest_order_multi_city'], $this->money_model->trippest_order_multi_city($start_date, $end_date, implode(',', $vendors)));
$result['trippest_order_cost_debug'] = $this->money_model->cost_debug_detail($start_date, $end_date, implode(',', $vendors));
/**
* 计算同步回来的数据
*/
$all_price_cost = $this->money_model->get_sync_price_cost($start_date, $end_date, implode(',', $vendors));
$unique_sync_groupno = array();
$dumplicate_groupno = array();
/** 团款 */
foreach ($vendors as $key => $vendor) {
$sourcetype = $vendor_sourcetype[strval($vendor)]["sourcetype"];
$opi_summoney = $this->money_model->checked_group_list($vendor, $sourcetype, $start_date, $end_date, implode(',', $vendors));
$opi_summoney = $this->money_model->checked_group_list($vendor, $sourcetype, $start_date, $end_date, implode(',', $vendors), implode(",", $duplicate_coli_sn));
$ret = array(
"trippest" =>
array(
@ -93,8 +125,19 @@ class Vendor_money extends CI_Controller {
"other_sum" => 0,
"other_vendor_sum" => 0
),
"vendor" =>
// "vendor" =>
// array(
// "trippest_sum" => 0,
// "vendor_sum" => 0,
// "transfer_sum" => 0,
// "other_sum_cost" => 0,
// "other_sum" => 0,
// "other_vendor_sum" => 0
// ),
"sync" =>
array(
"price_sum" => 0,
"cost_sum" => 0,
"trippest_sum" => 0,
"vendor_sum" => 0,
"transfer_sum" => 0,
@ -103,6 +146,11 @@ class Vendor_money extends CI_Controller {
"other_vendor_sum" => 0
)
);
foreach ($actual_vendor_duplicate_combineno as $kad => $vad) {
if ($vad['vendor1'] == $vendor) {
$opi_summoney[] = $vad;
}
}
// 按照海纳的算法
foreach ($opi_summoney as $key => $opi_money) {
if (floatval($opi_money['vendor_sum']) > 0) {
@ -116,24 +164,38 @@ class Vendor_money extends CI_Controller {
$ret["trippest"]['trippest_sum'] = bcsub($ret["trippest"]['trippest_sum'], $opi_money['other_price_sum']);
$ret['trippest']['other_vendor_sum'] = bcadd($ret['trippest']['other_vendor_sum'], $opi_money['other_vendorprice_RMB_sum']);
}
// 按照图兰朵算法: Trippest自营订单的代收算在海纳收款
foreach ($opi_summoney as $kv => $opi_money_v) {
if (strval($opi_money_v['COLI_OPI_ID']) === '435') {
$ret["vendor"]['vendor_sum'] = bcadd(floatval($ret["vendor"]['vendor_sum']), floatval($opi_money_v['vendor_sum'])) ;
} else {
$ret["vendor"]['trippest_sum'] = bcadd(floatval($ret["vendor"]['trippest_sum']), floatval($opi_money_v['trippest_sum'])) ;
$ret["vendor"]['trippest_sum'] = bcadd(floatval($ret["vendor"]['trippest_sum']), floatval($opi_money_v['vendor_sum'])) ;
}
$ret['vendor']['other_sum'] = bcadd($ret['vendor']['other_sum'], $opi_money_v['other_price_sum']);
$ret['vendor']['other_sum_cost'] = bcadd($ret['vendor']['other_sum_cost'], $opi_money_v['other_cost_sum']);
$ret["vendor"]['trippest_sum'] = bcsub($ret["vendor"]['trippest_sum'], $opi_money_v['other_price_sum']);
$ret['vendor']['other_vendor_sum'] = bcadd($ret['vendor']['other_vendor_sum'], $opi_money['other_vendorprice_RMB_sum']);
}
$ret["vendor"]["transfer_sum"] = bcsub($ret["vendor"]['vendor_sum'], $ret["trippest"]['vendor_sum']);
if ($ret["vendor"]["transfer_sum"] != 0) {
$result['transfer_sum'] = bcadd($result['transfer_sum'], $ret["vendor"]["transfer_sum"]);
$result['trippest_order_vendor_money'] = array_merge($result['trippest_order_vendor_money'], $this->money_model->trippest_order_with_vendormoney($vendor, $sourcetype, $start_date, $end_date));
foreach ($all_price_cost as $ks => $sync) {
if ($sync['vendor_code'] != $vendor ) {
continue;
}
if (in_array($sync['GCI_combineNo'],$unique_sync_groupno)) {
$dumplicate_groupno[] = $sync;
continue;
}
$unique_sync_groupno[] = $sync['GCI_combineNo'];
$ret['sync']['price_sum'] = bcadd($ret['sync']['price_sum'], $sync['receive_price']);
$ret['sync']['cost_sum'] = bcadd($ret['sync']['cost_sum'], $sync['cost']);
// $ret['sync']['vendor_sum'] = bcadd(floatval($ret["sync"]['vendor_sum']), floatval($sync['agency_receive_price'])) ;
// $ret["sync"]['trippest_sum'] = bcadd(floatval($ret["sync"]['trippest_sum']), bcsub(floatval($sync['receive_price']),floatval($sync['agency_receive_price']))) ;
}
// 按照图兰朵算法: Trippest自营订单的代收算在海纳收款
// foreach ($opi_summoney as $kv => $opi_money_v) {
// if (strval($opi_money_v['COLI_OPI_ID']) === '435') {
// $ret["vendor"]['vendor_sum'] = bcadd(floatval($ret["vendor"]['vendor_sum']), floatval($opi_money_v['vendor_sum'])) ;
// } else {
// $ret["vendor"]['trippest_sum'] = bcadd(floatval($ret["vendor"]['trippest_sum']), floatval($opi_money_v['trippest_sum'])) ;
// $ret["vendor"]['trippest_sum'] = bcadd(floatval($ret["vendor"]['trippest_sum']), floatval($opi_money_v['vendor_sum'])) ;
// }
// $ret['vendor']['other_sum'] = bcadd($ret['vendor']['other_sum'], $opi_money_v['other_price_sum']);
// $ret['vendor']['other_sum_cost'] = bcadd($ret['vendor']['other_sum_cost'], $opi_money_v['other_cost_sum']);
// $ret["vendor"]['trippest_sum'] = bcsub($ret["vendor"]['trippest_sum'], $opi_money_v['other_price_sum']);
// $ret['vendor']['other_vendor_sum'] = bcadd($ret['vendor']['other_vendor_sum'], $opi_money['other_vendorprice_RMB_sum']);
// }
// $ret["vendor"]["transfer_sum"] = bcsub($ret["vendor"]['vendor_sum'], $ret["trippest"]['vendor_sum']);
// if ($ret["vendor"]["transfer_sum"] != 0) {
// $result['transfer_sum'] = bcadd($result['transfer_sum'], $ret["vendor"]["transfer_sum"]);
// $result['trippest_order_vendor_money'] = array_merge($result['trippest_order_vendor_money'], $this->money_model->trippest_order_with_vendormoney($vendor, $sourcetype, $start_date, $end_date));
// }
$result["money"][strval($vendor)] = $ret;
$result["money"][strval($vendor)]["vendor_code"] = $vendor;
@ -145,13 +207,19 @@ class Vendor_money extends CI_Controller {
$result['col_sum']['trippest']['sum_vendor_sum'] = bcadd($result['col_sum']['trippest']['sum_vendor_sum'], $ret["trippest"]['vendor_sum']);
$result['col_sum']['trippest']['sum_other'] = bcadd($result['col_sum']['trippest']['sum_other'], $ret['trippest']['other_sum']);
$result['col_sum']['vendor']['sum_trippest_sum'] = bcadd(
bcadd($result['col_sum']['vendor']['sum_trippest_sum'], $ret["vendor"]['trippest_sum'])
,$ret['vendor']['other_sum']);
$result['col_sum']['vendor']['sum_vendor_sum'] = bcadd($result['col_sum']['vendor']['sum_vendor_sum'], $ret["vendor"]['vendor_sum']);
$result['col_sum']['vendor']['sum_other'] = bcadd($result['col_sum']['vendor']['sum_other'], $ret['vendor']['other_sum']);
$result['col_sum']['sync']['sum_price_sum'] = bcadd($result['col_sum']['sync']['sum_price_sum'], $ret["sync"]['price_sum']);
$result['col_sum']['sync']['sum_cost_sum'] = bcadd($result['col_sum']['sync']['sum_cost_sum'], $ret["sync"]['cost_sum']);
// $result['col_sum']['sync']['sum_trippest_sum'] = bcadd($result['col_sum']['sync']['sum_trippest_sum'], $ret["sync"]['trippest_sum']);
// $result['col_sum']['sync']['sum_vendor_sum'] = bcadd($result['col_sum']['sync']['sum_vendor_sum'],$ret['sync']['vendor_sum']);
// $result['col_sum']['vendor']['sum_trippest_sum'] = bcadd(
// bcadd($result['col_sum']['vendor']['sum_trippest_sum'], $ret["vendor"]['trippest_sum'])
// ,$ret['vendor']['other_sum']);
// $result['col_sum']['vendor']['sum_vendor_sum'] = bcadd($result['col_sum']['vendor']['sum_vendor_sum'], $ret["vendor"]['vendor_sum']);
// $result['col_sum']['vendor']['sum_other'] = bcadd($result['col_sum']['vendor']['sum_other'], $ret['vendor']['other_sum']);
}
/** 成本 */
// 排除上述的重复拼团号, 后面再加到第一个地接的数据中
$vendors_cost = $this->money_model->vendor_cost(implode(',', $vendors), $start_date, $end_date);
foreach ($result['money'] as $km => &$vm) {
$vm['vendor_cost'] = $vm['trippest_cost'] = 0;
@ -160,6 +228,11 @@ class Vendor_money extends CI_Controller {
$vm['vendor_cost'] = $vvc['vendor_cost'];
}
}
foreach ($actual_vendor_duplicate_combineno as $kdc => $vdc) {
if (strval($vm['vendor_code']) === strval($vdc['vendor1'])) {
$vm['vendor_cost'] += $vdc['pure_cost'];
}
}
// 成本总计
$result['col_sum']['trippest']['sum_trippest_cost'] = $result['col_sum']['vendor']['sum_trippest_cost'] = bcadd($result['col_sum']['trippest']['sum_trippest_cost'], $vm['trippest_cost']);
$result['col_sum']['trippest']['sum_vendor_cost'] = $result['col_sum']['vendor']['sum_vendor_cost'] = bcadd(
@ -171,30 +244,32 @@ class Vendor_money extends CI_Controller {
$vmi['trippest']['total_profit'] = bcsub(
bcadd(bcadd($vmi['trippest']['trippest_sum'], $vmi['trippest']['vendor_sum']),$vmi['trippest']['other_sum']),
bcadd(bcadd($vmi['trippest_cost'], $vmi['vendor_cost']),$vmi['trippest']['other_sum_cost']));
$vmi['vendor']['total_profit'] = bcsub(
bcadd(bcadd($vmi['vendor']['trippest_sum'], $vmi['vendor']['vendor_sum']),$vmi['vendor']['other_sum']),
bcadd(bcadd($vmi['trippest_cost'], $vmi['vendor_cost']),$vmi['vendor']['other_sum_cost']));
// $vmi['vendor']['total_profit'] = bcsub(
// bcadd(bcadd($vmi['vendor']['trippest_sum'], $vmi['vendor']['vendor_sum']),$vmi['vendor']['other_sum']),
// bcadd(bcadd($vmi['trippest_cost'], $vmi['vendor_cost']),$vmi['vendor']['other_sum_cost']));
/** 利润分成 */
$vmi['trippest']['vendor_profit'] = bcmul($vmi['trippest']['total_profit'], $vendor_sourcetype[strval($vmi['vendor_code'])]["profit_rate"]);
$vmi['trippest']['trippest_profit'] = bcmul($vmi['trippest']['total_profit'], bcsub(1, $vendor_sourcetype[strval($vmi['vendor_code'])]["profit_rate"]) );
$vmi['vendor']['vendor_profit'] = bcmul($vmi['vendor']['total_profit'], $vendor_sourcetype[strval($vmi['vendor_code'])]["profit_rate"]);
$vmi['vendor']['trippest_profit'] = bcmul($vmi['vendor']['total_profit'], bcsub(1, $vendor_sourcetype[strval($vmi['vendor_code'])]["profit_rate"]) );
// $vmi['vendor']['vendor_profit'] = bcmul($vmi['vendor']['total_profit'], $vendor_sourcetype[strval($vmi['vendor_code'])]["profit_rate"]);
// $vmi['vendor']['trippest_profit'] = bcmul($vmi['vendor']['total_profit'], bcsub(1, $vendor_sourcetype[strval($vmi['vendor_code'])]["profit_rate"]) );
/** Trippest应付地接 */
$vmi['trippest']['payout'] = bcsub(bcadd($vmi['vendor_cost'], $vmi['trippest']['vendor_profit'] ), $vmi['trippest']['vendor_sum']);
$vmi['vendor']['payout'] = bcsub(bcadd($vmi['vendor_cost'], $vmi['vendor']['vendor_profit'] ), $vmi['vendor']['vendor_sum']);
// $vmi['vendor']['payout'] = bcsub(bcadd($vmi['vendor_cost'], $vmi['vendor']['vendor_profit'] ), $vmi['vendor']['vendor_sum']);
/** 利润总计 */
$result['col_sum']['trippest']['sum_profit'] = bcadd($result['col_sum']['trippest']['sum_profit'], $vmi['trippest']['total_profit']);
$result['col_sum']['trippest']['sum_trippest_profit'] = bcadd($result['col_sum']['trippest']['sum_trippest_profit'], $vmi['trippest']['trippest_profit']);
$result['col_sum']['trippest']['sum_vendor_profit'] = bcadd($result['col_sum']['trippest']['sum_vendor_profit'], $vmi['trippest']['vendor_profit']);
$result['col_sum']['vendor']['sum_profit'] = bcadd($result['col_sum']['vendor']['sum_profit'], $vmi['vendor']['total_profit']);
$result['col_sum']['vendor']['sum_trippest_profit'] = bcadd($result['col_sum']['vendor']['sum_trippest_profit'], $vmi['vendor']['trippest_profit']);
$result['col_sum']['vendor']['sum_vendor_profit'] = bcadd($result['col_sum']['vendor']['sum_vendor_profit'], $vmi['vendor']['vendor_profit']);
// $result['col_sum']['vendor']['sum_profit'] = bcadd($result['col_sum']['vendor']['sum_profit'], $vmi['vendor']['total_profit']);
// $result['col_sum']['vendor']['sum_trippest_profit'] = bcadd($result['col_sum']['vendor']['sum_trippest_profit'], $vmi['vendor']['trippest_profit']);
// $result['col_sum']['vendor']['sum_vendor_profit'] = bcadd($result['col_sum']['vendor']['sum_vendor_profit'], $vmi['vendor']['vendor_profit']);
/** 应付总计 */
$result['col_sum']['trippest']['sum_payout'] = bcadd($result['col_sum']['trippest']['sum_payout'], $vmi['trippest']['payout']);
$result['col_sum']['vendor']['sum_payout'] = bcadd($result['col_sum']['vendor']['sum_payout'], $vmi['vendor']['payout']);
// $result['col_sum']['vendor']['sum_payout'] = bcadd($result['col_sum']['vendor']['sum_payout'], $vmi['vendor']['payout']);
}
// 财务表成本和实际成本不相等
$result['diff_cost'] = $this->money_model->report_tour_diff($start_date, $end_date, implode(',', $vendors));
$this->load->view('vendor_money_sum', $result);
return ;
}
@ -272,9 +347,9 @@ class Vendor_money extends CI_Controller {
return $this->settlement();
}
$start_date = $date_range_arr[0][0];
$end_date =$date_range_arr[0][1] . " 23:59:59";
$end_date =$date_range_arr[0][1] . " 23:59";
if ($end_date == null) {
$end_date = date("Y-m-d H:i:s", strtotime("+1 month", strtotime($start_date))-1);
$end_date = date("Y-m-d H:i", strtotime("+1 month", strtotime($start_date))-1);
}
$ret['default_date1'] = $start_date;
$ret['default_date2'] = $end_date;
@ -283,6 +358,8 @@ class Vendor_money extends CI_Controller {
$vendor_sourcetype = $this->trippest->vendor_sourcetype();
// price [Trippest receipts & agency receipts]
$ret['price_error'] = $this->money_model->get_precheck_price_error($start_date, $end_date, implode(',' ,$vendors));
// not found in GroupCombineInfo
$ret['not_found'] = $this->money_model->get_order_not_found_gci($start_date, $end_date, implode(',' ,$vendors));
// cost
$HT_combine_cost = $this->money_model->get_combine_cost($start_date, $end_date, implode(',' ,$vendors));
$cost_error = array();

@ -271,13 +271,13 @@ class OrderFinance_model extends CI_Model {
$tourBz_tmp = "";
if ($this->report_tour_exists($vrt['ordernumber'], $vrt['RPT_COLD_SN']) === TRUE) {
$where = " ordernumber='" . $vrt['ordernumber'] . "' and RPT_COLD_SN=".$vrt['RPT_COLD_SN'] ; //AND tourCode='" . $vrt['tourCode'] . "' ";
// $tourBz_tmp = mb_ereg_replace('[^a-zA-Z0-9\-\[\]]$', '', strstr($vrt['tourBZ'], ",", true));
// if (stripos($tourBz_tmp, "pvt") === false) {
// $tourBz_tmp = str_replace("]", "", $tourBz_tmp);
// }
// $tourBz_tmp = str_replace("[", "[[]", $tourBz_tmp);
// $where .= " AND (tourBZ like '%" . $this->HT->escape_like_str($tourBz_tmp) . "%'
// OR tourBZ='') ";
$tourBz_tmp = mb_ereg_replace('[^a-zA-Z0-9\-\[\]]$', '', strstr($vrt['tourBZ'], ",", true));
if (stripos($tourBz_tmp, "pvt") === false) {
$tourBz_tmp = str_replace("]", "", $tourBz_tmp);
}
$tourBz_tmp = str_replace("[", "[[]", $tourBz_tmp);
$where .= " AND (tourBZ like '%" . $this->HT->escape_like_str($tourBz_tmp) . "%'
OR tourBZ='') ";
$delete_sql = "DELETE FROM tourmanager.dbo.Report_Tour where " . $where;
// $update_sql = $this->HT->update_string('tourmanager.dbo.Report_Tour', $vrt, $where);
$this->HT->query($delete_sql);
@ -391,7 +391,7 @@ class OrderFinance_model extends CI_Model {
foreach ($other_tour_cost as $kotc => $votc) {
if ($this->report_tour_exists($votc->ordernumber, $votc->RPT_COLD_SN) === TRUE) {
$where = " ordernumber='" . $votc->ordernumber . "' AND RPT_COLD_SN=" . $votc->RPT_COLD_SN;
// $where .= " AND tourBZ='" . $votc->tourBZ . "' ";
$where .= " AND tourBZ='" . $votc->tourBZ . "' ";
$update_sql = $this->HT->update_string('tourmanager.dbo.Report_Tour', json_decode(json_encode($votc), TRUE), $where);
$this->HT->query($update_sql);
} else {

@ -591,8 +591,9 @@ class Orders_model extends CI_Model {
* @date 2018-08-23
* @param [type] $code [description]
*/
public function get_order_by_groupcode($code, $order_id=0)
public function get_order_by_groupcode($code, $order_id=0, $vei_sn=0)
{
$vei_sn_sql = $vei_sn===0 ? " " : " AND COLD_PlanVEI_SN=$vei_sn ";
$sql = "SELECT COLI_SN,gri.GRI_SN,cold.COLD_PlanVEI_SN,cold.COLD_SN,coli.COLI_ID,
(select top 1 case gci_vendororderId when $order_id then gci_vendororderId else 0 end
from groupcombineinfo where gci_gri_sn=coli_gri_sn
@ -604,6 +605,7 @@ class Orders_model extends CI_Model {
coli.COLI_Memo,cold.COLD_MemoText
FROM BIZ_ConfirmLineInfo coli
inner join BIZ_ConfirmLineDetail cold on cold.COLD_COLI_SN=COLI_SN
$vei_sn_sql
left JOIN GRoupInfo gri ON coli.COLI_GRI_SN=gri.GRI_SN and GRI_OrderType=227002
WHERE (select OPI_DEI_SN from OperatorInfo where OPI_SN=COLI_OPI_ID)=30
and coli.COLI_State<>50 and coli.COLI_GroupCode LIKE '%$code%'

@ -1,7 +1,7 @@
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
define('PAY_OTHER','15017,15008,15006,15020');
define('PAY_OTHER','15006, 15017,15008,15006,15020');
class Vendor_money_model extends CI_Model {
@ -12,8 +12,9 @@ class Vendor_money_model extends CI_Model {
bcscale(4);
}
public function checked_group_list($vendor, $sourcetype, $start_date, $end_date, $all_vendor)
public function checked_group_list($vendor, $sourcetype, $start_date, $end_date, $all_vendor, $duplicate_gri)
{
$duplicate_gri = $duplicate_gri==='' ? 0 : $duplicate_gri;
$sql = "SELECT sum_opi.COLI_OPI_ID,sum(sum_opi.海纳收款) as trippest_sum,sum(sum_opi.地接社收款) as vendor_sum,
sum(sum_opi.other_price_RMB) as other_price_sum
, sum(sum_opi.other_cost_RMB) as other_cost_sum
@ -70,7 +71,7 @@ class Vendor_money_model extends CI_Model {
) as 海纳收款_origin,
(select isnull(SUM(GAI_SSJE),0) from BIZ_GroupAccountInfo
where DeleteFlag=0 and GAI_COLI_SN=COLI_SN
and GAI_VEI_SN=$vendor
and GAI_VEI_SN in ($vendor, 1343)
and GAI_Type in (" . PAY_OTHER . ")
) as 地接社收款
,coli.COLI_OPI_ID
@ -85,6 +86,7 @@ class Vendor_money_model extends CI_Model {
)
and CGI_Checked=1
and GRI_OrderType=227002
and COLI_SN not in ($duplicate_gri)
and exists (
select 1 from BIZ_ConfirmLineDetail where COLD_COLI_SN=coli.COLI_SN
and DeleteFlag=0
@ -165,6 +167,10 @@ class Vendor_money_model extends CI_Model {
WHERE CGI_Checked=1
AND CGI_GRI_SN=GCI_GRI_SN
AND CGI_ArriveDate BETWEEN '$start_date' AND '$end_date')
and not exists (
select 1 from GroupCombineInfo g2 where g2.GCI_combineNo=gci.GCI_combineNo
and g2.GCI_VEI_SN<>gci.GCI_VEI_SN
)
) AS group_cost
) as tmp
GROUP BY tmp.vendor_code ";
@ -224,8 +230,9 @@ class Vendor_money_model extends CI_Model {
return $query->result_array();
}
public function group_detail_list($vendor, $sourcetype, $start_date, $end_date, $all_vendor)
public function group_detail_list($vendor, $sourcetype, $start_date, $end_date, $all_vendor, $duplicate_gri)
{
$duplicate_gri = $duplicate_gri==='' ? 0 : $duplicate_gri;
$sql = "SELECT
(dbo.ConvertToRMB('USD',other_vendor_price)) as other_vendorprice_RMB,
case when other_vendor_price > 0 then
@ -265,7 +272,7 @@ class Vendor_money_model extends CI_Model {
) as vendor_income
,coli.COLI_OPI_ID
, gri.GRI_No
,(select SUM(isnull(tourcost,0)) from report_tour where ordernumber=COLI_ID and exists (
,(select ROUND(SUM(isnull(tourcost,0)),4) from report_tour where ordernumber=COLI_ID and exists (
select 1 from BIZ_ConfirmLineDetail where COLD_SN=RPT_COLD_SN
and COLD_PlanVEI_SN=$vendor
)
@ -290,6 +297,7 @@ class Vendor_money_model extends CI_Model {
)
and CGI_Checked=1
and GRI_OrderType=227002
and COLI_SN not in ($duplicate_gri)
and exists (
select 1 from BIZ_ConfirmLineDetail where COLD_COLI_SN=coli.COLI_SN
and DeleteFlag=0
@ -370,16 +378,18 @@ class Vendor_money_model extends CI_Model {
then TLD_total_price-HT_agency_receipt
else TLD_total_price-TLD_agency_receipt-HT_haina_receipt
end as 'HT_receipt_err' --海纳收差额 (账单减HT)'
,data_tmp.total_income-(round(HT_haina_receipt,1)+ ROUND(HT_agency_receipt,1)) as 'total_income_err' --'海纳收入差额'
,(select top 1 GCI_combineNo from groupcombineinfo where gci_gri_sn=data_tmp.GRI_SN) as combineNo
,* from
(
select
gri.GRI_Name,
ro.money total_income,
(select isnull(SUM(cast(GCI_priceCNY as decimal(10,2))),0) from GroupCombineInfo where GCI_GRI_SN=COLI_GRI_SN) as TLD_total_price,
(select isnull(SUM(cast(GCI_agencyReceipt as decimal(10,2))),0) from GroupCombineInfo where GCI_GRI_SN=COLI_GRI_SN) as TLD_agency_receipt,
(select isnull(SUM(cast(GAI_SSJE as decimal(10,2))),0) from BIZ_GroupAccountInfo where GAI_COLI_SN=COLI_SN
and GAI_Type in (" . PAY_OTHER . ")
and GAI_VEI_SN in ($all_vendor)
AND GAI_VEI_SN in ($all_vendor,1343) -- 图兰朵的代收
and DeleteFlag=0
) as HT_agency_receipt,
(select isnull(SUM(cast(GAI_SSJE as decimal(10,2))),0) from BIZ_GroupAccountInfo where GAI_COLI_SN=COLI_SN
@ -397,11 +407,12 @@ class Vendor_money_model extends CI_Model {
--CK_GroupInfo cgi inner join
GRoupInfo gri --on CGI_GRI_SN=GRI_SN
inner join BIZ_ConfirmLineInfo coli on COLI_GRI_SN=GRI_SN
and COLI_State not in (50)
inner join report_order ro on ro.ordernumber=COLI_ID
where 1=1
--and CGI_ArriveDate BETWEEN '$start_date' and '$end_date'
and exists (
select 1 from OperatorInfo where OPI_DEI_SN=30 and OPI_SN=COLI_OPI_ID
select 1 from OperatorInfo where OPI_SN=COLI_OPI_ID and (OPI_DEI_SN=30 or OPI_SN=435)
)
and ro.orderstats=1
and GRI_OrderType=227002
@ -415,6 +426,8 @@ class Vendor_money_model extends CI_Model {
where 1=1
-- 总团款不相等
and data_tmp.TLD_total_price-(HT_haina_receipt+HT_agency_receipt)<>0
-- 总收入和实收不相等
OR data_tmp.total_income-(round(HT_haina_receipt,1)+ ROUND(HT_agency_receipt,1))<>0
-- 地接代收不相等:同步
OR (
data_tmp.COLI_OPI_ID=435 and HT_haina_receipt<>0 and TLD_agency_receipt<>0
@ -439,6 +452,182 @@ class Vendor_money_model extends CI_Model {
return $query->result_array();
}
public function get_order_not_found_gci($start_date, $end_date, $all_vendor)
{
$sql = "SELECT *
from BIZ_ConfirmLineInfo coli
inner join GRoupInfo gri on gri.GRI_SN=COLI_GRI_SN
where COLI_OPI_ID=435 and ISNULL(COLI_SenderIP,'')=''
and not exists (
select 1 from GroupCombineInfo where GCI_GRI_SN=GRI_SN
)
and exists (
select 1 from BIZ_ConfirmLineDetail where COLD_COLI_SN=COLI_SN
and COLD_PlanVEI_SN in ($all_vendor)
and COLD_StartDate between '$start_date' and '$end_date'
)
and isnull(coli.DeleteFlag,0)=0
and COLI_IsSuccess=1
order by COLI_ApplyDate desc";
$query = $this->HT->query($sql);
return $query->result_array();
}
public function get_sync_price_cost($start_date, $end_date, $all_vendor)
{
$sql = "SELECT group_cost.GCI_VEI_SN vendor_code,
GCI_combineNo,
(SELECT isnull(SUM(CONVERT(float, isnull(gcod.GCOD_sumMoney,0))),0)
FROM GroupCombineOperationDetail gcod
WHERE gcod.GCOD_GCI_combineNo=GCI_combineNo
AND gcod.GCOD_operationType<> 'otherReceives'
) AS cost
,(select SUM(CONVERT(float, GCI_priceCNY)) from GroupCombineInfo where GCI_combineNo=group_cost.GCI_combineNo
) as receive_price
,(select SUM(CONVERT(float, GCI_agencyReceipt)) from GroupCombineInfo where GCI_combineNo=group_cost.GCI_combineNo
) as agency_receive_price
FROM
(SELECT case when gci.GCI_combineNo is null then '1'
when gci.GCI_combineNo='cancel' then convert(varchar(10),gci.GCI_SN)
else gci.GCI_combineNo end
as GCI_combineNo
,GCI_VEI_SN
FROM GroupCombineInfo gci
WHERE 1=1
AND GCI_VEI_SN IN ($all_vendor)
AND EXISTS
( SELECT 1
FROM CK_GroupInfo
WHERE CGI_Checked=1
AND CGI_GRI_SN=GCI_GRI_SN
AND CGI_ArriveDate BETWEEN '$start_date' AND '$end_date')
group by case when gci.GCI_combineNo is null then '1'
when gci.GCI_combineNo='cancel' then convert(varchar(10),gci.GCI_SN)
else gci.GCI_combineNo end
,GCI_VEI_SN
) AS group_cost
order by GCI_combineNo desc";
$query = $this->HT->query($sql);
return $query->result_array();
}
public function get_duplicate_vei_combineno($start_date, $end_date, $all_vendor)
{
$sql = "SELECT pure_group.*
,(select isnull(SUM(GAI_SSJE),0) from BIZ_GroupAccountInfo
where DeleteFlag=0 and GAI_GRI_SN=COLI_SN
and GAI_VEI_SN in ($all_vendor)
and GAI_Type in (" . PAY_OTHER . ")
) as vendor_sum
,(select isnull(SUM(GAI_SSJE),0) from BIZ_GroupAccountInfo
where DeleteFlag=0 and GAI_COLI_SN=COLI_SN
) as total_receipt
,(select isnull(SUM(GAI_SSJE),0) from BIZ_GroupAccountInfo
where DeleteFlag=0 and GAI_COLI_SN=COLI_SN
and GAI_Type not in (" . PAY_OTHER . ")
) as trippest_sum
,(
select SUM(tourcost)
from BIZ_ConfirmLineInfo
inner join GroupCombineInfo on COLI_GRI_SN=GCI_GRI_SN
inner join report_tour on ordernumber=COLI_ID
where 1=1
and GCI_VEI_SN in ($all_vendor)
and GCI_combineNo=pure_group.GCI_combineNo
and exists (
select 1 from VEndorInfo2 where VEI2_LGC=2
and VEI2_VEI_SN=GCI_VEI_SN and VEI2_CompanyBN=tourProvide
)
) as report_cost
,0 as other_price_sum,0 as other_cost_sum,0 as other_vendorprice_RMB_sum
from (SELECT GCI_combineNo
,(select top 1 GCI_VEI_SN from groupcombineinfo g1 where g1.gci_combineno=vendor_group.GCI_combineNo) as vendor1
,(select top 1 c.COLI_SN from groupcombineinfo g1
inner join BIZ_ConfirmLineInfo c on COLI_GRI_SN=GCI_GRI_SN
where g1.gci_combineno=vendor_group.GCI_combineNo
) as COLI_SN
,(select top 1 GRI_No from groupInfo inner join groupcombineinfo gc on gc.GCI_GRI_SN=GRI_SN where gc.gci_combineno=vendor_group.GCI_combineNo) as gri_no
,(SELECT isnull(SUM(CONVERT(float, isnull(gcod.GCOD_sumMoney,0))),0)
FROM GroupCombineOperationDetail gcod
WHERE gcod.GCOD_GCI_combineNo=GCI_combineNo
AND gcod.GCOD_operationType<> 'otherReceives'
) as pure_cost
from (
select GCI_combineNo ,GCI_VEI_SN
from GroupCombineInfo where 1=1
and GCI_VEI_SN in ($all_vendor)
AND EXISTS
( SELECT 1
FROM CK_GroupInfo
WHERE CGI_Checked=1
AND CGI_GRI_SN=GCI_GRI_SN
AND CGI_ArriveDate BETWEEN '$start_date' AND '$end_date')
group by GCI_combineNo, GCI_VEI_SN
) as vendor_group
group by vendor_group.GCI_combineNo
having COUNT(1)>1
) as pure_group";
$query = $this->HT->query($sql);
return $query->result_array();
}
public function report_tour_diff($start_date, $end_date, $all_vendor)
{
$sql = "SELECT * ,
(SELECT top 1 RPT_Total
FROM report_tour
WHERE 1=1
AND tourProvide=gci_vei_name
AND tourBZ LIKE '%'+REPLACE(gci_no,'[','[[]')+'%'
AND ( RPT_Total<>to_be_diff.report_total_cost0
OR RPT_Total<>to_be_diff.total_cost ) ) AS diff_report_total_cost0
FROM
(SELECT * ,
(SELECT isnull(SUM(CONVERT(float,gcod.GCOD_sumMoney)),0)
FROM GroupCombineOperationDetail gcod
WHERE GCOD_GCI_combineNo=all_gci_no.gci_no
AND gcod.GCOD_operationType <> 'otherReceives'
AND GCOD_VEI_SN=all_gci_no.GCI_VEI_SN
) AS total_cost ,
(SELECT isnull(round(SUM(isnull(tourcost,0)),2),0)
FROM report_tour
WHERE 1=1
AND tourProvide=gci_vei_name
AND tourBZ LIKE '%'+REPLACE(gci_no,'[','[[]')+'%'
) AS report_cost ,
(SELECT top 1 RPT_Total
FROM report_tour
WHERE 1=1
AND tourProvide=gci_vei_name
AND tourBZ LIKE '%'+REPLACE(gci_no,'[','[[]')+'%'
) AS report_total_cost0
FROM ( select
CASE WHEN GCI_combineNo is NULL THEN 'nn'
WHEN GCI_combineNo='cancel' THEN CONVERT(varchar(50), 'nn')
ELSE GCI_combineNo END gci_no ,
GCI_VEI_SN ,
(SELECT VEI2_CompanyBN
FROM VEndorInfo2
WHERE VEI2_VEI_SN=GCI_VEI_SN
AND VEI2_LGC=2 ) AS gci_vei_name
FROM GroupCombineInfo
WHERE GCI_travelDate
BETWEEN '$start_date'
AND '$end_date'
and GCI_VEI_SN in ($all_vendor)
and CHARINDEX('TA', GCI_combineNo ) = 0
GROUP BY GCI_combineNo,GCI_VEI_SN
) all_gci_no
) AS to_be_diff
WHERE CONVERT(decimal(10,2),to_be_diff.report_cost) <> to_be_diff.report_total_cost0
OR CONVERT(decimal(10,2),to_be_diff.total_cost) <> to_be_diff.report_total_cost0
OR CONVERT(decimal(10,2),to_be_diff.total_cost) <> round(to_be_diff.report_cost,2)
ORDER BY to_be_diff.GCI_VEI_SN
";
$query = $this->HT->query($sql);
return $query->result_array();
}
}
/* End of file vendor_money.php */

@ -30,6 +30,7 @@
.text-bold {font-weight: bold;}
.text-red {color: red;}
.cell-right {float: right;}
.bgred{ background-color: lightcoral;}
td a {cursor: pointer;}
</style>
</head>
@ -78,15 +79,18 @@
</div>
</form>
<p></p>
<table class="table table-bordered table-hover">
<thead>
<tr>
<th colspan="9" class="text-left">团款异常:</th>
<th colspan="10" class="text-left">团款异常:</th>
</tr>
<tr>
<th>HT团号</th>
<th>拼团号</th>
<th class="text-left">
总收入差额
<p>=&nbsp;财务表总收入&nbsp;-&nbsp;收款记录总额</p>
</th>
<th class="text-left">
总团款差额
<p>=&nbsp;账单总团款&nbsp;-&nbsp;(&nbsp;HT收款&nbsp;+&nbsp;HT代收&nbsp;)</p>
@ -107,25 +111,60 @@
</thead>
<tbody>
<?php if ( ! empty($price_error)) {
foreach ($price_error as $ko => $ep) { ?>
$col_sum = array(
"sum_total_income" => 0
,"sum_total_price" => 0
,"sum_agency_receipt" => 0
,"sum_HT_receipt" => 0
);
foreach ($price_error as $ko => $ep) {
$col_sum['sum_total_income'] = bcadd($col_sum['sum_total_income'], $ep['total_income_err']);
$col_sum['sum_total_price'] = bcadd($col_sum['sum_total_price'], $ep['total_price_err']);
$col_sum['sum_agency_receipt'] = bcadd($col_sum['sum_agency_receipt'], $ep['agency_receipt_err']);
$col_sum['sum_HT_receipt'] = bcadd($col_sum['sum_HT_receipt'], $ep['HT_receipt_err']);
?>
<tr>
<td class="text-left"><?php echo $ep['GRI_Name']; ?></td>
<td class="text-left"><?php echo $ep['combineNo']; ?></td>
<td>
<td <?php echo abs($ep['total_income_err'])<=1 ? "" : 'class=bgred';?> ><?php echo $ep['total_income_err']; ?></td>
<td <?php echo abs($ep['total_price_err'])<=1 ? "" : 'class=bgred';?> >
<?php echo $ep['total_price_err']; ?>
<!-- <p><?php // echo "=" . $ep['TLD_total_price'] . "-(" . $ep['HT_haina_receipt'] . "+" . $ep['HT_agency_receipt'] . ")"; ?></p> -->
</td>
<td><?php echo $ep['agency_receipt_err']; ?></td>
<td><?php echo $ep['HT_receipt_err']; ?></td>
<td <?php echo abs($ep['agency_receipt_err'])<=1 ? "" : 'class=bgred';?> ><?php echo $ep['agency_receipt_err']; ?></td>
<td <?php echo abs($ep['HT_receipt_err'])<=1 ? "" : 'class=bgred';?> ><?php echo $ep['HT_receipt_err']; ?></td>
<td><?php echo $ep['TLD_total_price']; ?></td>
<td><?php echo $ep['TLD_agency_receipt']; ?></td>
<td><?php echo $ep['HT_haina_receipt']; ?></td>
<td><?php echo $ep['HT_agency_receipt']; ?></td>
</tr>
<?php }
} ?>
<?php } ?>
<tr class="text-bold">
<td colspan="2">合计</td>
<td ><?php echo $col_sum['sum_total_income']; ?></td>
<td ><?php echo $col_sum['sum_total_price']; ?></td>
<td ><?php echo $col_sum['sum_agency_receipt']; ?></td>
<td ><?php echo $col_sum['sum_HT_receipt']; ?></td>
</tr>
<?php } ?>
</tbody>
</table>
<p></p>
<?php if ( ! empty($not_found)) { ?>
<table class="table table-bordered table-hover">
<thead>
<tr>
<th colspan="2" class="text-left">未找到同步的数据,需检查是否在账单中存在</th>
</tr>
</thead>
<tbody>
<?php foreach ($not_found as $kn => $vn) { ?>
<tr><?php echo $vn['COLI_ID']; ?></tr>
<tr><?php echo $vn['COLI_GroupCode']; ?></tr>
<?php } ?>
</tbody>
</table>
<?php } ?>
<?php if ( ! empty($error_msg)) { ?>
<p><?php echo $error_msg; ?></p>
@ -153,7 +192,11 @@
<?php }
} ?>
<?php if ( ! empty($ht_no_match)) {
foreach ($ht_no_match as $ko => $ht) { ?>
foreach ($ht_no_match as $ko => $ht) {
if ($ht['cost'] == 0) {
continue;
}
?>
<tr>
<td><?php echo $ht['GCI_combineNo']; ?></td>
<td><?php echo $ht['cost']; ?></td>
@ -162,7 +205,8 @@
<?php }
} ?>
<?php if ( ! empty($xls_no_match)) {
foreach ($xls_no_match as $ko => $xls) { ?>
foreach ($xls_no_match as $ko => $xls) {
?>
<tr>
<td><?php echo $xls['group_name']; ?></td>
<td>未找到</td>

@ -79,7 +79,7 @@
<thead>
<tr>
<th rowspan="2">目的地</th>
<th colspan="2">总营收</th>
<th colspan="3">总营收</th>
<th colspan="2">总成本</th>
<th rowspan="2">⑤利润</th>
<th rowspan="2">⑥海纳利润</th>
@ -89,8 +89,9 @@
<tr>
<th >①海纳代收</th>
<th >②地接代收</th>
<th rowspan="2">③海纳成本</th>
<th rowspan="2">④地接成本</th>
<th >①+②</th>
<th >③海纳成本</th>
<th >④地接成本</th>
</tr>
</thead>
<tbody>
@ -103,6 +104,7 @@
</td>
<td><?php echo $trippest['trippest']['trippest_sum'] ?></td>
<td><?php echo $trippest['trippest']['vendor_sum'] ?></td>
<td><?php echo bcadd($trippest['trippest']['trippest_sum'],$trippest['trippest']['vendor_sum']) ?></td>
<td><?php echo $trippest['trippest_cost'] ?></td>
<td><?php echo $trippest['vendor_cost'] ?></td>
<td><?php echo $trippest['trippest']['total_profit'] ?></td>
@ -149,6 +151,7 @@
<td class="text-left">合计(仅包价产品)</td>
<td><?php echo $col_sum['trippest']['sum_trippest_sum'] ?></td>
<td><?php echo $col_sum['trippest']['sum_vendor_sum'] ?></td>
<td><?php echo bcadd($col_sum['trippest']['sum_trippest_sum'],$col_sum['trippest']['sum_vendor_sum']); ?></td>
<td><?php echo $col_sum['trippest']['sum_trippest_cost'] ?></td>
<td><?php echo $col_sum['trippest']['sum_vendor_cost'] ?></td>
<td><?php echo $col_sum['trippest']['sum_profit'] ?></td>
@ -165,7 +168,7 @@
<th >总报价/USD</th>
<th >总收款/RMB</th>
<th >计入上表海纳收团款</th>
<th colspan="4">应扣除的其他地接收款: (实时计算, 存在汇率误差)</th>
<th colspan="5">应扣除的其他地接收款: (实时计算, 存在汇率误差)</th>
</tr>
<?php foreach ($trippest_order_multi_city as $ko => $order) {
?>
@ -177,13 +180,13 @@
<td ><?php echo bcsub($order['money_sum'],$order["other_vendorprice_RMB"]) ?>
<br> <?php echo ($order["vendor_name"]) ?>
</td>
<td colspan="4" class="text-left"><?php echo $order["other_vendorprice_RMB"] ?></td>
<td colspan="5" class="text-left"><?php echo $order["other_vendorprice_RMB"] ?></td>
</tr>
<?php } } ?>
<?php if ( ! empty($trippest_order_cost_debug)) {
?>
<tr class="text-bold">
<td colspan="9"></td>
<td colspan="10"></td>
</tr>
<tr class="text-bold bg-grey">
<th ><span class="text-red">成本异常,建议重新审核:</span> 订单号</th>
@ -191,7 +194,7 @@
<th >拼团人等</th>
<th >订单: 成人数 + 儿童数</th>
<th >订单成本</th>
<th colspan="4">财务表备注</th>
<th colspan="5">财务表备注</th>
</tr>
<?php foreach ($trippest_order_cost_debug as $ko => $order) {
?>
@ -201,93 +204,82 @@
<td ><?php echo $order['RPT_PersonGrade'] ?></td>
<td ><?php echo $order['tourRSd'] ?> + <?php echo $order['tourRSx'] ?></td>
<td ><?php echo $order['tourcost'] ?></td>
<td colspan="4" class="text-left"> <?php echo ($order["tourBZ"]) ?></td>
<td colspan="5" class="text-left"> <?php echo ($order["tourBZ"]) ?></td>
</tr>
<?php } } ?>
</tbody>
</table>
<!--
<p>旧的算法, 需扣除Trippest自营订单的地接代收款项:</p>
<p>同步数据:</p>
<table class="table table-bordered table-hover">
<thead>
<tr>
<th rowspan="2">目的地</th>
<th colspan="2">总营收</th>
<th colspan="2">总成本</th>
<th rowspan="2">⑤利润</th>
<th rowspan="2">⑥海纳利润</th>
<th rowspan="2">⑦地接利润</th>
<th rowspan="2">⑧海纳应付地接</th>
<th >目的地</th>
<th >总营收:①海纳代收+②地接代</th>
<th >成本:③海纳成本+④地接成本</th>
<th >⑤利润</th>
<th >⑥海纳利润</th>
<th >⑦地接利润</th>
<th >⑧海纳应付地接</th>
</tr>
<tr>
<!-- <tr>
<th >①海纳代收</th>
<th >②地接代收</th>
<th rowspan="2">③海纳成本</th>
<th rowspan="2">④地接成本</th>
</tr>
</tr> -->
</thead>
<tbody>
<?php if ( ! empty($money)) {
foreach ($money as $kv => $vendor) {
foreach ($money as $kv => $sync) {
?>
<tr>
<td class="text-left"><?php echo $vendor['vendor_name'] ?></td>
<td><?php echo $vendor['vendor']['trippest_sum'] ?></td>
<td><?php echo $vendor['vendor']['vendor_sum'] ?></td>
<td><?php echo $vendor['trippest_cost'] ?></td>
<td><?php echo $vendor['vendor_cost'] ?></td>
<td><?php echo $vendor['vendor']['total_profit'] ?></td>
<td><?php echo $vendor['vendor']['trippest_profit'] ?></td>
<td><?php echo $vendor['vendor']['vendor_profit'] ?></td>
<td><?php echo $vendor['vendor']['payout'] ?></td>
</tr>
<?php
if ($vendor['vendor']['other_sum'] > 0) {
?>
<tr class="bg-grey">
<td >非包价产品的收款 <br></td>
<td ><?php echo $vendor['vendor']['other_sum'] ?></td>
<td ></td>
<td ></td>
<td ><?php echo $vendor['vendor']['other_sum_cost'] ?></td>
<td ></td>
<td colspan="4"></td>
<td class="text-left"><?php echo $sync['vendor_name'] ?></td>
<!-- <td><?php //echo $sync['sync']['trippest_sum'] ?></td> -->
<td><?php echo $sync['sync']['price_sum'] ?></td>
<td><?php echo $sync['sync']['cost_sum'] ?></td>
<td><?php // echo $sync['vendor_cost'] ?></td>
<td><?php // echo $sync['sync']['total_profit'] ?></td>
<td><?php // echo $sync['sync']['trippest_profit'] ?></td>
<td><?php // echo $sync['sync']['vendor_profit'] ?></td>
</tr>
<?php
}
?>
<?php }
} ?>
<?php } }?>
<?php if ( ! empty($col_sum)) {
?>
<tr class="text-bold">
<td class="text-left">合计(仅包价产品)</td>
<td><?php echo $col_sum['vendor']['sum_trippest_sum'] ?></td>
<td><?php echo $col_sum['vendor']['sum_vendor_sum'] ?></td>
<td><?php echo $col_sum['vendor']['sum_trippest_cost'] ?></td>
<td><?php echo $col_sum['vendor']['sum_vendor_cost'] ?></td>
<td><?php echo $col_sum['vendor']['sum_profit'] ?></td>
<td><?php echo $col_sum['vendor']['sum_trippest_profit'] ?></td>
<td><?php echo $col_sum['vendor']['sum_vendor_profit'] ?></td>
<td><?php echo $col_sum['vendor']['sum_payout'] ?></td>
<td class="text-left">合计</td>
<!-- <td><?php //echo $col_sum['sync']['sum_trippest_sum'] ?></td> -->
<td><?php echo $col_sum['sync']['sum_price_sum'] ?></td>
<td><?php echo $col_sum['sync']['sum_cost_sum'] ?></td>
<td><?php // echo $col_sum['sync']['sum_vendor_cost'] ?></td>
<td><?php // echo $col_sum['sync']['sum_profit'] ?></td>
<td><?php // echo $col_sum['sync']['sum_trippest_profit'] ?></td>
<td><?php // echo $col_sum['sync']['sum_vendor_profit'] ?></td>
</tr>
<?php } ?>
<?php if ( ! empty($trippest_order_vendor_money)) {
?>
<tr class="text-bold">
<th colspan="2">团号</th>
<th colspan="7">应扣除地接收款: 总计 <?php echo $transfer_sum ?></th>
</tbody>
</table>
<?php if ( ! empty($diff_cost)) { ?>
<p>财务表成本与实际成本不一致, 检查是否需要重新生成账单:</p>
<table class="table table-bordered table-hover">
<thead>
<tr>
<th >拼团号</th>
<th >实际总成本</th>
<th >财务表总成本</th>
</tr>
<?php foreach ($trippest_order_vendor_money as $ko => $order) {
?>
</thead>
<tbody>
<?php foreach ($diff_cost as $kdc => $diff) { ?>
<tr>
<td colspan="2" class="text-left"><?php echo $order['COLI_GroupCode'] ?></td>
<td colspan="7" class="text-left"><?php echo $order["vendor_sum"] ?></td>
<td><?php echo $diff['gci_no'] ?></td>
<td><?php echo $diff['total_cost'] ?></td>
<td><?php echo $diff['report_total_cost0'] ?></td>
</tr>
<?php } } ?>
<?php } ?>
</tbody>
</table>
-->
<?php } ?>
</div>
</body>
<script src="/js/jquery.min.js" type="text/javascript"></script>

Loading…
Cancel
Save