jiangping
2024-12-05 f6ba5de2578c58a738f35b29a708c523ccb518ba
admin/src/views/task/index.vue
@@ -59,26 +59,14 @@
      :data="dataList"
      stripe
      row-key="id"
      class="mb20"
      default-expand-all
    >
<!--      <el-table-column prop="name" label="任务类型" min-width="100">
        <template v-slot="scope">
          <span
            v-if="
              (scope.row.objType || scope.row.objType == 0) &&
              cateList[scope.row.objType].name
            "
            >{{ cateList[scope.row.objType].name }}</span
          >
        </template>
      </el-table-column>-->
      <el-table-column label="处理事项" min-width="200">
      <el-table-column label="处理事项" min-width="160">
        <template slot-scope="{ row }"> {{ row.title}}
<!--          <span v-if="row.title">{{
            row.title.split("-")[1]
          }}</span>-->
        </template>
      </el-table-column>
      <el-table-column prop="info" label="当前阶段" min-width="100"></el-table-column>
      <el-table-column prop="createDate" label="提交时间" min-width="100">
      </el-table-column>
      <el-table-column label="操作" width="230" fixed="right">
@@ -86,7 +74,6 @@
          <el-button
            type="text"
            @click="handleDetail(row)"
            v-permissions="['business:company:update']"
            >查看详情</el-button
          >
        </template>
@@ -97,9 +84,10 @@
      @current-change="getList"
      :pagination="pagination"
    />
    <TaskDetail v-if="isShowDetail" ref="DetailRef" />
    <VisReportDetail v-if="isShowReport" ref="VisReportDetailRef" />
    <DangetDetail v-if="isShowDanger" ref="DangetDetailRef" />
    <TaskDetail v-if="isShowDetail" ref="DetailRef" @close="isShowDetail = false" @success="SubSuccess('isShowDetail')" />
    <VisReportDetail v-if="isShowReport" ref="VisReportDetailRef" @close="isShowReport = false" @success="SubSuccess('isShowReport')" />
    <DangetDetail v-if="isShowDanger" ref="DangetDetailRef" @close="isShowDanger = false" @success="SubSuccess('isShowDanger')" />
    <DriverDetail v-if="isShowDriver" ref="DriverDetailRef" @close="isShowDriver = false" @success="SubSuccess('isShowDriver')" />
    <!-- 用车申请 -->
    <OperaCarUseBookWindow ref="OperaDetailsWindow" @success="getList" />
    <!-- 隐患 -->
@@ -115,13 +103,16 @@
import TaskDetail from './visSubDetail.vue'
import VisReportDetail from './visReportDetail.vue'
import DangetDetail from './dangetDetail.vue'
import DriverDetail from './driverDetail.vue'
import OperaCarUseBookWindow from '@/components/business/OperaCarUseBookWindow'
import OperaHiddenDangerWindow from '@/components/business/OperaHiddenDangerWindow'
import OperaVisitsDesWindow from '@/components/business/OperaVisitsDesWindow'
import dayjs from 'dayjs'
import {
  getAppHeaderNav,
  taskCenterHeadPC,
  taskCenterPage
  taskCenterPage,
  taskSignRead
} from '@/api'
export default {
  components: {
@@ -129,6 +120,7 @@
    VisReportDetail,
    DangetDetail,
    QueryForm,
    DriverDetail,
    Pagination,
    OperaCarUseBookWindow,
    OperaHiddenDangerWindow,
@@ -139,9 +131,10 @@
      isShowDetail: false,
      isShowReport: false,
      isShowDanger: false,
      isShowDriver: false,
      filters: {
        queryType: '0',
        fastdate: 0
        // fastdate: 0
      },
      queryFormConfig: {
        formItems: [
@@ -173,12 +166,12 @@
      },
      pagination: {
        capacity: 10,
        page: 1
        page: 1,
        total: 0,
      },
      loading: false,
      dataList: [],
      headData: {},
      total: 0,
      cateList: [
        { name: '访客申请', id: 0 },
@@ -191,7 +184,7 @@
  },
  created () {
    // this.getHeadData()
    this.changeRadio('0')
    // this.changeRadio('0')
    this.getList()
  },
  methods: {
@@ -200,9 +193,36 @@
      this.$set(this.filters, 'selTime', arr)
      this.getList()
    },
    SubSuccess(str) {
      this[str] = false
      this.getTaskList()
    },
    handleTest (row) {
      getAppHeaderNav(5).then(res => {
        if (res === undefined || res == null) {
          return
        }
        const myWindow = window.open(res)
        setTimeout(() => {
          myWindow.postMessage('{"method":"goToApp","argument":' + row.param5 + '}', '*')
        }, 3000)
      })
    },
    handleDetail (row) {
      if (row.type === 7) {
        this.handleTest(row);
        return
      }
      if (this.filters.queryType == 3) {
        taskSignRead({
          noticesId: row.id,
          signType: 0
        }).then(res => {
          this.getHeadData()
        })
      }
      if (row.objType === 2) {
        this.$refs.OperaDetailsWindow.open('公务车申请详情', row)
        this.$refs.OperaDetailsWindow.open('公务车申请详情', { ...row, id: row.objId })
        return
      }
      if (row.objType === 1) {
@@ -218,6 +238,17 @@
      if (row.objType === 3) {
        const obj = { ...row, id: row.objId }
        this.$refs.OperaHiddenDangerWindow.open('隐患随手拍详情', obj)
        return
      }
      if (row.objType === 6) {
        const obj = { ...row, id: row.objId }
        this.isShowDriver = true
        this.$nextTick(() => {
          this.$refs.DriverDetailRef.id = row.objId
          this.$refs.DriverDetailRef.type = row.objType
          this.$refs.DriverDetailRef.getDetail()
          this.$refs.DriverDetailRef.isShowModal = true
        })
        return
      }
      if (row.objType === 0) {
@@ -238,7 +269,6 @@
    },
    getList (page) {
      this.getHeadData()
      console.log(this.filters)
      const { filters, pagination } = this
      if (filters.selTime && filters.selTime.length > 0) {
        filters.startDate = filters.selTime[0]
@@ -254,13 +284,14 @@
      }).then(res => {
        console.log('res', res)
        this.dataList = res.records || []
        this.pagination.total = res.total || 0
        this.dataList.forEach(i => {
          i.param1 = JSON.parse(i.param1)
        })
      })
    },
    getHeadData () {
      const {filters} = this
      const { filters } = this
      if (filters.selTime && filters.selTime.length > 0) {
        filters.startDate = filters.selTime[0]
        filters.endDate = filters.selTime[1]
@@ -275,7 +306,6 @@
    clear () {
      this.filters = {
        queryType: '0',
        fastdate: 0
      }
      this.getList(0)
    },