فهرست منبع

人事--门卫拥有指定权限才能审核进组出组

haozi 5 سال پیش
والد
کامیت
c011d31829
2فایلهای تغییر یافته به همراه21 افزوده شده و 9 حذف شده
  1. 10 1
      app/LaborReport.php
  2. 11 8
      resources/views/personnel/laborReport/index.blade.php

+ 10 - 1
app/LaborReport.php

@@ -8,6 +8,7 @@ use App\Traits\ModelTimeFormat;
 use Illuminate\Database\Eloquent\SoftDeletes;
 use Illuminate\Support\Arr;
 use Illuminate\Support\Facades\Auth;
+use Illuminate\Support\Facades\Gate;
 
 class LaborReport extends Model
 {
@@ -20,7 +21,7 @@ class LaborReport extends Model
     ];
     protected $appends = [
         'is_exportGroup','is_export', 'exit_at','enter_at','sequence', 'amountOfJoined','remark','thisRecordOnlineTime','thisRecordWorkingTime',
-        'totalOnlineTime','verifyPerson','userDutyCheckVerifyUserId','isAdult','round_check_in_at','round_check_out_at'
+        'totalOnlineTime','verifyPerson','userDutyCheckVerifyUserId','isAdult','round_check_in_at','round_check_out_at','has_group_verify_right'
     ];
     protected $tempFields = [
         'temEnteringRecord',
@@ -64,6 +65,14 @@ class LaborReport extends Model
         return $this->hasOne('App\Sign','signable_id','id')
             ->where('field','remark')->where('signable_type','labor_reports')->value('mark');
     }
+    public function getHasGroupVerifyRightAttribute(){
+        if (!Gate::allows('人事管理-临时工报表')){return null; }
+        $user=Auth::user();
+        $userWorkgroupIds=$user->getPermittingWorkgroupIds($allowAll=false);
+        if (count($userWorkgroupIds)!=0){
+            return in_array($this['user_workgroup_id'],$userWorkgroupIds);
+        }
+    }
     public function setRemarkAttribute($remark,$id){
         return Sign::updateOrCreate(['signable_type'=>'labor_reports','signable_id'=>$id,'field'=>'remark'],['mark'=>$remark]);
 

+ 11 - 8
resources/views/personnel/laborReport/index.blade.php

@@ -45,10 +45,11 @@
                         
                     @can('人事管理-组长审核')
                         <span>
-                        <button v-if="laborReport.groupUserId&&!laborReport.is_exportGroup&&!laborReport.is_export" @click="groupExport(laborReport.id,laborReport.name)" class="btn btn-sm btn-outline-danger">退组</button>
+                                <button v-if="laborReport.groupUserId&&!laborReport.is_exportGroup&&!laborReport.is_export&&laborReport.has_group_verify_right" @click="groupExport(laborReport.id,laborReport.name)" class="btn btn-sm btn-outline-danger">退组</button>
+                              <span  v-else-if="laborReport.groupUserId&&!laborReport.is_exportGroup&&!laborReport.is_export&&!laborReport.has_group_verify_right"><b class="text-success">在组</b></span>
                         <span v-else-if="laborReport.groupUserId&&laborReport.is_exportGroup&&!laborReport.is_export" class="text-info">已退组</span>
                             <span v-else-if="laborReport.is_export" class="text-black">已退场</span>
-                        <button v-else-if="laborReport.user_workgroup_id" @click="groupClockAudit(laborReport.id,laborReport.userWorkgroupNeedRemark)" class="btn btn-sm btn-outline-primary">组长审核</button>
+                        <button v-else-if="laborReport.user_workgroup_id&&laborReport.has_group_verify_right" @click="groupClockAudit(laborReport.id,laborReport.userWorkgroupNeedRemark)" class="btn btn-sm btn-outline-primary">组长审核</button>
                         </span>
                     @else
                         <span  v-if="laborReport.groupUserId&&!laborReport.is_exportGroup&&!laborReport.is_export"><b class="text-success">在组</b></span>
@@ -122,11 +123,13 @@
                                     &nbsp;&nbsp;&nbsp;&nbsp;
                                 @can('人事管理-组长审核')
                                                     <span>
-                                <button v-if="laborReport.groupUserId&&!laborReport.is_exportGroup&&!laborReport.is_export" @click="groupExport(laborReport.id,laborReport.name)" style="transform:scale(1.1)" class="btn btn-lg btn-danger">退组</button>
-                                <b v-else-if="laborReport.groupUserId&&laborReport.is_exportGroup&&!laborReport.is_export" class="text-info">已退组</b>
+                                <button v-if="laborReport.groupUserId&&!laborReport.is_exportGroup&&!laborReport.is_export&&laborReport.has_group_verify_right" @click="groupExport(laborReport.id,laborReport.name)" style="transform:scale(1.1)" class="btn btn-lg btn-danger">退组</button>
+                                     <span  v-else-if="laborReport.groupUserId&&!laborReport.is_exportGroup&&!laborReport.is_export&&!laborReport.has_group_verify_right"><b class="text-success">在组</b></span>
+                                     <b v-else-if="laborReport.groupUserId&&laborReport.is_exportGroup&&!laborReport.is_export" class="text-info">已退组</b>
                                     <b v-else-if="laborReport.is_export" class="text-black">已退场</b>
-                                <button v-else-if="laborReport.user_workgroup_id" @click="groupClockAudit(laborReport.id,laborReport.userWorkgroupNeedRemark)" class="btn btn-lg btn-outline-primary" style="transform:scale(1.1)" >组长审核</button>
-                                </span>
+                                <button v-else-if="laborReport.user_workgroup_id&&laborReport.has_group_verify_right" @click="groupClockAudit(laborReport.id,laborReport.userWorkgroupNeedRemark)" class="btn btn-lg btn-outline-primary" style="transform:scale(1.1)" >组长审核</button>
+
+                                                    </span>
                                                 @else
                                                     <span  v-if="laborReport.groupUserId&&!laborReport.is_exportGroup&&!laborReport.is_export"><b class="text-success">在组</b></span>
                                                     <b v-else-if="laborReport.groupUserId&&laborReport.is_exportGroup&&!laborReport.is_export" class="text-info">已退组</b>
@@ -293,7 +296,7 @@
                             workingDuration:'{{$laborReport->working_duration}}', created_at:'{{$laborReport->created_at}}',
                             enter_at:'{{$laborReport->enter_at}}',exit_at:'{{$laborReport->exit_at}}',
                             thisRecordOnlineTime:'{{$laborReport->thisRecordOnlineTime}}',
-                            thisRecordWorkingTime:'{{$laborReport->thisRecordWorkingTime}}',isAdult:'{{$laborReport->isAdult}}',
+                            thisRecordWorkingTime:'{{$laborReport->thisRecordWorkingTime}}',isAdult:'{{$laborReport->isAdult}}',has_group_verify_right:'{{$laborReport->has_group_verify_right}}',
                             sequence:'{{$laborReport->sequence}}',amountOfJoined:'{{$laborReport->amountOfJoined}}',remark:'{{$laborReport->remark}}',
                             @if($laborReport->userDutyCheck)user_duty_check_id:'{{$laborReport->userDutyCheck->id}}', userDutyCheckVerifyUserId:'{{$laborReport->userDutyCheck->verify_user_id}}'
                             ,userDutyCheckType:'{{$laborReport->userDutyCheck->type}}',userDutyCheckAt:'{{$laborReport->userDutyCheck->checked_at}}',@endif},
@@ -442,7 +445,7 @@
                         {name:'thisRecordOnlineTime',value: '在线时长', neglect: true},
                         {name:'thisRecordWorkingTime',value: '本次工作时长', neglect: true},
                         {name:'remark',value: '备注'},
-                        @can('人事管理-临时工报表-删除')
+                            @can('人事管理-临时工报表-删除')
                         {name:'remove',value: '操作'},
                         @endcan
                     ];