Explorar o código

Merge branch 'zengjun' of ssh://was.baoshi56.com:10022/var/git/bswas

LD %!s(int64=5) %!d(string=hai) anos
pai
achega
d3c4e11dba

+ 24 - 3
app/Http/Controllers/OrderIssueProcessLogController.php

@@ -2,6 +2,7 @@
 
 namespace App\Http\Controllers;
 
+use App\OrderIssue;
 use App\OrderIssueProcessLog;
 use App\Services\LogService;
 use App\Services\OrderIssueProcessLogService;
@@ -13,7 +14,11 @@ use Illuminate\Support\Facades\Gate;
 class OrderIssueProcessLogController extends Controller
 {
 
-
+    /**
+     * 处理日志创建
+     * @param Request $request
+     * @return array
+     */
     public function apiStore(Request $request)
     {
         if (!Gate::allows('订单管理-问题件-编辑')) {
@@ -41,15 +46,31 @@ class OrderIssueProcessLogController extends Controller
         }
     }
 
-    public function apiDestroy(Request $request){
+    /**
+     * 删除处理日志
+     * @param Request $request
+     * @return array|bool[]
+     * @throws \Exception
+     */
+    public function destroyApi(Request $request): array
+    {
         if(!$request->filled('id')){
             return ['success'=>false,'fail_info'=>'没有传入对应参数'];
         }
-        OrderIssueProcessLog::query()->where('id',$request->input('id'))->delete();
+        /** @var OrderIssueProcessLog $orderIssueProcessLog */
+        $orderIssueProcessLog = OrderIssueProcessLog::query()->where('id',$request->input('id'))->first();
+        // 删除的如果是完结条目,将处理状态改为空
+        if($orderIssueProcessLog['type'] === '结束') OrderIssue::query()->where('id',$orderIssueProcessLog['order_issue_id'])->update(['final_status'=>null]);
+        $orderIssueProcessLog->delete();
         app('LogService')->log(__METHOD__, __FUNCTION__, json_encode($request->getContent()));
         return ['success'=>true];
     }
 
+    /**
+     * 批量完结订单
+     * @param Request $request
+     * @return array
+     */
     public function batchStoreApi(Request $request){
         if (!Gate::allows('订单管理-问题件-编辑')) {
             return ['success' => false, 'fail_info' => '没有对应的权限'];

+ 1 - 1
resources/views/maintenance/facilitator/_table.blade.php

@@ -7,7 +7,7 @@
     </tr>
 
     <template v-if="facilitators.length > 0">
-        <tr v-for="(facilitator,index) in facilitators" class="text-center">
+        <tr v-for="(facilitator,index) in facilitators" class="text-center"  @click="selectTr===index+1?selectTr=0:selectTr=index+1" :class="selectTr===index+1?'focusing' : ''">
             <td>@{{ index+1 }}</td>
             <td>@{{ facilitator.name }}</td>
             <td>@{{ facilitator.created_at }}</td>

+ 1 - 0
resources/views/maintenance/facilitator/index.blade.php

@@ -35,6 +35,7 @@
                 editFacilitator:{},
                 selectIndex:null,
                 facilitatorError:{},
+                selectTr:0,
             },
             watch:{
                 checkData: {

+ 4 - 10
resources/views/order/issue/index.blade.php

@@ -418,7 +418,7 @@
                                             <td class="text-muted" style="min-width: 170px">@{{ log.created_at }}</td>
                                             @can('订单管理-问题件-处理结果删除')
                                                 <td style="" class="m-0 p-0 border-0">
-                                                    <button type="button" class="btn btn-sm btn-outline-danger m-0 del-btn invisible" @click="deleteOrderIssueLog(log,orderIssue.id)">删</button>
+                                                    <button type="button" class="btn btn-sm btn-outline-danger m-0 del-btn invisible" @click="deleteOrderIssueLog(log,orderIssue,index,logIndex)">删</button>
                                                 </td>
                                             @endcan
                                         </template>
@@ -1248,8 +1248,7 @@
                         tempTip.show('网络异常:' + err);
                     });
                 },
-                deleteOrderIssueLog(log, OrderIssueId) {
-                    let _this = this;
+                deleteOrderIssueLog(log, orderIssue,index,logIndex) {
                     if(!confirm('是否删除当前记录'))return;
                     if(log.type === '创建'){
                         tempTip.show('创建记录不能删除');
@@ -1257,13 +1256,8 @@
                     }
                     axios.post("{{url('apiLocal/order/issue/log/destroy')}}", {id: log.id}).then(function (res) {
                         if (res.data.success) {
-                            _this.orderIssues.forEach(function (orderIssue) {
-                                if (orderIssue.id == OrderIssueId) {
-                                    orderIssue.logs.forEach(function (item, index) {
-                                        if (item.id == log.id)orderIssue.logs.splice(index, 1);
-                                    });
-                                }
-                            })
+                            if(log.type ==='结束')orderIssue.final_status = '';
+                            orderIssue.logs.splice(logIndex,1);
                             tempTip.setDuration(2000);
                             tempTip.showSuccess('删除成功');
                             return;

+ 2 - 11
resources/views/process/index.blade.php

@@ -165,10 +165,10 @@
         <table class="table table-sm text-nowrap table-bordered" id="headerParent">
             <tr class="row-even p-0" id="header"></tr>
             <template>
-            <tr v-for="(processOne,i) in processes" :class="count(i,processes)%2==0?'row-even':''" :id="processOne.id?processOne.id:processes[i-1].id+'-2'"
+            <tr v-for="(processOne,i) in processes" :class="[(count(i,processes)%2===0?'row-even':'' ),selectTr===i+1?'focusing':'']" :id="processOne.id?processOne.id:processes[i-1].id+'-2'"
                 :name="'process_table_'+count(i,processes)" @mouseover="changeStyle('process_table_'+count(i,processes),true)"
                 @mouseout="changeStyle('process_table_'+count(i,processes),false)"
-                @click="selectTableRow(i,$event)"
+                @click="selectTr===i+1?(selectTr=0):selectTr=i+1"
             >
                 <td v-if="processOne.id" :rowspan="processOne.is_multi_row?2:''">
                     <input class="checkItem" type="checkbox" :value="processOne.id" v-model="checkData">
@@ -597,15 +597,6 @@
                 },0);
             },
             methods: {
-                selectTableRow(id,e){
-                    $('#headerParent tr[class=focusing]').removeClass('focusing')
-                    if (id === this.selectTr) {
-                        this.selectTr = '';
-                        return;
-                    }
-                    this.selectTr = id;
-                    $(e.target).parent('tr').addClass('focusing')
-                },
                 arrayFilter: function (processesContents, process) {
                     if (!process.is_multi_row && process.id) return processesContents;
                     let array = [];

+ 1 - 1
resources/views/transport/discharge/facilitator/_table.blade.php

@@ -10,7 +10,7 @@
         <th>总金额合计</th>
     </tr>
     <template v-if="facilitatorStatements.length>0">
-        <tr v-for="(facilitatorStatement,index) in facilitatorStatements" :key="index" class="text-center">
+        <tr v-for="(facilitatorStatement,index) in facilitatorStatements" :key="index" class="text-center" @click="selectTr===index+1?selectTr=0:selectTr=index+1" :class="selectTr===index+1?'focusing' : ''">
             <td><input type="checkbox" class="form-check" :value="facilitatorStatement.id" v-model="checkData"></td>
             <td>@{{index+1}}</td>
             <td>@{{ facilitatorStatement.created_at }}</td>

+ 1 - 0
resources/views/transport/discharge/facilitator/index.blade.php

@@ -38,6 +38,7 @@
                 facilitators:{!! $facilitators !!},
                 units:{0:'m3',1:'吨',2:'托',3:'件'},
                 checkData:[],
+                selectTr:0,
             },
             watch: {
                 checkData: {

+ 2 - 2
resources/views/transport/discharge/statement/_table.blade.php

@@ -6,7 +6,7 @@
         <th class="" colspan="5">支出信息</th>
         <th class="td-yellow" colspan="3">其他信息</th>
     </tr>
-    <tr class="text-center">
+    <tr class="text-center" >
         <th><input type="checkbox" class="form-check" name="selectAll" id="selectAll" @click="checkAll"/></th>
         <th class="td-helpful">序号</th>
         <th class="td-helpful">日期</th>
@@ -26,7 +26,7 @@
         <th class="td-yellow">支出备注</th>
     </tr>
     <template v-if="dischargeStatements.length > 0">
-        <tr v-for="(dischargeTask,index) in dischargeStatements" class="text-center">
+        <tr v-for="(dischargeTask,index) in dischargeStatements" class="text-center"  @click="selectTr===index+1?selectTr=0:selectTr=index+1" :class="selectTr===index+1?'focusing' : ''">
             <td ><input type="checkbox" class="form-check" :value="dischargeTask.id" v-model="checkData"></td>
             <td class="td-helpful">@{{ index+1 }}</td>
             <td class="td-helpful">@{{ dischargeTask.created_at }}</td>

+ 1 - 0
resources/views/transport/discharge/statement/index.blade.php

@@ -40,6 +40,7 @@
                 taskTypes: {0: "装车", 1: "卸车"},
                 units: {0: 'm3', 1: '吨', 2: '件', 3: '托'},
                 status: {0: '创建', 1: '接单', 2: '作业中', 3: '完成'},
+                selectTr:0,
             },
             created() {
                 let _this = this;

+ 1 - 1
resources/views/transport/discharge/task/_table.blade.php

@@ -15,7 +15,7 @@
         <th>操作</th>
     </tr>
     <template v-if="dischargeTasks.length > 0">
-        <tr v-for="(dischargeTask,index) in dischargeTasks" :key="index" class="text-center">
+        <tr v-for="(dischargeTask,index) in dischargeTasks" :key="index" class="text-center"  @click="selectTr===index+1?selectTr=0:selectTr=index+1" :class="selectTr===index+1?'focusing' : ''">
             <td><input type="checkbox" class="form-check" :value="dischargeTask.id" v-model="checkData"></td>
             <td>
                 @{{index+1}}

+ 3 - 0
resources/views/transport/discharge/task/index.blade.php

@@ -23,7 +23,9 @@
                 </div>
             </span>
             <span class="ml-1">
+                @can('运输管理-卸货-创建')
                 <button type="button" class="btn btn-outline-dark btn-sm form-control-sm tooltipTarget" @click="showCreateTaskModal(true)" style="background: #dad7e8;">创建任务</button>
+                @endcan
             </span>
         </div>
         @include('transport.discharge.task._table')
@@ -70,6 +72,7 @@
                 isUpdate: false,
                 checkData: [],
                 selectIndex: '',
+                selectTr:0,
             },
             created() {
                 this.owners.forEach(function (owner, index, array) {

+ 1 - 1
routes/apiLocal.php

@@ -80,7 +80,7 @@ Route::group(['prefix' => 'order'], function () {
 
         Route::group(['prefix'=>'log'],function(){
             Route::post('store', 'OrderIssueProcessLogController@apiStore');
-            Route::post('destroy', 'OrderIssueProcessLogController@apiDestroy');
+            Route::post('destroy', 'OrderIssueProcessLogController@destroyApi')->name('order.issue.log.destroyApi');
             Route::post('batchStore','OrderIssueProcessLogController@batchStoreApi');
         });
         Route::group(['prefix'=>'recycle'],function(){