|
|
@@ -78,7 +78,7 @@ class LaborReportController extends Controller
|
|
|
$userWorkGroups=UserWorkgroup::select('id','name')->get();
|
|
|
return view('personnel.laborReport.index',['laborReports'=>$laborReports,'userWorkGroups'=>$userWorkGroups,'request'=>$request->input(),'permittingWorkgroups'=>$permittingWorkgroups,'laravelEchoPrefix'=>$laravelEchoPrefix,]);
|
|
|
}
|
|
|
- $laborReports=LaborReport::with(['userWorkgroup','user'])->orderBy('id','DESC')->paginate(50);
|
|
|
+ $laborReports=LaborReport::with(['userWorkgroup','user','userDutyCheck'])->orderBy('id','DESC')->paginate(50);
|
|
|
foreach ($laborReports as $laborReport){
|
|
|
if (!$laborReport->group_user_id){
|
|
|
//十分钟之内组长未审核实行软删除
|
|
|
@@ -88,24 +88,36 @@ class LaborReportController extends Controller
|
|
|
$this->log(__METHOD__,"组长未审核该条记录将在10分钟后实行软删除__".__FUNCTION__,$laborReport->toJson(),Auth::user()['id']);
|
|
|
}
|
|
|
}
|
|
|
- $createdAtDate=Carbon::parse($laborReport->created_at)->format('Y-m-d H:i');
|
|
|
- $userDutyCheck=UserDutyCheck::where('user_id',$laborReport->user_id)->where('type','登入')->where('checked_at','like',$createdAtDate.'%')->first();
|
|
|
- if(!$userDutyCheck)$addOneHourCheckedAt=Carbon::parse($laborReport['created_at'])->subHours(-1)->format('Y-m-d H:i:s');
|
|
|
- else $addOneHourCheckedAt=Carbon::parse($userDutyCheck['checked_at'])->subHours(-1)->format('Y-m-d H:i:s');
|
|
|
- if ($userDutyCheck['verify_user_id']) $laborReport->userDutyCheck=$userDutyCheck;
|
|
|
- if (!$userDutyCheck['verify_user_id']&&Carbon::now()->format('Y-m-d H:i:s')<$addOneHourCheckedAt){
|
|
|
- $laborReport->userDutyCheck=$userDutyCheck;
|
|
|
- }
|
|
|
- else if (!$userDutyCheck['verify_user_id']&&Carbon::now()->format('Y-m-d H:i:s')>$addOneHourCheckedAt){
|
|
|
- $laborReport->delete();
|
|
|
- $this->log(__METHOD__,"进场门卫未审核该条记录将在一小时后实行软删除__".__FUNCTION__,$laborReport->toJson(),Auth::user()['id']);
|
|
|
+ //换场登入(当天有进场 退场 又进场 情况)
|
|
|
+ //换组登入 (当天进场后 换组 )
|
|
|
+ if ($laborReport->user_workgroup_id){
|
|
|
+ $createdAtDate=Carbon::parse($laborReport->created_at)->format('Y-m-d');
|
|
|
+ $userDutyCheck=UserDutyCheck::where('user_id',$laborReport->user_id)->where('type','登入')->where('checked_at','like',$createdAtDate.'%')->first();
|
|
|
+ $this->guardClock($laborReport,$userDutyCheck);
|
|
|
+ }else if (!$laborReport->user_workgroup_id){
|
|
|
+ $createdAtDate=Carbon::parse($laborReport->created_at)->format('Y-m-d H:i');
|
|
|
+ $userDutyCheck=UserDutyCheck::where('user_id',$laborReport->user_id)->where('type','登入')->where('checked_at','like',$createdAtDate.'%')->first();
|
|
|
+ $this->guardClock($laborReport,$userDutyCheck);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ //dd($laborReports);
|
|
|
$userWorkGroups=UserWorkgroup::select('id','name')->get();
|
|
|
return view('personnel/laborReport/index',['laborReports'=>$laborReports,'userWorkGroups'=>$userWorkGroups,'laravelEchoPrefix'=>$laravelEchoPrefix,'permittingWorkgroups'=>$permittingWorkgroups]);
|
|
|
|
|
|
}
|
|
|
-
|
|
|
+ public function guardClock($laborReport,$userDutyCheck){
|
|
|
+ if(!$userDutyCheck)$addOneHourCheckedAt=Carbon::parse($laborReport['created_at'])->subHours(-1)->format('Y-m-d H:i:s');
|
|
|
+ else $addOneHourCheckedAt=Carbon::parse($userDutyCheck['checked_at'])->subHours(-1)->format('Y-m-d H:i:s');
|
|
|
+ if ($userDutyCheck['verify_user_id']) $laborReport->userDutyCheck=$userDutyCheck;
|
|
|
+ if (!$userDutyCheck['verify_user_id']&&Carbon::now()->format('Y-m-d H:i:s')<$addOneHourCheckedAt){
|
|
|
+ $laborReport->userDutyCheck=$userDutyCheck;
|
|
|
+ }
|
|
|
+ else if (!$userDutyCheck['verify_user_id']&&Carbon::now()->format('Y-m-d H:i:s')>$addOneHourCheckedAt){
|
|
|
+ $laborReport->delete();
|
|
|
+ $this->log(__METHOD__,"进场门卫未审核该条记录将在一小时后实行软删除__".__FUNCTION__,$laborReport->toJson(),Auth::user()['id']);
|
|
|
+ }
|
|
|
+ }
|
|
|
public function export($id,Request $request){
|
|
|
if (!Gate::allows('人事管理-临时工报表')){return redirect(url('/')); }
|
|
|
ini_set('max_execution_time',3500);
|