Parcourir la source

[智价云] 快照显示控制

tangyuanwang il y a 20 heures
Parent
commit
b80fe56fc1

+ 5 - 1
app/Http/Controllers/Manager/Process/LowPriceGoods.php

@@ -19,6 +19,7 @@ use App\Jobs\Manager\Other\ExportLowPriceGoodsJobs;
 use Illuminate\Support\Facades\Cache;
 use Illuminate\Support\Carbon;
 use App\Jobs\Manager\Process\ScrapeDataProductJobs;
+use App\Models\Manager\External\Company as CompanyModel;
 
 /**
  * 违规处理-低价商品
@@ -36,7 +37,7 @@ class LowPriceGoods extends Controller
      * @date      2025-12-08
      * 
      */
-    public function list(Request $request, LowPriceGoodsModel $LowPriceGoodsModel, EmployeeModel $EmployeeModel, LowPriceGoodsMemberModel $LowPriceGoodsMemberModel)
+    public function list(Request $request, LowPriceGoodsModel $LowPriceGoodsModel, EmployeeModel $EmployeeModel, LowPriceGoodsMemberModel $LowPriceGoodsMemberModel,CompanyModel $CompanyModel)
     {
         $request->scene('list')->validate();
         $admin_company_id = request('admin_company_id', '0');
@@ -221,6 +222,7 @@ class LowPriceGoods extends Controller
         }
         // 分配数据
         if (!$result)  json_send(['code' => 'success', 'msg' => '获取成功', 'data' => []]);
+        $snapshot_status = $CompanyModel->where(['id'=> $low_price_goods_where['company_id']])->value('snapshot_status');
         if (isset($result['data']) && count($result['data']) > 0) {
             foreach ($result['data'] as $key => $value) {
                 //查询第一责任人名称
@@ -235,6 +237,8 @@ class LowPriceGoods extends Controller
                 $source_responsible_person = explode(',', $value['source_responsible_person']);
                 $source_responsible_person_name = $LowPriceGoodsMemberModel->where('lowprice_product_logid',$value['id'])->whereIn('employee_id', $source_responsible_person)->pluck('employee_name')->toarray();
                 $result['data'][$key]['source_responsible_person_name'] = $source_responsible_person_name;
+                //关闭快照不展示数据
+                if(!empty($snapshot_status) && $snapshot_status == 1) $result['data'][$key]['snapshot_url'] = '';
             }
         }
         // 加载模板

+ 5 - 1
app/Http/Controllers/Manager/Process/ViolationProduct.php

@@ -18,6 +18,7 @@ use App\Jobs\Manager\Other\ExportViolationProductJobs;
 use Illuminate\Support\Facades\Cache;
 use Illuminate\Support\Carbon;
 use App\Jobs\Manager\Process\ScrapeDataProductJobs;
+use App\Models\Manager\External\Company as CompanyModel;
 
 /**
  * 违规处理-违规商品
@@ -35,7 +36,7 @@ class ViolationProduct extends Controller
      * @date      2025-12-08
      * 
      */
-    public function list(Request $request, ViolationProductModel $ViolationProductModel, EmployeeModel $EmployeeModel, ViolationProductMemberModel $ViolationProductMemberModel)
+    public function list(Request $request, ViolationProductModel $ViolationProductModel, EmployeeModel $EmployeeModel, ViolationProductMemberModel $ViolationProductMemberModel,CompanyModel $CompanyModel)
     {
         $request->scene('list')->validate();
         $admin_company_id = request('admin_company_id', '0');
@@ -216,6 +217,7 @@ class ViolationProduct extends Controller
         }
         // 分配数据
         if (!$result)  json_send(['code' => 'success', 'msg' => '获取成功', 'data' => []]);
+        $snapshot_status = $CompanyModel->where(['id'=> $violation_product_where['company_id']])->value('snapshot_status');
         if (isset($result['data']) && count($result['data']) > 0) {
             foreach ($result['data'] as $key => $value) {
                 //查询第一责任人名称
@@ -230,6 +232,8 @@ class ViolationProduct extends Controller
                 $source_responsible_person = explode(',', $value['source_responsible_person']);
                 $source_responsible_person_name = $ViolationProductMemberModel->where('violation_product_logid',$value['id'])->whereIn('employee_id', $source_responsible_person)->pluck('employee_name')->toarray();
                 $result['data'][$key]['source_responsible_person_name'] = $source_responsible_person_name;
+                //关闭快照不展示数据
+                if(!empty($snapshot_status) && $snapshot_status == 1) $result['data'][$key]['snapshot_url'] = '';
             }
         }
         // 加载模板

+ 7 - 5
app/Jobs/Manager/Other/ExportLowPriceGoodsJobs.php

@@ -7,7 +7,6 @@ use Illuminate\Contracts\Queue\ShouldQueue;
 use Illuminate\Foundation\Bus\Dispatchable;
 use Illuminate\Queue\InteractsWithQueue;
 use Illuminate\Queue\SerializesModels;
-use App\Http\Requests\Manager\Process\LowPriceGoods as Request;
 use App\Models\Manager\Process\LowPriceGoods as LowPriceGoodsModel;
 use App\Models\Manager\Personnel\Employee as EmployeeModel;
 use PhpOffice\PhpSpreadsheet\Spreadsheet;
@@ -18,6 +17,7 @@ use App\Servers\Aliyun\Oss;
 use App\Facades\Servers\Logs\Log;
 use App\Models\Manager\Other\DownloadTask as DownloadTaskModel;
 use Illuminate\Support\Facades\Cache;
+use App\Models\Manager\External\Company as CompanyModel;
 
 
 /**
@@ -84,6 +84,7 @@ class ExportLowPriceGoodsJobs implements ShouldQueue
         $LowPriceGoodsModel = new LowPriceGoodsModel();
         $LowPriceGoodsMemberModel = new LowPriceGoodsMemberModel();
         $EmployeeModel = new EmployeeModel();
+        $CompanyModel = new CompanyModel();
         $admin_company_id = $message_data['admin_company_id'];
         $company_id = $message_data['company_id'];
         $is_admin = $message_data['is_admin']; //是否管理员操作 0=是1=否
@@ -254,13 +255,12 @@ class ExportLowPriceGoodsJobs implements ShouldQueue
                     ->orWhere('source_responsible_person', 'like', "%,$user_id,%");
             });
         }
-
+        $snapshot_status = $CompanyModel->where(['id'=> $low_price_goods_where['company_id']])->value('snapshot_status');
         $query->chunkById($limit, function ($rows) use ($key_name) {
                 $result_data = $rows->toArray();
                 if (empty($result_data)) {
                     return true;
                 }
-
                 $list_data = $this->processing_responsible_person($result_data);
                 $list_data_info = Cache::get($key_name) ?: [];
                 $list_new_data = !empty($list_data_info) ? array_merge($list_data_info, $list_data) : $list_data;
@@ -272,7 +272,7 @@ class ExportLowPriceGoodsJobs implements ShouldQueue
             });
 
         $export_data_info = Cache::get($key_name) ?: [];
-        $this->export_download($export_data_info, $low_price_goods_where['company_id'], $file_id);
+        $this->export_download($export_data_info, $low_price_goods_where['company_id'], $file_id,$snapshot_status);
         return;
     }
 
@@ -311,7 +311,7 @@ class ExportLowPriceGoodsJobs implements ShouldQueue
      * @version 1.0
      * @date 2025-06-17
      */
-    public function export_download($data, $company_id, $file_id)
+    public function export_download($data, $company_id, $file_id,$snapshot_status)
     {
         // 创建一个新的 Spreadsheet 对象
         $spreadsheet = new Spreadsheet();
@@ -380,6 +380,8 @@ class ExportLowPriceGoodsJobs implements ShouldQueue
         // 填充数据
         $row = 3; // 从第2行开始
         foreach ($data as $item) {
+            //关闭快照不展示数据
+            if(!empty($snapshot_status) && $snapshot_status == 1) $item['snapshot_url'] = '';
             $first_responsible_person_name = !empty($item['first_responsible_person_name']) ? implode(',', $item['first_responsible_person_name']) : '';
             $responsible_person_name = !empty($item['responsible_person_name']) ? implode(',', $item['responsible_person_name']) : '';
             $source_responsible_person_name = !empty($item['source_responsible_person_name']) ? implode(',', $item['source_responsible_person_name']) : '';

+ 7 - 2
app/Jobs/Manager/Other/ExportViolationProductJobs.php

@@ -17,6 +17,7 @@ use App\Facades\Servers\Logs\Log;
 use App\Models\Manager\Other\DownloadTask as DownloadTaskModel;
 use Illuminate\Support\Facades\Cache;
 use App\Models\Manager\Process\ViolationProductMember as ViolationProductMemberModel;
+use App\Models\Manager\External\Company as CompanyModel;
 
 
 /**
@@ -83,6 +84,7 @@ class ExportViolationProductJobs implements ShouldQueue
         $ViolationProductModel = new ViolationProductModel();
         $ViolationProductMemberModel = new ViolationProductMemberModel();
         $EmployeeModel         = new EmployeeModel();
+        $CompanyModel          = new CompanyModel();
         $admin_company_id = $message_data['admin_company_id'];
         $company_id = $message_data['company_id'];
         $is_admin = $message_data['is_admin']; //是否管理员操作 0=是1=否
@@ -247,6 +249,7 @@ class ExportViolationProductJobs implements ShouldQueue
                     ->orWhere('source_responsible_person', 'like', "%,$user_id,%");
             });
         }
+        $snapshot_status = $CompanyModel->where(['id'=> $violation_product_where['company_id']])->value('snapshot_status');
         $query->chunkById($limit, function ($rows) use ($key_name) {
                 $result_data = $rows->toArray();
                 if (empty($result_data)) {
@@ -264,7 +267,7 @@ class ExportViolationProductJobs implements ShouldQueue
             });
 
         $export_data_info = Cache::get($key_name) ?: [];
-        $this->export_download($export_data_info, $violation_product_where['company_id'], $file_id);
+        $this->export_download($export_data_info, $violation_product_where['company_id'], $file_id,$snapshot_status);
         return;
     }
 
@@ -303,7 +306,7 @@ class ExportViolationProductJobs implements ShouldQueue
      * @version 1.0
      * @date 2025-06-17
      */
-    public function export_download($data, $company_id, $file_id)
+    public function export_download($data, $company_id, $file_id,$snapshot_status)
     {
         // 创建一个新的 Spreadsheet 对象
         $spreadsheet = new Spreadsheet();
@@ -368,6 +371,8 @@ class ExportViolationProductJobs implements ShouldQueue
         // 填充数据
         $row = 3; // 从第2行开始
         foreach ($data as $item) {
+            //关闭快照不展示数据
+            if(!empty($snapshot_status) && $snapshot_status == 1) $item['snapshot_url'] = '';
             $first_responsible_person_name = !empty($item['first_responsible_person_name']) ? implode(',', $item['first_responsible_person_name']) : '';
             $responsible_person_name = !empty($item['responsible_person_name']) ? implode(',', $item['responsible_person_name']) : '';
             $source_responsible_person_name = !empty($item['source_responsible_person_name']) ? implode(',', $item['source_responsible_person_name']) : '';