diff --git a/api/controllers/plan/Xzcall.php b/api/controllers/plan/Xzcall.php
index 28239358..ed009fe9 100644
--- a/api/controllers/plan/Xzcall.php
+++ b/api/controllers/plan/Xzcall.php
@@ -180,28 +180,33 @@ class Xzcall extends HD_Controller
}
}
- //更新订单金融服务费
- public function up_srv_money()
- {
- $o_id = $this->input->get('id');
- $show = $this->input->get('show');
- $money = $this->input->get('money');
- $row = $this->orders_model->get(['id' => $o_id]);
- if (!$row) {
- return false;
- }
- if ($show) {
- print_r($row);
- }
- if ($money) {
- $money_json = json_decode($row['money_json'], true);
- $money_json['price_finance'] = 0;
- $up_data = [
- 'money_json' => json_encode($money_json, JSON_UNESCAPED_UNICODE)
- ];
- $res = $this->orders_model->update($up_data, ['id' => $row['id']]);
- var_dump($res);
-
+ //更新订单服务id
+ public function up_srv_ids(){
+ $this->load->model('receiver/receiver_service_package_model','package_model');
+ $page = $this->input->get('page');
+ $size = $this->input->get('size');
+ !$page && $page = 1;
+ !$size && $size = 20;
+ $where = [
+ 'pack_id>' => 0,
+ 'srv_ids' => ''
+ ];
+ $rows = $this->orders_model->select($where,'id asc',$page,$size);
+ if($rows){
+ foreach($rows as $item){
+ $pack = $this->package_model->get(['id'=>$item['pack_id']]);
+ $res = false;
+ if($pack){
+ $updata = [
+ 'srv_ids' => $pack['srv_ids']
+ ];
+ $res = $this->orders_model->update($updata,['id'=>$item['id']]);
+ }
+ $log = "{$item['id']}更新结果:{$res}";
+ echo $log;
+ }
+ }else{
+ echo "finish";
}
}
}
diff --git a/api/controllers/wxapp/app/Series.php b/api/controllers/wxapp/app/Series.php
index d576b18e..91c02e46 100644
--- a/api/controllers/wxapp/app/Series.php
+++ b/api/controllers/wxapp/app/Series.php
@@ -191,7 +191,8 @@ class Series extends Wxapp{
}
$data = [
'price' => $car['price_car'] ? $car['price_car'] : 0,
- 'deposit' => $car['price_book'] ? $car['price_book'] : 0
+ 'deposit' => $car['price_book'] ? $car['price_book'] : 0,
+ 'dis_money' => $car['price_car'] - $car['price_floor']
];
return $data;
}
diff --git a/api/controllers/wxapp/liche/Contract.php b/api/controllers/wxapp/liche/Contract.php
index 7edf7997..971d93f6 100644
--- a/api/controllers/wxapp/liche/Contract.php
+++ b/api/controllers/wxapp/liche/Contract.php
@@ -85,14 +85,14 @@ class Contract extends Wxapp{
$next_path = ''; //下一步合同
switch($type){
case 0: //整车
- $next_path = '/pages/mine/signContract/daiLi?id='.$row['id'];
+ $row['srv_ids'] && $next_path = '/pages/mine/signContract/daiLi?id='.$row['id'];
break;
case 1: //协议
break;
case 4://车辆买卖合同补充协议
$opt_row = $this->receiver_order_oplogs_model->select(['order_id'=>$row['id'],'type'=>3],'id desc',1,1);//最后修改日志
$opt_row = json_decode($opt_row[0]['log_json'],true);
- if($opt_row['pack_id']!=$row['pack_id']){
+ if($opt_row['srv_ids']!=$row['srv_ids']){
//需要签服务补充协议
$next_path = '/pages/mine/signContract/weiTuoBu?id='.$row['id'];
}
@@ -117,7 +117,7 @@ class Contract extends Wxapp{
$img = $this->input_param('img');
$row = $this->contracts_model->get(['type'=>$type,'o_id'=>$id]);
- $order = $this->orders_model->get(['id'=>$id],'brand_id,biz_id,ifentrust,pack_id,info_json');
+ $order = $this->orders_model->get(['id'=>$id],'brand_id,biz_id,ifentrust,srv_ids,info_json');
if(!$row['file'] || !$img){
throw new Exception('参数错误', API_CODE_INVILD_PARAM);
}
@@ -161,7 +161,7 @@ class Contract extends Wxapp{
switch($type){
case 0: //整车
$sign_img = array_pop($imgs);
- $height = $order['ifentrust'] ? 480 : 380;
+ $height = $order['ifentrust'] ? 610 : 520;
$jsondata['c_cardid'] && $height += 30;
$res = $sign_entity->merge($sign_img,$img,1070,$height,230);
if(!$res){
@@ -176,6 +176,9 @@ class Contract extends Wxapp{
];
$result = $this->contracts_model->update($update,['id'=>$row['id']]);
if($result){
+ if(!$order['srv_ids']){
+ $this->orders_entity->sign_after_v2($id,$this->session);
+ }
$redis->delete($cache_key);
throw new Exception('签名成功', API_CODE_SUCCESS);
}else{
@@ -184,8 +187,7 @@ class Contract extends Wxapp{
break;
case 1: //协议
$sign_img = array_pop($imgs);
- $package = $this->package_model->get(['id'=>$order['pack_id']],'srv_ids');
- $srv_count = $package ? count(explode(',',$package['srv_ids'])) : 0;
+ $srv_count = $order['srv_ids'] ? count(explode(',',$order['srv_ids'])) : 0;
$height = $order['ifentrust'] ? 1400 : 1280;
$jsondata['c_cardid'] && $height += 30;
$height += $srv_count*52;
@@ -277,7 +279,7 @@ class Contract extends Wxapp{
$redis->delete($cache_key);
$opt_row = $this->receiver_order_oplogs_model->select(['order_id'=>$id,'type'=>3],'id desc',1,1);//最后修改日志
$opt_row = json_decode($opt_row[0]['log_json'],true);
- if($opt_row['pack_id']==$order['pack_id']){
+ if($opt_row['srv_ids']==$order['srv_ids']){
//不需要签服务补充协议 完成重新补充协议签约
$this->orders_entity->finish_sp($id);
}
diff --git a/api/controllers/wxapp/liche/User.php b/api/controllers/wxapp/liche/User.php
index 01f73236..518d1e45 100644
--- a/api/controllers/wxapp/liche/User.php
+++ b/api/controllers/wxapp/liche/User.php
@@ -272,6 +272,8 @@ class User extends Wxapp{
$agent_count = $this->receiver_order_contracts_model->count(['o_id'=>$row['id'],'type' => 5,'status'=>1]); //服务补充协议
$opt_row = $this->receiver_order_oplogs_model->select(['order_id'=>$row['id'],'type'=>3],'id desc',1,1);//最后修改日志
$opt_row = json_decode($opt_row[0]['log_json'],true);
+ $opt_money_json = json_decode($opt_row['money_json'],true);
+ $money_json = json_decode($row['money_json'],true);
$this->load->library('receiver/orders_entity');
foreach($progress_arr as $key=>$val){
$imgs = [];
@@ -289,11 +291,10 @@ class User extends Wxapp{
$state = 0;
if(!$sign_row['status']){//未签名
if($sign_count>=2){ //需要签补充协议
- $diff_key_arr = ['s_id','v_id','cor_id','incor_id','pack_id']; //修改其中一项需要签补充协议
- if($opt_row['s_id']!=$row['s_id'] || $opt_row['v_id']!=$row['v_id'] || $opt_row['cor_id']!=$row['cor_id'] || $opt_row['incor_id']!=$row['incor_id'] || $opt_row['payway']!=$row['payway']){
+ if($opt_row['s_id']!=$row['s_id'] || $opt_row['v_id']!=$row['v_id'] || $opt_row['cor_id']!=$row['cor_id'] || $opt_row['incor_id']!=$row['incor_id'] || $opt_row['payway']!=$row['payway'] || $money_json['price_discount']!=$opt_money_json['price_discount']){
$need_resign_car = true; //需要签合同补充协议
}
- if($opt_row['pack_id']!=$row['pack_id']){
+ if($opt_row['srv_ids']!=$row['srv_ids']){
$need_resign_agent = true; //需要签服务补充协议
}
if($need_resign_car && !$car_count){
diff --git a/api/controllers/wxapp/licheb/Cusorder.php b/api/controllers/wxapp/licheb/Cusorder.php
index ba7f1d13..747116f0 100644
--- a/api/controllers/wxapp/licheb/Cusorder.php
+++ b/api/controllers/wxapp/licheb/Cusorder.php
@@ -26,6 +26,7 @@ class Cusorder extends Wxapp{
$this->load->model('receiver/order/receiver_order_ckcars_model','order_ckcars_model');
$this->load->model('receiver/order/receiver_order_contracts_model','order_contracts_model');
+ $this->load->model('receiver/receiver_fine_model');
$this->load->model('receiver/receiver_services_model','services_model');
$this->load->model('receiver/receiver_service_package_model','package_model');
@@ -56,7 +57,7 @@ class Cusorder extends Wxapp{
//创建订单
protected function post(){
-
+ $biz_id = $this->session['new_biz_id'] ? $this->session['new_biz_id'] : intval($this->session['biz_id']);
$cus_id = $this->input_param('cus_id');
$car_id = $this->input_param('car_id');
$color_id = $this->input_param('color_id');
@@ -65,7 +66,6 @@ class Cusorder extends Wxapp{
$price = $this->input_param('price');
$deposit = $this->input_param('deposit');
$payway = $this->input_param('payway');
- $pack_id = $this->input_param('pack_id');
$main_type = $this->input_param('main_type');
$ifentrust = $this->input_param('ifentrust');
$entrust_name = $this->input_param('entrust_name');
@@ -78,6 +78,9 @@ class Cusorder extends Wxapp{
$delry_time = $this->input_param('delry_time');
$finance_id = $this->input_param('finance_id');
$inten_money = floatval($this->input_param('inten_money'));//意向金
+ $disc_money = floatval($this->input_param('disc_money'));//优惠金额
+ $srv_ids = $this->input_param('srv_ids');
+ $fine_ids = $this->input_param('fine_ids');
$row = $this->customers_model->get(['id'=>$cus_id]);
$series_row = $this->auto_series_model->get(['id'=>$car_id]);
@@ -90,6 +93,12 @@ class Cusorder extends Wxapp{
if($inten_money > $deposit){
throw new Exception('意向金不得高于定金', ERR_PARAMS_ERROR);
}
+ $biz = $this->biz_model->get(['id'=>$row['biz_id']],'city_id,type');
+ if($biz['type'] == 1 || $biz['type']==2){ //直营店必须选择一个代办
+ if(!count($srv_ids)){
+ throw new Exception('请选择代办项目', ERR_PARAMS_ERROR);
+ }
+ }
//判断是否存在未完成流程
$omobile = $mobile ? $mobile : $row['mobile'];
$o_order = $this->orders_model->get_step($omobile);
@@ -101,6 +110,17 @@ class Cusorder extends Wxapp{
if(!$car_row){
throw new Exception('参数错误', API_CODE_FAIL);
}
+ $total_dis_money = $disc_money; //总优惠金额包含精品
+ if(is_array($fine_ids) && $fine_ids){
+ $fine_id_str = implode(',',$fine_ids);
+ $fine_rows = $this->receiver_fine_model->select(["id in ({$fine_id_str})" => null],'','','','id,price');
+ foreach($fine_rows as $item){
+ $total_dis_money += $item['price'];
+ }
+ }
+ if($disc_money && $car_row['price_floor'] > $price-$total_dis_money){
+ throw new Exception('车辆售价不得低于车辆底价,请重新填写优惠信息', API_CODE_FAIL);
+ }
if(!$payway){ //分期
$finance_row = $this->sys_finance_model->get(['id'=>$finance_id,'status'=>1]);
if(!$finance_row){
@@ -128,12 +148,8 @@ class Cusorder extends Wxapp{
'c_id' => $color_id,
'inc_id' => $incolor_id,
'v_id' => $v_id,
- 'color' => isset($color_row) ? $color_row : '',
- 'incolor' => isset($incolor_row) ? $incolor_row : '',
- 'version' => isset($version_row) ? $version_row : ''
];
- $biz_id = $this->session['new_biz_id'] ? $this->session['new_biz_id'] : intval($this->session['biz_id']);
$data = [
'rid' => $cus_id,
'sid' => create_order_no(350200,$this->app_key),
@@ -152,9 +168,10 @@ class Cusorder extends Wxapp{
'c_time' => time()
];
$payway && $data['payway'] = 1;
- $pack_id && $data['pack_id'] = $pack_id;
$main_type && $data['main_type'] = 1;
$delry_time && $data['delry_time'] = $delry_time;
+ $srv_ids && $data['srv_ids'] = implode(',',$srv_ids);
+ $fine_ids && $data['fine_ids'] = implode(',',$fine_ids);
$info_json = [];
if($ifentrust){
$data['ifentrust'] = 1;
@@ -171,20 +188,16 @@ class Cusorder extends Wxapp{
'price_book' => $car_row['price_book'],
'price_insure' => $car_row['price_insure'],
'price_fine' => $car_row['price_fine'],
+ 'price_discount' =>$disc_money ? $disc_money : 0
];
if(!$payway){
- if($series_row['brand_id']==4){ //哪吒品牌 金融服务费2000
- $money_json['price_finance'] = 2000;
- }else{
- $orders_entity = new Orders_entity();
- $money_json['price_finance'] = $orders_entity::PRICE_FINANCE;
- }
+ $orders_entity = new Orders_entity();
+ $money_json['price_finance'] = $series_row['brand_id'] == 4 ? $orders_entity::PRICE_FINANCE_NZ : $orders_entity::PRICE_FINANCE;
}
//获取挂牌价
if($series_row['brand_id']==3){ //狸车品牌写死挂牌费用0.01 测试用
$money_json['fee_carno'] = 0.01;
}else{
- $biz = $this->biz_model->get(['id'=>$row['biz_id']],'city_id');
$city = $this->sys_city_model->get(['city_id'=>$biz['city_id']],'fee_carno');
$money_json['fee_carno'] = $city['fee_carno'];
}
@@ -373,10 +386,8 @@ class Cusorder extends Wxapp{
$loan_status = $loan['status']>0 ? 2 : 1;
}
$pack_title = '';
- if($row['pack_id']){
- $pack_row = $this->package_model->get(['id'=>$row['pack_id']]);
- $srv_rows = '';
- $pack_row['srv_ids'] && $srv_rows = $this->services_model->select(["id in ({$pack_row['srv_ids']})"=>null],'','','','title');
+ if($row['srv_ids']){
+ $srv_rows = $this->services_model->select(["id in ({$row['srv_ids']})"=>null],'','','','title');
$srv_rows && $pack_title = implode('+',array_column($srv_rows,'title'));
}
$car_data = [
@@ -396,8 +407,8 @@ class Cusorder extends Wxapp{
}
$info_json['c_address'] && $car_data['地址'] = $info_json['c_address'];
$info_json['c_cardid'] && $car_data['身份证号'] = $info_json['c_cardid'];
+ $money_json = json_decode($row['money_json'],true);
if(!$row['payway']){
- $money_json = json_decode($row['money_json'],true);
$finance_row = $this->sys_finance_model->get(['id'=>$row['finance_id']],'title');
$car_data['金融产品'] = $finance_row['title'];
}
@@ -459,7 +470,11 @@ class Cusorder extends Wxapp{
'entrust_name' => $info_json['entrust_name'] ? $info_json['entrust_name']:'',
'entrust_idcard' => $info_json['entrust_idcard'] ? $info_json['entrust_idcard']:'',
'delry_time' => $row['delry_time']!='0000-00-00 00:00:00' ? date('Y-m-d',strtotime($row['delry_time'])):'',
- 'finance_id' => !$row['payway'] ? $row['finance_id'] : ''
+ 'finance_id' => !$row['payway'] ? $row['finance_id'] : '',
+ 'disc_money' => $money_json['price_discount'] ? $money_json['price_discount'] : '',
+ 'srv_ids' => $row['srv_ids'] ? explode(',',$row['srv_ids']) : [],
+ 'fine_ids' => $row['fine_ids'] ? explode(',',$row['fine_ids']) : [],
+ 'cus_id' => $row['rid']
];
$inten_money && $data['inten_money'] = $inten_money;
return $data;
diff --git a/api/controllers/wxapp/licheb/Cusorder2.php b/api/controllers/wxapp/licheb/Cusorder2.php
index f3b2d33b..a94fa6f9 100644
--- a/api/controllers/wxapp/licheb/Cusorder2.php
+++ b/api/controllers/wxapp/licheb/Cusorder2.php
@@ -21,6 +21,7 @@ class Cusorder2 extends Wxapp{
$this->load->model('receiver/receiver_customers_model','customers_model');
$this->load->model('receiver/order/receiver_orders_model','orders_model');
$this->load->model('receiver/order/receiver_order_contracts_model');
+ $this->load->model('receiver/receiver_fine_model');
$this->load->model('auto/auto_series_model');
$this->load->model('auto/auto_attr_model');
@@ -133,6 +134,9 @@ class Cusorder2 extends Wxapp{
$main_type = $this->input_param('main_type');
$delry_time = $this->input_param('delry_time');
$finance_id = $this->input_param('finance_id');
+ $disc_money = floatval($this->input_param('disc_money'));//优惠金额
+ $srv_ids = $this->input_param('srv_ids');
+ $fine_ids = $this->input_param('fine_ids');
$row = $this->orders_model->get(['id'=>$id]);
$series_row = $this->auto_series_model->get(['id'=>$car_id]);
@@ -143,6 +147,23 @@ class Cusorder2 extends Wxapp{
if($row['status']>2){ //车辆确认后不可修改
throw new Exception('修改失败,信息不可修改', ERR_PARAMS_ERROR);
}
+ $biz = $this->biz_model->get(['id'=>$row['biz_id']],'type');
+ if($biz['type'] == 1 || $biz['type']==2){ //直营店必须选择一个代办
+ if(!count($srv_ids)){
+ throw new Exception('请选择代办项目', ERR_PARAMS_ERROR);
+ }
+ }
+ $total_dis_money = $disc_money; //总优惠金额包含精品
+ if(is_array($fine_ids) && $fine_ids){
+ $fine_id_str = implode(',',$fine_ids);
+ $fine_rows = $this->receiver_fine_model->select(["id in ({$fine_id_str})" => null],'','','','id,price');
+ foreach($fine_rows as $item){
+ $total_dis_money += $item['price'];
+ }
+ }
+ if($disc_money && $car_row['price_floor'] > $car_row['price_car']-$total_dis_money){
+ throw new Exception('车辆售价不得低于车辆底价,请重新填写优惠信息', API_CODE_FAIL);
+ }
if(!$payway){ //分期
$finance_row = $this->sys_finance_model->get(['id'=>$finance_id,'status'=>1]);
if(!$finance_row){
@@ -185,6 +206,8 @@ class Cusorder2 extends Wxapp{
'price' => $car_row['price_car'],
'deposit' => $car_row['price_book'],
'payway' => $payway ? 1 : 0,
+ 'srv_ids' => implode(',',$srv_ids),
+ 'fine_ids' => implode(',',$fine_ids)
];
$pack_id && $data['pack_id'] = $pack_id;
$main_type && $data['main_type'] = 1;
@@ -197,13 +220,10 @@ class Cusorder2 extends Wxapp{
$money_json['price_book'] = $car_row['price_book'];
$money_json['price_insure'] = $car_row['price_insure'];
$money_json['price_fine'] = $car_row['price_fine'];
+ $money_json['price_discount'] = $disc_money;
$orders_entity = new Orders_entity();
if(!$payway){
- if($series_row['brand_id']==4){ //哪吒品牌 金融服务费2000
- $money_json['price_finance'] = 2000;
- }else{
- $money_json['price_finance'] = $orders_entity::PRICE_FINANCE;
- }
+ $money_json['price_finance'] = $series_row['brand_id'] == 4 ? $orders_entity::PRICE_FINANCE_NZ : $orders_entity::PRICE_FINANCE;
}
$data['money_json'] = json_encode($money_json,JSON_UNESCAPED_UNICODE);
diff --git a/api/controllers/wxapp/licheb/Customers.php b/api/controllers/wxapp/licheb/Customers.php
index b25b4212..cffcfc81 100644
--- a/api/controllers/wxapp/licheb/Customers.php
+++ b/api/controllers/wxapp/licheb/Customers.php
@@ -382,6 +382,7 @@ class Customers extends Wxapp
$name = $this->input_param('name');
$mobile = $this->input_param('mobile');
$cf_clues = $this->input_param('cf_clues');//线索来源
+ $admin_id = $this->input_param('admin_id');
!$page && $page = 1;
!$size && $size = 10;
@@ -422,6 +423,7 @@ class Customers extends Wxapp
}
}
$unuse && $where['admin_id'] = 0;
+ $admin_id && $where['admin_id'] = $admin_id;
strlen($istop) && $where['is_top'] = $istop;
strlen($if_driver) && $where['if_driver'] = 1;
strlen($status) && $where['status'] = $status;
diff --git a/api/controllers/wxapp/licheb/Fine.php b/api/controllers/wxapp/licheb/Fine.php
new file mode 100644
index 00000000..07aa353b
--- /dev/null
+++ b/api/controllers/wxapp/licheb/Fine.php
@@ -0,0 +1,43 @@
+login_white = array();//登录白名单
+ $this->check_status = array();//用户状态校验
+ $this->check_mobile = array();//需要手机号
+ $this->check_headimg =array();//授权微信信息
+
+ $this->load->model('receiver/receiver_fine_model');
+
+ }
+
+ protected function get(){
+ $page = $this->input_param('page');
+ $size = $this->input_param('size');
+ !$page && $page = 1;
+ !$size && $size = 20;
+
+ $where = [
+ 'status' => 1
+ ];
+ $count = $this->receiver_fine_model->count($where);
+ $list = $this->receiver_fine_model->select($where,'id desc',$page,$size,'id,title,price');
+ $data = [
+ 'list' => $list,
+ 'total' => $count
+ ];
+ return $data;
+ }
+
+}
diff --git a/api/controllers/wxapp/licheb/Protocol.php b/api/controllers/wxapp/licheb/Protocol.php
index d31a99dc..229cdd6d 100644
--- a/api/controllers/wxapp/licheb/Protocol.php
+++ b/api/controllers/wxapp/licheb/Protocol.php
@@ -17,9 +17,11 @@ class Protocol extends CI_Controller{
$this->load->model('receiver/order/receiver_order_agents_model','agents_model');
$this->load->model('receiver/order/receiver_order_loans_model','loans_model');
$this->load->model('receiver/order/receiver_order_ckcars_model','ckcars_model');
+ $this->load->model('receiver/order/receiver_order_oplogs_model');
+
+ $this->load->model('receiver/receiver_fine_model');
$this->load->model('receiver/receiver_service_package_model','package_model');
$this->load->model('receiver/receiver_services_model','services_model');
- $this->load->model('receiver/order/receiver_order_oplogs_model');
$this->load->model('auto/auto_series_model');
$this->load->model('auto/auto_brand_model');
@@ -29,7 +31,6 @@ class Protocol extends CI_Controller{
$this->load->model('area_model');
$this->load->model("sys/sys_company_model");
$this->load->model("items/items_model");
- $this->load->model('apporder/order_purchase_model','purchase_model');
$this->load->model('app/liche/app_liche_orders_model');
$wxapp = $this->input->get('wxapp');
@@ -42,6 +43,8 @@ class Protocol extends CI_Controller{
$row = $this->orders_model->get(['id'=>$id]);
$contract = $this->contracts_model->get(['o_id'=>$id,'type'=>0]);
if($row){
+ $money_json = json_decode($row['money_json'],true);
+ $money_json['price_discount'] && $row['price'] = $row['price'] - $money_json['price_discount'];
$brand = $this->auto_brand_model->get(['id'=>$row['brand_id']],'name');
$series = $this->auto_series_model->get(['id'=>$row['s_id']],'name');
$version = $this->auto_attr_model->get(['id'=>$row['v_id']],'title');
@@ -56,14 +59,12 @@ class Protocol extends CI_Controller{
$biz = $this->biz_model->get(['id'=>$row['biz_id']]);
$city = $this->area_model->get(['county_id'=>$biz['county_id']],'city_name,county_name');
$row['address'] = $city['city_name'].$city['county_name'].' '.$biz['address'] .'  '. $biz['biz_name'];
- if($row['brand_id']==4){ //哪吒品牌 公司固定厦门狸车销售公司
- $biz['company_id'] = 1;
- }
+ $row['brand_id'] == 4 && $biz['company_id'] = 1; //哪吒品牌 公司固定厦门狸车销售公司
+
$company = $this->sys_company_model->get(['id'=>$biz['company_id']]);
$row['company'] = $company;
//获取选择代办包
- $pack_row = $this->package_model->get(['id'=>$row['pack_id']],'srv_ids');
- $srv_total = count(explode(',',$pack_row['srv_ids']));
+ $srv_total = count(explode(',',$row['srv_ids']));
if($srv_total==4){
$row['give_time'] = 30;
}elseif($srv_total==3){
@@ -71,6 +72,13 @@ class Protocol extends CI_Controller{
}else{
$row['give_time'] = 60;
}
+ //获取精品
+ $fine_title = '无';
+ if($row['fine_ids']){
+ $fine_rows = $this->receiver_fine_model->select(["id in ({$row['fine_ids']})"=>null],'','','','title');
+ $fine_title = implode(',',array_column($fine_rows,'title'));
+ }
+ $row['fine_title'] = $fine_title;
}
$row['info_json'] = json_decode($row['info_json'],true);
$row['price_rmb'] = num_to_rmb($row['price']);
@@ -92,10 +100,8 @@ class Protocol extends CI_Controller{
//获取门店信息
$biz = $this->biz_model->get(['id'=>$row['biz_id']]);
$row['company'] = $this->sys_company_model->get(["title like '%服务%'"=>null,'status'=>1]);
- //获取选择代办包
- $pack_row = $this->package_model->get(['id'=>$row['pack_id']],'srv_ids');
- if($pack_row['srv_ids']){
- $services = $this->services_model->select(["id in ({$pack_row['srv_ids']})"=>null],'','','','title');
+ if($row['srv_ids']){
+ $services = $this->services_model->select(["id in ({$row['srv_ids']})"=>null],'','','','title');
}
$this->load->library('receiver/orders_entity');
$srv_price = $this->orders_entity->order_srv_money($row['id']);
@@ -144,13 +150,14 @@ class Protocol extends CI_Controller{
$items = $this->items_model->get(['id'=>$row['item_id']],'vin');
$total_price = 0;
if($row){
+ $money_json = json_decode($row['money_json'],true);
+ $money_json['price_discount'] && $row['price'] = $row['price'] - $money_json['price_discount'];
//贷款
if(!$row['payway']){
$row['loan'] = $this->loans_model->get(['o_id'=>$id]);
}
$brand = $this->auto_brand_model->get(['id'=>$row['brand_id']],'name');
$series = $this->auto_series_model->get(['id'=>$row['s_id']],'name');
- $money_json = json_decode($row['money_json'],true);
$row['info_json'] = $info_json = json_decode($row['info_json'],true);
$version = $this->auto_attr_model->get(['id'=>$row['v_id']],'title');
$color = $this->auto_attr_model->get(['id'=>$row['cor_id']],'title');
@@ -201,6 +208,9 @@ class Protocol extends CI_Controller{
$row['old_contract'] = $this->contracts_model->get(['o_id'=>$id,'type'=>0]); //买卖合同
$contract = $this->contracts_model->get(['o_id'=>$id,'type'=>4]);
if($row){
+ $money_json = json_decode($row['money_json'],true);
+ $money_json['price_discount'] && $row['price'] = $row['price'] - $money_json['price_discount'];
+
$brand = $this->auto_brand_model->get(['id'=>$row['brand_id']],'name');
$series = $this->auto_series_model->get(['id'=>$row['s_id']],'name');
$version = $this->auto_attr_model->get(['id'=>$row['v_id']],'title');
@@ -221,8 +231,7 @@ class Protocol extends CI_Controller{
$company = $this->sys_company_model->get(['id'=>$biz['company_id']]);
$row['company'] = $company;
//获取选择代办包
- $pack_row = $this->package_model->get(['id'=>$row['pack_id']],'srv_ids');
- $srv_total = count(explode(',',$pack_row['srv_ids']));
+ $srv_total = count(explode(',',$row['srv_ids']));
if($srv_total==4){
$row['give_time'] = 30;
}elseif($srv_total==3){
@@ -234,16 +243,25 @@ class Protocol extends CI_Controller{
//修改信息
$opt_row = $this->receiver_order_oplogs_model->select(['order_id'=>$row['id'],'type'=>3],'id desc',1,1);//最后修改日志
$opt_row = json_decode($opt_row[0]['log_json'],true);
+ $opt_money_json = json_decode($opt_row['money_json'],true);
+ $opt_money_json['price_discount'] && $opt_row['price'] - $opt_money_json['price_discount'];
+ $money_json = json_decode($row['money_json'],true);
+ $money_json['price_discount'] && $row['price'] - $money_json['price_discount'];
+ $b_price = num_to_rmb($row['price']);
+ $price = number_format($row['price'],2);
$logs = [];
if($opt_row){
$diff_key_arr = ['s_id','v_id','cor_id','incor_id'];
- $diff_car = false;
+ $diff_price = $diff_car = false;
foreach($diff_key_arr as $item){
if($opt_row[$item]!=$row[$item]){
- $diff_car = true;
+ $diff_price = $diff_car = true;
break;
}
}
+ if($money_json['price_discount']!=$opt_money_json['price_discount']){
+ $diff_price = true;
+ }
if($diff_car){
$brand = $this->auto_brand_model->get(['id'=>$row['brand_id']],'name');
$series = $this->auto_series_model->get(['id'=>$row['s_id']],'name');
@@ -265,11 +283,11 @@ class Protocol extends CI_Controller{
$old_incor = $attr_rows[$opt_row['incor_id']] ? $attr_rows[$opt_row['incor_id']][0]['title'] : '';
$new_car = "{$brand['name']}{$series['name']}{$version}{$cor}{$incor}";
$old_car = "{$old_brand['name']}{$old_series['name']}{$old_version}{$old_car}{$old_incor}";
- $b_price = num_to_rmb($row['price']);
- $price = number_format($row['price'],2);
$logs[0] = "购买车型由 {$old_car} 变更为 {$new_car}
车辆单价:{$price} 元 数量:1
车辆总价:{$price}元,{$b_price}
";
+ }
+ if($diff_price){
$old_price = number_format($opt_row['price'],2);
$logs[] = "车辆单价由 {$old_price} 变更为 {$price} 车辆总价:{$price}元, {$b_price}";
}
@@ -303,22 +321,13 @@ class Protocol extends CI_Controller{
//获取门店信息
$biz = $this->biz_model->get(['id'=>$row['biz_id']]);
$row['company'] = $this->sys_company_model->get(["title like '%服务%'"=>null,'status'=>1]);
- //获取选择代办包
- $pack_ids[] = $row['pack_id'];
- $pack_ids[] = $opt_row['pack_id'];
- $pack_ids_str = implode(',',$pack_ids);
- $pack_rows = $this->package_model->map('id','',["id in ($pack_ids_str)"=>null],'','','','id,srv_ids');
- if($pack_rows){
- $srv_ids_str = $pack_rows[$row['pack_id']][0]['srv_ids'];
- if($srv_ids_str){
- $service_rows = $this->services_model->select(["id in ({$srv_ids_str})"=>null],'','','','title');
- $services = implode(',',array_column($service_rows,'title'));
- }
- $old_srv_ids_str = $pack_rows[$opt_row['pack_id']][0]['srv_ids'];
- if($old_srv_ids_str){
- $service_rows = $this->services_model->select(["id in ({$old_srv_ids_str})"=>null],'','','','title');
- $old_services = implode(',',array_column($service_rows,'title'));
- }
+ if($row['srv_ids']){
+ $service_rows = $this->services_model->select(["id in ({$row['srv_ids']})"=>null],'','','','title');
+ $services = implode(',',array_column($service_rows,'title'));
+ }
+ if($opt_row['srv_ids']){
+ $service_rows = $this->services_model->select(["id in ({$opt_row['srv_ids']})"=>null],'','','','title');
+ $old_services = implode(',',array_column($service_rows,'title'));
}
$this->load->library('receiver/orders_entity');
$srv_price = $this->orders_entity->order_srv_money($row['id']);
diff --git a/api/controllers/wxapp/licheb/Services.php b/api/controllers/wxapp/licheb/Services.php
index 87d2a011..d6c553a9 100644
--- a/api/controllers/wxapp/licheb/Services.php
+++ b/api/controllers/wxapp/licheb/Services.php
@@ -15,6 +15,59 @@ class Services extends Wxapp{
$this->login_white = array('get_package');//登录白名单
$this->load->model('receiver/receiver_services_model','services_model');
$this->load->model('receiver/receiver_service_package_model','package_model');
+ $this->load->model('receiver/receiver_customers_model','customers_model');
+
+ $this->load->model('auto/auto_cars_model');
+ $this->load->model("biz/biz_model");
+ $this->load->model('sys/sys_city_model');
+ $this->load->library('receiver/orders_entity');
+ }
+ protected function get(){ //获取服务
+ $cus_id = $this->input_param('cus_id');
+ $s_id = $this->input_param('car_id');
+ $v_id = $this->input_param('v_id');
+ $payway = $this->input_param('payway');
+
+ $row = $this->customers_model->get(['id'=>$cus_id],'biz_id');
+ $car_row = $this->auto_cars_model->get(['s_id'=>$s_id,'v_id'=>$v_id,'status'=>1]);
+ $where = [];
+ $payway && $where['id !='] = 4; //全款不显示金融
+ $count = $this->services_model->count($where);
+ $list = [];
+ if($count){
+ $price_arr = [
+ 'price_insure' => floatval($car_row['price_insure']),
+ 'price_fine' => floatval($car_row['price_fine']),
+ ];
+
+ $orders_entity = new Orders_entity();
+ $price_arr['price_finance'] = $car_row['brand_id'] ==4 ? $orders_entity::PRICE_FINANCE_NZ : $orders_entity::PRICE_FINANCE;
+
+ //获取挂牌价
+ if($car_row['brand_id']==3){ //狸车品牌写死挂牌费用0.01 测试用
+ $price_arr['fee_carno'] = 0.01;
+ }else{
+ $biz = $this->biz_model->get(['id'=>$row['biz_id']],'id,city_id');
+ $city = $this->sys_city_model->get(['city_id'=>$biz['city_id']],'fee_carno');
+ $price_arr['fee_carno'] = floatval($city['fee_carno']);
+ }
+
+ $rows = $this->services_model->select($where,'','','','id,title,field_name');
+ foreach($rows as $key=>$val){
+ $field_arr = explode('.',$val['field_name']);
+ $list[] = [
+ 'id' => $val['id'],
+ 'title' => $val['title'],
+ 'price' => $price_arr[$field_arr[1]] ? $price_arr[$field_arr[1]] : 0
+ ];
+ }
+ }
+
+ $data = [
+ 'list' => $list,
+ 'total' => $count
+ ];
+ return $data;
}
//服务包
protected function get_package(){
diff --git a/api/controllers/wxapp/licheb/User.php b/api/controllers/wxapp/licheb/User.php
index 7ace06a3..561b4539 100644
--- a/api/controllers/wxapp/licheb/User.php
+++ b/api/controllers/wxapp/licheb/User.php
@@ -101,7 +101,7 @@ class User extends Wxapp
$user = $this->app_user_model->get(array('id' => $uid));
//获取所属店铺字段
- $biz = $this->biz_model->get(['id' => $biz_id, 'status' => 1], 'biz_name');
+ $biz = $this->biz_model->get(['id' => $biz_id, 'status' => 1], 'biz_name,type');
//判断门店是否存在
if (!$biz && $this->session['group_id'] < 4) {
$this->logout();
@@ -126,7 +126,8 @@ class User extends Wxapp
'group_id' => $user['group_id'],
'group_name' => $group_name,
'biz_id' => $biz_id,
- 'biz_name' => $biz['biz_name'] ? $biz['biz_name'] : ''
+ 'biz_name' => $biz['biz_name'] ? $biz['biz_name'] : '',
+ 'biz_type' => $biz['type'] ? $biz['type'] : ''
);
return $data;
@@ -335,6 +336,9 @@ class User extends Wxapp
!$page && $page = 1;
!$size && $size = 10;
+ if(!$biz_id){
+ $biz_id = $this->session['new_biz_id'] ? $this->session['new_biz_id'] : intval($this->session['biz_id']);
+ }
$where = [
'status' => 1,
'biz_id' => $biz_id
diff --git a/api/views/wxapp/licheb/html2pdf/car.php b/api/views/wxapp/licheb/html2pdf/car.php
index 6d5e3f48..ff712905 100644
--- a/api/views/wxapp/licheb/html2pdf/car.php
+++ b/api/views/wxapp/licheb/html2pdf/car.php
@@ -71,7 +71,7 @@
车辆单价为车身单价,续航里程为300KM以上的车辆已按扣减国家补贴后的价格结算。不包含车辆购置税、车辆保险费、挂牌杂费等其他费用。乙方如需委托甲方代理上牌、委托运输等服务的,双方应另外签订《委托服务协议》。
5、备注:如乙方购买续航里程为300KM以上车辆,上牌性质是公户或营运车辆需确保购买车辆自行驶证注册日期起1年之内行驶2万公里,且至车辆注册之日起2年内不得过户,如因违反此条约使甲方在申领国补过程中造成的损失,一切责任及后果由乙方承担。
1、甲方向乙方出售的车辆,应当不存在危及人身、财产安全的不合理的危险,符合保障人体健康和人身、财产安全的国家标准、行业标准,具备产品应当具备的使用性能等,符合注明采用的产品标准,符合以产品、实物样品等方式表明的质量状况。符合出厂检验标准,符合安全驾驶和说明书载明的使用要求。双方另有约定的情形除外。
1、若甲方逾期交车,自逾期之日起至实际交付之日,甲方按日向乙方支付车价款万分之伍的违约金,合同继续履行,逾期超过陆拾天,乙方有权解除合同。合同解除后,甲方应当自乙方解除合同之日起陆拾日内退还已付款。
1、双方应保证在合同中填写的姓名、地址、电话等内容真实有效,若有改变,应及时书面通知对方,否则由此造成的损失及相关责任由变更方负责。本合同约定的联系地址和联系方式,亦可作为司法送达的法定地址。
diff --git a/api/views/wxapp/licheb/protocol/car.php b/api/views/wxapp/licheb/protocol/car.php
index 0ca67ec9..f6ba8611 100644
--- a/api/views/wxapp/licheb/protocol/car.php
+++ b/api/views/wxapp/licheb/protocol/car.php
@@ -75,7 +75,7 @@