Sfoglia il codice sorgente

[智价云] 店铺&公司关联信息删除更新

tangyuanwang 5 giorni fa
parent
commit
7d5d148bd5

+ 23 - 6
app/Http/Controllers/Manager/WashConfig/ViolationCompany.php

@@ -10,6 +10,8 @@ use App\Models\Manager\WashConfig\ViolationProductCompany as ViolationProductCom
 use App\Models\Manager\Personnel\Employee as EmployeeModel;
 use App\Models\Manager\WashConfig\CompanyCategory as CompanyCategoryModel;
 use App\Models\Manager\Citys as CitysModel;
+use App\Models\Manager\WashConfig\ViolationCompanyMember as ViolationCompanyMemberModel;
+use Illuminate\Support\Facades\DB;
 
 /**
  * 数据清洗-违规店铺(公司)配置
@@ -319,8 +321,13 @@ class ViolationCompany extends Controller
      * @date      2025-12-03
      * 
      */
-    public function delete(Request $request, ViolationCompanyModel $ViolationCompanyModel, LowPriceGoodsCompanyModel $LowPriceGoodsCompanyModel, ViolationProductCompanyModel $ViolationProductCompanyModel)
-    {
+    public function delete(
+        Request $request,
+        ViolationCompanyModel $ViolationCompanyModel,
+        LowPriceGoodsCompanyModel $LowPriceGoodsCompanyModel,
+        ViolationProductCompanyModel $ViolationProductCompanyModel,
+        ViolationCompanyMemberModel $ViolationCompanyMemberModel
+    ) {
         // 验证参数
         $request->scene('delete')->validate();
         $admin_company_id = request('admin_company_id', '0');
@@ -353,15 +360,25 @@ class ViolationCompany extends Controller
         // 执行删除
         $ViolationCompany = $ViolationCompanyModel->where($where)->first();
         if (!$ViolationCompany) return json_send(['code' => 'error', 'msg' => '记录不存在']);
-        $result = $ViolationCompany->delete();
-        // 提示删除失败
-        if (!$result)    return json_send(['code' => 'error', 'msg' => '删除失败']);
+        DB::beginTransaction();
+        try {
+            //删除绑定关系
+            if ($ViolationCompany->employee_ids != '') {
+                $ViolationCompanyMemberModel->where(['company_logid' => $id])->delete();
+            }
+            $ViolationCompany->delete();
+            DB::commit();
+        } catch (\Exception $e) {
+            DB::rollback();
+            // 提示删除失败
+            return json_send(['code' => 'error', 'msg' => '删除失败']);
+        }
         // 记录行为
         $admin_id   = request('access_token.uid', 0); //用户ID
         $is_admin   = request('access_token.is_admin'); //是否管理员操作 0=是1=否
         $table_name = $ViolationCompanyModel->getTable();
         $notes_type = 3; //操作类型,1添加,2修改,3=删除
-        $this->addAdminHistory('清洗配置-公司管理',$company_id, $admin_id, $is_admin, $table_name, $notes_type, $ViolationCompany->toarray(), [], '删除了公司' . $ViolationCompany->company_name . '信息');
+        $this->addAdminHistory('清洗配置-公司管理', $company_id, $admin_id, $is_admin, $table_name, $notes_type, $ViolationCompany->toarray(), [], '删除了公司' . $ViolationCompany->company_name . '信息');
         // 告知结果
         return             json_send(['code' => 'success', 'msg' => '删除成功']);
     }

+ 17 - 5
app/Http/Controllers/Manager/WashConfig/ViolationStore.php

@@ -6,6 +6,8 @@ use App\Http\Controllers\Controller;
 use App\Http\Requests\Manager\WashConfig\ViolationStore as Request;
 use App\Models\Manager\WashConfig\ViolationStore as ViolationStoreModel;
 use App\Models\Manager\Personnel\Employee as EmployeeModel;
+use App\Models\Manager\WashConfig\ViolationStoreMember as ViolationStoreMemberModel;
+use Illuminate\Support\Facades\DB;
 
 /**
  * 数据清洗-违规店铺配置
@@ -340,7 +342,7 @@ class ViolationStore extends Controller
      * @date      2025-12-03
      * 
      */
-    public function delete(Request $request, ViolationStoreModel $ViolationStoreModel)
+    public function delete(Request $request, ViolationStoreModel $ViolationStoreModel, ViolationStoreMemberModel $ViolationStoreMemberModel)
     {
         // 验证参数
         $request->scene('delete')->validate();
@@ -365,15 +367,25 @@ class ViolationStore extends Controller
         // 执行删除
         $ViolationStore = $ViolationStoreModel->where($where)->first();
         if (!$ViolationStore) return json_send(['code' => 'error', 'msg' => '记录不存在']);
-        $result = $ViolationStore->delete();
-        // 提示删除失败
-        if (!$result)    return json_send(['code' => 'error', 'msg' => '删除失败']);
+        DB::beginTransaction();
+        try {
+            //删除绑定关系
+            if ($ViolationStore->employee_ids != '') {
+                $ViolationStoreMemberModel->where(['store_logid' => $id])->delete();
+            }
+            $ViolationStore->delete();
+            DB::commit();
+        } catch (\Exception $e) {
+            DB::rollback();
+            // 提示删除失败
+            return json_send(['code' => 'error', 'msg' => '删除失败']);
+        }
         // 记录行为
         $admin_id   = request('access_token.uid', 0); //用户ID
         $is_admin   = request('access_token.is_admin'); //是否管理员操作 0=是1=否
         $table_name = $ViolationStoreModel->getTable();
         $notes_type = 3; //操作类型,1添加,2修改,3=删除
-        $this->addAdminHistory('清洗配置-店铺管理',$company_id, $admin_id, $is_admin, $table_name, $notes_type, $ViolationStore->toarray(), [], '删除了店铺' . $ViolationStore->store_name . '信息');
+        $this->addAdminHistory('清洗配置-店铺管理', $company_id, $admin_id, $is_admin, $table_name, $notes_type, $ViolationStore->toarray(), [], '删除了店铺' . $ViolationStore->store_name . '信息');
         // 告知结果
         return             json_send(['code' => 'success', 'msg' => '删除成功']);
     }