Jelajahi Sumber

修改人事管理系统相关逻辑

haozi 5 tahun lalu
induk
melakukan
21ca19401e

+ 2 - 3
app/Http/Controllers/PersonnelController.php

@@ -80,13 +80,11 @@ class PersonnelController extends Controller
         if ($workgroup){
             if(!Gate::allows($workgroup->name)){ return ["success"=>false,"data"=>"您无此权限操作!!!"];  }
         }
-
         $type=$request->input('type');
         $userDutyCheck->type=$type;
         $userDutyCheck->group_user_id=Auth::user()['id'];
-        $check_in_at=$userDutyCheck->checked_at;
         $userDutyCheck->update();
-        $laborReport=LaborReport::where('check_in_at',$check_in_at)->where('user_id',$userDutyCheck->user_id)->where('user_workgroup_id',$workgroup->id)->first();
+        $laborReport=LaborReport::where('user_id',$userDutyCheck->user_id)->where('user_workgroup_id',$workgroup->id)->first();
         $this->updateLaborReportData($laborReport,$userDutyCheck);
         $this->log(__METHOD__,"打卡组长审核".__FUNCTION__,json_encode($userDutyCheck),Auth::user()['id']);
         event(new TeamAuditEvent($userDutyCheck));
@@ -98,6 +96,7 @@ class PersonnelController extends Controller
         $laborReport['verify_at']=$date;
         $laborReport['group_user_id']=$userDutyCheck->group_user_id;
         $laborReport->update();
+        $this->log(__METHOD__,"打卡组长审核更新临时工报表的审核时间".__FUNCTION__,json_encode($laborReport),Auth::user()['id']);
         return;
     }
 

+ 8 - 5
app/Http/Controllers/UserDutyCheckController.php

@@ -125,13 +125,12 @@ class UserDutyCheckController extends Controller
         $userWorkgroupID=$request->input('userWorkgroupID');
         $user=User::where('name',$mobile_phone)->first();
         $userDetail=UserDetail::where('mobile_phone',$mobile_phone)->first();
-        if ($userWorkgroupID)$user->userWorkgroups()->sync([$userWorkgroupID]);
         $labor_company_id=$request->input('labor_company_id');
-//        $labor_company_id=LaborCompany::where('name',$laborCompany)->value('id');
         $userLabor=UserLabor::where('user_id',$userDetail->user_id)->first();
         $userLabor->update([
             'labor_company_id'=>$labor_company_id,
         ]);
+        $this->log(__METHOD__,"更改临时工劳务所信息".__FUNCTION__,json_encode($userLabor),Auth::user()['id']);
         $userDutyCheck=$this->dutyCheck($userDetail->user_id,$userWorkgroupID);
         //添加临时工报表数据
         $this->createLaborReportData($userDetail,$userWorkgroupID,$userDutyCheck);
@@ -156,6 +155,7 @@ class UserDutyCheckController extends Controller
             'password'=>Uuid::uuid1(),
         ]);
         $user->save();
+        $this->log(__METHOD__,"创建临时工用户__".__FUNCTION__,json_encode($user));
         if ($userWorkgroupID)$user->userWorkgroups()->sync([$userWorkgroupID]);
         $userDetail=new UserDetail([
             'user_id'=>$user->id,
@@ -166,13 +166,14 @@ class UserDutyCheckController extends Controller
             'type'=>'临时工',
         ]);
         $userDetail->save();
-//        $laborCompany=$request->input('laborCompany');
-//        $labor_company_id=LaborCompany::where('name',$laborCompany)->value('id');
+        $this->log(__METHOD__,"提交临时工信息__".__FUNCTION__,json_encode($userDetail));
         $labor_company_id=$request->input('labor_company_id');
         $userLabor=new UserLabor([
+            'user_id'=>$user->id,
             'labor_company_id'=>$labor_company_id,
         ]);
         $userLabor->save();
+        $this->log(__METHOD__,"提交临时工对应劳务所信息__".__FUNCTION__,json_encode($userLabor));
         $userDutyCheck=$this->dutyCheck($user->id,$userWorkgroupID);
         $this->createLaborReportData($userDetail,$userWorkgroupID,$userDutyCheck);
         if ($userDutyCheck&&$userDutyCheck->error)return "<h1 style='color: darkred;text-align:center'>重复打卡!</h1>";
@@ -209,6 +210,7 @@ class UserDutyCheckController extends Controller
             $userDutyCheck->type="登入";
             $userDutyCheck->verify_user_id=0;
             $userDutyCheck->save();
+            $this->log(__METHOD__,"提交打卡记录__".__FUNCTION__,json_encode($userDutyCheck));
             return $userDutyCheck;
         }
         if($diffDate<=5){
@@ -300,8 +302,9 @@ class UserDutyCheckController extends Controller
             'full_name'=>['filled'],
             'gender'=>['filled'],
             'mobile_phone'=>['required','integer','digits:11'],
-            'identity_number' => ['filled','identity_cards'],
+            'identity_number' => ['filled','identity_cards','unique:user_details,identity_number'],
         ],[
+            'unique'=>':attribute 已经存在,不能重复!',
             'filled' => ':attribute 不能为空',
             'required'=>':attribute 为必填项',
             'integer'=>':attribute 数字类型',

+ 37 - 0
database/migrations/2020_06_08_132835_change_user_detail.php

@@ -0,0 +1,37 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class ChangeUserDetail extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::dropIfExists('user_details');
+        Schema::create('user_details', function (Blueprint $table) {
+            $table->bigInteger('user_id')->unique()->comment('外键用户');
+            $table->string('full_name')->nullable()->comment('全名');
+            $table->enum('gender',['未知','男','女'])->nullable()->comment('性别');
+            $table->string('identity_number')->nullable()->unique()->comment('身份证号');
+            $table->string('mobile_phone')->nullable()->index()->comment('手机号');
+            $table->enum('type',['无','员工','临时工','客户'])->default('无')->comment('类型');
+            $table->timestamps();
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::dropIfExists('user_details');
+    }
+}

TEMPAT SAMPAH
public/images/QRCodeIMG/1.png


TEMPAT SAMPAH
public/images/QRCodeIMG/2.png


TEMPAT SAMPAH
public/images/QRCodeIMG/4.png


+ 3 - 3
resources/views/personnel/checking-in/createUserDetail.blade.php

@@ -16,7 +16,7 @@
             <div class="form-group row pt-0">
                 <label for="full_name" class="form-check-label col-3 pull-left">姓名:</label>
                 <div class="col-8">
-                <input name="full_name" id="full_name" class="@error('full_name') is-invalid @enderror  form-control" type="text">
+                <input name="full_name" id="full_name" class="@error('full_name') is-invalid @enderror  form-control" value="{{ old('full_name') }}" autocomplete="off" type="text">
                 @error('full_name')
                 <span class="invalid-feedback" role="alert">
                     <strong>{{ $message }}</strong>
@@ -33,7 +33,7 @@
             <div class="form-group row pt-0">
                 <label for="identity_number" class="form-check-label col-3 pull-left">身份证号码:</label>
                 <div class="col-8">
-                <input name="identity_number" id="identity_number" class="@error('identity_number') is-invalid @enderror  form-control" type="text">
+                <input name="identity_number" id="identity_number" class="@error('identity_number') is-invalid @enderror  form-control" value="{{ old('identity_number') }}" autocomplete="off" type="text">
                 @error('identity_number')
                 <span class="invalid-feedback" role="alert">
                     <strong>{{ $message }}</strong>
@@ -55,7 +55,7 @@
             <div class="form-group row">
                 <label for="labor_company_id" class="form-check-label col-3 pull-left">劳务所:</label>
                 <div class="col-8">
-                <select name="labor_company_id" id="labor_company_id" class=" form-control" type="text">
+                <select name="labor_company_id" id="labor_company_id" class=" form-control"  type="text">
                     @foreach( $laborCompanies as $laborCompany )
                         <option value="{{$laborCompany->id}}">{{$laborCompany->name}}</option>
                     @endforeach

+ 0 - 1
resources/views/personnel/laborReport/index.blade.php

@@ -128,7 +128,6 @@
                             <td class="text-muted"><span v-if="laborReport.verifyPerson">@{{laborReport.verifyPerson}}</span></td>
                             <td class="text-muted">@{{laborReport.checkOutAt}}</td>
                             <td class="text-muted"><span v-if="laborReport.beginLunch&&laborReport.endLunch&&laborReport.beginLunch<laborReport.endLunch">@{{laborReport.beginLunch}}-@{{laborReport.endLunch}}</span></td>
-{{--                            <td v-else="laborReport.beginLunch||laborReport.endLunch"></td>--}}
                             <td class="text-muted"><span v-if="laborReport.onlineDuration">@{{laborReport.onlineDuration}}</span></td>
                             <td class="text-muted"><span  v-if="laborReport.workingDuration">@{{laborReport.workingDuration}}</span></td>
                         </tr>