diff --git a/api/controllers/plan/Order.php b/api/controllers/plan/Order.php
index e0faddb4..5813c227 100644
--- a/api/controllers/plan/Order.php
+++ b/api/controllers/plan/Order.php
@@ -313,6 +313,130 @@ class Order extends CI_Controller{
}
}
+ /**更新订单的二手车标志
+ */
+ private function update_if_usedcar(){
+ $sql = 'update lc_receiver_orders_v2 set if_usedcar = 1 where if_usedcar = 0 and item_id in (select id from lc_items where vin in (
+ "LDP42A96XN9024652",
+ "LDP42A968N9024648",
+ "LDP42A967N9022809",
+ "LDP42A961N9024653",
+ "LDP42A965N9021917",
+ "LDP42A96XN9023405",
+ "LDP42A960N9018777",
+ "LDP42A963N9018840",
+ "LDP42A963N9030437",
+ "LDP42A966N9030299",
+ "LDP42A966N9030206",
+ "LDP42A969N9026604",
+ "LDP42A961N9029710",
+ "LDP42A960N9026443",
+ "LDP42A968N9025251",
+ "LDP42A962N9024676",
+ "LDP42A963N9022659",
+ "LDP42A964N9027059",
+ "LDP42A96XN9023484",
+ "LDP42A969N9027042",
+ "LDP42A96XN9025039",
+ "LDP42A960N9029696",
+ "LDP42A961N9018920",
+ "LDP42A966N9023417",
+ "LDP42A967N9029727",
+ "LDP42A960N9030055",
+ "LDP42A969N9030099",
+ "LDP42A968N9030420",
+ "LDP42A963N9030082",
+ "LDP42A963N9030390",
+ "LDP42A964N9020998",
+ "LDP42A967N9026830",
+ "LDP42A969N9026750",
+ "LDP42A967N9029663",
+ "LDP42A967N9018890",
+ "LDP42A968N9026836",
+ "LDP42A963N9030020",
+ "LDP42A96XN9030256",
+ "LDP42A960N9024868",
+ "LDP42A963N9029384",
+ "LDP42A967N9027850",
+ "LDP42A968N9030398",
+ "LDP42A96XN9030242",
+ "LDP42A967N9030229",
+ "LDP42A96XN9030239",
+ "LDP42A961N9030260",
+ "LDP42A961N9030047",
+ "LDP42A966N9030058",
+ "LDP42A96XN9030032",
+ "LDP42A965N9030102",
+ "LDP42A968N9030238",
+ "LDP42A964N9030253",
+ "LDP42A963N9029854",
+ "LDP42A963N9030051",
+ "LDP42A961N9030100",
+ "LDP42A962N9022670",
+ "LDP42A963N9030230",
+ "LDP42A967N9030215",
+ "LDP42A960N9030248",
+ "LDP42A963N9030079",
+ "LFZ63AL59ND051213",
+ "LFZ71AK58ND121148",
+ "LFZ71AK53ND121056",
+ "LFZ71AK50ND123072",
+ "LFZ71AK51ND123310",
+ "LFZ71AK55ND123312",
+ "LFZ71AK54ND123317",
+ "LFZ71AK56ND123318",
+ "LFZ71AK55ND123049",
+ "LFZ71AK55ND123116",
+ "LFZ71AK5XND123113",
+ "LFZ71AK57ND123117",
+ "LFZ71AK52ND123302",
+ "LFZ71AK51ND120729",
+ "LFZ71AK55ND120586",
+ "LFZ71AK50ND120589",
+ "LFZ71AK5XND102083",
+ "LFZ63AL52ND051263",
+ "LFZ63AL55ND051256",
+ "LFZ63AL59ND052846",
+ "LFZ63AL51ND052355",
+ "LFZ71AK58ND120775",
+ "LFZ63AL56ND050486",
+ "LFZ63AL52ND050484",
+ "LUZAGAAA5NA136091",
+ "LUZAGAAA6NA136018",
+ "LUZAGBGA8NA170829",
+ "LUZAGAGA0NA170446",
+ "LUZAGAGA9NA170476",
+ "LUZAGAGAXNA170440",
+ "LUZAGBGA9NA170869",
+ "LUZAGBGA7NA170885",
+ "LUZAGBGA6NA170845",
+ "LUZAGAGA1NA163358",
+ "LUZAGAGA2NA139845",
+ "LUZAGAGAXNA139852",
+ "LUZAGAGA2NA139831",
+ "LUZAGAGA9NA133279",
+ "LUZAGAGAXNA133260",
+ "LUZAGAGA3NA123699",
+ "LUZAGAGA0NA139830",
+ "LUZAGAGA4NA139846",
+ "LUZAGAGA0NA139875",
+ "LUZAGBGA6NA140681",
+ "LUZAGBGA6NA140678",
+ "LUZAGBGA9NA140724",
+ "LUZAGBGA3NA132473",
+ "LUZAGBGA8NA139581",
+ "LUZAGBGA2NA140774",
+ "LUZAGBGA9NA140738",
+ "LUZAGBGA8NA171253",
+ "LUZAGBGA6NA139403",
+ "LUZAGAAA1NA107154",
+ "LUZAGAAA9NA156327",
+ "LUZBGAFB6NA076697"
+ ))';
+ $this->receiver_orders_v2_model->db->query($sql);
+ $res = $this->receiver_orders_v2_model->db->affected_rows();
+ echo "update_if_usedcar rows: {$res}
";
+ }
/**
* 添加成本数据
* @return void
@@ -328,10 +452,15 @@ class Order extends CI_Controller{
$this->load->model('items/items_cost_model');
//$this->load->model('sys/sys_finance_model');
$this->load->model('sys/sys_supplier_model');
+
+ # 更新订单的二手车标志
+ $this->update_if_usedcar();
+
$page = $this->input->get('page');
$size = $this->input->get('size');
$id = $this->input->get('id');
$debug = $this->input->get('debug');
+ $recost = $this->input->get('recost');
!$page && $page = 1;
!$size && $size = 5;
!$debug && $where = [
@@ -348,6 +477,16 @@ class Order extends CI_Controller{
$where['(status = 1 or ( status = 0 and id in (select o_id from `lc_receiver_order_status` where (pid_status = 4 and `status` in (1,2)) or (pid_status = 3 and `status` = 1) group by o_id having count(distinct pid_status) = 2 )) or ( status = 0 and id in (select id from lc_receiver_orders_v2 where if_usedcar = 1 and bill_time > 0 )) )'] = null;
}
$rows = $this->receiver_orders_v2_model->select($where,'',$page,$size);
+ if ($recost){
+ $bill_time = $this->input->get('bill_time');
+ $where = array(
+ 'id in (select o_id from lc_items_cost)' => null,
+ );
+ $bill_time && $where["bill_time >= '{$bill_time}'"] = null;
+ $rows = $this->receiver_orders_v2_model->select($where,'',0,0);
+ echo "recost:
";
+ echo $this->receiver_orders_v2_model->db->last_query()."
";
+ }
if ($debug){
echo "debug mode start
get order_v2: {$id}
";
echo $this->receiver_orders_v2_model->db->last_query()."
";
@@ -367,11 +506,13 @@ class Order extends CI_Controller{
exit();*/
foreach ($rows as $item) {
+ $if_usedcar = $item['if_usedcar'];
$biz = $this->biz_model->get(['id'=>$item['biz_id']]);
if ($debug){
echo "finance_id: {$item['finance_id']}"."
";
echo "biz_id: {$item['biz_id']}"."
";
echo "status: {$item['status']}"."
";
+ echo "if_usedcar: {$if_usedcar}"."
";
echo "
";
echo "get biz:
";
@@ -394,6 +535,10 @@ class Order extends CI_Controller{
$bill_info['销货单位名称'] && $add_data['bill_name'] = $bill_info['销货单位名称'];
$bill_info['开票日期'] && $add_data['bill_time'] = $bill_info['开票日期'];
$bill_info['价税合计(小写)'] && $add_data['bill_price'] = str_replace('¥','',$bill_info['价税合计(小写)']);
+ if ($if_usedcar){
+ $add_data['bill_name'] = $bill_info['二手车市场'];
+ $add_data['bill_price'] = str_replace('¥','',$bill_info['车价合计(小写)']);
+ }
if ($debug){
echo "get bill_info:
";
echo $this->order_bills_model->db->last_query()."
";
@@ -611,18 +756,53 @@ class Order extends CI_Controller{
's_effect_time<=' => date('Y-m-t',strtotime($item['bill_time'])),
];
*/
- $where = [
- 'biz_id' => $item['biz_id'],
- 'type' => 1,
- 'status' => 1,
- 's_effect_time<=' => date('Y-m-d',strtotime($item['bill_time'])),
- ];
- $free_row = $this->biz_settle_srv_model->get($where);
- if ($debug){
- echo "get 挂牌配置 :
";
- echo $this->biz_settle_srv_model->db->last_query()."
";
- var_dump($free_row);
- echo "
";
+ $free_row = array();
+ if ($if_usedcar){
+ $where = [
+ 'biz_id' => $item['biz_id'],
+ 'type' => 1,
+ 'status' => 1,
+ 'title like "%二手车%"' => null,
+ 's_effect_time<=' => date('Y-m-d',strtotime($item['bill_time'])),
+ ];
+ $free_row = $this->biz_settle_srv_model->get($where);
+ if ($debug){
+ echo "get 挂牌配置(if_usedcar) :
";
+ echo $this->biz_settle_srv_model->db->last_query()."
";
+ var_dump($free_row);
+ echo "
";
+ }
+ if(!$free_row){
+ $where = ['biz_id'=>$item['biz_id'],
+ 'is_def'=>1,
+ 'status'=>1,
+ 'type'=>1,
+ 'title like "%二手车%"' => null,
+ ];
+ $free_row = $this->biz_settle_srv_model->get($where);
+ if ($debug){
+ echo "get 挂牌配置(if_usedcar)(默认) :
";
+ echo $this->biz_settle_srv_model->db->last_query()."
";
+ var_dump($free_row);
+ echo "
";
+ }
+ }
+ }
+
+ if(!$free_row){
+ $where = [
+ 'biz_id' => $item['biz_id'],
+ 'type' => 1,
+ 'status' => 1,
+ 's_effect_time<=' => date('Y-m-d',strtotime($item['bill_time'])),
+ ];
+ $free_row = $this->biz_settle_srv_model->get($where);
+ if ($debug){
+ echo "get 挂牌配置 :
";
+ echo $this->biz_settle_srv_model->db->last_query()."
";
+ var_dump($free_row);
+ echo "
";
+ }
}
if(!$free_row){
$free_row = $this->biz_settle_srv_model->get(['biz_id'=>$item['biz_id'],'is_def'=>1,'status'=>1,'type'=>1]);
@@ -735,6 +915,14 @@ class Order extends CI_Controller{
$pay_price = $sum['total_price'] ? $sum['total_price'] : 0;
$need_price = $this->orders_v2_entity->recevable_price($item['id'],$srv_price=true,$price_loan=false);
$srv_json['if_pay'] = $pay_price>=$need_price ? 1 : 0;
+ if ($recost){
+ # 已标记为齐款的,不能设置为0
+ $cost = $this->items_cost_model->get(array('o_id'=>$item['id']));
+ $srv_json_ = json_decode($cost['srv_json'], true);
+ if ($srv_json_['if_pay']){
+ $srv_json['if_pay'] = 1;
+ }
+ }
$add_data['srv_json'] = json_encode($srv_json,JSON_UNESCAPED_UNICODE);
if ($debug){
echo "get add_data :
";
@@ -746,16 +934,35 @@ class Order extends CI_Controller{
var_dump($cost);
echo "
";
echo "c_time: ".date("Y-m-d H:i:s",$cost['c_time'])."
";
+ echo "srv_json:
";
+ var_dump(json_decode($cost['srv_json'], true));
}
echo "
debug mode end
";
exit();
}
- $id = $this->items_cost_model->add($add_data);
+
+ if ($recost){
+ unset($add_data['c_time']);
+ $id = $this->items_cost_model->update($add_data, array('o_id' => $item['id']));
+ }
+ else{
+ $id = $this->items_cost_model->add($add_data);
+ }
if(is_numeric($id)){
$this->items_cost_model->update_total($id);
- echo "添加成功订单id:{$item['id']}
";
+ if ($recost){
+ echo "更新成功订单id:{$item['id']}
";
+ }
+ else{
+ echo "添加成功订单id:{$item['id']}
";
+ }
}else{
- echo "添加失败订单id:{$item['id']}
";
+ if ($recost){
+ echo "忽略更新订单id:{$item['id']}
";
+ }
+ else{
+ echo "添加失败订单id:{$item['id']}
";
+ }
}
}
}else{
@@ -767,7 +974,7 @@ class Order extends CI_Controller{
* 修复成本数据的非品牌店的水平业务
* @return void
*/
- public function cost_repair_spyw(){
+ private function cost_repair_spyw(){
$this->load->model("biz/biz_model");
$this->load->model('auto/auto_business_model');
$this->load->model('items/items_cost_model');