wenhongquan 3 år sedan
förälder
incheckning
86eb7f4e0f

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

@@ -52,11 +52,37 @@ export function distributedTask(data) {
     });
 }
 
-// 派发工单任务
+// 驳回工单任务
 export function closeTask(data) {
     return request({
         url: "/system/task/close",
         method: "post",
         data: data
     });
+}
+// 处置工单任务
+export function czTask(data) {
+    return request({
+        url: "/system/task/cz",
+        method: "post",
+        data: data
+    });
+}
+
+// 跟踪工单任务
+export function gzTask(data) {
+    return request({
+        url: "/system/task/gz",
+        method: "post",
+        data: data
+    });
+}
+
+// 审核工单任务
+export function hcTask(data) {
+    return request({
+        url: "/system/task/hc",
+        method: "post",
+        data: data
+    });
 }

+ 22 - 0
src/components/EditTable/index.scss

@@ -0,0 +1,22 @@
+.edit-table-container {
+  .el-form-item {
+    margin-bottom: 0;
+  }
+  .el-form-item__content {
+    margin-left: unset !important;
+    // line-height: unset;
+  }
+  .el-form-item__error {
+    position: unset;
+  }
+  .el-input-number {
+    .el-input-number__decrease,
+    .el-input-number__increase {
+      display: none;
+    }
+    .el-input__inner {
+      padding: 0 30px 0 15px;
+      text-align: left;
+    }
+  }
+}

+ 56 - 0
src/components/EditTable/index.tsx

@@ -0,0 +1,56 @@
+import isEmpty from 'lodash/isEmpty';
+import { defineComponent, PropType, ref, reactive, VNode } from 'vue';
+import type { Column } from '../Container';
+import './index.scss';
+
+export default defineComponent({
+  name: 'EditTable',
+  props: {
+    readonly: Boolean,
+    columns: Array as PropType<Column<any>[]>,
+    data: Object,
+    onAdd: Function,
+    btntext:String,
+  },
+  setup(props) {
+    const handleAddResource = () => {};
+
+    return () => (
+      <>
+        {!props.readonly && (
+          <el-button
+            size="small"
+            icon="el-icon-plus"
+            onClick={props.onAdd}
+            readonly={props.readonly}>
+            {props.btntext ?? '新增'}
+          </el-button>
+        )}
+        {!isEmpty(props.data) && (
+          <el-table size="small" data={props.data} class="edit-table-container">
+            {props.columns &&
+              props.columns.map((col) => (
+                <el-table-column
+                  width={col.width}
+                  prop={col.prop}
+                  label={col.label}
+                  v-slots={
+                    col.render && {
+                      default: (slotProps: any) =>
+                        col.render &&
+                        col.render(
+                          slotProps?.row?.[col.prop as string],
+                          slotProps?.row,
+                          slotProps.$index,
+                        ),
+                    }
+                  }
+                />
+              ))}
+          </el-table>
+        )}
+        {isEmpty(props.data) && props.readonly && <div> 暂无数据</div>}
+      </>
+    );
+  },
+});

+ 518 - 73
src/views/task/detail/index.vue

@@ -10,16 +10,25 @@
             @click="showpf = true"
             >派 发</el-button
           >
-          <el-button type="primary" v-if="taskinfo.status == 2" @click="showbh=true"
+          <el-button
+            type="primary"
+            v-if="taskinfo.status == 2"
+            @click="showbh = true"
             >驳 回</el-button
           >
-          <el-button type="primary" v-if="taskinfo.status == 2"
+          <el-button
+            type="primary"
+            v-if="taskinfo.status == 2"
+            @click="showcz = true"
             >处 置</el-button
           >
-          <el-button type="primary" v-if="taskinfo.status == 3"
+          <el-button type="primary" v-if="taskinfo.status == 3 || taskinfo.status == 5"  @click="showsh = true"
             >审 核</el-button
           >
-          <el-button type="primary" v-if="taskinfo.status == 5"
+          <el-button
+            type="primary"
+            v-if="taskinfo.status == 3"
+            @click="showgz = true"
             >跟 踪</el-button
           >
           <el-button
@@ -182,47 +191,57 @@
           <el-row>
             <el-col :span="12"
               >原因备注:{{
-                 JSON.parse(
-                          taskinfo.tblTaskLogList.filter(
-                            (ii) => ii.taskStatus === 4
-                          )[0].logDes ?? "{}"
-                        )
-                  .resonRemark
+                JSON.parse(
+                  taskinfo.tblTaskLogList.filter((ii) => ii.taskStatus === 4)[0]
+                    .logDes ?? "{}"
+                ).resonRemark
               }}</el-col
             >
 
-            <el-col :span="12">驳回时间:{{  taskinfo.tblTaskLogList.filter((ii) => ii.taskStatus === 4)[0]
-                  .createTime }}</el-col>
+            <el-col :span="12"
+              >驳回时间:{{
+                taskinfo.tblTaskLogList.filter((ii) => ii.taskStatus === 4)[0]
+                  .createTime
+              }}</el-col
+            >
             <el-col :span="12">照片:</el-col>
             <el-col :span="12">
-              <div style="position:relative">
-                 说明报告:
-                 <div style="position:absolute;top:0;left:60px;width:100%">
-                   <div style="margin-bottom:10px;color:#4f9eee;display:inline-block;margin-left:10px" v-for="i in (JSON.parse(
-                          taskinfo.tblTaskLogList.filter(
-                            (ii) => ii.taskStatus === 4
-                          )[0].logDes ?? '{}'
-                        ).files?.split(',') ??[])"><a target="_blank" :href="`${STATICURL+i}`" >
-
-                        {{i.split('/')[i.split('/').length-1]}}
-                        </a>
-                        </div>
-                 </div>
-
+              <div style="position: relative">
+                说明报告:
+                <div
+                  style="position: absolute; top: 0; left: 60px; width: 100%"
+                >
+                  <div
+                    style="
+                      margin-bottom: 10px;
+                      color: #4f9eee;
+                      display: inline-block;
+                      margin-left: 10px;
+                    "
+                    v-for="i in JSON.parse(
+                      taskinfo.tblTaskLogList.filter(
+                        (ii) => ii.taskStatus === 4
+                      )[0].logDes ?? '{}'
+                    ).files?.split(',') ?? []"
+                  >
+                    <a target="_blank" :href="`${STATICURL + i}`">
+                      {{ i.split("/")[i.split("/").length - 1] }}
+                    </a>
+                  </div>
+                </div>
               </div>
-
-
-                       </el-col>
+            </el-col>
           </el-row>
           <el-row>
             <el-col :span="24">
               <ImagePreview
                 v-model:src="
-                JSON.parse(
-                          taskinfo.tblTaskLogList.filter(
-                            (ii) => ii.taskStatus === 4
-                          )[0].logDes ?? '{}'
-                        ).images"
+                  JSON.parse(
+                    taskinfo.tblTaskLogList.filter(
+                      (ii) => ii.taskStatus === 4
+                    )[0].logDes ?? '{}'
+                  ).images
+                "
                 :height="'120px'"
                 :width="'120px'"
               ></ImagePreview>
@@ -231,40 +250,47 @@
         </div>
       </div>
 
-      <div class="card" v-if="taskinfo.status > 5">
+      <div class="card" v-if="taskinfo.status >= 5">
         <div class="title">跟踪信息</div>
         <div class="body">
           <el-row>
             <el-col :span="6"
               >是否及时完成:{{
-                task_type.filter((i) => i.value === taskinfo.taskType)[0]
-                  ?.label ?? "-"
+                JSON.parse(
+                    taskinfo.tblTaskLogList.filter(
+                      (ii) => ii.taskStatus === 5
+                    )[0].logDes ?? "{}"
+                  ).isfinsh
               }}</el-col
             >
             <el-col :span="6"
               >回访情况:{{
-                (taskinfo.taskDeptRange ?? "")
-                  .split(",")
-                  .map((i) => {
-                    return (
-                      alldept.find((p) => {
-                        return p.deptId + "" === i + "";
-                      })?.deptName ?? "-"
-                    );
-                  })
-                  .join(",")
+                JSON.parse(
+                    taskinfo.tblTaskLogList.filter(
+                      (ii) => ii.taskStatus === 5
+                    )[0].logDes ?? "{}"
+                  ).hfdes
               }}</el-col
             >
-            <el-col :span="6">处置完成日期:{{ taskinfo.taskTime }}</el-col>
-            <el-col :span="6">记录人:{{ taskinfo.taskFacilitieCode }}</el-col>
+            <el-col :span="6">处置完成日期:{{
+                JSON.parse(
+                    taskinfo.tblTaskLogList.filter(
+                      (ii) => ii.taskStatus === 5
+                    )[0].logDes ?? "{}"
+                  ).czcompletetime }}</el-col>
+            <el-col :span="6">记录人:{{ JSON.parse(
+                    taskinfo.tblTaskLogList.filter(
+                      (ii) => ii.taskStatus === 5
+                    )[0].logDes ?? "{}"
+                  ).jlr }}</el-col>
           </el-row>
         </div>
       </div>
 
-      <div class="card" v-if="taskinfo.status > 4">
+      <div class="card" v-if="taskinfo.status > 2 && taskinfo.status != 4">
         <div class="title">处置信息</div>
         <div class="body">
-          <div v-for="(item, index1) in processdata">
+          <!-- <div v-for="(item, index1) in processdata">
             <div
               class="titleheader"
               :style="`${index1 == 0 ? 'margin-top:0px' : ''}`"
@@ -276,6 +302,72 @@
                 <el-col :span="6" v-for="p in item.content">{{ p }}</el-col>
               </el-row>
             </div>
+          </div> -->
+          <div class="titleheader" :style="`${'margin-top:0px'}`">
+            {{ "权属确认" }}
+          </div>
+          <div>
+            <el-row>
+              <el-col :span="6"
+                >{{
+                  "现场勘查" +
+                  ":" +
+                  JSON.parse(
+                    taskinfo.tblTaskLogList.filter(
+                      (ii) => ii.taskStatus === 3
+                    )[0].logDes ?? "{}"
+                  ).qsdes
+                }}
+              </el-col>
+            </el-row>
+          </div>
+
+          <div class="titleheader">
+            {{ "工作量" }}
+          </div>
+          <div>
+            <el-row>
+              <el-col
+                :span="6"
+                v-for="(item, index1) in JSON.parse(
+                  taskinfo.tblTaskLogList.filter((ii) => ii.taskStatus === 3)[0]
+                    .logDes ?? '{}'
+                ).gzldata"
+                >{{ item.label + ":" + item.value }}
+              </el-col>
+            </el-row>
+          </div>
+
+          <div class="titleheader" :style="`${'margin-top:0px'}`">
+            {{ "车辆设备" }}
+          </div>
+          <div>
+            <el-row>
+              <el-col
+                :span="6"
+                v-for="(item, index1) in JSON.parse(
+                  taskinfo.tblTaskLogList.filter((ii) => ii.taskStatus === 3)[0]
+                    .logDes ?? '{}'
+                ).clsbdata"
+                >{{ item.label + ":" + item.value }}
+              </el-col>
+            </el-row>
+          </div>
+
+          <div class="titleheader" :style="`${'margin-top:0px'}`">
+            {{ "耗材" }}
+          </div>
+          <div>
+            <el-row>
+              <el-col
+                :span="6"
+                v-for="(item, index1) in JSON.parse(
+                  taskinfo.tblTaskLogList.filter((ii) => ii.taskStatus === 3)[0]
+                    .logDes ?? '{}'
+                ).hcdata"
+                >{{ item.label + ":" + item.value }}
+              </el-col>
+            </el-row>
           </div>
 
           <div>
@@ -283,7 +375,13 @@
             <el-row>
               <el-col :span="24">
                 <ImagePreview
-                  v-model:src="taskinfo.taskPics"
+                  v-model:src="
+                    JSON.parse(
+                      taskinfo.tblTaskLogList.filter(
+                        (ii) => ii.taskStatus === 3
+                      )[0].logDes ?? '{}'
+                    ).images
+                  "
                   :height="'120px'"
                   :width="'120px'"
                 ></ImagePreview>
@@ -299,14 +397,25 @@
           <el-row>
             <el-col :span="12"
               >核查人员:{{
-                task_type.filter((i) => i.value === taskinfo.taskType)[0]
-                  ?.label ?? "-"
+                JSON.parse(
+                    taskinfo.tblTaskLogList.filter(
+                      (ii) => ii.taskStatus === 6
+                    )[0].logDes ?? "{}"
+                  ).hcry
               }}</el-col
             >
 
-            <el-col :span="12">核查时间:{{ taskinfo.taskTime }}</el-col>
+            <el-col :span="12">核查时间:{{ JSON.parse(
+                    taskinfo.tblTaskLogList.filter(
+                      (ii) => ii.taskStatus === 6
+                    )[0].logDes ?? "{}"
+                  ).hctime }}</el-col>
             <el-col :span="24"
-              >核查备注:{{ taskinfo.taskFacilitieCode }}</el-col
+              >核查备注:{{ JSON.parse(
+                    taskinfo.tblTaskLogList.filter(
+                      (ii) => ii.taskStatus === 6
+                    )[0].logDes ?? "{}"
+                  ).hcdes }}</el-col
             >
           </el-row>
         </div>
@@ -360,11 +469,11 @@
               placeholder="请输入驳回原因"
           /></el-form-item>
           <el-form-item label="现场照片">
-             <ImageUpload v-model="bhobj.images"></ImageUpload>
+            <ImageUpload v-model="bhobj.images"></ImageUpload>
           </el-form-item>
 
           <el-form-item label="说明报告">
-             <FileUpload v-model="bhobj.files" :fileSize="100"></FileUpload>
+            <FileUpload v-model="bhobj.files" :fileSize="100"></FileUpload>
           </el-form-item>
         </el-form>
       </div>
@@ -375,6 +484,240 @@
         </span>
       </template>
     </el-dialog>
+
+    <el-dialog v-model="showgz" title="任务跟踪" draggable>
+      <div>
+        <el-form :model="gzobj" label-width="120px">
+          <el-form-item label="是否及时完成">
+            <el-select v-model="gzobj.isfinsh" placeholder="请选择">
+              <el-option label="是" value="是"></el-option>
+              <el-option label="否" value="否"></el-option>
+            </el-select>
+          </el-form-item>
+
+          <el-form-item label="回访情况"
+            ><el-input
+              v-model="gzobj.hfdes"
+              :rows="2"
+              type="textarea"
+              placeholder="请输入回访情况"
+          /></el-form-item>
+
+
+          <el-form-item label="处置完成日期">
+            <el-date-picker v-model="gzobj.czcompletetime" type="date" placeholder="请选择" />
+          </el-form-item>
+
+           <el-form-item label="记录人">
+            <el-input v-model="gzobj.jlr" placeholder="请输入记录人"></el-input>
+
+          </el-form-item>
+
+        </el-form>
+      </div>
+      <template #footer>
+        <span class="dialog-footer">
+          <el-button @click="showgz = false">取消</el-button>
+          <el-button type="primary" @click="TaskGZ">确定</el-button>
+        </span>
+      </template>
+    </el-dialog>
+
+     <el-dialog v-model="showsh" title="任务审核" draggable>
+      <div>
+        <el-form :model="shobj" label-width="120px">
+          <el-form-item label="审核人员">
+            <el-input v-model="shobj.hcry" placeholder="请输入核查人员"></el-input>
+          </el-form-item>
+
+          <el-form-item label="核查备注"
+            ><el-input
+              v-model="shobj.hcdes"
+              :rows="2"
+              type="textarea"
+              placeholder="请输入核查备注"
+          /></el-form-item>
+
+
+          <el-form-item label="核查时间">
+            <el-date-picker v-model="shobj.hctime" type="datetime" placeholder="请选择" />
+          </el-form-item>
+
+        </el-form>
+      </div>
+      <template #footer>
+        <span class="dialog-footer">
+          <el-button @click="showsh = false">取消</el-button>
+          <el-button type="primary" @click="TaskSH">确定</el-button>
+        </span>
+      </template>
+    </el-dialog>
+
+    <el-dialog v-model="showcz" title="任务处置" draggable>
+      <div>
+        <el-form :model="czobj" label-width="150px">
+          <el-form-item label="权属确认(现场勘查)">
+            <el-input
+              v-model="czobj.qsdes"
+              type="text"
+              placeholder="请输入勘查信息"
+            />
+          </el-form-item>
+
+          <el-form-item label="">
+            <el-button
+              type="text"
+              style="position: absolute; top: 0; right: 0; z-index: 10"
+              @click="addnewitem"
+              >新增</el-button
+            >
+            <el-tabs v-model="cztblaname" class="demo-tabs">
+              <el-tab-pane label="工作量" name="gzl">
+                <el-table :data="czobj.gzldata">
+                  <el-table-column label="名称">
+                    <template #default="scope">
+                      <el-select v-model="scope.row.label" placeholder="请选择">
+                        <el-option
+                          v-for="item in task_work"
+                          :label="item.label"
+                          :value="item.label"
+                        ></el-option>
+                      </el-select>
+                    </template>
+                  </el-table-column>
+                  <el-table-column label="内容" prop="value">
+                    <template #default="scope">
+                      <el-input
+                        v-model="scope.row.value"
+                        placeholder="请输入"
+                      ></el-input>
+                    </template>
+                  </el-table-column>
+                  <el-table-column label="操作">
+                    <template #default="scope">
+                      <el-popconfirm
+                        title="确定删除吗?"
+                        @confirm="
+                          () => {
+                            czobj.gzldata?.splice(
+                              czobj.gzldata.findIndex(
+                                (i) => i.index == scope.row.index
+                              ),
+                              1
+                            );
+                          }
+                        "
+                      >
+                        <template #reference>
+                          <el-button type="text" size="small"> 删除 </el-button>
+                        </template>
+                      </el-popconfirm>
+                    </template>
+                  </el-table-column>
+                </el-table>
+              </el-tab-pane>
+              <el-tab-pane label="车辆设备" name="clsb">
+                <el-table :data="czobj.clsbdata">
+                  <el-table-column label="名称" prop="label">
+                    <template #default="scope">
+                      <el-select v-model="scope.row.label" placeholder="请选择">
+                        <el-option
+                          v-for="item in task_car"
+                          :label="item.label"
+                          :value="item.label"
+                        ></el-option>
+                      </el-select>
+                    </template>
+                  </el-table-column>
+                  <el-table-column label="内容" prop="value">
+                    <template #default="scope">
+                      <el-input
+                        v-model="scope.row.value"
+                        placeholder="请输入"
+                      ></el-input>
+                    </template>
+                  </el-table-column>
+                  <el-table-column label="操作">
+                    <template #default="scope">
+                      <el-popconfirm
+                        title="确定删除吗?"
+                        @confirm="
+                          () => {
+                            czobj.clsbdata?.splice(
+                              czobj.clsbdata.findIndex(
+                                (i) => i.index == scope.row.index
+                              ),
+                              1
+                            );
+                          }
+                        "
+                      >
+                        <template #reference>
+                          <el-button type="text" size="small"> 删除 </el-button>
+                        </template>
+                      </el-popconfirm>
+                    </template>
+                  </el-table-column>
+                </el-table>
+              </el-tab-pane>
+              <el-tab-pane label="耗材" name="hc">
+                <el-table :data="czobj.hcdata">
+                  <el-table-column label="名称" prop="label">
+                    <template #default="scope">
+                      <el-select v-model="scope.row.label" placeholder="请选择">
+                        <el-option
+                          v-for="item in task_consumables"
+                          :label="item.label"
+                          :value="item.label"
+                        ></el-option>
+                      </el-select>
+                    </template>
+                  </el-table-column>
+                  <el-table-column label="内容" prop="value">
+                    <template #default="scope">
+                      <el-input
+                        v-model="scope.row.value"
+                        placeholder="请输入"
+                      ></el-input>
+                    </template>
+                  </el-table-column>
+                  <el-table-column label="操作">
+                    <template #default="scope">
+                      <el-popconfirm
+                        title="确定删除吗?"
+                        @confirm="
+                          () => {
+                            czobj.hcdata?.splice(
+                              czobj.hcdata.findIndex(
+                                (i) => i.index == scope.row.index
+                              ),
+                              1
+                            );
+                          }
+                        "
+                      >
+                        <template #reference>
+                          <el-button type="text" size="small"> 删除 </el-button>
+                        </template>
+                      </el-popconfirm>
+                    </template>
+                  </el-table-column>
+                </el-table></el-tab-pane
+              >
+            </el-tabs>
+          </el-form-item>
+          <el-form-item label="现场照片">
+            <ImageUpload v-model="czobj.images"></ImageUpload>
+          </el-form-item>
+        </el-form>
+      </div>
+      <template #footer>
+        <span class="dialog-footer">
+          <el-button @click="showcz = false">取消</el-button>
+          <el-button type="primary" @click="TaskComplete">确定</el-button>
+        </span>
+      </template>
+    </el-dialog>
   </div>
 </template>
 
@@ -394,7 +737,10 @@ import {
   addTask,
   updateTask,
   distributedTask,
-  closeTask
+  closeTask,
+  czTask,
+  gzTask,
+  hcTask
 } from "@/api/system/task";
 import {
   changeUserStatus,
@@ -407,24 +753,98 @@ import {
 } from "@/api/system/user";
 import { treeselect as deptTreeselect } from "@/api/system/dept";
 import { ElMessage } from "element-plus";
-import ImageUpload from "@/components/ImageUpload"
-import FileUpload from "@/components/FileUpload"
+import ImageUpload from "@/components/ImageUpload";
+import FileUpload from "@/components/FileUpload";
+import moment from "moment";
 
-const STATICURL= import.meta.env.VITE_APP_BASE_API;
+const STATICURL = import.meta.env.VITE_APP_BASE_API;
 
-const { task_status, task_type, task_event_type, task_event_category } =
-  useDict("task_status", "task_type", "task_event_type", "task_event_category");
+const {
+  task_status,
+  task_type,
+  task_event_type,
+  task_event_category,
+  task_work,
+  task_car,
+  task_consumables,
+} = useDict(
+  "task_status",
+  "task_type",
+  "task_event_type",
+  "task_event_category",
+  "task_work",
+  "task_car",
+  "task_consumables"
+);
 
 const route = useRoute();
 const showpf = ref(false);
 const showbh = ref(false);
+const showcz = ref(false);
+const showgz = ref(false);
+const showsh = ref(false);
 const pdobj = ref({ fzbz: [], fzr: "" });
-const bhobj = ref({ resonRemark: [], files: "" ,images:[]});
+const bhobj = ref({ resonRemark: [], files: "", images: [] });
+const czobj = ref({
+  qsdes: "",
+  images: [],
+  gzldata: [],
+  clsbdata: [],
+  hcdata: [],
+});
+const gzobj = ref({ isfinsh: '是', hfdes: "", czcompletetime: "", jlr: "" });
+const shobj = ref({ hcry: '', hcdes: "", hctime: "" });
+const cztblaname = ref("gzl");
 
 if (!route.params.id || route.params.id == "undefined") {
   router.back();
 }
 
+const TaskComplete = () => {
+  czTask({
+    taskId: route.params.id,
+    logDes: JSON.stringify(czobj.value),
+  }).then((res) => {
+    showcz.value = false;
+    ElMessage.success("成功!");
+    getTask(Number(route.params.id)).then((res) => {
+      taskinfo.value = res.data;
+    });
+  });
+};
+const TaskGZ = () => {
+  var gz = cloneDeep(gzobj.value);
+  if (gz.czcompletetime) {
+    gz.czcompletetime = moment(gz.czcompletetime).format("YYYY-MM-DD")
+  }
+  gzTask({
+    taskId: route.params.id,
+    logDes: JSON.stringify(gz),
+  }).then((res) => {
+    showgz.value = false;
+    ElMessage.success("成功!");
+    getTask(Number(route.params.id)).then((res) => {
+      taskinfo.value = res.data;
+    });
+  });
+};
+
+const TaskSH = () => {
+   var gz = cloneDeep(shobj.value);
+  if (gz.hctime ) {
+    gz.hctime = moment(gz.hctime).format("YYYY-MM-DD HH:mm:ss")
+  }
+  hcTask({
+    taskId: route.params.id,
+    logDes: JSON.stringify(gz),
+  }).then((res) => {
+    showsh.value = false;
+    ElMessage.success("成功!");
+    getTask(Number(route.params.id)).then((res) => {
+      taskinfo.value = res.data;
+    });
+  });
+};
 const TaskClose = () => {
   closeTask({
     taskId: route.params.id,
@@ -433,10 +853,33 @@ const TaskClose = () => {
     showbh.value = false;
     ElMessage.success("成功!");
     getTask(Number(route.params.id)).then((res) => {
-        taskinfo.value = res.data;
-  });
+      taskinfo.value = res.data;
+    });
   });
 };
+const addnewitem = () => {
+  if (cztblaname.value === "gzl") {
+    czobj.value.gzldata.push({
+      index: czobj.value.gzldata.length,
+      label: "",
+      value: "",
+    });
+  }
+  if (cztblaname.value === "clsb") {
+    czobj.value.clsbdata.push({
+      index: czobj.value.clsbdata.length,
+      label: "",
+      value: "",
+    });
+  }
+  if (cztblaname.value === "hc") {
+    czobj.value.hcdata.push({
+      index: czobj.value.hcdata.length,
+      label: "",
+      value: "",
+    });
+  }
+};
 const Taskdistributed = () => {
   distributedTask({
     taskId: route.params.id,
@@ -445,8 +888,8 @@ const Taskdistributed = () => {
     showpf.value = false;
     ElMessage.success("派发成功!");
     getTask(Number(route.params.id)).then((res) => {
-        taskinfo.value = res.data;
-  });
+      taskinfo.value = res.data;
+    });
   });
 };
 // console.error(route.params.id)
@@ -558,8 +1001,7 @@ const processdata = ref([
 
 const taskinfo = ref({
   taskName: "",
-  taskContent:
-    "",
+  taskContent: "",
   taskAddr: "-",
   taskLocation: "-",
   taskCode: "-",
@@ -574,8 +1016,7 @@ const taskinfo = ref({
   status: 1,
   taskCreater: "-",
   taskReporter: "-",
-  taskPics:
-    "",
+  taskPics: "",
   remark: "sss",
   taskVideos: "-",
   taskComplainConnect: "-",
@@ -592,6 +1033,9 @@ onMounted(() => {
 </script>
 
 <style lang="scss">
+.demo-tabs {
+  width: 100%;
+}
 .taskdetail {
   background: #fff;
   padding: 30px 22px;
@@ -599,6 +1043,7 @@ onMounted(() => {
   overflow-y: auto;
   padding-top: 20px;
   position: relative;
+
   .el-select {
     width: 100%;
   }