diff --git a/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php b/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php index 57019c3b..77c2344d 100644 --- a/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php +++ b/webht/third_party/trippestOrderSync/controllers/TulanduoApi.php @@ -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' ); diff --git a/webht/third_party/trippestOrderSync/controllers/vendor_money.php b/webht/third_party/trippestOrderSync/controllers/vendor_money.php index cd4c2aee..e9e2198b 100644 --- a/webht/third_party/trippestOrderSync/controllers/vendor_money.php +++ b/webht/third_party/trippestOrderSync/controllers/vendor_money.php @@ -65,9 +65,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,6 +93,12 @@ 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"]; @@ -93,8 +112,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, @@ -116,24 +146,35 @@ 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'])) ; + foreach ($all_price_cost as $ks => $sync) { + if ($sync['vendor_code'] != $vendor || in_array($sync['GCI_combineNo'],$unique_sync_groupno)) { + $dumplicate_groupno[] = $sync; + continue; } - $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)); + $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,11 +186,16 @@ 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); @@ -171,29 +217,29 @@ 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']); } $this->load->view('vendor_money_sum', $result); return ; @@ -272,9 +318,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 +329,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(); diff --git a/webht/third_party/trippestOrderSync/models/vendor_money_model.php b/webht/third_party/trippestOrderSync/models/vendor_money_model.php index 01c5196e..b1866ed0 100644 --- a/webht/third_party/trippestOrderSync/models/vendor_money_model.php +++ b/webht/third_party/trippestOrderSync/models/vendor_money_model.php @@ -381,7 +381,7 @@ class Vendor_money_model extends CI_Model { (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 @@ -399,6 +399,7 @@ 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' @@ -443,6 +444,60 @@ 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 isnull(gci.GCI_combineNo,'1') 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 isnull(gci.GCI_combineNo,'1') + ,GCI_VEI_SN + ) AS group_cost + order by GCI_combineNo desc"; + $query = $this->HT->query($sql); + return $query->result_array(); + } + } /* End of file vendor_money.php */ diff --git a/webht/third_party/trippestOrderSync/views/order_report_precheck.php b/webht/third_party/trippestOrderSync/views/order_report_precheck.php index ab14e3a6..d3b9198c 100644 --- a/webht/third_party/trippestOrderSync/views/order_report_precheck.php +++ b/webht/third_party/trippestOrderSync/views/order_report_precheck.php @@ -78,11 +78,10 @@

- - + @@ -111,7 +110,18 @@ $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']); + ?> @@ -127,10 +137,33 @@ - + + + + + + + + + + +
团款异常:团款异常:
HT团号
合计
+

+ + + + + + + + + $vn) { ?> + + +
未找到同步的数据,需检查是否在账单中存在
+

@@ -158,7 +191,11 @@ $ht) { ?> + foreach ($ht_no_match as $ko => $ht) { + if ($ht['cost'] == 0) { + continue; + } + ?> @@ -167,7 +204,8 @@ $xls) { ?> + foreach ($xls_no_match as $ko => $xls) { + ?> 未找到 diff --git a/webht/third_party/trippestOrderSync/views/vendor_money_sum.php b/webht/third_party/trippestOrderSync/views/vendor_money_sum.php index 45ed8b27..6164a9ce 100644 --- a/webht/third_party/trippestOrderSync/views/vendor_money_sum.php +++ b/webht/third_party/trippestOrderSync/views/vendor_money_sum.php @@ -79,7 +79,7 @@ 目的地 - 总营收 + 总营收 总成本 ⑤利润 ⑥海纳利润 @@ -89,8 +89,9 @@ ①海纳代收 ②地接代收 - ③海纳成本 - ④地接成本 + ①+② + ③海纳成本 + ④地接成本 @@ -103,6 +104,7 @@ + @@ -146,9 +148,10 @@ - 合计(仅包价产品) + 合计(仅包价产品) + @@ -206,6 +209,53 @@ + +

同步数据:

+ + + + + + + + + + + + + + + $sync) { + ?> + + + + + + + + + + + + + + + + + + + + + + +
目的地总营收:①海纳代收+②地接代收总成本:③海纳成本+④地接成本⑤利润⑥海纳利润⑦地接利润⑧海纳应付地接
合计