ajun пре 4 година
родитељ
комит
d43375c204

+ 20 - 13
app/Http/Controllers/DischargeTaskController.php

@@ -30,12 +30,12 @@ class DischargeTaskController extends Controller
             return redirect(url('/'));
         }
 
-        $dischargeTasks = DischargeTask::query()->with(['facilitator', 'owner','warehouse'])->filter($filters)->orderByDesc('id')->paginate($request['paginate'] ?? 50);
+        $dischargeTasks = DischargeTask::query()->with(['facilitator', 'owner', 'warehouse'])->filter($filters)->orderByDesc('id')->paginate($request['paginate'] ?? 50);
         $owners = app(OwnerService::class)->getAuthorizedOwners();
-        $warehouses = Warehouse::query()->select('id','name')->get();
+        $warehouses = Warehouse::query()->select('id', 'name')->get();
         $facilitators = Facilitator::query()->select('name', 'id')->get();
 
-        return view('personnel.discharge.task.index', compact('dischargeTasks', 'owners', 'facilitators','warehouses'));
+        return view('personnel.discharge.task.index', compact('dischargeTasks', 'owners', 'facilitators', 'warehouses'));
     }
 
     // 结算报表
@@ -132,34 +132,36 @@ class DischargeTaskController extends Controller
     {
         $this->gate('人事管理-卸货-结算报表-查询');
 
-        $dischargeTasks = DischargeTask::query()->with(['facilitator', 'owner','warehouse'])->filter($filters)->orderByDesc('id')->get();
+        $dischargeTasks = DischargeTask::query()->with(['facilitator', 'owner', 'warehouse'])->filter($filters)->orderByDesc('id')->get();
 
-        $row = ['日期', '客户名称','仓库', '作业名称', '入库单号', '数量', '单位', '收入单价', '收入合计', '装卸队', '数量', '单位', '支出单价', '支出合计', '状态', '收入备注', '支出备注'];
+        $row = ['日期', '客户名称', '仓库', '作业名称', '入库单号', '数量', '单位', '收入单价', '收入合计', '装卸队', '数量', '单位', '支出单价', '支出合计', '状态', '收入备注', '支出备注'];
         $json = app('DischargeTaskService')->getStatementsJson($dischargeTasks);
 
         return app(ExportService::class)->json($row, $json, "卸货结算报表");
     }
 
-    // 回执单
     public function receipt(Request $request)
     {
-        $task = DischargeTask::query()->with(['facilitator', 'owner','warehouse'])->where('id' , $request['id'])->first();
+        $task = DischargeTask::query()->with(['facilitator', 'owner', 'warehouse'])->where('id', $request['id'])->first();
         $task->type = DischargeTask::types[$task->type];
-        return view('personnel.discharge.task.receipt',compact('task'));
+        return view('personnel.discharge.task.receipt', compact('task'));
     }
 
     public function importApi(Request $request): array
     {
-        $extension=$request->file()['file']->getClientOriginalExtension();
+        $this->gate('人事管理-卸货-创建');
+
+        $extension = $request->file()['file']->getClientOriginalExtension();
+        if (in_array($extension, ['xlsx', 'xlsm', 'xltx', 'xltm', 'xls', 'xlt', 'ods', 'ots', 'slk', 'xml', 'gnumeric', 'htm', 'html', 'csv', 'tsv']))
+            return ['success' => false,'请检查导入文件是否符合要求'];
         $extension[0] = strtoupper($extension[0]);
         try {
             Excel::import(new DischargeTaskImport(), $request->file()['file']->path(), null, $extension);
         } catch (\Exception $e) {
-            dd($e->getMessage());
-            return ['success'=>false,'message' => ['请检查导入文件是否符合要求']];
+            return ['success' => false, 'message' => ['请检查导入文件是否符合要求']];
         }
-        if(Cache::has('exception')){
-            return ['success' => false,'errors' => Cache::get('exception')];
+        if (Cache::has('exception')) {
+            return ['success' => false, 'errors' => Cache::get('exception')];
         }
         return ['success' => true];
     }
@@ -168,18 +170,23 @@ class DischargeTaskController extends Controller
     public function show(DischargeTask $dischargeTask)
     {
     }
+
     public function edit(DischargeTask $dischargeTask)
     {
     }
+
     public function update(Request $request, DischargeTask $dischargeTask)
     {
     }
+
     public function store(Request $request)
     {
     }
+
     public function create()
     {
     }
+
     public function destroy(DischargeTask $dischargeTask)
     {
 

+ 3 - 3
resources/views/personnel/discharge/task/_import.blade.php

@@ -13,13 +13,13 @@
                 <form>
                     <div class="form-group">
                         <label for="importFile">导入文件</label>
-                        <input type="file" ref="file" name="file"  id="importFile">
+                        <input type="file" ref="file" name="file"  id="importFile"  class="form-control-file">
                     </div>
                     <div class="form-group">
-                        <small>文件大小不能超过10MB</small>
+                        <small>文件类型:xlsx ,xlsm ,xls</small>
                     </div>
                     <div class="form-group">
-                        <small>字段:*货主,*预约日期,*作业名称,*仓库,*入库单,*数量,*单位,*单价,备注(非必填)</small>
+                        <small>字段*货主,*预约日期,*作业名称,*仓库,*入库单,*数量,*单位,*单价,备注(非必填)</small>
                     </div>
                     <div class="form-group" v-if="uploadErrors.length > 0">
                         <p class="text-danger">导入异常明细</p>

+ 2 - 1
resources/views/personnel/discharge/task/index.blade.php

@@ -28,12 +28,13 @@
                 <button type="button" class="btn btn-outline-dark btn-sm form-control-sm tooltipTarget" @click="showCreateTaskModal(true)" style="background: #dad7e8;">创建任务</button>
                 @endcan
             </span>
-
+            @can('人事管理-卸货-创建')
             <span class="ml-1">
                   <button type="button" class="btn btn-outline-primary btn-sm form-control-sm tooltipTarget"
                           @click="importModal"
                   >批量导入</button>
             </span>
+            @endcan
         </div>
         @include('personnel.discharge.task._import')
         @include('personnel.discharge.task._table')