Просмотр исходного кода

二次加工管理-临时工登记增加“删除‘,查询中增加通过“任务号”筛选的功能,二次加工录入和编辑页面,教程管理处注释掉,二次加工后退,回到旧页面(操作没有呈现修改)

Zhouzhendong 5 лет назад
Родитель
Сommit
b3ecd12f7f

+ 3 - 0
app/Http/Controllers/ProcessController.php

@@ -65,6 +65,9 @@ class ProcessController extends Controller
         if ($request->input('status')){
             $processes=$processes->where('status',$request->input('status'));
         }
+        if ($request->input('code')){
+            $processes=$processes->where('code','like',$request->input('code')."%");
+        }
         if ($request->input('wms_code')){
             $processesTem=clone $processes;
             $wms_code=$request->input('wms_code');

+ 8 - 0
app/Process.php

@@ -17,6 +17,14 @@ class Process extends Model
     protected $appends=[
         'owner_name','process_method_name',
     ];
+    public static function filterAuthorities(){
+        $user=Auth::user();
+        if(!$user){
+            return (new static)->newQuery()->where('id','0');
+        }
+        $ownerIds=$user->getPermittingOwnerIdsAttribute();
+        return (new static)->newQuery()->whereIn('id',$ownerIds);
+    }
 
     public function owner(){
         return $this->belongsTo('App\Owner','owner_id','id');

+ 9 - 9
resources/views/process/create.blade.php

@@ -194,7 +194,7 @@
                     <label class="col-3 col-form-label text-right" >备注(选填)</label>
                     <textarea v-model="process.remark" type="text" class="form-control col-8"></textarea>
                 </div>
-                <div class="form-group row">
+                {{--<div class="form-group row">
                     <label class="col-3 col-form-label text-right" >引用教程(选填)</label>
                     <span class=" col-8 input-group p-0" style="max-height: 150px; overflow-y: scroll;border-radius:5px;opacity:0.7;text-align: center;">
                         <ul class="list-group" style="width: 100%" onselectstart="return false;">
@@ -207,7 +207,7 @@
                             <button type="button" @click="refreshTutorial()" class="btn btn-sm btn-outline-secondary ml-2">刷新</button>
                         </div>
                     </span>
-                </div>
+                </div>--}}
                 <div class="form-group row">
                     <div class="col-8 offset-3 p-0">
                         <input type="button" @click="submit()" class="btn btn-success form-control" value="提交">
@@ -244,7 +244,7 @@
                     handler(){
                         if (this.processContents.length===1){
                             this.process.owner_id=this.processContents[(this.processContents.length)-1].owner_id;
-                            this.getTutorial(this.processContents[(this.processContents.length)-1].owner_id);
+                            //this.getTutorial(this.processContents[(this.processContents.length)-1].owner_id);
                         }
                     }
                 },
@@ -373,7 +373,7 @@
                         _this.processContents.splice(data,1);
                     });
                 },
-                //获取教程
+                /*//获取教程
                 getTutorial(owner_id){
                     let _this=this;
                     axios.post("{{url('process/ownerGetTutorials')}}"+"/"+owner_id)
@@ -390,7 +390,7 @@
                         tempTip.setDuration(5000);
                         tempTip.show('获取教程失败!网络错误:'+err);
                         });
-                },
+                },*/
                 //选择商品
                 selectedCommodity(commodity,wms_code,type){
                     let _this=this;
@@ -411,7 +411,7 @@
                        return  true;
                     });
                 },
-                //选择教程
+               /* //选择教程
                 selectedTutorial(tutorial){
                     let _this=this;
                     if (tutorial.style){
@@ -441,7 +441,7 @@
                     setTimeout(function(){
                         $(".tooltipTarget").tooltip({'trigger':'hover'});
                     },10);
-                },
+                },*/
                 //异补提交
                 submit(){
                     let _this=this;
@@ -484,7 +484,7 @@
                         tempTip.show('提交失败!网络错误:'+err);
                     });
                 },
-                //去往新增教程
+                /*//去往新增教程
                 addTutorial(){
                     window.open("{{url('maintenance/tutorial/create?owner_id=')}}"+this.process.owner_id);
                 },
@@ -493,7 +493,7 @@
                     if (this.processContents.length>=1 && this.processContents[(this.processContents.length)-1].owner_id){
                         this.getTutorial(this.processContents[(this.processContents.length)-1].owner_id);
                     }
-                },
+                },*/
                 //删除按钮的显示
                 update_delBtn(is_type,wms_code,commodity_id,type){
                     if (is_type) this.$set(this.is_delBtn,wms_code+'_'+commodity_id+'_'+type,true);

+ 73 - 18
resources/views/process/index.blade.php

@@ -42,17 +42,7 @@
                            <td>
                                <input id="wms_code" name="wms_code" style="max-width: 200px" title="单据号:支持15内模糊搜索与15天外精确搜索" v-model="filterData.wms_code" class="form-control form-control-sm tooltipTarget" placeholder="单据号" :class="filterData.wms_code?'bg-warning':''">
                            </td>
-                           <td colspan="6"></td>
-                       </tr>
-                       <tr>
-                           <td >
-                               <input id="date_end" name="date_end" style="max-width: 200px" v-model="filterData.date_end" type="date" class="form-control form-control-sm tooltipTarget" title="选择显示指定日期的结束时间" :class="filterData.date_end?'bg-warning':''">
-                           </td>
                            <td>
-                               <input name="commodity_barcode" style="max-width: 200px" title="商品条码:支持15内模糊搜索与15天外精确搜索" v-model="filterData.commodity_barcode" class="form-control form-control-sm tooltipTarget" placeholder="商品条码" :class="filterData.commodity_barcode?'bg-warning':''">
-                           </td>
-                           <td >
-                                <div class="form-inline">
                                <select id="status" name="status" v-model="filterData.status" @change="submit" style="max-width: 100px" class="form-control form-control-sm tooltipTarget" :class="filterData.status?'bg-warning':''" >
                                    <option value="" selected>状态</option>
                                    <option value="待审核">待审核</option>
@@ -63,10 +53,24 @@
                                    <option value="待验收">待验收</option>
                                    <option value="交接完成">交接完成</option>
                                </select>
-                                <input hidden name="is_accomplish" v-model="filterData.is_accomplish">
-                               <button class="btn btn-sm btn-outline-dark pull-left ml-5" type="submit">按条件搜索</button></div>
+                               <input hidden name="is_accomplish" v-model="filterData.is_accomplish">
                            </td>
-                           <td colspan="6"></td>
+                           <td colspan="5"></td>
+                       </tr>
+                       <tr>
+                           <td >
+                               <input id="date_end" name="date_end" style="max-width: 200px" v-model="filterData.date_end" type="date" class="form-control form-control-sm tooltipTarget" title="选择显示指定日期的结束时间" :class="filterData.date_end?'bg-warning':''">
+                           </td>
+                           <td>
+                               <input name="commodity_barcode" style="max-width: 200px" title="商品条码:支持15内模糊搜索与15天外精确搜索" v-model="filterData.commodity_barcode" class="form-control form-control-sm tooltipTarget" placeholder="商品条码" :class="filterData.commodity_barcode?'bg-warning':''">
+                           </td>
+                           <td>
+                               <input name="code" style="max-width: 200px" title="任务号:支持15内模糊搜索与15天外精确搜索" v-model="filterData.code" class="form-control form-control-sm tooltipTarget" placeholder="任务号" :class="filterData.code?'bg-warning':''">
+                           </td>
+                           <td >
+                               <button class="btn btn-sm btn-outline-dark pull-left" type="submit">按条件搜索</button>
+                           </td>
+                           <td colspan="5"></td>
                        </tr>
                        <tr>
                            <td colspan="9">
@@ -454,9 +458,9 @@
                                 <td>工时差</td>
                                 <td>计费工时</td>
                                 <td>审核</td>
-                                <td>详情</td>
+                                <td>操作</td>
                             </tr>
-                            <tr  v-for="processDailyParticipant in processDailyParticipants" :id="'processDailyParticipant'+processDailyParticipant.id">
+                            <tr  v-for="(processDailyParticipant,i) in processDailyParticipants" :id="'processDailyParticipant'+processDailyParticipant.id">
                                 <td v-if="processDailyParticipant.rowspan" :rowspan="processDailyParticipant.rowspan"><p >@{{ processDailyParticipant.date }}</p></td>
                                 <td v-if="processDailyParticipant.rowspan"  :rowspan="processDailyParticipant.rowspan">
                                     <div  class="form-inline">
@@ -526,7 +530,13 @@
                                     @can("人事管理-任务审核")<button @click="processDailyParticipantAudit(processDailyParticipant.id)" v-if="processDailyParticipant.status=='未审核'" class="btn btn-sm btn-outline-success">审核</button>@endcan
                                     <b v-else class="text-success">@{{ processDailyParticipant.status }}</b>
                                 </td>
-                                @can("二次加工管理-临时工资料管理")<td class="text-info"><u v-if="processDailyParticipant.user_detail_full_name" style="cursor:pointer" @click="showUserDetail(processDailyParticipant.user_id)">详情</u></td>@endcan
+                                <td>
+                                    <div v-if="processDailyParticipant.user_detail_full_name">
+                                        @can("二次加工管理-临时工资料管理")<u class="text-info" style="cursor:pointer"
+                                                                 @click="showUserDetail(processDailyParticipant.user_id)">详情</u>@endcan
+                                        <button class="btn btn-sm btn-outline-danger" @click="deleteDailyParticipant(i)">删</button>
+                                    </div>
+                                </td>
                             </tr>
                         </table>
                     </td>
@@ -564,7 +574,7 @@
                 ],
                 errors:{},
                 checkData:[],
-                filterData:{paginate:50,date_start:'',date_end:'',owner_id:'',commodity_barcode:'',wms_code:'',status:'',is_accomplish:''},
+                filterData:{paginate:50,date_start:'',date_end:'',owner_id:'',commodity_barcode:'',wms_code:'',status:'',is_accomplish:'',code:''},
                 processDailies:[],
                 processDailyParticipants:[],
                 isShow:{
@@ -612,8 +622,21 @@
                 this.resetProcessData();
                 $(".tooltipTarget").tooltip({'trigger':'hover'});
                 $('#process').removeClass('d-none');
-                var today=new Date();
+                let today=new Date();
                 this.today = today.getFullYear() + "-" + ((today.getMonth() + 1) < 10 ? "0"+(today.getMonth() + 1) : (today.getMonth() + 1)) + "-" + today.getDate();
+                function focusin() {
+                    if(isJustBack())location.reload();
+                }
+                window.enterAt=(new Date()).getTime();
+                function isJustBack() {
+                    let nowAt=(new Date()).getTime();
+                    return (nowAt-window.enterAt)<600;
+                }
+                if ("onfocusin" in document){//for IE
+                    document.onfocusin = focusin;
+                } else {
+                    window.onfocus= focusin;
+                }
             },
             methods: {
                 arrayFilter: function (processesContents, process) {
@@ -1576,6 +1599,38 @@
                             tempTip.show('网络错误:'+err);
                         })
                 },
+                deleteDailyParticipant(index){
+                    if (this.processDailyParticipants[index].daily_id){
+                        if (this.processDailyParticipants[index+1] && !this.processDailyParticipants[index+1].daily_id){
+                            this.processDailyParticipants[index+1].daily_id=this.processDailyParticipants[index].daily_id;
+                            this.processDailyParticipants[index+1].date=this.processDailyParticipants[index].date;
+                            this.processDailyParticipants[index+1].isAddProcessDailyParticipant=this.processDailyParticipants[index].isAddProcessDailyParticipant;
+                            this.processDailyParticipants[index+1].isConfirmBtn=this.processDailyParticipants[index].isConfirmBtn;
+                            this.processDailyParticipants[index+1].output=this.processDailyParticipants[index].output;
+                            this.processDailyParticipants[index+1].process_id=this.processDailyParticipants[index].process_id;
+                            this.processDailyParticipants[index+1].readonly=this.processDailyParticipants[index].readonly;
+                            this.processDailyParticipants[index+1].remain=this.processDailyParticipants[index].remain;
+                            this.processDailyParticipants[index+1].rowspan=this.processDailyParticipants[index].rowspan - 1;
+                            this.processDailyParticipants[index+1].submitOutput=this.processDailyParticipants[index].submitOutput;
+                            this.$delete(this.processDailyParticipants,index);
+                        }else{
+                            let processDailyParticipant = {
+                                'daily_id': this.processDailyParticipants[index].daily_id,
+                                'date': this.processDailyParticipants[index].date,
+                                'isAddProcessDailyParticipant': this.processDailyParticipants[index].isAddProcessDailyParticipant,
+                                'isConfirmBtn': this.processDailyParticipants[index].isConfirmBtn,
+                                'output': this.processDailyParticipants[index].output,
+                                'process_id': this.processDailyParticipants[index].process_id,
+                                'readonly': this.processDailyParticipants[index].readonly,
+                                'remain': this.processDailyParticipants[index].remain,
+                                'rowspan': this.processDailyParticipants[index].rowspan,
+                                'submitOutput': this.processDailyParticipants[index].submitOutput,
+                            };
+                            this.$set(this.processDailyParticipants,index,processDailyParticipant);
+                        }
+                    }
+                    else this.$delete(this.processDailyParticipants,index);
+                }
             },
         });
     </script>