index.vue 12.4 KB
<template>
  <div class="app-container">

   <!-- <el-select v-model="queryParams.name" filterable reserve-keyword :filter-method="remoteName"  placeholder="名称">
      <el-option v-for="item in names" :label="item" :value="item">
      </el-option>
    </el-select> -->

    <el-input v-model="queryParams.name" placeholder="名称" style="width:200px;"></el-input>
<!--
    <el-select v-model="queryParams.name" filterable reserve-keyword :filter-method="remoteName"  placeholder="名称">
      <el-option v-for="item in names" :label="item" :value="item">
      </el-option>
    </el-select> -->

    <el-select v-model="queryParams.type" filterable reserve-keyword>
      <el-option label="建筑垃圾许可证审批" value="workflow_constructsite"/>
      <el-option label="消纳合同申报备案" value="workflow_conract"/>
      <el-option label="处理场所备案" value="workflow_earthsites"/>
      <el-option label="运输企业准入流程" value="workflow_company"/>
      <el-option label="运输车辆准入流程" value="workflow_vehicle"/>
      <el-option label="驾驶员信息审批" value="workflow_driver"/>
      <el-option label="报工审批" value="workflow_threestep"/>
      <el-option label="交办案卷" value="workflow_caseoffline"/>
      <el-option label="违规案卷处置流程" value="workflow_casefile"/>
      <el-option label="平台预警信息" value="violation_warning"/>
      <el-option label="办文办事" value="handleAffairs"/>
      <el-option label="后勤管理" value="logistics"/>
      <el-option label="会议事务" value="conference"/>
      <el-option label="假勤管理" value="workflow_leave"/>
      <el-option label="纪检督察" value="supervision-gongdi,supervision_anjuan,supervision_company,supervision_xnc"/>
    </el-select>

    <el-button type="primary" size="mini" @click="queryParams.pageNum = 1;getList();">搜索</el-button>
    <el-button size="mini" @click="resetQuery">重置</el-button>


    <taskCard :task="task" v-for="task in taskList" @sendToParent="showTask"/>

    <pagination :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
                @pagination="getList"/>

    <!-- 审批对话框 -->
    <el-dialog :title="title" :visible.sync="open" v-if="open" width="500px" append-to-body>

      <div slot="footer" class="dialog-footer">
        <el-button type="danger" @click="submitForm(form.formData[0].controlId ,1)">驳回</el-button>
        <el-button type="primary" @click="submitForm(form.formData[0].controlId ,0)">通过</el-button>
      </div>
    </el-dialog>
    <el-dialog :title="title" :visible.sync="open2" width="800px" append-to-body>
      <threestepInfo :businessKey="businessKey" v-if="open2"/>
      <el-table :data="hisfromData" v-if="hisfromData != null">

        <el-table-column label="处理意见" align="center" prop="controlValue"/>
        <el-table-column label="处理人" align="center" prop="createName"/>
        <el-table-column label="处理时间" align="center" prop="createTime"/>
      </el-table>
    </el-dialog>

    <el-dialog :title="title" :visible.sync="construct" width="1500px" append-to-body>
        <companyInfo :businessKey="businessKey" :businessType="2" :signData="signData" v-if="construct"/>
      <el-table :data="hisfromData" v-if="hisfromData != null">
        <el-table-column label="处理意见" align="center" prop="controlValue"/>
        <el-table-column label="处理人" align="center" prop="createName"/>
        <el-table-column label="处理时间" align="center" prop="createTime"/>
      </el-table>
    </el-dialog>
    <!--  会议管理  -->
    <el-dialog :title="title" :visible.sync="conferenceOpen" width="850px" append-to-body>
      <conferenceInfo :idInfo="idInfo" v-if="conferenceOpen"/>
    </el-dialog>

    <!--  请假申请  -->
    <el-dialog :title="title" :visible.sync="leaveApplicationOpen" width="500px" append-to-body>
      <leaveApplicationInfo :idInfo="idInfo" v-if="leaveApplicationOpen"/>
    </el-dialog>


    <el-dialog :title="title" :visible.sync="earthsites" width="1500px" append-to-body>
      <companyInfo :businessKey="businessKey" :businessType="3" v-if="earthsites"/>
      <el-table :data="hisfromData" v-if="hisfromData != null">
        <el-table-column label="处理意见" align="center" prop="controlValue"/>
        <el-table-column label="处理人" align="center" prop="createName"/>
        <el-table-column label="处理时间" align="center" prop="createTime"/>
      </el-table>
    </el-dialog>

    <el-dialog :title="title" :visible.sync="contract" width="1500px" append-to-body>
      <companyInfo :businessKey="businessKey" :businessType="4"   v-if="contract"/>
      <el-table :data="hisfromData" v-if="hisfromData != null">

        <el-table-column label="处理意见" align="center" prop="controlValue"/>
        <el-table-column label="处理人" align="center" prop="createName"/>
        <el-table-column label="处理时间" align="center" prop="createTime"/>
      </el-table>
    </el-dialog>


    <!--  后勤管理  -->
    <el-dialog :title="title" :visible.sync="logisticsInfoOpen" width="500px" append-to-body
               :close-on-click-modal="false">
      <logisticsInfo :idInfo="idInfo" v-if="logisticsInfoOpen"/>
    </el-dialog>

    <!--  办文办事  -->
    <el-dialog :title="title" :visible.sync="handleAffairsInfoOpen" width="600px" append-to-body
               :close-on-click-modal="false">
      <handleInfo ref="handleAffairsInfoRef" :idInfo="idInfo" v-if="handleAffairsInfoOpen" :depts="depts"
                  :businessKey="businessKey"/>
    </el-dialog>

    <!--  线下案卷交办  -->
    <el-dialog :title="title" :visible.sync="caseOffline" width="600px" append-to-body :close-on-click-modal="false">
      <caseOfflineInfo :businessKey="businessKey" v-if="caseOffline"/>
    </el-dialog>

    <!--  平台违规信息  -->
    <el-dialog :title="title" :visible.sync="violationCaseFile" width="850px" append-to-body
               :close-on-click-modal="false">
      <violationCaseFileInfo :idInfo="businessKey" v-if="violationCaseFile" :entryType="0"/>
    </el-dialog>

    <!--  违规预警信息  -->
    <el-dialog :title="title" :visible.sync="violationCaseFile1" width="850px" append-to-body
               :close-on-click-modal="false">
      <violationWarningInformationInfo :idInfo="businessKey" v-if="violationCaseFile1" :entryType="0"/>
    </el-dialog>

    <el-dialog :title="title" :visible.sync="supervisionOpen" width="700px" append-to-body
               :close-on-click-modal="false">
      <supervisionInfo :infoData="supervisionData"/>
      <el-table :data="hisfromData" v-if="hisfromData != null">

        <el-table-column label="处理意见" align="center" prop="controlValue"/>
        <el-table-column label="处理人" align="center" prop="createName"/>
        <el-table-column label="处理时间" align="center" prop="createTime"/>
      </el-table>
    </el-dialog>

      <el-dialog :title="title" :visible.sync="company" width="1500px" append-to-body :close-on-click-modal="false">
      <companyInfo :businessKey="businessKey" :businessType="0" v-if="company"/>
        <el-table :data="hisfromData" v-if="hisfromData != null">

          <el-table-column label="处理意见" align="center" prop="controlValue"/>
          <el-table-column label="处理人" align="center" prop="createName"/>
          <el-table-column label="处理时间" align="center" prop="createTime"/>
        </el-table>
      </el-dialog>

      <el-dialog :title="title" :visible.sync="vehicle" width="850px" append-to-body :close-on-click-modal="false">
      <companyInfo :businessKey="businessKey" :businessType="1" v-if="vehicle"/>
        <el-table :data="hisfromData" v-if="hisfromData != null">

          <el-table-column label="处理意见" align="center" prop="controlValue"/>
          <el-table-column label="处理人" align="center" prop="createName"/>
          <el-table-column label="处理时间" align="center" prop="createTime"/>
        </el-table>
      </el-dialog>

      <el-dialog :title="title" :visible.sync="driver" width="850px" append-to-body :close-on-click-modal="false">
      <companyInfo :businessKey="businessKey" :businessType="5" v-if="driver"/>
        <el-table :data="hisfromData" v-if="hisfromData != null">

          <el-table-column label="处理意见" align="center" prop="controlValue"/>
          <el-table-column label="处理人" align="center" prop="createName"/>
          <el-table-column label="处理时间" align="center" prop="createTime"/>
        </el-table>
      </el-dialog>
  </div>
</template>


<script>
import {
  listEndTask,
  listTask,
  formDataShow
} from "@/api/activiti/taskhistory";

import {historyFromData} from '@/api/activiti/historyFormdata'

import {getSignByObjId, addSign, updateSign} from "@/api/sign/sign";
import taskCard from "@/views/activiti/task/taskCard";
import earthSitesForm from "@/views/workflow/earthSitesForm";
import threestepInfo from "@/views/business/threestep/threestepInfo";
import constructsiteInfo from "@/views/activiti/task/constructsiteInfo";
import conferenceInfo from "@/views/office/conference/conferenceInfo";
import leaveApplicationInfo from "@/views/office/leaveApplication/leaveApplicationInfo";
import earthsitesInfo from "@/views/activiti/task/earthsitesInfo";
import contractInfo from "@/views/activiti/task/contractInfo";
import logisticsInfo from "@/views/office/logistics/logisticsInfo";
import handleInfo from "@/views/office/handle/handleInfo";
import caseOfflineInfo from "@/views/caseOffline/caseOffline/caseOfflineInfo";
import violationCaseFileInfo from "@/views/h5/task/violationCaseFileInfo";
import violationWarningInformationInfo from "@/views/h5/task/violationWarningInformationInfo";
import supervisionInfo from "../task/SupervisionInfo";

import companyInfo from "@/views/activiti/task/companyInfo";
import driverInfo from "@/views/activiti/task/driverInfo";
import vehicleInfo from "@/views/activiti/task/vehicleInfo";

import taskhismethod from '@/api/taskhismethod'


import {
  getArea,
  getDict,
  getUsers,
  getSupervision
} from "@/api/dict";


export default {
  name: "taskHistory",
    mixins: [taskhismethod],
  props: {
    type: {
      type: Number
    }
  },
  components: {
    taskCard,
    threestepInfo,
    conferenceInfo,
    leaveApplicationInfo,
    logisticsInfo,
    handleInfo,
    constructsiteInfo,
    earthsitesInfo,
    contractInfo,
    caseOfflineInfo,
    violationCaseFileInfo,
    violationWarningInformationInfo,
    supervisionInfo,
    companyInfo,
    driverInfo,
    vehicleInfo
  },
  data() {
    return {
      id: '',
      definitionKey: '',
      businessKey: '',
      // 遮罩层
      loading: true,
      // 选中数组
      ids: [],
      // 非单个禁用
      single: true,
      // 非多个禁用
      multiple: true,
      // 显示搜索条件
      showSearch: true,
      // 总条数
      total: 0,
      // 请假表格数据
      taskList: [],
      // 弹出层标题
      title: "",
      // 查询参数
      queryParams: {
        pageNum: 1,
        pageSize: 10,
      },
      // 表单参数
      form: {
        formData: []
      },
      needShow: false,
      // 表单校验
      rules: {},
      uploadImageDialog: false,
      idInfo: null,
      signData: null,
      supervisionData: null,
      // 是否显示弹出层
      earthsites: false,
      contract: false,
      logisticsInfoOpen: false,
      handleAffairsInfoOpen: false,
      caseOffline: false,
      violationCaseFile: false,
      violationCaseFile1: false,
      supervisionOpen: false,
      open: false,
      open2: false,
      conferenceOpen: false,
      construct: false,
      leaveApplicationOpen: false,
      controlId:null,
      depts: [],
      company:false,
      driver:false,
      vehicle:false,
      names:null,
      hisfromData: [],
    };
  },
  created() {
    debugger;
    let dep = {type: "CSUserDepartmentType"};

    getDict(dep).then(res => {
      this.depts = res.result;
    });

    let role = {type: "CSUserPostType"};

    getDict(role).then(res => {
      this.roles = res.result;
    });
    this.getList();
  },
  methods: {

  }
};
</script>

<style>
@import '../../../assets/css/task.css';
</style>