فهرست منبع

[智价云] 公司管理省份城市信息功能补充

tangyuanwang 2 ماه پیش
والد
کامیت
9957131298

+ 15 - 2
app/Http/Controllers/Manager/WashConfig/ViolationStore.php

@@ -9,6 +9,7 @@ use App\Models\Manager\WashConfig\LowPriceGoodsCompany as LowPriceGoodsCompanyMo
 use App\Models\Manager\WashConfig\ViolationProductCompany as ViolationProductCompanyModel;
 use App\Models\Manager\Personnel\Employee as EmployeeModel;
 use App\Models\Manager\WashConfig\CompanyCategory as CompanyCategoryModel;
+use App\Models\Manager\Citys as CitysModel;
 
 /**
  * 数据清洗-违规店铺(公司)配置
@@ -25,7 +26,7 @@ class ViolationStore extends Controller
      * @date      2025-12-03
      * 
      */
-    public function list(Request $request, ViolationStoreModel $ViolationStoreModel,EmployeeModel $EmployeeModel, CompanyCategoryModel $CompanyCategoryModel)
+    public function list(Request $request, ViolationStoreModel $ViolationStoreModel,EmployeeModel $EmployeeModel, CompanyCategoryModel $CompanyCategoryModel,CitysModel $CitysModel)
     {
         $request->scene('list')->validate();
         // 查询条件
@@ -63,6 +64,10 @@ class ViolationStore extends Controller
                 $result['data'][$key]['employee_ids'] = $employee_ids;
                 $result['data'][$key]['employee_name'] = $employee_ids ? $EmployeeModel->whereIn('id', $employee_ids)->pluck('name')->toArray() : '';
                 $result['data'][$key]['category_name'] = $value['category_id'] ? $CompanyCategoryModel->where('id', $value['category_id'])->value('name') : '';
+                $province_name = $CitysModel->get_city_name($value['province_id']);
+                $result['data'][$key]['province_name'] = $province_name ?? '';
+                $city_name = $CitysModel->get_city_name($value['city_id']);
+                $result['data'][$key]['city_name'] = $city_name ?? '';
             }
         }
         // 加载模板
@@ -114,7 +119,7 @@ class ViolationStore extends Controller
      * @version   1.0
      * @date      2025-12-03
      */
-    public function detail(Request $request, ViolationStoreModel $ViolationStoreModel,EmployeeModel $EmployeeModel, CompanyCategoryModel $CompanyCategoryModel)
+    public function detail(Request $request, ViolationStoreModel $ViolationStoreModel,EmployeeModel $EmployeeModel, CompanyCategoryModel $CompanyCategoryModel,CitysModel $CitysModel)
     {
         $request->scene('detail')->validate();
         // 接收参数
@@ -126,6 +131,10 @@ class ViolationStore extends Controller
         $data->employee_ids = $employee_ids;
         $data->employee_name = $employee_ids ? $EmployeeModel->whereIn('id', $employee_ids)->pluck('name')->toArray() : '';
         $data->category_name = $data->category_id ? $CompanyCategoryModel->where('id', $data->category_id)->value('name') : '';
+        $province_name = $CitysModel->get_city_name($data->province_id);
+         $data->province_name = $province_name ?? '';
+        $city_name = $CitysModel->get_city_name($data->city_id);
+        $data->city_name = $city_name ?? '';
         // 加载模板
         return json_send(['code' => 'success', 'msg' => '获取成功', 'data' => $data]);
     }
@@ -150,6 +159,8 @@ class ViolationStore extends Controller
         $all_data['category_id'] = $category_id;
         $specify_responsible_person = request('specify_responsible_person', '0');
         $all_data['specify_responsible_person'] = $specify_responsible_person;
+        $area_info = request('area_info', '');
+        $all_data['area_info'] = $area_info;
         //查询是否存在
         $map = ['social_credit_code' => $all_data['social_credit_code']];
         $data = $ViolationStoreModel->where($map)->first();
@@ -184,6 +195,8 @@ class ViolationStore extends Controller
         $all_data['category_id'] = $category_id;
         $specify_responsible_person = request('specify_responsible_person', '0');
         $all_data['specify_responsible_person'] = $specify_responsible_person;
+        $area_info = request('area_info', '');
+        $all_data['area_info'] = $area_info;
         //查询是否存在
         $map = ['social_credit_code' => $all_data['social_credit_code']];
         $data = $ViolationStoreModel->where($map)->where('id', '!=', $id)->first();

+ 10 - 2
app/Http/Requests/Manager/WashConfig/ViolationStore.php

@@ -34,6 +34,8 @@ class ViolationStore extends BaseRequest
             'company_name'      => 'required',
             'social_credit_code'    => 'required',
             'store_type'        => 'required',
+            'province_id'       => 'required|integer|gt:0',
+            'city_id'           => 'required|integer|gt:0',
         ];
     }
 
@@ -42,8 +44,8 @@ class ViolationStore extends BaseRequest
     protected   $scenes         = [
         'detail'             => ['id'],
         'list'               => ['page', 'limit'],
-        'add'                      => ['company_name', 'social_credit_code', 'store_type'],
-        'edit'                  => ['id','company_name', 'social_credit_code', 'store_type'],
+        'add'                      => ['company_name', 'social_credit_code', 'province_id', 'city_id', 'store_type'],
+        'edit'                  => ['id', 'company_name', 'social_credit_code', 'province_id', 'city_id', 'store_type'],
         'set_status'              => ['id', 'status'],
         'delete'                  => ['id'],
         'all'                    => [''],
@@ -77,6 +79,12 @@ class ViolationStore extends BaseRequest
             'company_name.required'  => '公司名称未知',
             'social_credit_code.required'  => '社会信用代码未知',
             'store_type.required'    => '店铺类型未知',
+            'province_id.required'   => '省份ID未知',
+            'province_id.integer'    => '省份ID格式错误',
+            'province_id.gt'         => '省份ID格式错误',
+            'city_id.required'       => '城市ID未知',
+            'city_id.integer'        => '城市ID格式错误',
+            'city_id.gt'             => '城市ID格式错误',
         ];
     }
 }

+ 28 - 0
app/Models/Manager/Citys.php

@@ -103,6 +103,34 @@ class Citys extends Model
     
     }
 
+
+    /**
+     * 获取某个地区名称
+     * @author 唐远望
+     * @verson 1.0
+     * @date 2025-12-23
+     * 
+     */
+    public function get_city_name($id, $force = false)
+    {
+        $list                  = $force ? [] : cache('admin:city:source_list_name');
+        // 不存在数据
+        if (!$list) {
+            // 获取列表数据
+            $list_data              = $this->query()->where([['status', '=', 0], ['level', '<', 3]])->get(['id', 'name', 'pid'])->toArray();
+            if (!empty($list_data)) {
+                foreach ($list_data as $key => $value) {
+                    $list[$value['id']] = $value['name'];
+                }
+            }
+            cache(['admin:city:source_list_name' => $list]);
+        }
+        // 获取数据
+        $one                    = isset($list[$id]) ? $list[$id] : [];
+        // 返回值
+        return                 $one;
+    }
+
     /**
      * 获取城市对应的ID
      * 

+ 13 - 0
app/Models/Manager/WashConfig/ViolationStore.php

@@ -41,6 +41,10 @@ class ViolationStore extends Model
             'social_credit_code'    => $data['social_credit_code'],
             'store_type'    => $data['store_type'],
             'employee_ids'  => $data['employee_ids'],
+            'specify_responsible_person'  => $data['specify_responsible_person'],
+            'province_id' => $data['province_id'],
+            'city_id' => $data['city_id'],
+            'area_info' => $data['area_info'],
             'insert_time' => time(),
         ];
         $ViolationStore_id = $this->insertGetId($insert_data);
@@ -68,6 +72,9 @@ class ViolationStore extends Model
                 'store_type'    => $data['store_type'],
                 'employee_ids'  => $data['employee_ids'],
                 'specify_responsible_person'  => $data['specify_responsible_person'],
+                'province_id' => $data['province_id'],
+                'city_id' => $data['city_id'],
+                'area_info' => $data['area_info'],
                 'insert_time' => time(),
             ];
             $ViolationStore_id = $this->insertGetId($insert_data);
@@ -114,6 +121,9 @@ class ViolationStore extends Model
         $ViolationStore->store_type = $data['store_type'];
         $ViolationStore->employee_ids = $data['employee_ids'];
         $ViolationStore->specify_responsible_person = $data['specify_responsible_person'];
+        $ViolationStore->province_id = $data['province_id'];
+        $ViolationStore->city_id = $data['city_id'];
+        $ViolationStore->area_info = $data['area_info'];
         $ViolationStore->update_time = time();
         $ViolationStore->save();
         return true;
@@ -144,6 +154,9 @@ class ViolationStore extends Model
             $ViolationStore->store_type = $data['store_type'];
             $ViolationStore->employee_ids = $data['employee_ids'];
             $ViolationStore->specify_responsible_person = $data['specify_responsible_person'];
+            $ViolationStore->province_id = $data['province_id'];
+            $ViolationStore->city_id = $data['city_id'];
+            $ViolationStore->area_info = $data['area_info'];
             $ViolationStore->update_time = time();
             $ViolationStore->save();