configCityManagement = $configCityManagement; } //列表 public function index($request) { $perPage = isset($request['per_page']) ? $request['per_page'] : env('PER_PAGE'); $where = []; if(isset($request['id'])){ $where[] = ['id', '=', $request['id']]; } if(isset($request['express_type'])){ if ($request['express_type'] == 1){ $where[] = ['express_type', '!=', 2];//返回含有自提的 }elseif ($request['express_type'] == 2){ $where[] = ['express_type', '!=', 1];//返回含有快递的 } } if(isset($request['status'])){ $where[] = ['status', '=', $request['status']]; } return $this->configCityManagement->where($where)->orderBy('id', 'asc')->paginate($perPage); } public function create($request) { if($this->configCityManagement->where('city_id', $request['city_id'])->exists()){ throw new HttpException(500, '该城市已经存在'); } $data = [ 'province_id' => $request['province_id'], 'province_name' => $request['province_name'], 'city_id' => $request['city_id'], 'city_name' => $request['city_name'], 'express_type' => $request['express_type'], 'status' => $request['status']?$request['status']:0, ]; if (!$this->configCityManagement->create($data)) { throw new HttpException(500, '添加失败'); } } public function edit($request) { $configCity = $this->configCityManagement->where('id', $request['id'])->first(); $configCity->province_id = $request['province_id']; $configCity->province_name = $request['province_name']; $configCity->city_id = $request['city_id']; $configCity->city_name = $request['city_name']; $configCity->express_type = $request['express_type']; $configCity->status = $request['status']?$request['status']:0; DB::beginTransaction(); try { $res = $configCity->save(); if ($res) { DB::commit(); return Response::create(); } DB::rollBack(); return Response::create([ 'message' => '编辑失败,请重试', 'status_code' => 500 ]); } catch (QueryException $exception) { DB::rollBack(); return Response::create([ 'message' => '编辑失败,请重试', 'error' => $exception->getMessage(), 'status_code' => 500 ]); } } public function delete($request) { $configCity = $this->configCityManagement->where('id', $request['id'])->first(); DB::beginTransaction(); try{ $res = $configCity->delete(); if($res){ DB::commit(); return Response::create(); } DB::rollBack(); return Response::create([ 'message' => '删除失败,请重试', 'status_code' => 500 ]); }catch (QueryException $exception){ DB::rollBack(); return Response::create([ 'message' => '删除失败,请重试', 'error' => $exception->getMessage(), 'status_code' => 500 ]); } } }