diff --git a/agent/admin/controllers/api/Common.php b/agent/admin/controllers/api/Common.php new file mode 100644 index 00000000..6b134e3a --- /dev/null +++ b/agent/admin/controllers/api/Common.php @@ -0,0 +1,192 @@ +load->model('area_model'); + } + + /** + * 省市区数据 + * @return void + */ + public function regionsData() + { + $req = $this->area_model->getDataByTree(); + echo json_encode($req, JSON_UNESCAPED_UNICODE); + } + + /** + * 获取品牌 + * @return void + */ + public function autoBrand() + { + $this->load->model('auto/auto_brand_model', 'mdAutoBrand'); + $this->mdAutoBrand->set_db('ssdb'); + $where = [ + 'status>' => -1, + ]; + $lists = $this->mdAutoBrand->select($where, 'initial asc', 0, 0, 'id,name'); + echo json_encode($lists, JSON_UNESCAPED_UNICODE); + } + + /** + * 获取车系 + * @return void + */ + public function autoSeries() + { + $this->load->model('auto/auto_series_model', 'mdAutoSeries'); + $this->mdAutoSeries->set_db('ssdb'); + $brandId = intval($this->input->get('brandId')); + $where = [ + 'status>' => -1, + 'brand_id' => $brandId + ]; + $lists = $this->mdAutoSeries->select($where, 'id asc', 0, 0, 'id,name'); + echo json_encode($lists, JSON_UNESCAPED_UNICODE); + } + + /** + * 获取车型 + * @return void + */ + public function autoCar() + { + $this->load->model('auto/auto_cars_model', 'mdAutoCar'); + $this->mdAutoCar->set_db('ssdb'); + $seriesId = intval($this->input->get('seriesId')); + $where = [ + 'status>' => -1, + 'series_id' => $seriesId + ]; + $lists = $this->mdAutoCar->select($where, 'id asc', 0, 0, 'id,name'); + echo json_encode($lists, JSON_UNESCAPED_UNICODE); + } + + /** + * 获取所有门店 + * @return void + */ + public function allBiz() + { + $this->load->model('biz/biz_model'); + $this->load->model('agent/auto_product_model'); + $this->biz_model->set_db('ssdb'); + $productId = intval($this->input->get('productId')); + $where = [ + 'status' => 1, + 'type' => Biz_model::BIZ_TYPE_4s + ]; + if ($productId) { + $product = $this->auto_product_model->get(['id' => $productId]); + $where['car_brand_id'] = $product['brandId'] ?: 0; + } + $lists = $this->biz_model->select($where, 'id desc', 0, 0, 'id,biz_name as name,city_id'); + echo json_encode($lists, JSON_UNESCAPED_UNICODE); + } + + public function autoBrands() + { + $this->load->model('auto/auto_brand_model', 'mdAutoBrand'); + $this->load->model('auto/auto_series_model', 'mdAutoSeries'); + $this->load->model('auto/auto_cars_model', 'mdAutoCar'); + $this->mdAutoBrand->set_db('ssdb'); + $this->mdAutoSeries->set_db('ssdb'); + $this->mdAutoCar->set_db('ssdb'); + $redis = load_cache("redis"); + $cKey = 'SYS_BRAND_TREE_DATA'; + $cacheList = $redis->get($cKey); + if ($cacheList) { + die(json_encode($cacheList, JSON_UNESCAPED_UNICODE)); + } + $where = ['status' => 1]; + $brandRows = $this->mdAutoBrand->select($where, 'initial asc', 0, 0); + $seriesRows = $this->mdAutoSeries->map('brand_id', '', $where, 'id desc', 0, 0); + $carRows = $this->mdAutoCar->map('series_id', '', $where, 'id desc', 0, 0, 'id as value,name as label,series_id'); + $lists = []; + foreach ($brandRows as $brandRow) { + $children = []; + $brand = [ + 'value' => $brandRow['id'], + 'label' => $brandRow['name'], + ]; + if ($seriesRows[$brandRow['id']]) { + foreach ($seriesRows[$brandRow['id']] as $seriesRow) { + $seriesChildren = $carRows[$seriesRow['id']] ?: []; + $children[] = [ + 'value' => $seriesRow['id'], + 'label' => $seriesRow['name'], + 'children' => $seriesChildren + ]; + } + } + $brand['children'] = $children; + $lists[] = $brand; + } + $redis->save($cKey, $lists, 24 * 60 * 60); + echo json_encode($lists, JSON_UNESCAPED_UNICODE); + } + + /** + * 获取所有门店 + * @return void + */ + public function allProvinceBiz() + { + $this->load->model('area_model'); + $this->load->model('biz/biz_model'); + $this->load->model('agent/auto_product_model'); + $this->biz_model->set_db('ssdb'); + $this->area_model->set_db('ssdb'); + $type = Biz_model::BIZ_TYPE_4s; + $where = [ + 'status' => 1, + 'type' => $type + ]; + $lists = $this->biz_model->map('city_id', '', $where, 'id desc', 0, 0, 'id as value,biz_name as label,city_id'); + $provinceTree = $this->area_model->getDataByTree(); + $resList = []; + foreach ($provinceTree as $item) { + $children = $item['children']; + $newChildren = []; + foreach ($children as $key => $item2) { + if ($lists[$item2['value']]) { + $item2['children'] = $lists[$item2['value']]; + $newChildren[] = $item2; + } else { + $children[$key]['children'] = []; + } + } + if($newChildren){ + $resList[] = [ + 'value' => $item['value'], + 'label' => $item['label'], + 'children' => $newChildren + ]; + } + } + echo json_encode($resList, JSON_UNESCAPED_UNICODE); + } + + /** + * 用户归属中心 + * @return void + */ + public function centerList() + { + $this->load->model('agent/pingan/pingan_users_model'); + $res = Pingan_users_model::TYPE_CENTER; + echo json_encode($res, JSON_UNESCAPED_UNICODE); + } + + public function orgNameList() + { + $this->load->model('agent/pingan/pingan_users_model'); + echo json_encode(Pingan_users_model::orgNameList, JSON_UNESCAPED_UNICODE); + } +} diff --git a/agent/admin/controllers/pingan/Common.php b/agent/admin/controllers/pingan/Common.php new file mode 100644 index 00000000..6b134e3a --- /dev/null +++ b/agent/admin/controllers/pingan/Common.php @@ -0,0 +1,192 @@ +load->model('area_model'); + } + + /** + * 省市区数据 + * @return void + */ + public function regionsData() + { + $req = $this->area_model->getDataByTree(); + echo json_encode($req, JSON_UNESCAPED_UNICODE); + } + + /** + * 获取品牌 + * @return void + */ + public function autoBrand() + { + $this->load->model('auto/auto_brand_model', 'mdAutoBrand'); + $this->mdAutoBrand->set_db('ssdb'); + $where = [ + 'status>' => -1, + ]; + $lists = $this->mdAutoBrand->select($where, 'initial asc', 0, 0, 'id,name'); + echo json_encode($lists, JSON_UNESCAPED_UNICODE); + } + + /** + * 获取车系 + * @return void + */ + public function autoSeries() + { + $this->load->model('auto/auto_series_model', 'mdAutoSeries'); + $this->mdAutoSeries->set_db('ssdb'); + $brandId = intval($this->input->get('brandId')); + $where = [ + 'status>' => -1, + 'brand_id' => $brandId + ]; + $lists = $this->mdAutoSeries->select($where, 'id asc', 0, 0, 'id,name'); + echo json_encode($lists, JSON_UNESCAPED_UNICODE); + } + + /** + * 获取车型 + * @return void + */ + public function autoCar() + { + $this->load->model('auto/auto_cars_model', 'mdAutoCar'); + $this->mdAutoCar->set_db('ssdb'); + $seriesId = intval($this->input->get('seriesId')); + $where = [ + 'status>' => -1, + 'series_id' => $seriesId + ]; + $lists = $this->mdAutoCar->select($where, 'id asc', 0, 0, 'id,name'); + echo json_encode($lists, JSON_UNESCAPED_UNICODE); + } + + /** + * 获取所有门店 + * @return void + */ + public function allBiz() + { + $this->load->model('biz/biz_model'); + $this->load->model('agent/auto_product_model'); + $this->biz_model->set_db('ssdb'); + $productId = intval($this->input->get('productId')); + $where = [ + 'status' => 1, + 'type' => Biz_model::BIZ_TYPE_4s + ]; + if ($productId) { + $product = $this->auto_product_model->get(['id' => $productId]); + $where['car_brand_id'] = $product['brandId'] ?: 0; + } + $lists = $this->biz_model->select($where, 'id desc', 0, 0, 'id,biz_name as name,city_id'); + echo json_encode($lists, JSON_UNESCAPED_UNICODE); + } + + public function autoBrands() + { + $this->load->model('auto/auto_brand_model', 'mdAutoBrand'); + $this->load->model('auto/auto_series_model', 'mdAutoSeries'); + $this->load->model('auto/auto_cars_model', 'mdAutoCar'); + $this->mdAutoBrand->set_db('ssdb'); + $this->mdAutoSeries->set_db('ssdb'); + $this->mdAutoCar->set_db('ssdb'); + $redis = load_cache("redis"); + $cKey = 'SYS_BRAND_TREE_DATA'; + $cacheList = $redis->get($cKey); + if ($cacheList) { + die(json_encode($cacheList, JSON_UNESCAPED_UNICODE)); + } + $where = ['status' => 1]; + $brandRows = $this->mdAutoBrand->select($where, 'initial asc', 0, 0); + $seriesRows = $this->mdAutoSeries->map('brand_id', '', $where, 'id desc', 0, 0); + $carRows = $this->mdAutoCar->map('series_id', '', $where, 'id desc', 0, 0, 'id as value,name as label,series_id'); + $lists = []; + foreach ($brandRows as $brandRow) { + $children = []; + $brand = [ + 'value' => $brandRow['id'], + 'label' => $brandRow['name'], + ]; + if ($seriesRows[$brandRow['id']]) { + foreach ($seriesRows[$brandRow['id']] as $seriesRow) { + $seriesChildren = $carRows[$seriesRow['id']] ?: []; + $children[] = [ + 'value' => $seriesRow['id'], + 'label' => $seriesRow['name'], + 'children' => $seriesChildren + ]; + } + } + $brand['children'] = $children; + $lists[] = $brand; + } + $redis->save($cKey, $lists, 24 * 60 * 60); + echo json_encode($lists, JSON_UNESCAPED_UNICODE); + } + + /** + * 获取所有门店 + * @return void + */ + public function allProvinceBiz() + { + $this->load->model('area_model'); + $this->load->model('biz/biz_model'); + $this->load->model('agent/auto_product_model'); + $this->biz_model->set_db('ssdb'); + $this->area_model->set_db('ssdb'); + $type = Biz_model::BIZ_TYPE_4s; + $where = [ + 'status' => 1, + 'type' => $type + ]; + $lists = $this->biz_model->map('city_id', '', $where, 'id desc', 0, 0, 'id as value,biz_name as label,city_id'); + $provinceTree = $this->area_model->getDataByTree(); + $resList = []; + foreach ($provinceTree as $item) { + $children = $item['children']; + $newChildren = []; + foreach ($children as $key => $item2) { + if ($lists[$item2['value']]) { + $item2['children'] = $lists[$item2['value']]; + $newChildren[] = $item2; + } else { + $children[$key]['children'] = []; + } + } + if($newChildren){ + $resList[] = [ + 'value' => $item['value'], + 'label' => $item['label'], + 'children' => $newChildren + ]; + } + } + echo json_encode($resList, JSON_UNESCAPED_UNICODE); + } + + /** + * 用户归属中心 + * @return void + */ + public function centerList() + { + $this->load->model('agent/pingan/pingan_users_model'); + $res = Pingan_users_model::TYPE_CENTER; + echo json_encode($res, JSON_UNESCAPED_UNICODE); + } + + public function orgNameList() + { + $this->load->model('agent/pingan/pingan_users_model'); + echo json_encode(Pingan_users_model::orgNameList, JSON_UNESCAPED_UNICODE); + } +}