wenhongquan 1 سال پیش
والد
کامیت
7f27bdb88f

+ 10 - 1
src/api/system/task.js

@@ -102,4 +102,13 @@ export function ddcTask(data) {
         method: "put",
         data: data,
     });
-}
+}
+
+
+export function tasklogs(data) {
+  return request({
+    url: "/system/tasklog/list",
+    method: "get",
+    params: data,
+  });
+}

+ 2 - 2
src/views/mb/task/detail/index.vue

@@ -9,7 +9,7 @@
     <div class="body">
       <div class="listcontent" :style="`height:${bodyheight}px`">
         <van-collapse v-model="activeNames">
-          <van-collapse-item class="citem" :title="`${taskinfo.taskCode}工单信息【${task_status.filter((i) => i.value.toString() === taskinfo.status.toString())[0]?.label ?? '-' }】`" name="1">
+          <van-collapse-item class="citem" :title="`${taskinfo.taskOtherId}工单信息【${task_status.filter((i) => i.value.toString() === taskinfo.status.toString())[0]?.label ?? '-' }】`" name="1">
             <div class="content">
               <van-row>
             <van-col :span="12"
@@ -47,7 +47,7 @@
                 )[0]?.label ?? "-"
               }}</van-col
             >
-            <van-col :span="12">其他工单号:{{ taskinfo.taskOtherId }}</van-col>
+            <van-col :span="12">系统工单号:{{ taskinfo.taskCode }}</van-col>
             <van-col :span="12"
               >要求完成时间:{{ taskinfo.taskReqCompleteTime }}</van-col
             >

+ 27 - 13
src/views/mb/task/disposal/index.vue

@@ -168,8 +168,9 @@
                             })
                           "
                           @confirm="
-                            ({ selectedOptions }) => {
-                              item.type = selectedOptions[0].text;
+                            ( selectedOptions ) => {
+                              item.type = selectedOptions.text;
+                              showpicker = false;
                             }
                           "
                           @cancel="showpicker = false"
@@ -192,8 +193,9 @@
                             })
                           "
                           @confirm="
-                            ({ selectedOptions }) => {
-                              item.cz = selectedOptions[0].text;
+                            ( selectedOptions ) => {
+                              item.cz = selectedOptions.text;
+                               showpicker1 = false;
                             }
                           "
                           @cancel="showpicker1 = false"
@@ -216,8 +218,9 @@
                             })
                           "
                           @confirm="
-                            ({ selectedOptions }) => {
-                              item.gg = selectedOptions[0].text;
+                            ( selectedOptions ) => {
+                              item.gg = selectedOptions.text;
+                                showpicker2 = false;
                             }
                           "
                           @cancel="showpicker2 = false"
@@ -241,8 +244,9 @@
                             })
                           "
                           @confirm="
-                            ({ selectedOptions }) => {
-                              item.dw= selectedOptions[0].text;
+                            ( selectedOptions ) => {
+                              item.dw= selectedOptions.text;
+                               showpicker3 = false;
                             }
                           "
                           @cancel="showpicker3 = false"
@@ -272,7 +276,7 @@
                   </van-col>
                 </van-row>
               </van-tab>
-              <van-tab title="辅材" name="3">
+              <van-tab title="辅材" name="4">
                 <van-row>
                   <van-col :span="24" v-for="item in czobj.hcdata">
                     <div style="margin-bottom: 10px">
@@ -324,6 +328,11 @@
                 <ImageUpload v-model="czobj.images[2]"></ImageUpload>
               </template>
             </van-field>
+              <van-field v-model="czobj.images[3]" name="处置后远景照片" label="处置后远景照片">
+              <template #input>
+                <ImageUpload v-model="czobj.images[3]"></ImageUpload>
+              </template>
+            </van-field>
             <van-field
               v-model="taskinfo.taskAddr"
               name="详细地址"
@@ -436,7 +445,7 @@ const bhobj = ref({ resonRemark: [], files: "", images: [] });
 
 const czobj = ref({
   qsdes: "",
-  images: ["", "", ""],
+  images: ["", "", "",""],
   gzldata: [],
   clsbdata: [],
   hcdata: [],
@@ -505,12 +514,17 @@ try {
       console.log(log);
       if (Array.isArray(log.images)) {
         if (log.images.length < 3) {
-          czobj.value.images = log.images.concat(["", "", ""]);
+          czobj.value.images = log.images.concat(["", "", "",""]);
         } else {
-          czobj.value.images = log.images;
+          if (log.images.length == 3) {
+            czobj.value.images = log.images.concat([""]);
+          } else {
+             czobj.value.images = log.images;
+          }
+
         }
       } else {
-        czobj.value.images = ["", "", ""];
+        czobj.value.images = ["", "", "",""];
       }
       if (!czobj.value.hasOwnProperty("gzldata")) {
         czobj.value.gzldata = [];

+ 1 - 1
src/views/mb/task/index.vue

@@ -41,7 +41,7 @@
               >
                 <div>
                   <div class="header">
-                    <div>工单号:{{ item.taskCode }}</div>
+                    <div>工单号:{{ item.taskOtherId }}</div>
                     <div class="time">{{ item.taskTime }}</div>
                   </div>
                   <div class="body">

+ 63 - 5
src/views/task/detail/index.vue

@@ -2,7 +2,7 @@
   <div style="padding: 10px 15px">
     <div class="taskdetail">
       <div class="title">
-        {{ taskinfo.taskCode }} 工单
+        {{ taskinfo.taskOtherId }} 工单
 
         <div class="btngroup">
           <el-button
@@ -160,7 +160,7 @@
                 )[0]?.label ?? "-"
               }}</el-col
             >
-            <el-col :span="6">其他工单号:{{ taskinfo.taskOtherId }}</el-col>
+            <el-col :span="6">系统工单号:{{ taskinfo.taskCode }}</el-col>
             <el-col :span="6"
               >要求完成时间:{{ taskinfo.taskReqCompleteTime }}</el-col
             >
@@ -945,7 +945,7 @@
     </el-dialog>
 
     <el-dialog v-model="showxy" title="任务响应" draggable>
-      <div>
+      <div style="position: relative;padding-right:25px">
         <el-form :model="xyobj" label-width="120px">
           <el-form-item label="班组响应时间"
             ><el-date-picker
@@ -971,6 +971,9 @@
           <el-form-item label="处理时长(小时)"
             ><el-input v-model="xyobj.clsc" type="text" placeholder="请输入"
           /></el-form-item>
+          <div style="position: absolute;right:-10px">
+              <el-button size="small"   @click="showhistory=true;" round><el-icon><Operation /></el-icon></el-button>
+          </div>
 
           <el-form-item label="作业负责人">
             <el-select
@@ -1013,6 +1016,29 @@
       </template>
     </el-dialog>
 
+    <el-drawer
+    v-model="showhistory"
+    title="填写历史"
+    direction="rtl"
+    size="50%"
+  >
+    <el-table :data="taskfklist" border style="width: 100%">
+       <el-table-column prop="zyfzr" label="主要负责人" width="180" >
+         <template #default="scope">
+           {{ allusers.filter(i=>i.userId==scope.row.zyfzr).map(i=>{ return i.nickName}).join("") }}
+         </template>
+       </el-table-column>
+        <el-table-column prop="carxh" label="型号" width="180" />
+         <el-table-column prop="carnumber" label="车牌"  />
+         <el-table-column prop="carnumber" label="操作"  >
+            <template #default="scope">
+              <el-button @click="doseclt(scope.row)">选择</el-button>
+            </template>
+         </el-table-column>
+
+    </el-table>
+  </el-drawer>
+
     <el-dialog v-model="showcz" title="任务处置" draggable width="80vw">
       <div>
         <el-form :model="czobj" label-width="150px">
@@ -1242,6 +1268,7 @@ import {
   hcTask,
   ddTask,
   ddcTask,
+  tasklogs
 } from "@/api/system/task";
 import {
   changeUserStatus,
@@ -1320,12 +1347,39 @@ const gzobj = ref({ isfinsh: "是", hfdes: "", czcompletetime: "", jlr: "" });
 const shobj = ref({ hcry: "", hcdes: "", hctime: "" });
 const cztblaname = ref("gzl");
 
+const showhistory = ref(false);
 
 
 const deptoption = computed(() => {
   return dept
 })
 
+const taskfklist = ref([]);
+
+try {
+  tasklogs({ taskStatus: -1,pageSize:10000 }).then((res) => {
+
+    var mapc = {};
+    res.rows.forEach((item) => {
+      var cc = JSON.parse(item.logDes);
+      var key = cc.zyfzr + "|" + cc.carxh + "|" + cc.carnumber;
+      if (!mapc[key]) {
+        mapc[key] = cc;
+      }
+    });
+    taskfklist.value = Object.values(mapc);
+  });
+} catch (error) {
+
+}
+
+const doseclt = (userinfo) => {
+  xyobj.value.zyfzr = userinfo.zyfzr;
+  xyobj.value.carxh = userinfo.carxh;
+  xyobj.value.carnumber = userinfo.carnumber;
+  showhistory.value = false;
+
+}
 
 
 
@@ -1584,10 +1638,14 @@ const gettasklist = () => {
       var log = JSON.parse(logs[0].logDes);
       czobj.value = log;
       if (Array.isArray(log.images)) {
-        if (log.images.length < 4) {
+        if (log.images.length < 3) {
           czobj.value.images = log.images.concat(["", "", "",""]);
         } else {
-          czobj.value.images = log.images;
+          if (log.images.length == 3) {
+            czobj.value.images = log.images.concat([""]);
+          } else {
+             czobj.value.images = log.images;
+          }
         }
       } else {
         czobj.value.images = ["", "", "",""];

+ 1 - 1
src/views/task/list/index.vue

@@ -138,7 +138,7 @@
           @row-click="tblrowclick"
           :row-class-name="tableRowClassName"
         >
-          <el-table-column prop="taskCode" label="工单号" width="180" />
+          <el-table-column prop="taskOtherId" label="工单号" width="180" />
           <el-table-column prop="taskArea" label="行政区">
             <template #default="scope">
               {{