Преглед изворни кода

临时工申请系统添加功能

ANG YU пре 4 година
родитељ
комит
39beb8a69b

+ 13 - 4
app/Http/Controllers/LaborApplyController.php

@@ -17,7 +17,7 @@ use Illuminate\Support\Facades\Gate;
 
 class LaborApplyController extends Controller
 {
-    public function index(Request $request,\App\Filters\LaborApplyFilters $filters)
+    public function index(Request $request, \App\Filters\LaborApplyFilters $filters)
     {
         $builder = LaborApply::query()
             ->filter($filters)
@@ -44,6 +44,14 @@ class LaborApplyController extends Controller
 
     public function store(LaborApplyRequest $request, LaborApply $laborApply)
     {
+
+        $user_workgroup_applied = LaborApply::query()
+            ->whereDate('created_at', now()->toDateString())
+            ->where('user_workgroup_id', $request->user_workgroup_id)
+            ->exists();
+        if ($user_workgroup_applied) {
+            return redirect()->back()->with('warning', '该仓库小组今日已申请过,请修改申请人数,不要重复申请!');
+        }
         $laborApply->fill($request->all());
         $laborApply->apply_user_id = Auth::id();
         $laborApply->status = '创建';
@@ -107,10 +115,11 @@ class LaborApplyController extends Controller
         /** @var LaborApplyService $laborApplyService */
         $laborApplyService = app('LaborApplyService');
         $response = $laborApplyService->allocationLaborToLaborCompany();
+        $route = 'laborCompanyDispatch.index';
         if ($response['success']) {
-            return redirect(route('laborApplyDispatch.index'))->with('success', '重新生成劳务派遣数据成功!');
-        }else{
-            return redirect(route('laborApplyDispatch.index'))->with('danger', $response['error_message']);
+            return redirect(route('' . $route . ''))->with('success', '重新生成劳务派遣数据成功!');
+        } else {
+            return redirect(route($route))->with('danger', $response['error_message']);
         }
     }
 }

+ 26 - 2
app/Http/Controllers/LaborCompanyDispatchController.php

@@ -36,6 +36,17 @@ class LaborCompanyDispatchController extends Controller
         return view('personnel.laborApply.dispatch.index', compact('labor_company_dispatches'));
     }
 
+    public function edit(LaborCompanyDispatch $laborCompanyDispatch)
+    {
+        return view('personnel.laborApply.dispatch.edit', compact('laborCompanyDispatch'));
+    }
+
+    public function update(LaborCompanyDispatch $laborCompanyDispatch, Request $request)
+    {
+        $laborCompanyDispatch->update($request->all());
+        return redirect(route('laborCompanyDispatch.index'))->with('success', '更新成功!');
+    }
+
     public function createDetail(Request $request, LaborCompanyDispatch $laborCompanyDispatch)
     {
         return view('personnel.laborApply.dispatch.detail.create', compact('laborCompanyDispatch'));
@@ -53,6 +64,17 @@ class LaborCompanyDispatchController extends Controller
         $laborCompanyDispatch->laborCompanyDispatchDetails()->createMany(
             $request->input('users')
         );
+        return redirect(route('laborCompanyDispatch.index'))->with('success', '添加临时工详情成功!');
+    }
+
+    /**
+     * 劳务接单
+     * @param LaborCompanyDispatch $laborCompanyDispatch
+     * @param Request $request
+     * @return \Illuminate\Http\RedirectResponse
+     */
+    public function laborCompanyReceivingOrder(LaborCompanyDispatch $laborCompanyDispatch,Request $request)
+    {
         /** @var Carbon $dispatch_date */
         $dispatch_date = $laborCompanyDispatch->dispatch_date;
         //更新创建日期为 分配日期前一天的全部申请状态为 劳务接单
@@ -60,8 +82,10 @@ class LaborCompanyDispatchController extends Controller
             ->whereDate('created_at', $dispatch_date->subDay()->toDateString())
             ->where('warehouse_id', $laborCompanyDispatch->laborCompany->warehouse_id)
             ->update([
-                'status' => 3, //劳务接单
+                'status' => $request->status, //劳务接单
             ]);
-        return redirect(route('laborApplyDispatch.index'))->with('success', '添加临时工详情成功!');
+        $laborCompanyDispatch->status = '劳务接单';
+        $laborCompanyDispatch->save();
+        return redirect()->back()->with('success', '接单成功!');
     }
 }

+ 6 - 0
app/Http/Controllers/TestController.php

@@ -16,6 +16,7 @@ use App\Http\Requests\AndroidGateRequest;
 use App\Http\Requests\OrderDelivering;
 use App\Jobs\BatchTaskJob;
 use App\Jobs\CacheShelfTaskJob;
+use App\Jobs\CalculationArrivedManNumJob;
 use App\Jobs\OrderCreateInstantBill;
 use App\Jobs\OrderCreateWaybill;
 use App\Jobs\SettlementBillReportJob;
@@ -567,4 +568,9 @@ sql;
 
         \App\LaborCompanyDispatchDetail::query()->truncate();
     }
+
+    public function calculationArrivedManNum()
+    {
+        $this->dispatch(new CalculationArrivedManNumJob(\Illuminate\Support\Carbon::parse('2021-10-11')));
+    }
 }

+ 44 - 0
app/Jobs/CalculationArrivedManNumJob.php

@@ -0,0 +1,44 @@
+<?php
+
+namespace App\Jobs;
+
+use App\Services\LaborApplyService;
+use Illuminate\Bus\Queueable;
+use Illuminate\Contracts\Queue\ShouldQueue;
+use Illuminate\Foundation\Bus\Dispatchable;
+use Illuminate\Queue\InteractsWithQueue;
+use Illuminate\Queue\SerializesModels;
+use Illuminate\Support\Carbon;
+
+/**
+ * 按照给定的申请日期计算到岗人数
+ */
+class CalculationArrivedManNumJob implements ShouldQueue
+{
+    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
+    /** @var $service LaborApplyService */
+    private $service;
+
+    /** @var $apply_date Carbon */
+    private $apply_date;
+
+    /**
+     * @param Carbon $apply_date
+     */
+    public function __construct(Carbon $apply_date)
+    {
+        $this->service = app('LaborApplyService');
+        $this->apply_date = $apply_date;
+    }
+
+
+    /**
+     * Execute the job.
+     *
+     * @return void
+     */
+    public function handle()
+    {
+       $this->service->calculationArrivedManNum($this->apply_date);
+    }
+}

+ 1 - 1
app/LaborApply.php

@@ -79,7 +79,7 @@ class LaborApply extends Model
     public function getArriveRateAttribute()
     {
         if (0 === $this->actual_num) {
-            return '';
+            return '0'.'%';
         }
         $apply_num = $this->man_num + $this->woman_num;
         $arrive_rate = $this->actual_num / $apply_num * 100;

+ 34 - 2
app/LaborCompanyDispatch.php

@@ -17,18 +17,50 @@ class LaborCompanyDispatch extends Model
 
     use ModelTimeFormat;
 
-    public $fillable = [
+    protected $fillable = [
         'labor_company_id',//劳务公司ID
         'man_num',//男工数量
         'woman_num',//女工数量
         'dispatch_date',//分配日期
         'exceed_max_labor_num_status',//是否超过最大允许值 1 未超过 2 超过
+        'status',//状态
     ];
 
-    public $dates = [
+
+    protected $dates = [
         'dispatch_date'
     ];
 
+    static public $enums = [
+        'status' => [
+            '' => 0,
+            '创建' => 1,
+            '劳务接单' => 2,
+            '任务完结' => 3,
+        ],
+    ];
+
+    function __construct(array $attributes = [])
+    {
+        foreach (self::$enums as &$enum) {
+            $enum = $enum + array_flip($enum);
+        }
+        parent::__construct($attributes);
+    }
+
+
+    public function getStatusAttribute($value)
+    {
+        if (!$value) return '';
+        return self::$enums['status'][$value];
+    }
+
+    public function setStatusAttribute($value)
+    {
+        if (!$value) return 0;
+        $this->attributes['status'] = self::$enums['status'][$value];
+    }
+
     public function laborCompany(): BelongsTo
     {
         return $this->belongsTo(LaborCompany::class);

+ 57 - 0
app/Services/LaborApplyService.php

@@ -9,8 +9,10 @@ use App\LaborApply;
 use App\Warehouse;
 use Illuminate\Database\Eloquent\Builder;
 use Illuminate\Database\Eloquent\Collection;
+use Illuminate\Support\Carbon;
 use Illuminate\Support\Facades\Cache;
 use Illuminate\Support\Facades\DB;
+use function DeepCopy\deep_copy;
 
 class LaborApplyService
 {
@@ -18,6 +20,10 @@ class LaborApplyService
     const TIME_OUT_HOUR = 19;
     const LABOR_APPLY_STATUS = 'LABOR_APPLY_STATUS';
     const LABOR_APPLY_STATUS_TTL = 60 * 30;
+    //到岗日期是申请日期的前一天 为保证数据正确 计算实际人数的时间为到岗日期的后一天 故时间为2
+    const CALCULATION_ARRIVED_MAN_NUM_DEFAULT_SUB_DAYS = 2;
+    //临时工工作时长最小值 低于这个时间的不计入
+    const CALCULATION_ARRIVED_MAN_NUM_MIN_ONLINE_DURATION = 1;
     use ServiceAppAop;
 
     protected $modelClass = LaborApply::class;
@@ -140,6 +146,7 @@ class LaborApplyService
                     'woman_num' => $dispatch_woman_num,
                     'dispatch_date' => $dispatch_date,
                     'exceed_max_labor_num_status' => LaborCompanyDispatch::NOT_EXCEED_MAX_LABOR_NUM,//没有超限额
+                    'status' => 1,//创建
                 ];
             }
 
@@ -168,4 +175,54 @@ class LaborApplyService
         }
         return $builder->get();
     }
+
+    /**
+     * 按照给定的申请日期计算到岗人数
+     *
+     * 查询指定日期的 每个小组的申请人数
+     * 遍历申请数据
+     *      根据申请数据的仓库小组id,日期(申请日期后一天)查询打卡数据,计算人数之和 更新申请表actual_num
+     * @param Carbon|null $apply_date
+     */
+    public function calculationArrivedManNum(Carbon $apply_date = null)
+    {
+        //查询的申请日期
+        if (empty($apply_date)) {
+            $apply_date = now()->subDays(self::CALCULATION_ARRIVED_MAN_NUM_DEFAULT_SUB_DAYS);
+        }
+        //查询指定日期的 每个小组的申请人数
+        $laborApplies = DB::table('labor_applies')
+            ->selectRaw('user_workgroup_id as user_workgroup_id , sum(man_num + woman_num) as apply_num , warehouse_id')
+            ->whereDate('created_at', $apply_date->toDateString())
+            ->groupBy('user_workgroup_id','warehouse_id')
+            ->get();
+        //根据申请数据的仓库小组id,日期(申请日期后一天)
+        $check_in_at = deep_copy($apply_date)->addDay()->toDateString();
+        //遍历申请数据
+        foreach ($laborApplies as $laborApply) {
+            //查询打卡数据,计算人数之和
+            $arrived_num =
+                DB::table('labor_reports')
+                    ->selectRaw("count( DISTINCT 'identity_number',identity_number) as num")//根据身份证号去重防止重复入组
+
+                    ->where('user_workgroup_id', $laborApply->user_workgroup_id)
+                    ->whereDate('check_in_at', $check_in_at)
+                    ->where('online_duration', '>=', self::CALCULATION_ARRIVED_MAN_NUM_MIN_ONLINE_DURATION)
+                    ->first()->num;
+            //更新申请表actual_num
+            LaborApply::query()
+                ->whereDate('created_at', deep_copy($apply_date)->toDateString())
+                ->where('user_workgroup_id', $laborApply->user_workgroup_id)
+                ->update([
+                    'actual_num' => $arrived_num,
+                    'status' => 4,//任务完结
+                ]);
+        }
+        //根据分配时间完结任务  $check_in_at:实际入场日期 就是 dispatch_date
+        LaborCompanyDispatch::query()
+            ->whereDate('dispatch_date', $check_in_at)
+            ->update([
+                'status' => 3//任务完结
+            ]);
+    }
 }

+ 32 - 0
database/migrations/2021_10_09_164021_drop_current_timestamp_to_labor_company_dispatches_table.php

@@ -0,0 +1,32 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class DropCurrentTimestampToLaborCompanyDispatchesTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::table('labor_company_dispatches', function (Blueprint $table) {
+            $table->dateTime('dispatch_date')->nullable()->change();
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::table('labor_company_dispatches', function (Blueprint $table) {
+            $table->timestamp('dispatch_date')->change();
+        });
+    }
+}

+ 32 - 0
database/migrations/2021_10_11_104946_add_column_status_to_labor_company_dispatches_table.php

@@ -0,0 +1,32 @@
+<?php
+
+use Illuminate\Database\Migrations\Migration;
+use Illuminate\Database\Schema\Blueprint;
+use Illuminate\Support\Facades\Schema;
+
+class AddColumnStatusToLaborCompanyDispatchesTable extends Migration
+{
+    /**
+     * Run the migrations.
+     *
+     * @return void
+     */
+    public function up()
+    {
+        Schema::table('labor_company_dispatches', function (Blueprint $table) {
+            $table->integer('status')->default(0)->comment('状态');
+        });
+    }
+
+    /**
+     * Reverse the migrations.
+     *
+     * @return void
+     */
+    public function down()
+    {
+        Schema::table('labor_company_dispatches', function (Blueprint $table) {
+            $table->dropColumn('status');
+        });
+    }
+}

+ 3 - 1
resources/views/personnel/laborApply/create.blade.php

@@ -3,6 +3,8 @@
 
 @section('content')
     <div class="container-fluid d-none" id="list">
+        @include('shared._messages')
+
         <div class="card col-md-8 offset-md-2">
             <div class="card-body">
                 <!--
@@ -75,7 +77,7 @@
                         <label for="remark" class="col-2 col-form-label text-right">用工要求</label>
                         <div class="col-8">
                             <textarea class="form-control" rows="3"
-                                      placeholder required
+                                      placeholder
                                       name="remark" id="remark"></textarea>
                         </div>
                     </div>

+ 3 - 2
resources/views/personnel/laborApply/dispatch/detail/create.blade.php

@@ -5,7 +5,7 @@
     <div class="container-fluid" id="list">
         <div class="card col-md-8 offset-md-2">
             <div class="card-body">
-                <form action="{{ route('laborApplyDispatch.storeDetail', $laborCompanyDispatch->id) }}" method="post"
+                <form action="{{ route('laborCompanyDispatch.storeDetail', $laborCompanyDispatch->id) }}" method="post"
                       style="display: inline-block;"
                       onsubmit="return confirm('您确定要提交吗?');">
                     {{ csrf_field() }}
@@ -67,7 +67,8 @@
 
             methods: {
                 addItem() {
-                    if (this.items.length <= this.labor_company_dispatch.labor_worker_num -1 ) {
+                    let sum_man_num = this.labor_company_dispatch.man_num + this.labor_company_dispatch.woman_num;
+                    if (this.items.length <= sum_man_num - 1) {
                         this.items.push({});
                     } else {
                         window.tempTip.show("不能超过最大人数限制!");

+ 3 - 2
resources/views/personnel/laborApply/dispatch/detail/edit.blade.php

@@ -5,7 +5,7 @@
     <div class="container-fluid" id="list">
         <div class="card col-md-8 offset-md-2">
             <div class="card-body">
-                <form action="{{ route('laborApplyDispatch.storeDetail', $laborCompanyDispatch->id) }}" method="post"
+                <form action="{{ route('laborCompanyDispatch.storeDetail', $laborCompanyDispatch->id) }}" method="post"
                       style="display: inline-block;"
                       onsubmit="return confirm('您确定要提交吗?');">
                     {{ csrf_field() }}
@@ -68,7 +68,8 @@
 
             methods: {
                 addItem() {
-                    if (this.items.length <= this.labor_company_dispatch.labor_worker_num - 1) {
+                    let sum_man_num = this.labor_company_dispatch.man_num + this.labor_company_dispatch.woman_num;
+                    if (this.items.length <= sum_man_num - 1) {
                         this.items.push({});
                     } else {
                         window.tempTip.show("不能超过最大人数限制!");

+ 52 - 0
resources/views/personnel/laborApply/dispatch/edit.blade.php

@@ -0,0 +1,52 @@
+@extends('layouts.app')
+@section('title')修改-劳务派遣明细@endsection
+
+@section('content')
+    <div class="container-fluid" id="list">
+        <div class="card col-md-8 offset-md-2">
+            <div class="card-body">
+                <form action="{{ route('laborCompanyDispatch.update',$laborCompanyDispatch->id) }}" method="POST" accept-charset="UTF-8">
+                    @csrf
+                    @method('PUT')
+                    @include('shared._error')
+                    {{--男工人数--}}
+                    <div class="from-group row mt-3">
+                        <label for="man_num" class="col-2 col-form-label text-right">男工人数</label>
+                        <div class="col-8">
+                            <input type="number" class="form-control" id="man_num" name="man_num" value="{{ $laborCompanyDispatch->man_num }}" required>
+                        </div>
+                    </div>
+
+                    {{--女工人数--}}
+                    <div class="from-group row mt-3">
+                        <label for="woman_num" class="col-2 col-form-label text-right">女工人数</label>
+                        <div class="col-8">
+                            <input type="number" class="form-control" id="woman_num" name="woman_num" value="{{ $laborCompanyDispatch->woman_num }}" required>
+                        </div>
+                    </div>
+                    {{--提交--}}
+                    <div class="form-group row mt-5">
+                        <div class="col-8 offset-2">
+                            <input type="submit" class="btn btn-success form-control">
+                        </div>
+                    </div>
+                </form>
+            </div>
+        </div>
+    </div>
+@endsection
+
+@section('lastScript')
+    <script>
+        new Vue({
+            el: "#list",
+            data: {
+            },
+            mounted() {
+
+            },
+
+            methods: {}
+        });
+    </script>
+@endsection

+ 47 - 18
resources/views/personnel/laborApply/dispatch/index.blade.php

@@ -16,11 +16,13 @@
                     <td>
                         <div>
                             @{{ i+1 }}
-                            <span v-if="labor_company_dispatch.exceed_max_labor_num_status==2"><i class="fa fa-thermometer-full" style="color: red" aria-hidden="true"></i></span>
+                            <span v-if="labor_company_dispatch.exceed_max_labor_num_status==2"><i
+                                    class="fa fa-thermometer-full" style="color: red" aria-hidden="true"></i></span>
                         </div>
 
                     </td>
                     <td>@{{ labor_company_dispatch.labor_company.name }}</td>
+                    <td>@{{ labor_company_dispatch.status }}</td>
                     <td>@{{ labor_company_dispatch.man_num }}</td>
                     <td>@{{ labor_company_dispatch.woman_num }}</td>
                     <td>
@@ -47,11 +49,34 @@
                         </div>
                     </td>
                     <td>@{{ labor_company_dispatch.dispatch_date }}</td>
-                    <td>
-                        <a :href="getCreateOrEditDetailUrl(labor_company_dispatch)"
-                           class="btn btn-outline-secondary btn-sm" role="button">
-                            @{{ labor_company_dispatch.labor_company_dispatch_details.length>0?'修改临时工明细':'录入临时工明细' }}
-                        </a>
+                    <td class="">
+                        <div class="float-left ml-3">
+                            <a :href="getCreateOrEditDetailUrl(labor_company_dispatch)"
+                               class="btn btn-outline-secondary btn-sm" role="button">
+                                @{{ labor_company_dispatch.labor_company_dispatch_details.length>0?'修改临时工明细':'录入临时工明细'
+                                }}
+                            </a>
+                        </div>
+                        @can('人事管理')
+                            <div class="float-left ml-3">
+                                <a :href="getEditlLaborCompanyDispatchUrl(labor_company_dispatch)"
+                                   class="btn btn-outline-secondary btn-sm" role="button">
+                                    修改派遣人数
+                                </a>
+                            </div>
+                        @endcan()
+                        @can('劳务所')
+                            <div class="float-left ml-3">
+                                <form :action="getLaborCompanyReceivingOrderUrl(labor_company_dispatch)" method="post"
+                                      accept-charset="UTF-8" onsubmit="return confirm('是否确认接单!')">
+                                    @csrf
+                                    @method('PATCH')
+                                    <input type="number" name="status" hidden value="3">
+                                    <button type="submit" class="btn btn-outline-secondary btn-sm" role="button">劳务接单
+                                    </button>
+                                </form>
+                            </div>
+                        @endcan()
                     </td>
 
                 </tr>
@@ -95,6 +120,7 @@
                 let column = [
                     {name: 'index', value: '序号', neglect: true},
                     {name: 'name', value: '劳务公司'},
+                    {name: 'status', value: '状态 '},
                     {name: 'man_num', value: '男工人数'},
                     {name: 'woman_num', value: '女工人数'},
                     {name: 'details', value: '派遣详情'},
@@ -112,25 +138,28 @@
             },
 
             methods: {
+                /*临时工信息详情*/
                 getCreateOrEditDetailUrl(labor_company_dispatch) {
                     let url = "";
                     if (labor_company_dispatch.labor_company_dispatch_details.length > 0) {
-                        url = "{{ url('personnel/laborApply/dispatch') }}/" + labor_company_dispatch.id + '/detail/edit';
+                        url = "{{ url('personnel/laborApply/laborCompanyDispatch') }}/" + labor_company_dispatch.id + '/detail/edit';
                     } else {
-                        url = "{{ url('personnel/laborApply/dispatch') }}/" + labor_company_dispatch.id + '/detail/create';
+                        url = "{{ url('personnel/laborApply/laborCompanyDispatch') }}/" + labor_company_dispatch.id + '/detail/create';
                     }
                     return url;
                 },
-                exceed_max_labor_num_color(obj) {
-                    let result = {};
-                    if (obj.exceed_max_labor_num_status == 2) {
-                        result = {
-                            color: 'red',
-                        };
-
-                    }
-                    return result;
-                }
+                /*分配详情编辑*/
+                getEditlLaborCompanyDispatchUrl(labor_company_dispatch) {
+                    let url = "";
+                    url = "{{ url('personnel/laborApply/laborCompanyDispatch') }}/" + labor_company_dispatch.id + '/edit';
+                    return url;
+                },
+                /*劳务接单*/
+                getLaborCompanyReceivingOrderUrl(labor_company_dispatch) {
+                    let url = "";
+                    url = "{{ url('personnel/laborApply/laborCompanyDispatch') }}/" + labor_company_dispatch.id + '/LaborCompanyReceivingOrder';
+                    return url;
+                },
             },
         });
     </script>

+ 0 - 35
resources/views/personnel/laborApply/index.blade.php

@@ -43,41 +43,6 @@
                                 <i class="far fa-trash-alt"></i> 删除
                             </button>
                         </form>
-                        <form v-if="labor_apply.status === '劳务接单'" :action="getBaseUrl(labor_apply)" method="post"
-                              style="display: inline-block;">
-                        {{ csrf_field() }}
-                        {{ method_field('PATCH') }}
-                        <!-- Button trigger modal -->
-                            <button type="button" class="btn btn-primary" data-toggle="modal"
-                                    data-target="#actualNumModal">
-                                实到人数
-                            </button>
-
-                            <!-- Modal -->
-                            <div class="modal fade" id="actualNumModal" tabindex="-1"
-                                 aria-labelledby="actualNumModalLabel" aria-hidden="true">
-                                <div class="modal-dialog">
-                                    <div class="modal-content">
-                                        <div class="modal-header">
-                                            <h5 class="modal-title" id="actualNumModalLabel">实到人数</h5>
-                                            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
-                                                <span aria-hidden="true">&times;</span>
-                                            </button>
-                                        </div>
-                                        <div class="modal-body">
-                                            <div class="form-group">
-                                                <input type="number" class="form-control" name="actual_num">
-                                            </div>
-                                        </div>
-                                        <div class="modal-footer">
-                                            <button type="button" class="btn btn-secondary" data-dismiss="modal">取消
-                                            </button>
-                                            <button type="submit" class="btn btn-primary">确认</button>
-                                        </div>
-                                    </div>
-                                </div>
-                            </div>
-                        </form>
                     </td>
                 </tr>
             </table>

+ 8 - 4
routes/web.php

@@ -55,10 +55,14 @@ Route::group(['prefix'=>'personnel','middleware'=>'auth'],function() {
     Route::put('laborApply/temporaryOpen','LaborApplyController@temporaryOpen')->name('laborApply.temporaryOpen');
     Route::get('laborApply/createDispatch','LaborApplyController@createDispatch')->name('laborApply.createDispatch');
     //劳务派遣查看
-    Route::get('laborApply/dispatch','LaborCompanyDispatchController@index')->name('laborApplyDispatch.index');
-    Route::get('laborApply/dispatch/{laborCompanyDispatch}/detail/create','LaborCompanyDispatchController@createDetail')->name('laborApplyDispatch.createDetail');
-    Route::get('laborApply/dispatch/{laborCompanyDispatch}/detail/edit','LaborCompanyDispatchController@editDetail')->name('laborApplyDispatch.editDetail');
-    Route::post('laborApply/dispatch/{laborCompanyDispatch}/detail','LaborCompanyDispatchController@storeDetail')->name('laborApplyDispatch.storeDetail');
+    Route::group(['prefix' => 'laborApply'], function () {
+        Route::patch('laborCompanyDispatch/{laborCompanyDispatch}/LaborCompanyReceivingOrder', 'LaborCompanyDispatchController@laborCompanyReceivingOrder')->name('laborCompanyDispatch.LaborCompanyReceivingOrder');
+        Route::resource('laborCompanyDispatch','LaborCompanyDispatchController')->only(['index','edit','update']);
+        Route::get('laborCompanyDispatch/{laborCompanyDispatch}/detail/create','LaborCompanyDispatchController@createDetail')->name('laborCompanyDispatch.createDetail');
+        Route::get('laborCompanyDispatch/{laborCompanyDispatch}/detail/edit','LaborCompanyDispatchController@editDetail')->name('laborCompanyDispatch.editDetail');
+        Route::post('laborCompanyDispatch/{laborCompanyDispatch}/detail','LaborCompanyDispatchController@storeDetail')->name('laborCompanyDispatch.storeDetail');
+    });
+
 
     Route::resource('laborApply', 'LaborApplyController');