Explorar o código

complete car_base/car_body format

lionared %!s(int64=7) %!d(string=hai) anos
pai
achega
9cfaaf1cf8

+ 2 - 1
core/framework/libraries/model.php

@@ -139,7 +139,8 @@ class Model
         }
 
         $this->fields = $stFields;
-        return $this->fields[$table];
+//        return $this->fields[$table];
+        return true;
     }
 
     public static function fetchTablePkArray()

+ 7 - 0
crontab/control/command.php

@@ -19,6 +19,8 @@ require_once(BASE_ROOT_PATH . '/helper/account_helper.php');
 require_once(BASE_ROOT_PATH . '/data/mobile/lrlz_staff.php');
 require_once(BASE_ROOT_PATH . '/helper/search/tcp_client.php');
 require_once(BASE_ROOT_PATH . '/helper/room/factory_client.php');
+require_once(BASE_ROOT_PATH . '/helper/car_convert/importer.php');
+require_once(BASE_ROOT_PATH . '/helper/car_convert/formater.php');
 
 
 
@@ -216,4 +218,9 @@ class commandControl extends BaseCronControl
             }
         }
     }
+    public function init_carOp()
+    {
+        $import = new car_convert\importer("all", ";");
+        $import->run(BASE_ROOT_PATH . '/data/car/data_all.csv');
+    }
 }

A diferenza do arquivo foi suprimida porque é demasiado grande
+ 0 - 1
data/car/car_all.csv


+ 2 - 2
data/model/car.model.php

@@ -41,7 +41,7 @@ class carModel extends Model
 
     public function hasCar_id($car_id)
     {
-        $result = $this->table('car')->getby_car_id($car_id);
+        $result = $this->getby_car_id($car_id);
         if(!empty($result)) {
             return true;
         }
@@ -52,7 +52,7 @@ class carModel extends Model
 
     public function hasCar_name($car_name)
     {
-        $result = $this->table('car')->getby_car_name($car_name);
+        $result = $this->getby_car_name($car_name);
         if(!empty($result)) {
             return true;
         }

+ 0 - 286
helper/car_convert/audi.alias.php

@@ -1,286 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: lionared
- */
-return [
-    [ 'origin'=>'车系ID', 'alias'=>'series_id', 'table'=>'car'],
-    [ 'origin'=>'品牌',   'alias'=>'brand', 'table'=>'car'],
-    [ 'origin'=>'品牌图标', 'alias'=>'brand_logo', 'table'=>'car'],
-    [ 'origin'=>'国家',               'alias'=>'country', 'table'=>'car'],
-    [ 'origin'=>'车系',               'alias'=>'series', 'table'=>'car'],
-    [ 'origin'=>'生产方式',            'alias'=>'produce_type', 'table'=>'car'],
-    [ 'origin'=>'车系首页',            'alias'=>'series_home', 'table'=>'car'],
-    [ 'origin'=>'车型ID',              'alias'=>'type_id', 'table'=>'car'],
-    [ 'origin'=>'基本参数-车型名称',        'alias'=>'car_name', 'table'=>'car'],
-    [ 'origin'=>'基本参数-厂商指导价(元)',    'alias'=>'market_price', 'table'=>'car', 'formater'=>'price_formater'],
-    [ 'origin'=>'基本参数-厂商',          'alias'=>'manufacturer', 'table'=>'car'],
-    [ 'origin'=>'基本参数-级别',          'alias'=>'car_level', 'table'=>'car'],
-    [ 'origin'=>'基本参数-上市时间',          'alias'=>'market_time', 'table'=>'car'],
-    [ 'origin'=>'基本参数-发动机',         'alias'=>'engine', 'table'=>'car'],
-    [ 'origin'=>'基本参数-变速箱',         'alias'=>'gearbox', 'table'=>'car'],
-    [ 'origin'=>'基本参数-长*宽*高(mm)',    'alias'=>'car_size', 'table'=>'car'],
-    [ 'origin'=>'基本参数-车身结构',         'alias'=>'car_struct', 'table'=>'car'],
-    [ 'origin'=>'基本参数-最高车速(km/h)',             'alias'=>'max_speed', 'table'=>'car'],
-    [ 'origin'=>'基本参数-官方0-100km/h加速(s)',        'alias'=>'official_speedup', 'table'=>'car'],
-    [ 'origin'=>'基本参数-实测0-100km/h加速(s)',        'alias'=>'actual_speedup', 'table'=>'car'],
-    [ 'origin'=>'基本参数-实测100-0km/h制动(m)',        'alias'=>'actual_brake', 'table'=>'car'],
-    [ 'origin'=>'基本参数-实测油耗(L/100km)',           'alias'=>'actual_fueluse', 'table'=>'car'],
-    [ 'origin'=>'基本参数-工信部综合油耗(L/100km)',      'alias'=>'gerenal_fueluse', 'table'=>'car'],
-    [ 'origin'=>'基本参数-实测离地间隙(mm)',            'alias'=>'actual_ground', 'table'=>'car'],
-    [ 'origin'=>'基本参数-整车质保',        'alias'=>'quality_guarantee', 'table'=>'car'],
-    [ 'origin'=>'基本参数-能源类型',        'alias'=>'energy_type', 'table'=>'car'],
-    [ 'origin'=>'基本参数-最大功率(kW)',    'alias'=>'max_power', 'table'=>'car'],
-    [ 'origin'=>'基本参数-最大扭矩(N・m)',   'alias'=>'max_torque', 'table'=>'car'],
-
-    //[ 'origin'=>'基本参数-纯电续航里程',      'alias'=>'electric_cruise', 'table'=>'car'],
-    //[ 'origin'=>'基本参数-电池充电时间',      'alias'=>'electric_power', 'table'=>'car'],
-    //[ 'origin'=>'基本参数-快充电量百分比',     'alias'=>'fast_charge', 'table'=>'car'],
-
-    [ 'origin'=>'车身-长度(mm)',               'alias'=>'length', 'table'=>'car_body'],
-    [ 'origin'=>'车身-宽度(mm)',               'alias'=>'width', 'table'=>'car_body'],
-    [ 'origin'=>'车身-高度(mm)',               'alias'=>'height', 'table'=>'car_body'],
-    [ 'origin'=>'车身-轴距(mm)',               'alias'=>'shaft_distance', 'table'=>'car_body'],
-    [ 'origin'=>'车身-前轮距(mm)',               'alias'=>'front_wheels_gap', 'table'=>'car_body'],
-    [ 'origin'=>'车身-后轮距(mm)',               'alias'=>'back_wheels_gap', 'table'=>'car_body'],
-    [ 'origin'=>'车身-最小离地间隙(mm)',               'alias'=>'min_ground', 'table'=>'car_body'],
-    [ 'origin'=>'车身-整备质量(kg)',               'alias'=>'total_weight', 'table'=>'car_body'],
-    [ 'origin'=>'车身-车身结构',               'alias'=>'body_struct', 'table'=>'car_body'],
-    [ 'origin'=>'车身-车门数(个)',               'alias'=>'doors', 'table'=>'car_body'],
-    [ 'origin'=>'车身-座位数(个)',               'alias'=>'seats', 'table'=>'car_body'],
-    [ 'origin'=>'车身-油箱容积(L)',               'alias'=>'fuel_vol', 'table'=>'car_body'],
-    [ 'origin'=>'车身-行李厢容积(L)',               'alias'=>'cargo_vol', 'table'=>'car_body'],
-    [ 'origin'=>'车身-后排车门开启方式',               'alias'=>'open_type', 'table'=>'car_body'],
-    [ 'origin'=>'车身-货箱尺寸(mm)',               'alias'=>'cargo_size', 'table'=>'car_body'],
-    [ 'origin'=>'车身-最大载重质量(kg)',               'alias'=>'carry_cap', 'table'=>'car_body'],
-
-    [ 'origin'=>'发动机-发动机型号', 'alias'=>'type', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-排量(mL)', 'alias'=>'cc', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-进气形式', 'alias'=>'air_intake', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-气缸排列形式', 'alias'=>'cylinder_arrange', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-气缸数(个)', 'alias'=>'cylinders', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-每缸气门数(个)', 'alias'=>'valves', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-压缩比', 'alias'=>'compress_rate', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-配气机构', 'alias'=>'valve_machanism', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-缸径(mm)', 'alias'=>'cylinder_radius', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-行程(mm)', 'alias'=>'stroke', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-最大马力(Ps)', 'alias'=>'engine_hp', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-最大功率(kW)', 'alias'=>'engine_power', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-最大功率转速(rpm)', 'alias'=>'engine_rpm', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-最大扭矩(N・m)', 'alias'=>'engine_torque', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-最大扭矩转速(rpm)', 'alias'=>'torque_rpm', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-发动机特有技术', 'alias'=>'tech_spec', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-燃料形式', 'alias'=>'energy_type', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-燃油标号', 'alias'=>'roz', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-供油方式', 'alias'=>'oil_drive', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-缸盖材料', 'alias'=>'cylinder_cover', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-缸体材料', 'alias'=>'cylinder_body', 'table'=>'car_engine'],
-    [ 'origin'=>'发动机-环保标准', 'alias'=>'environmental_standard', 'table'=>'car_engine'],
-
-    [ 'origin'=>'电动机-电机类型', 'alias'=>'motor_type', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-电动机总功率(kW)', 'alias'=>'motor_power', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-电动机总扭矩(N・m)', 'alias'=>'motor_torque', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-前电动机最大功率(kW)', 'alias'=>'motor_front_power', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-前电动机最大扭矩(N・m)', 'alias'=>'motor_front_torque', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-后电动机最大功率(kW)', 'alias'=>'motor_back_power', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-后电动机最大扭矩(N・m)', 'alias'=>'motor_back_torque', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-系统综合功率(kW)', 'alias'=>'sys_power', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-系统综合扭矩(N・m)', 'alias'=>'sys_torque', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-驱动电机数', 'alias'=>'motor_num', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-电机布局', 'alias'=>'motor_arrange', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-电池类型', 'alias'=>'bat_type', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-工信部续航里程(km)', 'alias'=>'mileage', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-电池容量(kWh)', 'alias'=>'bat_cap', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-百公里耗电量(kWh/100km)', 'alias'=>'bat_use', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-电池组质保', 'alias'=>'bat_guarantee', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-电池充电时间', 'alias'=>'bat_charge', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-快充电量(%)', 'alias'=>'fast_charge', 'table'=>'car_motor'],
-    [ 'origin'=>'电动机-充电桩价格', 'alias'=>'charge_pile_price', 'table'=>'car_motor'],
-
-    [ 'origin'=>'变速箱-简称', 'alias'=>'gearbox_name', 'table'=>'car_gearbox'],
-    [ 'origin'=>'变速箱-挡位个数', 'alias'=>'gears_num', 'table'=>'car_gearbox'],
-    [ 'origin'=>'变速箱-变速箱类型', 'alias'=>'gears_type', 'table'=>'car_gearbox'],
-
-    [ 'origin'=>'底盘转向-驱动方式', 'alias'=>'drive_method', 'table'=>'car_underpan'],
-    [ 'origin'=>'底盘转向-前悬架类型', 'alias'=>'susp_front_type', 'table'=>'car_underpan'],
-    [ 'origin'=>'底盘转向-后悬架类型', 'alias'=>'susp_back_type', 'table'=>'car_underpan'],
-    [ 'origin'=>'底盘转向-助力类型', 'alias'=>'assist_type', 'table'=>'car_underpan'],
-    [ 'origin'=>'底盘转向-车体结构', 'alias'=>'structure', 'table'=>'car_underpan'],
-    [ 'origin'=>'底盘转向-四驱形式', 'alias'=>'four_wheel_drive', 'table'=>'car_underpan'],
-    [ 'origin'=>'底盘转向-中央差速器结构', 'alias'=>'central_diff', 'table'=>'car_underpan'],
-
-    [ 'origin'=>'车轮制动-前制动器类型', 'alias'=>'front_brake', 'table'=>'car_brake'],
-    [ 'origin'=>'车轮制动-后制动器类型', 'alias'=>'back_brake', 'table'=>'car_brake'],
-    [ 'origin'=>'车轮制动-驻车制动类型', 'alias'=>'park_brake', 'table'=>'car_brake'],
-    [ 'origin'=>'车轮制动-前轮胎规格', 'alias'=>'front_wheel_size', 'table'=>'car_brake'],
-    [ 'origin'=>'车轮制动-后轮胎规格', 'alias'=>'back_wheel_size', 'table'=>'car_brake'],
-    [ 'origin'=>'车轮制动-备胎规格', 'alias'=>'backup_wheel', 'table'=>'car_brake'],
-
-    [ 'origin'=>'主/被动安全装备-主驾驶座安全气囊', 'alias'=>'prim_srs', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-副驾驶座安全气囊', 'alias'=>'vice_srs', 'table'=>'car_secure'],
-    //[ 'origin'=>'主/被动安全装备-前/后排侧气囊', 'alias'=>'secure2', 'table'=>'car_secure'],
-    //[ 'origin'=>'主/被动安全装备-前/后排头部气囊(气帘)', 'alias'=>'secure3', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-膝部气囊', 'alias'=>'knee_srs', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-胎压监测装置', 'alias'=>'tire_pres_monitor', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-零胎压继续行驶', 'alias'=>'zero_tire_pres', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-安全带未系提示', 'alias'=>'unbelt_notice', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-ISOFIX儿童座椅接口', 'alias'=>'isofix', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-ABS防抱死', 'alias'=>'anti_lock', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-制动力分配(EBD/CBC等)', 'alias'=>'bfd', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-刹车辅助(EBA/BAS/BA等)', 'alias'=>'bas', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-牵引力控制(ASR/TCS/TRC等)', 'alias'=>'tcs', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-车身稳定控制(ESC/ESP/DSC等)', 'alias'=>'stable_control', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-并线辅助', 'alias'=>'bsa', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-车道偏离预警系统', 'alias'=>'ldw', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-主动刹车/主动安全系统', 'alias'=>'abs', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-夜视系统', 'alias'=>'nvs', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-疲劳驾驶提示', 'alias'=>'tired_drive', 'table'=>'car_secure'],
-    //[ 'origin'=>'主/被动安全装备-主/副驾驶座安全气囊', 'alias'=>'secure19', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-前排侧气囊', 'alias'=>'front_side_airbag', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-后排侧气囊', 'alias'=>'back_side_airbag', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-前排头部气囊(气帘)', 'alias'=>'front_head_airbag', 'table'=>'car_secure'],
-    [ 'origin'=>'主/被动安全装备-后排头部气囊(气帘)', 'alias'=>'back_head_airbag', 'table'=>'car_secure'],
-
-    [ 'origin'=>'辅助/操控配置-前驻车雷达', 'alias'=>'frontp_radar', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-后驻车雷达', 'alias'=>'backp_radar', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-倒车视频影像', 'alias'=>'reverse_video', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-全景摄像头', 'alias'=>'panorama', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-定速巡航', 'alias'=>'cruise_ctrl', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-自适应巡航', 'alias'=>'self_adpt_cruise', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-自动泊车入位', 'alias'=>'auto_park_in', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-发动机启停技术', 'alias'=>'engine_start_stop', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-自动驾驶技术', 'alias'=>'auto_drive', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-上坡辅助', 'alias'=>'hac', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-自动驻车', 'alias'=>'auto_park', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-陡坡缓降', 'alias'=>'hdc', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-可变悬架', 'alias'=>'variable_susp', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-空气悬架', 'alias'=>'air_susp', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-电磁感应悬架', 'alias'=>'e_susp', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-可变转向比', 'alias'=>'vgrs', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-前桥限滑差速器/差速锁', 'alias'=>'front_diff_lock', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-中央差速器锁止功能', 'alias'=>'central_diff_lock', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-后桥限滑差速器/差速锁', 'alias'=>'back_diff_lock', 'table'=>'car_oper'],
-    [ 'origin'=>'辅助/操控配置-整体主动转向系统', 'alias'=>'ads', 'table'=>'car_oper'],
-    //[ 'origin'=>'辅助/操控配置-前/后驻车雷达', 'alias'=>'oper20', 'table'=>'car_oper'],
-
-    [ 'origin'=>'外部/防盗配置-电动天窗', 'alias'=>'e_sunroof', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-全景天窗', 'alias'=>'pano_sunroof', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-多天窗', 'alias'=>'sunroofs', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-运动外观套件', 'alias'=>'sport_package', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-铝合金轮圈', 'alias'=>'alloy_wheel', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-电动吸合门', 'alias'=>'e_suction_door', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-侧滑门', 'alias'=>'slide_door', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-电动后备厢', 'alias'=>'e_cargo', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-感应后备厢', 'alias'=>'react_cargo', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-车顶行李架', 'alias'=>'roof_rack', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-发动机电子防盗', 'alias'=>'engine_e_guard', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-车内中控锁', 'alias'=>'e_ctrl_lock', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-遥控钥匙', 'alias'=>'remote_key', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-无钥匙启动系统', 'alias'=>'keyless_start', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-无钥匙进入系统', 'alias'=>'keyless_enter', 'table'=>'car_guard'],
-    [ 'origin'=>'外部/防盗配置-远程启动', 'alias'=>'remote_start', 'table'=>'car_guard'],
-
-    [ 'origin'=>'内部配置-皮质方向盘', 'alias'=>'leather_steering', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-方向盘调节', 'alias'=>'steer_adjt', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-方向盘电动调节', 'alias'=>'steer_e_adjt', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-多功能方向盘', 'alias'=>'functional_steer', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-方向盘换挡', 'alias'=>'steer_shift', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-方向盘加热', 'alias'=>'steer_heat', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-方向盘记忆', 'alias'=>'steer_mem', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-行车电脑显示屏', 'alias'=>'computer_scr', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-全液晶仪表盘', 'alias'=>'lcd_panel', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-HUD抬头数字显示', 'alias'=>'hud', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-内置行车记录仪', 'alias'=>'car_dvr', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-主动降噪', 'alias'=>'anc', 'table'=>'car_inside'],
-    [ 'origin'=>'内部配置-手机无线充电', 'alias'=>'wireless_charge', 'table'=>'car_inside'],
-
-    [ 'origin'=>'座椅配置-座椅材质', 'alias'=>'seat_mat', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-运动风格座椅', 'alias'=>'sport_seat', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-座椅高低调节', 'alias'=>'height_adjt', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-腰部支撑调节', 'alias'=>'lumbar_support', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-肩部支撑调节', 'alias'=>'shoulder_support', 'table'=>'car_seat'],
-    //[ 'origin'=>'座椅配置-主/副驾驶座电动调节', 'alias'=>'seat5', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-第二排靠背角度调节', 'alias'=>'snd_backrest_adjt', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-第二排座椅移动', 'alias'=>'snd_seat_mv', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-后排座椅电动调节', 'alias'=>'back_seat_adjt', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-副驾驶位后排可调节按钮', 'alias'=>'vice_adjt_btn', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-电动座椅记忆', 'alias'=>'e_seat_mem', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-前排座椅加热', 'alias'=>'front_seat_heat', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-后排座椅加热', 'alias'=>'back_seat_heat', 'table'=>'car_seat'],
-    //[ 'origin'=>'座椅配置-前/后排座椅通风', 'alias'=>'seat13', 'table'=>'car_seat'],
-    //[ 'origin'=>'座椅配置-前/后排座椅按摩', 'alias'=>'seat14', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-第二排独立座椅', 'alias'=>'snd_row_seat', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-第三排座椅', 'alias'=>'third_row_seat', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-后排座椅放倒方式', 'alias'=>'back_seat_down', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-前中央扶手', 'alias'=>'front_handrail', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-后中央扶手', 'alias'=>'back_handrail', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-后排杯架', 'alias'=>'back_cup_hold', 'table'=>'car_seat'],
-    //[ 'origin'=>'座椅配置-可加热/制冷杯架', 'alias'=>'seat21', 'table'=>'car_seat'],
-    //[ 'origin'=>'座椅配置-前/后排座椅加热', 'alias'=>'seat22', 'table'=>'car_seat'],
-    //[ 'origin'=>'座椅配置-前/后中央扶手', 'alias'=>'seat23', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-主驾驶座电动调节', 'alias'=>'prim_e_adjt', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-副驾驶座电动调节', 'alias'=>'vice_e_adjt', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-前排座椅通风', 'alias'=>'front_vent', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-后排座椅通风', 'alias'=>'back_vent', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-前排座椅按摩', 'alias'=>'front_masg', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-后排座椅按摩', 'alias'=>'back_masg', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-可加热冷杯架', 'alias'=>'can_heat_cup', 'table'=>'car_seat'],
-    [ 'origin'=>'座椅配置-可加制冷杯架', 'alias'=>'can_cold_cup', 'table'=>'car_seat'],
-
-    [ 'origin'=>'多媒体配置-GPS导航系统', 'alias'=>'gps', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-定位互动服务', 'alias'=>'gps_interact', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-中控台彩色大屏', 'alias'=>'colorful_scr', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-中控台彩色大屏尺寸', 'alias'=>'colorful_scr_size', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-中控液晶屏分屏显示', 'alias'=>'lcd_sep', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-蓝牙/车载电话', 'alias'=>'blueteeth', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-手机互联/映射', 'alias'=>'mobile_map', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-车联网', 'alias'=>'network', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-车载电视', 'alias'=>'television', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-后排液晶屏', 'alias'=>'back_lcd', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-220V/230V电源', 'alias'=>'back_power_supply', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-外接音源接口', 'alias'=>'external_audio', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-CD/DVD', 'alias'=>'cddvd', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-扬声器品牌', 'alias'=>'speaker_brand', 'table'=>'car_media'],
-    [ 'origin'=>'多媒体配置-扬声器数量', 'alias'=>'speaker_num', 'table'=>'car_media'],
-
-    [ 'origin'=>'灯光配置-近光灯', 'alias'=>'low_beam', 'table'=>'car_light'],
-    [ 'origin'=>'灯光配置-远光灯', 'alias'=>'high_beam', 'table'=>'car_light'],
-    [ 'origin'=>'灯光配置-LED日间行车灯', 'alias'=>'led_beam', 'table'=>'car_light'],
-    [ 'origin'=>'灯光配置-自适应远近光', 'alias'=>'adaptive_beam', 'table'=>'car_light'],
-    [ 'origin'=>'灯光配置-自动头灯', 'alias'=>'head_light', 'table'=>'car_light'],
-    [ 'origin'=>'灯光配置-转向辅助灯', 'alias'=>'turn_light', 'table'=>'car_light'],
-    [ 'origin'=>'灯光配置-转向头灯', 'alias'=>'turn_head_light', 'table'=>'car_light'],
-    [ 'origin'=>'灯光配置-前雾灯', 'alias'=>'front_fog_lamp', 'table'=>'car_light'],
-    [ 'origin'=>'灯光配置-大灯高度可调', 'alias'=>'light_height_adjt', 'table'=>'car_light'],
-    [ 'origin'=>'灯光配置-大灯清洗装置', 'alias'=>'light_clean_dev', 'table'=>'car_light'],
-    [ 'origin'=>'灯光配置-车内氛围灯', 'alias'=>'mood_light', 'table'=>'car_light'],
-
-    [ 'origin'=>'玻璃/后视镜-前电动车窗', 'alias'=>'front_power_window', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-后电动车窗', 'alias'=>'back_power_window', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-车窗一键升降', 'alias'=>'e_lift_window', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-车窗防夹手功能', 'alias'=>'anti_pinch_hand', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-防紫外线/隔热玻璃', 'alias'=>'insulating_glass', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-后视镜电动调节', 'alias'=>'e_adjt_rearview', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-后视镜加热', 'alias'=>'heat_rearview', 'table'=>'car_glass'],
-    //[ 'origin'=>'玻璃/后视镜-内/外后视镜自动防眩目', 'alias'=>'glass7', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-流媒体车内后视镜', 'alias'=>'stream_media_rearview', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-后视镜电动折叠', 'alias'=>'power_mirror', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-后视镜记忆', 'alias'=>'mirror_mem', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-后风挡遮阳帘', 'alias'=>'abat_vent', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-后排侧遮阳帘', 'alias'=>'side_abat_vent', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-后排侧隐私玻璃', 'alias'=>'side_priv_glass', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-遮阳板化妆镜', 'alias'=>'sun_shield', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-后雨刷', 'alias'=>'back_wiper', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-感应雨刷', 'alias'=>'react_wiper', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-内后视镜自动防眩目', 'alias'=>'dimming_mirror_in', 'table'=>'car_glass'],
-    [ 'origin'=>'玻璃/后视镜-外后视镜自动防眩目', 'alias'=>'dimming_mirror_out', 'table'=>'car_glass'],
-    //[ 'origin'=>'玻璃/后视镜-前/后电动车窗', 'alias'=>'glass19', 'table'=>'car_glass'],
-
-    [ 'origin'=>'空调/冰箱-空调控制方式', 'alias'=>'air_type', 'table'=>'car_air'],
-    [ 'origin'=>'空调/冰箱-后排独立空调', 'alias'=>'back_air', 'table'=>'car_air'],
-    [ 'origin'=>'空调/冰箱-后座出风口', 'alias'=>'back_outlet', 'table'=>'car_air'],
-    [ 'origin'=>'空调/冰箱-温度分区控制', 'alias'=>'temper_zone_ctrl', 'table'=>'car_air'],
-    [ 'origin'=>'空调/冰箱-车内空气调节/花粉过滤', 'alias'=>'air_adjt', 'table'=>'car_air'],
-    [ 'origin'=>'空调/冰箱-车载空气净化器', 'alias'=>'air_cleaner', 'table'=>'car_air'],
-    [ 'origin'=>'空调/冰箱-车载冰箱', 'alias'=>'car_fridge', 'table'=>'car_air'],
-];

+ 200 - 41
helper/car_convert/formater.php

@@ -8,73 +8,232 @@
 
 namespace car_convert;
 
-use ReflectionClass;
-
-interface IFormat
-{
-    public function format($value);
-}
-
-class formater implements IFormat
+class car_formater
 {
-    protected $formaters = [];
-
-    public function __construct($params)
+    public function format($data)
     {
-        foreach ($params as $param)
+        foreach ($data as $key => $val)
         {
-            if(isset($param['formater']) && !isset($this->formaters[$param['formater']]))
-            {
-                $formater = $param['formater'];
-                if($formater == 'price_formater') {
-                    $this->formaters['price_formater'] = new price_formater();
+            if($key == 'market_price_str') {
+                if(!isset($data['market_price']) || intval($data['market_price']) <= 0) {
+                    $data['market_price'] = $this->price($val);
                 }
             }
+            elseif($key == 'car_level_str') {
+                $data['car_level'] = $this->car_level($val);
+            }
+            elseif($key == 'country') {
+                $data['country_id'] = $this->country_format($val);
+            }
+            elseif($key == 'produce_type_str') {
+                $data['produce_type'] = $this->produce_type($val);
+            }
+            elseif($key == 'market_time') {
+                $data['market_time'] = $this->market_time($val);
+            }
+            elseif ($key == 'energy_type_str') {
+                $data['energy_type'] = $this->energy_type($val);
+            }
+            else {
+
+            }
         }
+        return $data;
     }
 
-    public function format($value)
+    private function price($value)
     {
-        return $value;
+        if(strpos('~',$value)) {
+            $price = explode('~',$value)[0];
+        }
+        else {
+            $price = $value;
+        }
+
+        preg_match_all('/\d+.\d+/', $price, $arr);
+
+        if(isset($arr[0][0])) {
+            $price_float = floatval($arr[0][0]) * 10000;
+            return $price_float;
+        }
+        else
+        {
+            return 0;
+        }
     }
-}
 
-class basic_formater implements IFormat
-{
-    public function __construct()
-    {
+    private function car_level($val) {
+        $car_levels = ['MPV','中型SUV','中型车','中大型SUV','中大型车','大型SUV','大型车','小型SUV',
+            '小型车','微卡','微型车','微面','皮卡','紧凑型SUV','紧凑型车','跑车','轻客'];
+        if(in_array($val, $car_levels)) {
+            $ret = array_search($val, $car_levels) + 1;
+        } else {
+            $ret = 0;
+        }
+
+        return $ret;
     }
 
-    public function format($value)
+    private function country_format($val)
     {
+        $countries = ['中国','德国','意大利','捷克','日本','法国','瑞典','美国','英国','韩国'];
+        if(in_array($val, $countries)) {
+            $ret = array_search($val, $countries) + 1;
+        } else {
+            $ret = 0;
+        }
+
+        return $ret;
     }
-}
 
-class price_formater implements IFormat
-{
-    public function __construct()
+    private function produce_type($val)
     {
+        if($val == "国产")
+        {
+            $ret = 1;
+        }
+        elseif ($val == "进口")
+        {
+            $ret = 2;
+        }
+        else {
+            $ret = 0;
+        }
+        return $ret;
     }
 
-    public function format($value)
+    private function energy_type($val)
     {
-        if(strpos('~',$value)) {
-            $price = explode('~',$value)[0];
+        $energy_types = ['增程式','插电式混合动力','柴油','汽油','油电混合','纯电动'];
+        if(in_array($val, $energy_types)) {
+            $ret = array_search($val, $energy_types) + 1;
+        } else {
+            $ret = 0;
         }
-        else {
-            $price = $value;
+
+        return $ret;
+    }
+
+    private function market_time($val)
+    {
+        if(preg_match_all('/\./', $val)) {
+            $date = preg_replace("/\./", "-", $val);
+            $date = date("Y-m", strtotime($date));
+            return $date;
+        } else {
+            return 0;
         }
+    }
+}
 
-        preg_match_all('/\d+.\d+/', $price, $arr);
+class body_formater
+{
+    public function format($data)
+    {
+        foreach ($data as $key => $val) {
+            if ($key == '') {
 
-        if(isset($arr[0][0])) {
-            $price_float = floatval($arr[0][0]) * 10000;
-            return $price_float;
+            } elseif ($key == '') {
+
+            }  else {
+
+            }
         }
-        else
+        return $data;
+    }
+}
+
+class update_formater
+{
+    public function format($data)
+    {
+        foreach ($data as $key => $val)
         {
-            return false;
+            if($key == 'market_time') {
+                $data['market_time'] = $this->market_time($val);
+            }
+            elseif ($key == 'engine') {
+                $data['engine'] = trim($val);
+            }
+            elseif ($key == 'type_id') {
+                $data['type_id'] = intval($val);
+            }
+            elseif($key == 'official_speedup') {
+                $data['official_speedup'] = floatval($val);
+            }
+            elseif ($key == 'actual_speedup') {
+                $data['actual_speedup'] = floatval($val);
+            }
+            elseif ($key == 'actual_brake') {
+                $data['actual_brake'] = floatval($val);
+            }
+            elseif ($key == 'actual_fueluse') {
+                $data['actual_fueluse'] = floatval($val);
+            }
+            elseif ($key == 'gerenal_fueluse') {
+                $data['gerenal_fueluse'] = floatval($val);
+            }
+            elseif ($key == 'actual_ground') {
+                $data['actual_ground'] = intval($val);
+            }
+            elseif ($key == 'quality_guarantee') {
+                $data['quality_guarantee'] = $this->quality_guarantee($val);
+            }
+            elseif ($key == 'max_power') {
+                $data['max_power'] = floatval($val);
+            }
+            elseif ($key == 'max_torque') {
+                $data['max_torque'] = intval($val);
+            }
+            //body info
+            elseif ($key == 'cargo_vol') {
+                $data['cargo_vol'] = intval($val);
+            }
+            elseif ($key == 'open_type') {
+                $data['open_type'] = $this->open_type($val);
+            }
+            elseif ($key == 'cargo_size') {
+                $data['cargo_size'] = trim($val);
+            }
+            elseif ($key =='carry_cap') {
+                $data['carry_cap'] = intval($val);
+            }
+            else {
+
+            }
         }
+        return $data;
     }
-}
 
+    private function open_type($val)
+    {
+        $ret = trim($val);
+        return $ret;
+    }
+
+    private function quality_guarantee($val)
+    {
+        $ret = strval($val);
+        if($ret == '0' || $ret == "" || $ret == "待查") {
+            $ret = "无";
+        }
+        return $ret;
+    }
+
+    private function official_speedup($val)
+    {
+        $val = floatval($val);
+        return $val;
+    }
+
+    private function market_time($val)
+    {
+        if(preg_match_all('/\./', $val)) {
+            $date = preg_replace("/\./", "-", $val);
+            $date = date("Y-m", strtotime($date));
+            return $date;
+        } else {
+            return 0;
+        }
+    }
+}

+ 33 - 44
helper/car_convert/importer.php

@@ -6,37 +6,26 @@
  * Time: 下午6:38
  */
 namespace car_convert;
+
+use Log;
+
 ini_set('auto_detect_line_endings', 1);
 require_once (BASE_ROOT_PATH . '/helper/car_convert/formater.php');
 
-use Exception;
-
 class importer
 {
-    protected $_file;
     protected $_header;
-    protected $data;
     protected $_delimiter = ';';
     private $_alias = [];
-    private $stAlias;
-    private $_fileds_pos;
-    private $mFormater;
-
+    private $_table_fileds;
     private $_tables;
 
-    public function __construct($filepath, $car_scope='all', $delimiter)
+    public function __construct($delimiter, $car_scope='all')
     {
         $this->_tables = ['car_base','car_body','car_engine','car_motor','car_gearbox','car_underpan','car_brake',
             'car_secure','car_oper','car_guard','car_inside','car_seat','car_media','car_light','car_glass','car_air'];
 
         $this->_delimiter = $delimiter;
-
-        if(is_file($filepath)) {
-            $this->_file = $filepath;
-        } else {
-            throw new Exception("no file given!");
-        }
-
         $this->init($car_scope);
     }
 
@@ -45,53 +34,67 @@ class importer
         if(empty($this->_alias)) {
             $this->_alias = require_once "$car_scope.alias.php";
         }
-        $this->mFormater = new formater($this->_alias);
-        $this->stAlias = [];
+        $this->_table_fileds = [];
         foreach ($this->_tables as $table) {
             array_map(function($item) use ($table) {
                 if($item['table'] == $table) {
-                    $this->stAlias[$table][] = $item;
+                    $this->_table_fileds[$table][] = $item;
                 }
             }, $this->_alias);
         }
 
-        if(empty($this->stAlias)) return false;
+        if(empty($this->_table_fileds)) return false;
         return true;
     }
 
-    public function run()
+    public function run($filepath)
     {
-        $encoding = $this->encoding();
+        if(!is_file($filepath)) return false;
+
+        $encoding = $this->encoding($filepath);
         if($encoding == false) return false;
 
-        $file = @fopen($this->_file, 'r');
+        $file = @fopen($filepath, 'r');
         $i = 0;
         $mod_car = Model();
+
         while(!@feof($file))
         {
             if($line = @fgets($file))
             {
+                Log::start_sql_log();
                 if($i == 0) {
                     if(empty($this->_header)) {
                         $this->_header = explode($this->_delimiter, trim(iconv($encoding, 'UTF-8', $line)));
-                        $this->_fileds_pos = $this->resolve();
                     }
                 }
                 else {
                     $data = explode($this->_delimiter, trim(iconv($encoding, 'UTF-8', $line)));
                     $all = $this->retrieve_pos($this->_alias,$data);
                     $table_data = $this->splice_table($this->_alias,$all);
+                    //Log::record(json_encode($table_data));
+
+                    /** format & update some field */
+                    $formater = new update_formater();
+                    $car_info = $formater->format($table_data['car_base']);
+                    $update_car = $mod_car->table('car_base')
+                            ->where([ 'car_id'=>$i ])
+                            ->update([
+                                'engine' => $car_info['engine'],
+                            ]);
 
-                    $car_id = $mod_car->table('car')->insert($table_data['car']);
+                    /** new insert record */
+                    /*$car_id = $mod_car->table('car_base')->insert($table_data['car_base']);
 
                     foreach ($this->_tables as $tbname)
                     {
-                        if($tbname != 'car') {
+                        if($tbname != 'car_base' && $car_id != false) {
                             $data = $table_data[$tbname];
+                            //$formater = new $tbname . "formater";
                             $data['car_id'] = $car_id;
-                            $ret_id = $mod_car->table($tbname)->insert($table_data['car']);
+                            $ret_id = $mod_car->table($tbname)->insert($data);
                         }
-                    }
+                    }*/
                 }
                 $i++;
             }
@@ -99,20 +102,6 @@ class importer
         @fclose($file);
     }
 
-    private function resolve()
-    {
-        $indexes = [];
-        foreach ($this->_alias as $item)
-        {
-            if(in_array($item['origin'], $this->_header)) {
-                $index = array_search($item['origin'], $this->_header);
-                $indexes[$item['alias']] = $index;
-            }
-        }
-        return $indexes;
-    }
-
-
     public function get_header()
     {
         return $this->_header;
@@ -140,9 +129,9 @@ class importer
         return $arr;
     }
 
-    private function encoding()
+    private function encoding($filepath)
     {
-        $content = file_get_contents($this->_file);
+        $content = file_get_contents($filepath);
         $encoding = mb_detect_encoding($content, ['GB2312','GBK','UTF-16','UCS-2','UTF-8','BIG5','ASCII']);
         return $encoding;
     }

+ 27 - 61
test/TestCar.php

@@ -8,11 +8,14 @@
 define('BASE_ROOT_PATH',str_replace('/test','',dirname(__FILE__)));
 require_once(BASE_ROOT_PATH . '/fooder.php');
 require_once '../helper/car_convert/importer.php';
+require_once '../helper/car_convert/formater.php';
 
 use car_convert\importer;
 
 class TestCar extends PHPUnit_Framework_TestCase
 {
+    private $mFormater;
+
     public static function setUpBeforeClass()
     {
         Base::run_util();
@@ -20,38 +23,32 @@ class TestCar extends PHPUnit_Framework_TestCase
 
     public function testRun()
     {
-        $import = new importer('../data/car/data_audi.csv', "audi", ",");
-        $import->run();
+        //run for update
+        $import = new importer(";");
+        $import->run('../data/car/data_all.csv');
     }
 
-    public function testRead()
+    public function testFormat()
     {
-        $importData = new importer('../data/car/data_audi.csv',"audi",",");
-        $cars = $importData->proc();
-        $car = $cars[0];
+        // run for new fields
+        $this->mFormater = new car_convert\car_formater();
+        $mod_car = Model('car')->table('car_base');
+        $results = [];
+
+        $i = 1;
+        while ($car = $mod_car->find($i) )
+        {
+            $data = $this->mFormater->format($car);
+            $results[] = $mod_car->update($data);
+            $i++;
+        }
 
-        $base_info = $car['car_base'];
-        $body_info = $car['car_body'];
-        $engine_info = $car['car_engine'];
-        $motor_info = $car['car_motor'];
-        $gearbox_info = $car['car_gearbox'];
-        $underpan_info = $car['car_underpan'];
-        $brake_info = $car['car_brake'];
-        $secure_info = $car['car_secure'];
-        $oper_info  = $car['car_oper'];
-        $guard_info = $car['car_guard'];
-        $inside_info = $car['car_inside'];
-        $seat_info = $car['car_seat'];
-        $media_info = $car['car_media'];
-        $light_info = $car['car_light'];
-        $glass_info = $car['car_glass'];
-        $air_info = $car['car_air'];
+        //var_dump($results);
     }
 
     public function testInsert()
     {
-        $importData = new importer('../data/car/data_audi.csv',"audi",",");
-        $cars = $importData->proc(0);
+        $cars = [];
 
         foreach ($cars as $car) {
             $mod_car = Model('car');
@@ -63,55 +60,24 @@ class TestCar extends PHPUnit_Framework_TestCase
         }
     }
 
-    public function testInsertAll()
-    {
-        $importData = new importer('../data/car/car_all.csv',"all",";");
-
-        $count = 8;
-        $ret = [];
-
-        for($i = 0; $i <= $count-1; $i++) {
-            $cars = $importData->proc($i);
-
-            foreach ($cars as $car) {
-                $mod_car = Model('car');
-                $car_id = $mod_car->addCar($car['car_base']);
-                if($car_id > 0) {
-                    $body_info = $car['car_body'];
-                    $ret[] = $mod_car->addBodyInfo($car_id, $body_info);
-                }
-            }
-        }
-        var_dump($ret);
-    }
-
     public function testHasCar()
     {
         $mod_car = Model('car');
-        $has_car = $mod_car->hasCar_name('奥迪TT RS 2017款 TT RS 2.5T Coup');
+        $has_car = $mod_car->table('car_base')->hasCar_name('奥迪TT RS 2017款 TT RS 2.5T Coup');
         var_dump($has_car);
     }
 
     public function testCarNames()
     {
         $mod_car = Model('car');
-        $result = $mod_car->table('car')->getby_car_name('奥迪TT RS 2017款 TT RS 2.5T Coupe');
+        $result = $mod_car->table('car_base')->getby_car_name('奥迪TT RS 2017款 TT RS 2.5T Coupe');
         var_dump($result);
     }
 
-    public function testCarInfo()
+    public function testCarModel()
     {
-        $importData = new importer('../data/car/data_audi.csv',"audi",",");
-        $cars = $importData->proc();
-        $car_info = $cars[110];
-        var_dump($car_info);
-    }
-
-    public function testAllCarInfo()
-    {
-        $importData = new importer('../data/car/car_all.csv',"all",";");
-        $cars = $importData->proc(2);
-        $car_info = $cars[0];
-        var_dump($car_info);
+        $mod_car = Model();
+        $result = $mod_car->execute("select brand from lrlz_car_base GROUP BY brand");
+        var_dump($result);
     }
 }