任务管理页面

main
wanglei 2 years ago
parent 36bea57eb6
commit 20345f1c10

@ -1,20 +1,28 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="上报人" prop="subName">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px">
<el-form-item label="任务发起组织" prop="deptName">
<el-input
v-model="queryParams.deptName"
placeholder="请输入任务发起组织"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="任务发起人" prop="subName">
<el-input
v-model="queryParams.subName"
placeholder="请输入上报人"
placeholder="请输入任务发起人"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="上报日期" prop="subDate">
<el-form-item label="任务发起日期" prop="subDate">
<el-date-picker clearable
v-model="queryParams.subDate"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择上报日期">
placeholder="请选择任务发起日期">
</el-date-picker>
</el-form-item>
<el-form-item label="联系电话" prop="phone">
@ -25,10 +33,10 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="任务主题(字典)" prop="title">
<el-form-item label="任务主题" prop="title">
<el-input
v-model="queryParams.title"
placeholder="请输入任务主题(字典)"
placeholder="请输入任务主题"
clearable
@keyup.enter.native="handleQuery"
/>
@ -41,18 +49,10 @@
placeholder="请选择截止日期">
</el-date-picker>
</el-form-item>
<el-form-item label="当前分派到部门" prop="sendedDept">
<el-form-item label="分派到组织" prop="sendedDept">
<el-input
v-model="queryParams.sendedDept"
placeholder="请输入当前分派到部门"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="当前分派到部门id" prop="sendedDeptid">
<el-input
v-model="queryParams.sendedDeptid"
placeholder="请输入当前分派到部门id"
placeholder="请输入分派到组织"
clearable
@keyup.enter.native="handleQuery"
/>
@ -65,14 +65,6 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="分派到用户id" prop="userId">
<el-input
v-model="queryParams.userId"
placeholder="请输入分派到用户id"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="处理结果" prop="handleResult">
<el-input
v-model="queryParams.handleResult"
@ -81,30 +73,7 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="处理原由" prop="handleReason">
<el-input
v-model="queryParams.handleReason"
placeholder="请输入处理原由"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="部门id" prop="deptId">
<el-input
v-model="queryParams.deptId"
placeholder="请输入部门id"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="网格名称" prop="deptName">
<el-input
v-model="queryParams.deptName"
placeholder="请输入网格名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button>
@ -157,43 +126,85 @@
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="taskManageList" @selection-change="handleSelectionChange">
<el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange" border>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="id" align="center" prop="id" />
<el-table-column label="上报人" align="center" prop="subName" />
<el-table-column label="上报日期" align="center" prop="subDate" width="180">
<el-table-column label="ID" align="center" prop="id" min-width="60" show-overflow-tooltip/>
<el-table-column label="任务主题" align="center" prop="title" min-width="120" show-overflow-tooltip/>
<el-table-column label="任务发起组织" align="center" prop="deptName" min-width="100" show-overflow-tooltip/>
<el-table-column label="任务发起人" align="center" prop="subName" min-width="100" show-overflow-tooltip/>
<el-table-column label="任务发起日期" align="center" prop="subDate" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.subDate, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="联系电话" align="center" prop="phone" />
<el-table-column label="任务分类(字典)" align="center" prop="taskType" />
<el-table-column label="任务主题(字典)" align="center" prop="title" />
<el-table-column label="任务描述" align="center" prop="content" />
<el-table-column label="截止日期" align="center" prop="expiredDate" width="180">
<el-table-column label="联系电话" align="center" prop="phone" min-width="100" show-overflow-tooltip/>
<el-table-column label="任务分类" align="center" prop="taskType" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
<dict-tag :options="dict.type.szxc_task_type" :value="scope.row.taskType"/>
</template>
</el-table-column>
<el-table-column label="任务描述" align="center" prop="content" min-width="140" show-overflow-tooltip/>
<el-table-column label="截止日期" align="center" prop="expiredDate" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.expiredDate, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column>
<el-table-column label="任务状态(字典)" align="center" prop="status" />
<el-table-column label="当前分派到部门" align="center" prop="sendedDept" />
<el-table-column label="当前分派到部门id" align="center" prop="sendedDeptid" />
<el-table-column label="分派到用户" align="center" prop="handleName" />
<el-table-column label="分派到用户id" align="center" prop="userId" />
<el-table-column label="处理结果" align="center" prop="handleResult" />
<el-table-column label="处理原由" align="center" prop="handleReason" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="部门id" align="center" prop="deptId" />
<el-table-column label="网格名称" align="center" prop="deptName" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<el-table-column label="任务状态" align="center" prop="status" min-width="80" show-overflow-tooltip>
<template slot-scope="scope">
<dict-tag :options="dict.type.szxc_task_status" :value="scope.row.status"/>
</template>
</el-table-column>
<el-table-column label="分派到组织" align="center" prop="sendedDept" min-width="120" show-overflow-tooltip/>
<el-table-column label="分派到用户" align="center" prop="handleName" min-width="120" show-overflow-tooltip/>
<el-table-column label="处理结果" align="center" prop="handleResult" min-width="140" show-overflow-tooltip>
<template slot-scope="scope">
<dict-tag :options="dict.type.szxc_handle_result" :value="scope.row.handleResult"/>
</template>
</el-table-column>
<el-table-column label="处理原由" align="center" prop="handleReason" min-width="140" show-overflow-tooltip/>
<el-table-column label="备注" align="center" prop="remark" min-width="140" show-overflow-tooltip/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" fixed="right" width="220">
<template slot-scope="scope">
<el-button
v-if="scope.row.status==='0'"
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['szxc:taskManage:edit']"
>修改</el-button>
<el-button
v-if="scope.row.status==='0'"
size="mini"
type="text"
icon="el-icon-edit"
@click="handleXiaFa(scope.row)"
v-hasPermi="['szxc:taskManage:edit']"
>下发</el-button>
<el-button
v-if="scope.row.status==='1'"
size="mini"
type="text"
icon="el-icon-edit"
@click="handleZhuanPai(scope.row)"
v-hasPermi="['szxc:taskManage:edit']"
>转派</el-button>
<el-button
v-if="scope.row.status==='1'"
size="mini"
type="text"
icon="el-icon-edit"
@click="handleChuLi(scope.row)"
v-hasPermi="['szxc:taskManage:edit']"
>处理</el-button>
<el-button
v-if="scope.row.status==='2'"
size="mini"
type="text"
icon="el-icon-edit"
@click="handleWanCheng(scope.row)"
v-hasPermi="['szxc:taskManage:edit']"
>完成</el-button>
<el-button
size="mini"
type="text"
@ -201,10 +212,16 @@
@click="handleDelete(scope.row)"
v-hasPermi="['szxc:taskManage:remove']"
>删除</el-button>
<el-button
v-if="scope.row.status!=='0'"
size="mini"
type="text"
@click="handleChuLiJiLu(scope.row)"
>处理记录</el-button>
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
@ -214,77 +231,264 @@
/>
<!-- 添加或修改任务管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="上报人" prop="subName">
<el-input v-model="form.subName" placeholder="请输入上报人" />
</el-form-item>
<el-form-item label="上报日期" prop="subDate">
<el-date-picker clearable
v-model="form.subDate"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择上报日期">
</el-date-picker>
</el-form-item>
<el-form-item label="联系电话" prop="phone">
<el-input v-model="form.phone" placeholder="请输入联系电话" />
</el-form-item>
<el-form-item label="任务主题(字典)" prop="title">
<el-input v-model="form.title" placeholder="请输入任务主题(字典)" />
<el-dialog :title="title" :visible.sync="open" width="900px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="110px">
<el-form-item label="任务主题" prop="title">
<el-input v-model="form.title" placeholder="请输入任务主题" />
</el-form-item>
<el-row :gutter="10">
<el-col :span="12">
<el-form-item label="任务分类" prop="taskType">
<el-select
v-model="form.taskType"
placeholder="请选择任务分类"
clearable
style="width:100%"
>
<el-option
v-for="dict in dict.type.szxc_task_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="任务发起组织" prop="deptId">
<treeselect v-model="form.deptId" :options="deptOptions"
placeholder="请选择任务发起组织" style="width:100%;" @select="selectedTree"/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="10">
<el-col :span="12">
<el-form-item label="任务发起人" prop="subName">
<el-input v-model="form.subName" placeholder="请输入任务发起人" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系电话" prop="phone">
<el-input v-model="form.phone" placeholder="请输入联系电话" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="10">
<el-col :span="12">
<el-form-item label="任务发起日期" prop="subDate">
<el-date-picker clearable style="width:100%"
v-model="form.subDate"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择任务发起日期">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="任务截止日期" prop="expiredDate">
<el-date-picker clearable style="width:100%"
v-model="form.expiredDate"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择截止日期">
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-form-item label="任务描述">
<editor v-model="form.content" :min-height="192"/>
</el-form-item>
<el-form-item label="截止日期" prop="expiredDate">
<el-date-picker clearable
v-model="form.expiredDate"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择截止日期">
</el-date-picker>
</el-form-item>
<el-form-item label="当前分派到部门" prop="sendedDept">
<el-input v-model="form.sendedDept" placeholder="请输入当前分派到部门" />
</el-form-item>
<el-form-item label="当前分派到部门id" prop="sendedDeptid">
<el-input v-model="form.sendedDeptid" placeholder="请输入当前分派到部门id" />
<editor v-model="form.content" :min-height="150"/>
</el-form-item>
<el-form-item label="分派到用户" prop="handleName">
<el-input v-model="form.handleName" placeholder="请输入分派到用户" />
</el-form-item>
<el-form-item label="分派到用户id" prop="userId">
<el-input v-model="form.userId" placeholder="请输入分派到用户id" />
</el-form-item>
<el-form-item label="处理结果" prop="handleResult">
<!-- <el-form-item label="处理结果" prop="handleResult">
<el-input v-model="form.handleResult" placeholder="请输入处理结果" />
</el-form-item>
<el-form-item label="处理原由" prop="handleReason">
<el-input v-model="form.handleReason" placeholder="请输入处理原由" />
</el-form-item>
</el-form-item>-->
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="部门id" prop="deptId">
<el-input v-model="form.deptId" placeholder="请输入部门id" />
</el-form-item>
<el-form-item label="网格名称" prop="deptName">
<el-input v-model="form.deptName" placeholder="请输入网格名称" />
<el-input v-model="form.remark" type="textarea" placeholder="请输入备注" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<!-- 下发/转派/完成 -->
<el-dialog :title="recard.title" :visible.sync="recard.open" width="500px" append-to-body>
<el-form ref="recardForm" :model="recard.form" :rules="recard.rules" label-width="110px">
<div v-if="recard.type==='0'">
<el-form-item label="下发人" prop="xfName">
<el-input readonly
placeholder="请选择下发人"
v-model="recard.form.xfName">
<el-button slot="append" icon="el-icon-search" @click="renYuanQuery('1')"></el-button>
</el-input>
</el-form-item>
<el-form-item label="下发组织" prop="xfDept">
<el-input v-model="recard.form.xfDept" placeholder="请输入下发组织" />
</el-form-item>
<el-form-item label="下发到人" prop="xfdName">
<el-input readonly
placeholder="请选择下发组织"
v-model="recard.form.xfdName">
<el-button slot="append" icon="el-icon-search" @click="renYuanQuery('2')"></el-button>
</el-input>
</el-form-item>
<el-form-item label="下发到组织" prop="xfdDept">
<el-input v-model="recard.form.xfdDept" placeholder="请输入下发到组织" />
</el-form-item>
</div>
<div v-if="recard.type==='1'">
<el-form-item label="转派人" prop="zpName">
<el-input readonly
placeholder="请选择转派人"
v-model="recard.form.zpName">
<el-button slot="append" icon="el-icon-search" @click="renYuanQuery('3')"></el-button>
</el-input>
</el-form-item>
<el-form-item label="转派组织" prop="zpDept">
<el-input v-model="recard.form.zpDept" placeholder="请输入转派组织" />
</el-form-item>
<el-form-item label="转派到人" prop="zpdName">
<el-input readonly
placeholder="请选择转派到人"
v-model="recard.form.zpdName">
<el-button slot="append" icon="el-icon-search" @click="renYuanQuery('4')"></el-button>
</el-input>
</el-form-item>
<el-form-item label="转派到组织" prop="zpdDept">
<el-input v-model="recard.form.zpdDept" placeholder="请输入转派到组织" />
</el-form-item>
</div>
<div v-if="recard.type==='2'">
<el-form-item label="处理人" prop="clName">
<el-input readonly
placeholder="请选择处理人"
v-model="recard.form.clName">
<el-button slot="append" icon="el-icon-search" @click="renYuanQuery('5')"></el-button>
</el-input>
</el-form-item>
<el-form-item label="处理组织" prop="clDept">
<el-input v-model="recard.form.clDept" readonly placeholder="请输入处理组织" />
</el-form-item>
<el-form-item label="处理结果" prop="clResult">
<el-select
v-model="recard.form.clResult"
placeholder="处理结果"
clearable
style="width:100%"
>
<el-option
v-for="dict in dict.type.szxc_handle_result"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="处理原因" prop="clReason">
<el-input v-model="recard.form.clReason" type="textarea" placeholder="请输入处理原因" />
</el-form-item>
</div>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="recardSubmit"> </el-button>
</div>
</el-dialog>
<el-dialog title="选择用户信息" :visible.sync="userInfo.visible" width="900px" append-to-body>
<el-form :model="userInfo.queryParams" ref="queryForm" size="small" :inline="true" label-width="70px">
<el-form-item label="用户名称" prop="userName">
<el-input
v-model="userInfo.queryParams.userName"
placeholder="请输入用户名称"
clearable
style="width: 240px"
@keyup.enter.native="userInfoQuery"
/>
</el-form-item>
<el-form-item label="手机号码" prop="phonenumber">
<el-input
v-model="userInfo.queryParams.phonenumber"
placeholder="请输入手机号码"
clearable
style="width: 240px"
@keyup.enter.native="userInfoQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="userInfoQuery"></el-button>
</el-form-item>
</el-form>
<el-alert title="双击选择用户" type="warning" :closable="false"></el-alert>
<el-table v-loading="userInfo.loading" :data="userInfo.list" border @cell-dblclick="userInfoDblclick">
<el-table-column label="用户编号" align="center" key="userId" prop="userId" />
<el-table-column label="用户名称" align="center" key="userName" prop="userName" :show-overflow-tooltip="true" />
<el-table-column label="用户昵称" align="center" key="nickName" prop="nickName" :show-overflow-tooltip="true" />
<el-table-column label="组织" align="center" key="deptName" prop="dept.deptName" :show-overflow-tooltip="true" />
<el-table-column label="手机号码" align="center" key="phonenumber" prop="phonenumber" width="120" />
</el-table>
<pagination
v-show="userInfo.total>0"
:total="userInfo.total"
:page.sync="userInfo.queryParams.pageNum"
:limit.sync="userInfo.queryParams.pageSize"
@pagination="getListUser"
/>
</el-dialog>
<el-dialog title="处理记录" :visible.sync="cljl.visible" width="1000px" append-to-body>
<el-table v-loading="cljl.loading" :data="cljl.list" border>
<el-table-column label="ID" align="center" prop="id" min-width="50" fixed/>
<el-table-column label="任务ID" align="center" prop="taskId" min-width="80" show-overflow-tooltip fixed/>
<el-table-column label="记录类型" align="center" prop="taskRecardType" min-width="100" show-overflow-tooltip>
<template slot-scope="scope">
<dict-tag :options="dict.type.szxc_task_recard_type" :value="scope.row.taskRecardType"/>
</template>
</el-table-column>
<el-table-column label="下发人" align="center" prop="xfName" min-width="120" show-overflow-tooltip/>
<el-table-column label="下发组织" align="center" prop="xfDept" min-width="120" show-overflow-tooltip/>
<el-table-column label="下发到人" align="center" prop="xfdName" min-width="120" show-overflow-tooltip/>
<el-table-column label="下发到组织" align="center" prop="xfdDept" min-width="120" show-overflow-tooltip/>
<el-table-column label="转派人" align="center" prop="zpName" min-width="120" show-overflow-tooltip/>
<el-table-column label="转派组织" align="center" prop="zpDept" min-width="120" show-overflow-tooltip/>
<el-table-column label="转派到人" align="center" prop="zpdName" min-width="120" show-overflow-tooltip/>
<el-table-column label="转派到组织" align="center" prop="zpdDept" min-width="120" show-overflow-tooltip/>
<el-table-column label="处理人" align="center" prop="clName" min-width="120" show-overflow-tooltip/>
<el-table-column label="处理组织" align="center" prop="clDept" min-width="120" show-overflow-tooltip/>
<el-table-column label="处理结果" align="center" prop="clResult" min-width="120" show-overflow-tooltip>
<template slot-scope="scope">
<dict-tag :options="dict.type.szxc_handle_result" :value="scope.row.clResult"/>
</template>
</el-table-column>
<el-table-column label="处理原因" align="center" prop="clReason" min-width="140" show-overflow-tooltip/>
</el-table>
</el-dialog>
</div>
</template>
<script>
import { listTaskManage, getTaskManage, delTaskManage, addTaskManage, updateTaskManage } from "@/api/szxc/taskManage";
import { listTaskRecard, addTaskRecard } from "@/api/szxc/taskRecard";
import { deptTreeSelect, listUser } from "@/api/system/user";
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
export default {
name: "TaskManage",
components: { Treeselect },
dicts: ['szxc_task_type', 'szxc_task_status', 'szxc_handle_result','szxc_task_recard_type'],
data() {
return {
//
@ -300,7 +504,9 @@ export default {
//
total: 0,
//
taskManageList: [],
list: [],
//
deptOptions: undefined,
//
title: "",
//
@ -330,27 +536,126 @@ export default {
form: {},
//
rules: {
subName: [
{ required: true, message: "上报人不能为空", trigger: "blur" }
],
title: [
{ required: true, message: "任务主题(字典)不能为空", trigger: "blur" }
{ required: true, message: "任务主题不能为空", trigger: "blur" }
],
taskType: [
{ required: true, message: "任务分类不能为空", trigger: "blur" }
],
deptId: [
{ required: true, message: "部门id不能为空", trigger: "blur" }
{ required: true, message: "任务发起组织不能为空", trigger: "blur" }
],
}
subName: [
{ required: true, message: "任务发起人不能为空", trigger: "blur" }
]
},
//
recard: {
type: '0', // 0 1 2
//
title: "",
//
form:{},
//
open: false,
//
rules: {
xfName: [
{ required: true, message: "下发人不能为空", trigger: "blur" }
],
xfDept: [
{ required: true, message: "下发组织不能为空", trigger: "blur" }
],
xfdName: [
{ required: true, message: "下发到人不能为空", trigger: "blur" }
],
xfdDept: [
{ required: true, message: "下发到组织不能为空", trigger: "blur" }
],
zpName: [
{ required: true, message: "转派人不能为空", trigger: "blur" }
],
zpDept: [
{ required: true, message: "转派组织不能为空", trigger: "blur" }
],
zpdName: [
{ required: true, message: "转派到人不能为空", trigger: "blur" }
],
zpdDept: [
{ required: true, message: "转派到组织不能为空", trigger: "blur" }
],
clName: [
{ required: true, message: "处理人不能为空", trigger: "blur" }
],
clDept: [
{ required: true, message: "处理组织不能为空", trigger: "blur" }
],
clResult: [
{ required: true, message: "处理结果不能为空", trigger: "blur" }
],
clReason: [
{ required: true, message: "处理原因不能为空", trigger: "blur" }
],
},
},
//
userInfo: {
type: null,
visible: false,
//
loading: false,
//
total: 0,
//
queryParams:{
pageNum: 1,
pageSize: 10,
userName: undefined,
phonenumber: undefined,
deptId: undefined
},
//
list: [],
//
selectRow: null
},
//
cljl: {
visible: false,
//
loading: false,
//
list: [],
//
selectedRow: null,
},
};
},
created() {
this.getList();
this.getDeptTree();
},
methods: {
/** 查询组织下拉树结构 */
getDeptTree() {
deptTreeSelect().then(response => {
this.deptOptions = response.data;
});
},
selectedTree(node){
this.form.deptId = node.id;
this.form.deptName = node.label;
},
renYuanQuery(type){
this.userInfo.type = type;
this.userInfo.visible = true;
this.getListUser()
},
/** 查询任务管理列表 */
getList() {
this.loading = true;
listTaskManage(this.queryParams).then(response => {
this.taskManageList = response.rows;
this.list = response.rows;
this.total = response.total;
this.loading = false;
});
@ -431,6 +736,7 @@ export default {
this.getList();
});
} else {
this.form.status = '0'
addTaskManage(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
@ -455,7 +761,174 @@ export default {
this.download('szxc/taskManage/export', {
...this.queryParams
}, `taskManage_${new Date().getTime()}.xlsx`)
}
},
//
handleXiaFa(row){
this.reset();
this.recardReset();
this.form = row;
this.recard.form.taskId = row.id;
this.recard.form.taskRecardType = '0';
this.recard.open = true;
this.recard.title = "下发";
this.recard.type = "0";
this.userInfo.queryParams.deptId = row.deptId;
},
//
handleZhuanPai(row){
this.reset();
this.recardReset();
this.form = row;
this.recard.form.taskId = row.id;
this.recard.form.taskRecardType = '1';
this.recard.open = true;
this.recard.title = "转派";
this.recard.type = "1";
this.userInfo.queryParams.deptId = row.deptId;
},
//
handleWanCheng(row){
this.reset();
this.recardReset();
this.form = row;
this.recard.form.taskId = row.id;
this.recard.form.taskRecardType = '2';
this.recard.open = true;
this.recard.title = "完成";
this.recard.type = "2";
this.userInfo.queryParams.deptId = row.deptId;
},
//
recardReset() {
this.recard.form = {
id: null,
taskId: null,
taskRecardType: null,
xfDept: null,
xfName: null,
xfdDept: null,
xfdName: null,
zpDept: null,
zpName: null,
zpdDept: null,
zpdName: null,
clDept: null,
clName: null,
clResult: null,
clReason: null,
remark: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null
};
this.resetForm("recardForm");
},
recardSubmit(){
this.$refs["recardForm"].validate(valid => {
if (valid) {
if(this.recard.type==='0'||this.recard.type==='1'){
this.form.status = '1'
updateTaskManage(this.form).then(response1 => {
addTaskRecard(this.recard.form).then(response => {
this.$modal.msgSuccess("操作成功");
this.recard.open = false;
this.open = false;
this.getList();
});
});
}
if(this.recard.type==='2'){
this.form.status = '3'
this.form.handleResult = this.recard.form.clResult;
this.form.handleReason = this.recard.form.clReason;
updateTaskManage(this.form).then(response1 => {
addTaskRecard(this.recard.form).then(response => {
this.$modal.msgSuccess("操作成功");
this.recard.open = false;
this.open = false;
this.getList();
});
});
}
}
});
},
/** 查询用户列表 */
getListUser() {
this.userInfo.loading = true;
listUser(this.userInfo.queryParams).then(response => {
this.userInfo.list = response.rows;
this.userInfo.total = response.total;
this.userInfo.loading = false;
}
);
},
userInfoQuery(){
this.getListUser()
},
userInfoDblclick(row){
this.userInfo.selectRow = row;
if(this.userInfo.type==='1'){
this.recard.form.xfName = row.nickName;
this.recard.form.xfDept = row.dept.deptName;
}
if(this.userInfo.type==='2') {
this.recard.form.xfdName = row.nickName;
this.recard.form.xfdDept = row.dept.deptName;
this.form.sendedDeptid = row.deptId;
this.form.sendedDept = row.dept.deptName;
this.form.userId = row.userId;
this.form.handleName = row.nickName;
}
if(this.userInfo.type==='3'){
this.recard.form.zpName = row.nickName;
this.recard.form.zpDept = row.dept.deptName;
}
if(this.userInfo.type==='4') {
this.recard.form.zpdName = row.nickName;
this.recard.form.zpdDept = row.dept.deptName;
this.form.sendedDeptid = row.deptId;
this.form.sendedDept = row.dept.deptName;
this.form.userId = row.userId;
this.form.handleName = row.nickName;
}
if(this.userInfo.type==='5'){
this.recard.form.clName = row.nickName;
this.recard.form.clDept = row.dept.deptName;
}
this.userInfo.visible = false
},
//
handleChuLi(row){
row.status='2';
updateTaskManage(row).then(response => {
this.$modal.msgSuccess("修改成功");
this.getList();
});
},
//
handleChuLiJiLu(row){
this.cljl.selectedRow = row;
this.cljl.visible = true;
this.getlistTaskRecard();
},
/** 查询审核记录信息列表 */
getlistTaskRecard() {
listTaskRecard({
pageNum: 1,
pageSize: 100000000,
taskId: this.cljl.selectedRow.id
}).then(response => {
this.cljl.list = response.rows
});
},
}
};
</script>

@ -1,18 +1,18 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="任务id" prop="taskId">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="90px">
<el-form-item label="任务ID" prop="taskId">
<el-input
v-model="queryParams.taskId"
placeholder="请输入任务id"
placeholder="请输入任务ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="下发部门" prop="xfDept">
<el-form-item label="下发组织" prop="xfDept">
<el-input
v-model="queryParams.xfDept"
placeholder="请输入下发部门"
placeholder="请输入下发组织"
clearable
@keyup.enter.native="handleQuery"
/>
@ -25,10 +25,10 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="下发到部门" prop="xfdDept">
<el-form-item label="下发到组织" prop="xfdDept">
<el-input
v-model="queryParams.xfdDept"
placeholder="请输入下发到部门"
placeholder="请输入下发到组织"
clearable
@keyup.enter.native="handleQuery"
/>
@ -41,10 +41,10 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="转派部门" prop="zpDept">
<el-form-item label="转派组织" prop="zpDept">
<el-input
v-model="queryParams.zpDept"
placeholder="请输入转派部门"
placeholder="请输入转派组织"
clearable
@keyup.enter.native="handleQuery"
/>
@ -57,10 +57,10 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="转派到部门" prop="zpdDept">
<el-form-item label="转派到组织" prop="zpdDept">
<el-input
v-model="queryParams.zpdDept"
placeholder="请输入转派到部门"
placeholder="请输入转派到组织"
clearable
@keyup.enter.native="handleQuery"
/>
@ -73,10 +73,10 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="处理部门" prop="clDept">
<el-form-item label="处理组织" prop="clDept">
<el-input
v-model="queryParams.clDept"
placeholder="请输入处理部门"
placeholder="请输入处理组织"
clearable
@keyup.enter.native="handleQuery"
/>
@ -97,14 +97,6 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="转派人" prop="clReason">
<el-input
v-model="queryParams.clReason"
placeholder="请输入转派人"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button>
@ -112,27 +104,6 @@
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['szxc:taskRecard:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['szxc:taskRecard:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
@ -157,33 +128,30 @@
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="taskRecardList" @selection-change="handleSelectionChange">
<el-table v-loading="loading" :data="list" @selection-change="handleSelectionChange" border>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label=" id" align="center" prop="id" />
<el-table-column label="任务id" align="center" prop="taskId" />
<el-table-column label="记录类型(字典)" align="center" prop="taskRecardType" />
<el-table-column label="下发部门" align="center" prop="xfDept" />
<el-table-column label="ID" align="center" prop="id" />
<el-table-column label="任务ID" align="center" prop="taskId" />
<el-table-column label="记录类型" align="center" prop="taskRecardType" >
<template slot-scope="scope">
<dict-tag :options="dict.type.szxc_task_recard_type" :value="scope.row.taskRecardType"/>
</template>
</el-table-column>
<el-table-column label="下发人" align="center" prop="xfName" />
<el-table-column label="下发到部门" align="center" prop="xfdDept" />
<el-table-column label="下发组织" align="center" prop="xfDept" />
<el-table-column label="下发到人" align="center" prop="xfdName" />
<el-table-column label="转派部门" align="center" prop="zpDept" />
<el-table-column label="下发到组织" align="center" prop="xfdDept" />
<el-table-column label="转派人" align="center" prop="zpName" />
<el-table-column label="转派到部门" align="center" prop="zpdDept" />
<el-table-column label="转派组织" align="center" prop="zpDept" />
<el-table-column label="转派到人" align="center" prop="zpdName" />
<el-table-column label="处理部门" align="center" prop="clDept" />
<el-table-column label="转派到组织" align="center" prop="zpdDept" />
<el-table-column label="处理人" align="center" prop="clName" />
<el-table-column label="处理组织" align="center" prop="clDept" />
<el-table-column label="处理结果" align="center" prop="clResult" />
<el-table-column label="转派人" align="center" prop="clReason" />
<el-table-column label="处理原因" align="center" prop="clReason" />
<el-table-column label="备注" align="center" prop="remark" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
v-hasPermi="['szxc:taskRecard:edit']"
>修改</el-button>
<el-button
size="mini"
type="text"
@ -194,7 +162,7 @@
</template>
</el-table-column>
</el-table>
<pagination
v-show="total>0"
:total="total"
@ -203,65 +171,15 @@
@pagination="getList"
/>
<!-- 添加或修改任务处理记录对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="任务id" prop="taskId">
<el-input v-model="form.taskId" placeholder="请输入任务id" />
</el-form-item>
<el-form-item label="下发部门" prop="xfDept">
<el-input v-model="form.xfDept" placeholder="请输入下发部门" />
</el-form-item>
<el-form-item label="下发人" prop="xfName">
<el-input v-model="form.xfName" placeholder="请输入下发人" />
</el-form-item>
<el-form-item label="下发到部门" prop="xfdDept">
<el-input v-model="form.xfdDept" placeholder="请输入下发到部门" />
</el-form-item>
<el-form-item label="下发到人" prop="xfdName">
<el-input v-model="form.xfdName" placeholder="请输入下发到人" />
</el-form-item>
<el-form-item label="转派部门" prop="zpDept">
<el-input v-model="form.zpDept" placeholder="请输入转派部门" />
</el-form-item>
<el-form-item label="转派人" prop="zpName">
<el-input v-model="form.zpName" placeholder="请输入转派人" />
</el-form-item>
<el-form-item label="转派到部门" prop="zpdDept">
<el-input v-model="form.zpdDept" placeholder="请输入转派到部门" />
</el-form-item>
<el-form-item label="转派到人" prop="zpdName">
<el-input v-model="form.zpdName" placeholder="请输入转派到人" />
</el-form-item>
<el-form-item label="处理部门" prop="clDept">
<el-input v-model="form.clDept" placeholder="请输入处理部门" />
</el-form-item>
<el-form-item label="处理人" prop="clName">
<el-input v-model="form.clName" placeholder="请输入处理人" />
</el-form-item>
<el-form-item label="处理结果" prop="clResult">
<el-input v-model="form.clResult" placeholder="请输入处理结果" />
</el-form-item>
<el-form-item label="转派人" prop="clReason">
<el-input v-model="form.clReason" placeholder="请输入转派人" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listTaskRecard, getTaskRecard, delTaskRecard, addTaskRecard, updateTaskRecard } from "@/api/szxc/taskRecard";
import { listTaskRecard, delTaskRecard } from "@/api/szxc/taskRecard";
export default {
name: "TaskRecard",
dicts: ['szxc_task_recard_type'],
data() {
return {
//
@ -277,11 +195,7 @@ export default {
//
total: 0,
//
taskRecardList: [],
//
title: "",
//
open: false,
list: [],
//
queryParams: {
pageNum: 1,
@ -301,11 +215,6 @@ export default {
clResult: null,
clReason: null,
},
//
form: {},
//
rules: {
}
};
},
created() {
@ -316,42 +225,11 @@ export default {
getList() {
this.loading = true;
listTaskRecard(this.queryParams).then(response => {
this.taskRecardList = response.rows;
this.list = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
taskId: null,
taskRecardType: null,
xfDept: null,
xfName: null,
xfdDept: null,
xfdName: null,
zpDept: null,
zpName: null,
zpdDept: null,
zpdName: null,
clDept: null,
clName: null,
clResult: null,
clReason: null,
remark: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
@ -368,24 +246,8 @@ export default {
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加任务处理记录";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const id = row.id || this.ids
getTaskRecard(id).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改任务处理记录";
});
},
/** 提交按钮 */
submitForm() {
/*submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.id != null) {
@ -403,7 +265,7 @@ export default {
}
}
});
},
},*/
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;

Loading…
Cancel
Save