修改任务

lijinlong
李劲龙 2 months ago
parent bda0dff9ab
commit 3bb4421eca

@ -17,6 +17,15 @@ export function listUnit(query) {
})
}
// 查询单位列表
export function listUnitdw(query) {
return request({
url: '/tc/unit/dwList',
method: 'get',
params: query
})
}
// 删除单位
export function delUnit(unitId) {
return request({

@ -6,4 +6,28 @@ export function addassetTaskadd(data) {
method: "post",
data,
})
}
export function getassetTask(params) {
return request({
url: '/unit/assetTask/page',
method: "get",
params,
})
}
export function getassetTaskid(params) {
return request({
url: `/unit/assetTask/${params}`,
method: "get",
// params,
})
}
export function geassetTaskcHc(params) {
return request({
url: `/unit/assetTask/zcHc`,
method: "get",
params,
})
}

@ -138,6 +138,7 @@
width: 100%;
overflow-y: scroll;
background-color: #f2f2f2;
display: flex;
.el-row {
height: 100%;
@ -154,13 +155,20 @@
background-color: #fff;
border-radius: 5px;
}
.info-left{
flex: 5;
}
.info-right{
flex: 1;
}
.info-right {
margin-left: 10px;
.info-title {
margin-top: 15px;
font-weight: 700;
font-size: 18px;
font-size: 16px;
color: #3D3D3D;
padding-left: 10px;
@ -189,7 +197,7 @@
border-radius: 5px;
.content-info {
padding: 20px 0;
padding: 15px 0;
margin-bottom: 15px;
background-color: #fff;
border-radius: 5px;
@ -218,7 +226,6 @@
}
.top-info {
margin: 20px 20px 0px 20px;
padding: 20px;
background: #FAFBFC;

@ -17,7 +17,7 @@ const service = axios.create({
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_BASE_API,
// 超时
timeout: 10000
timeout: 50000
})
// request拦截器

@ -7,35 +7,35 @@
<el-row>
<el-col :span="8">
<el-form-item label="任务名称:">
<el-input v-model="formInline.name" placeholder="请输入"></el-input>
<el-input v-model="formInline.taskName" placeholder="请输入"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="任务编号:">
<el-input v-model="formInline.type" placeholder="请输入"></el-input>
<el-input v-model="formInline.taskId" placeholder="请输入"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="任务完成时间:">
<el-date-picker v-model="formInline.time" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange" start-placeholder="开始时间" end-placeholder="结束时间" placeholder="请选择">
</el-date-picker>
<el-form-item label="任务状态:">
<el-select v-model="formInline.taskStatus" placeholder="请选择">
<el-option label="进行中" value="1">
</el-option>
<el-option label="正常完成" value="2">
</el-option>
<el-option label="超期完成" value="3">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="任务状态:">
<el-select v-model="formInline.status" placeholder="请选择">
<el-option label="item.label" value="item.value">
</el-option>
<!-- <el-option
v-for="dict in dict.type.bms_approval_status"
:key="dict.value"
:label="dict.label"
:value="dict.value">
</el-option> -->
</el-select>
<el-form-item label="任务完成时间:">
<el-date-picker v-model="formInline.time" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange" start-placeholder="开始时间" end-placeholder="结束时间" placeholder="请选择">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="16" style="text-align: right;padding-right: 20px;">
@ -63,29 +63,32 @@
<el-table v-loading="loading" :data="tableData" :height="tabHeader" :max-height="tabHeader"
:row-class-name="tableRowClassName">
<el-table-column type="index" width="50" label="序号" align="center" />
<el-table-column label="任务编号" key="number" width="200px" prop="number" align="center" />
<el-table-column label="任务名称" key="name" prop="name" align="center" />
<el-table-column label="任务下发时间" key="type" prop="type" align="center">
<el-table-column label="任务编号" key="taskId" width="200px" prop="taskId" align="center" />
<el-table-column label="任务名称" key="taskName" prop="taskName" align="center" />
<el-table-column label="任务下发时间" key="taskTime" prop="taskTime" align="center">
<!-- <template slot-scope="scope">
<dict-tag :options="dict.type.project_middle_type" :value="scope.row.projectMiddleType"/>
</template> -->
</el-table-column>
<el-table-column label="任务期限" key="unit" prop="unit" align="center" />
<el-table-column label="任务完成时间" key="time" prop="time" align="center" />
<el-table-column label="任务状态" key="status" width="200px" prop="status" class-name="table-status"
<el-table-column label="任务期限" key="taskDeadline" prop="taskDeadline" align="center" />
<el-table-column label="任务完成时间" key="taskFinishTime" prop="taskFinishTime" align="center" />
<el-table-column label="任务状态" key="taskStatus" width="200px" prop="taskStatus" class-name="table-status"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.status === 0" style="color: #F58A0C;">
待审核
<span v-if="scope.row.status === 1" style="color: #F58A0C;">
进行中
</span>
<span v-if="scope.row.status === 1" style="color: #F50C0C;">
审核驳回
<span v-if="scope.row.status === 2" style="color: #F50C0C;">
正常完成
</span>
<span v-if="scope.row.status === 3" style="color: #16B771;">
正常完成
超期完成
</span>
<span v-if="scope.row.status === 4" style="color: #1485EF;">
超期完成
正常完成
</span>
<span v-if="scope.row.status === 5" style="color: #1485EF;">
审核驳回
</span>
</template>
</el-table-column>
@ -94,21 +97,14 @@
<div style="display: flex;align-items: center;justify-content: center;">
<div style="display: flex;align-items: center;cursor: pointer;">
<img src="@/assets/images/icon-ck@2x.png" alt="" style="width: 20px;margin-right: 5px;">
<<<<<<< HEAD
<span class="look-info" @click="goInfo(scope.row)"
style="color: #1485EF;margin-right: 15px;cursor: pointer;">查看</span>
=======
<span class="look-info" @click="goInfo(scope.row)" style="color: #1485EF;margin-right: 15px;">查看</span>
>>>>>>> 5a6aa4b4a0b31b87d8a59d02d85f248da13cf486
</div>
<div v-if="scope.row.status == 0" style="display: flex;align-items: center;cursor: pointer;">
<!-- v-if="scope.row.taskStatus == 1" -->
<div style="display: flex;align-items: center;cursor: pointer;">
<img src="@/assets/images/icon-shenhe@2x.png" alt="" style="width: 15px;margin-right: 5px;">
<<<<<<< HEAD
<span class="del-info" @click="delInfo(scope.row)"
style="color: #1485EF;margin-right: 15px;cursor: pointer;">审核</span>
=======
<span class="del-info" @click="delInfo(scope.row)" style="color: #1485EF;margin-right: 15px;">审核</span>
>>>>>>> 5a6aa4b4a0b31b87d8a59d02d85f248da13cf486
</div>
</div>
</template>
@ -160,7 +156,7 @@
import myPagination from "@/views/components/Pagination/index.vue"
import myDialog from "@/views/components/myDialog/index.vue"
import danweiList from "@/views/system/user/danweiList.vue"
import { addassetTaskadd } from "@/api/renwuApi/index.js"
import { addassetTaskadd, getassetTask, getassetTaskid } from "@/api/renwuApi/index.js"
export default {
// dicts: ['jjh_project_type', 'bms_approval_status', "project_middle_type", "project_small_type", "project_categories"],
@ -180,35 +176,7 @@ export default {
size: 10,
},
tableData: [
{
number: 20230001,
name: "XXX任务",
type: "2023-07-30 16:30:21",
unit: "2023-07-30",
time: "2023-07-30 16:30:21",
status: 0,
}, {
number: 20230001,
name: "XXX任务",
type: "2023-07-30 16:30:21",
unit: "2023-07-30",
time: "2023-07-30 16:30:21",
status: 1,
}, {
number: 20230001,
name: "XXX任务",
type: "2023-07-30 16:30:21",
unit: "2023-07-30",
time: "2023-07-30 16:30:21",
status: 3,
}, {
number: 20230001,
name: "XXX任务",
type: "2023-07-30 16:30:21",
unit: "2023-07-30",
time: "2023-07-30 16:30:21",
status: 4,
},
],
loading: false,
tabHeader: undefined,
@ -243,7 +211,7 @@ export default {
//
resetForm() {
this.ruleForm = {
dwmc: [],
dwmc: [],
taskName: "",
taskDeadline: "",
}
@ -256,7 +224,11 @@ export default {
this.ruleForm.dwmc = this.ruleForm.dwmc.join(",")
addassetTaskadd(this.ruleForm).then(res => {
this.resetForm()
this.getInfo();
})
setTimeout(() => {
this.ruleForm.dwmc = this.ruleForm.dwmc.split(",")
}, 0);
} else {
console.log('error submit!!');
return false;
@ -278,12 +250,12 @@ export default {
},
//
getInfo() {
// this.loading = true;
// jProject(this.pagination).then(res=>{
// this.loading = false;
// this.total = res.data.total;
// this.tableData = res.data.records;
// })
this.loading = true;
getassetTask(this.pagination).then(res => {
this.loading = false;
this.total = res.data.total;
this.tableData = res.data.records;
})
},
//
resetQuery() {
@ -298,7 +270,7 @@ export default {
current: 1,
size: 10,
}
this.getList();
this.getInfo();
},
//
addliebiao() {
@ -321,17 +293,17 @@ export default {
size: 10
}
if (this.formInline.time.length > 0) {
this.formInline.startTime = this.formInline.time[0]
this.formInline.begainTime = this.formInline.time[0]
this.formInline.endTime = this.formInline.time[1]
}
this.pagination = { ...this.pagination, ...this.formInline };
this.getList();
this.getInfo();
},
//
getPagination(pages) {
this.pagination.current = pages.page;
this.pagination.size = pages.limit;
this.getList();
this.getInfo();
},
//
handleImport() { },
@ -346,17 +318,15 @@ export default {
},
//
goInfo() {
goInfo(row) {
getassetTaskid(row.id)
this.$router.push({
name: 'TaskInfo', query: {
pageType: "info",
pageType: "look",
id:row.id
}
})
},
//
edit() {
},
//
delInfo() {
this.$router.push({
name: 'taskAudit', query: {
@ -364,6 +334,11 @@ export default {
}
})
},
//
edit() {
},
//
// table
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 !== 0) {

@ -1,241 +1,236 @@
<template>
<div class="L-task-info">
<el-row>
<el-col :span="20">
<div class="info-left" id="L-size-main">
<div class="content-info" id="L-header">
<div class="info-title">任务详情</div>
<div class="top-info">
<el-row class="top-row">
<el-col :span="8">
任务编号<span>20240101001</span>
</el-col>
<el-col :span="8">
任务名称<span>XXXXX资产核查任务</span>
</el-col>
<el-col :span="8">
任务状态<span>待审核</span>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
任务期限<span>2024-11-11 09:00:00</span>
</el-col>
<el-col :span="8">
任务下发时间<span>2024-11-11 09:00:00</span>
</el-col>
</el-row>
</div>
</div>
<div class="info-cut-off-rule" id="L-tab">
<div class="left-tab" :class="index == 1 ? 'active-tab':''" @click="activeTab(1)"></div>
<div :class="index == 2 ? 'active-tab':''" @click="activeTab(2)"></div>
</div>
<div class="info-bottom-box">
<el-form :inline="true" :model="formInline" size="small" class="demo-form-inline" v-if="index == 1">
<el-row>
<el-col :span="7">
<el-form-item label="核查单位:">
<el-select v-model="formInline.unit" placeholder="请选择">
<el-option label="item.label" value="item.value">
</el-option>
<!-- <el-option
v-for="dict in dict.type.bms_approval_status"
:key="dict.value"
:label="dict.label"
:value="dict.value">
</el-option> -->
</el-select>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="资产类型:">
<el-select v-model="formInline.type" placeholder="请选择">
<el-option label="item.label" value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="审核状态:">
<el-select v-model="formInline.status" placeholder="请选择">
<el-option label="item.label" value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item>
<el-button size="mini" type="primary" @click="handleQuery()"></el-button>
<el-button size="mini" @click="resetQuery()"></el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-form :inline="true" :model="formInlineTwo" size="small" class="demo-form-inline" v-if="index == 2">
<el-row>
<el-col :span="7">
<el-form-item label="单位名称:">
<el-input v-model="formInlineTwo.unitName" placeholder="请输入"></el-input>
<!-- <el-select v-model="formInline.unit" placeholder="请选择"> -->
<!-- <el-option
<div class="info-left" id="L-size-main">
<div class="content-info" id="L-header">
<div class="info-title">任务详情</div>
<div class="top-info">
<el-row class="top-row">
<el-col :span="8">
任务编号<span>{{ titleInfoObj.id }}</span>
</el-col>
<el-col :span="8">
任务名称<span>{{ titleInfoObj.taskName }}</span>
</el-col>
<el-col :span="8">
任务状态<span>{{ taskstatus(titleInfoObj.taskStatus) }}</span>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
任务期限<span>{{ titleInfoObj.taskDeadline }}</span>
</el-col>
<el-col :span="8">
任务下发时间<span>{{ titleInfoObj.taskTime }}</span>
</el-col>
</el-row>
</div>
</div>
<div class="info-cut-off-rule" id="L-tab">
<div class="left-tab" :class="index == 1 ? 'active-tab' : ''" @click="activeTab(1)"></div>
<div :class="index == 2 ? 'active-tab' : ''" @click="activeTab(2)"></div>
</div>
<div class="info-bottom-box">
<el-form :inline="true" :model="formInline" size="small" class="demo-form-inline" v-if="index == 1">
<el-row>
<el-col :span="8">
<el-form-item label="核查单位:">
<el-input v-model="formInline.dwmc" placeholder="请输入"></el-input>
</el-form-item>
</el-col>
<el-col :span="9">
<el-form-item label="系统类型:">
<el-select v-model="formInline.xtlx" placeholder="请选择">
<el-option v-for="dict in dict.type.zc_xtlx" :key="dict.label" :label="dict.label"
:value="dict.value">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="9">
<el-form-item label="审核状态:">
<el-select v-model="formInline.status" placeholder="请选择">
<el-option label="待核查" value="0">
</el-option>
<el-option label="已核查" value="1">
</el-option>
<el-option label="审核通过" value="3">
</el-option>
<el-option label="审核不通过" value="4">
</el-option>
<el-option label="已报废" value="5">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
<el-button size="mini" type="primary" @click="handleQuery()"></el-button>
<el-button size="mini" @click="resetQuery()"></el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-form :inline="true" :model="formInlineTwo" size="small" class="demo-form-inline" v-if="index == 2">
<el-row>
<el-col :span="7">
<el-form-item label="单位名称:">
<el-input v-model="formInlineTwo.unitName" placeholder="请输入"></el-input>
<!-- <el-select v-model="formInline.unit" placeholder="请选择"> -->
<!-- <el-option
v-for="dict in dict.type.bms_approval_status"
:key="dict.value"
:label="dict.label"
:value="dict.value">
</el-option> -->
<!-- </el-select> -->
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item>
<el-button size="mini" type="primary" @click="handleQuery()"></el-button>
<el-button size="mini" @click="resetQuery()"></el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
<section v-if="index == 1">
<el-table v-loading="loading" :data="tableData" :height="tabHeader" :max-height="tabHeader" :row-class-name="tableRowClassName">
<el-table-column type="index" width="50" label="序号" align="center"/>
<el-table-column label="资产编号" key="number" width="200px" prop="number" align="center" />
<el-table-column label="资产名称" key="name" prop="name" align="center" />
<el-table-column label="资产类型" key="type" prop="type" align="center">
<!-- <template slot-scope="scope">
<!-- </el-select> -->
</el-form-item>
</el-col>
<el-col :span="4">
<el-form-item>
<el-button size="mini" type="primary" @click="handleQuery()"></el-button>
<el-button size="mini" @click="resetQuery()"></el-button>
</el-form-item>
</el-col>
</el-row>
</el-form>
<section v-if="index == 1">
<el-table v-loading="loading" :data="tableData" :height="tabHeader" :max-height="tabHeader"
:row-class-name="tableRowClassName">
<el-table-column type="index" width="50" label="序号" align="center" />
<el-table-column label="资产编号" key="id" width="200px" prop="id" align="center" />
<el-table-column label="系统名称" key="xtmc" prop="xtmc" align="center" />
<el-table-column label="系统类型" key="xtlx" prop="xtlx" align="center">
<template slot-scope="scope">
<dict-tag :options="dict.type.zc_xtlx" :value="scope.row.xtlx" />
</template>
</el-table-column>
<el-table-column label="核查单位" key="zcdwmc" prop="zcdwmc" align="center" />
<el-table-column label="审核状态" key="status" width="200px" prop="status" class-name="table-status"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.status === 0" style="color: #F59A23;">
待核查
</span>
<span v-if="scope.row.status === 1" style="color: #F43147;">
待审核
</span>
<span v-if="scope.row.status === 3" style="color: #C51717;">
审核通过
</span>
<span v-if="scope.row.status === 4" style="color: #C51717;">
审核不通过
</span>
<span v-if="scope.row.status === 5" style="color: #C51717;">
已报废
</span>
</template>
</el-table-column>
<el-table-column label="操作" prop="userId" class-name="table-operation" align="center">
<template slot-scope="scope">
<span class="look-info" @click="goInfo(scope.row)" style="color: #192A92;cursor: pointer;">查看</span>
</template>
</el-table-column>
</el-table>
</section>
<section v-if="index == 2">
<el-table v-loading="loading" :data="tableDataTwo" :height="tabHeader" :max-height="tabHeader"
:row-class-name="tableRowClassName">
<el-table-column type="index" width="50" label="序号" align="center" />
<el-table-column label="单位名称" key="unitName" width="200px" prop="unitName" align="center" />
<el-table-column label="核查资产数量" key="hczcsl" prop="hczcsl" align="center" />
<el-table-column label="完成数量" key="wcsl" prop="wcsl" align="center">
<!-- <template slot-scope="scope">
<dict-tag :options="dict.type.project_middle_type" :value="scope.row.projectMiddleType"/>
</template> -->
</el-table-column>
<el-table-column label="核查单位" key="unit" prop="unit" align="center" />
<el-table-column label="审核状态" key="status" width="200px" prop="status" class-name="table-status" align="center">
<template slot-scope="scope">
<span v-if="scope.row.status === 0" style="color: #F59A23;">
审核通过
</span>
<span v-if="scope.row.status === 1" style="color: #F43147;">
审核不通过
</span>
<span v-if="scope.row.status === 2" style="color: #C51717;">
已报废
</span>
</template>
</el-table-column>
<el-table-column label="操作" prop="userId" class-name="table-operation" align="center">
<template slot-scope="scope">
<span class="look-info" @click="goInfo(scope.row)" style="color: #192A92;cursor: pointer;">查看</span>
</template>
</el-table-column>
</el-table>
</section>
<section v-if="index == 2">
<el-table v-loading="loading" :data="tableDataTwo" :height="tabHeader" :max-height="tabHeader" :row-class-name="tableRowClassName">
<el-table-column type="index" width="50" label="序号" align="center"/>
<el-table-column label="单位名称" key="unitName" width="200px" prop="unitName" align="center" />
<el-table-column label="核查资产数量" key="hczcsl" prop="hczcsl" align="center" />
<el-table-column label="完成数量" key="wcsl" prop="wcsl" align="center">
<!-- <template slot-scope="scope">
<dict-tag :options="dict.type.project_middle_type" :value="scope.row.projectMiddleType"/>
</template> -->
</el-table-column>
<el-table-column label="未完成数量" key="wwcsl" prop="wwcsl" align="center" />
<el-table-column label="未完成比例" key="wwcbl" width="200px" prop="wwcbl" align="center">
<template slot-scope="scope">
<span style="color: #192A92;">{{ scope.row.wwcbl }}</span>
</template>
</el-table-column>
</el-table>
</section>
<my-pagination
id="L-pagination"
:total="total"
:page="pagination.current"
:limit="pagination.size"
@pagination="getPagination"
:current-page.sync="pagination.current"
></my-pagination>
</div>
</div>
</el-col>
<el-col :span="4">
<div class="info-right">
<div class="info-title">任务详情</div>
<div class="timeline">
<el-timeline>
<el-timeline-item
v-for="(activity, index) in activities"
:key="index"
:timestamp="activity.timestamp">
{{activity.content}}
</el-timeline-item>
</el-timeline>
</div>
</div>
</el-col>
</el-row>
</el-table-column>
<el-table-column label="未完成数量" key="wwcsl" prop="wwcsl" align="center" />
<el-table-column label="未完成比例" key="wwcbl" width="200px" prop="wwcbl" align="center">
<template slot-scope="scope">
<span style="color: #192A92;">{{ scope.row.wwcbl }}</span>
</template>
</el-table-column>
</el-table>
</section>
<my-pagination id="L-pagination" :total="total" :page="pagination.current" :limit="pagination.size"
@pagination="getPagination" :current-page.sync="pagination.current"></my-pagination>
</div>
</div>
<div class="info-right" v-if="$route.query.pageType == 'look'">
<div class="info-title">任务流程节点</div>
<div class="timeline">
<el-timeline>
<el-timeline-item v-for="(activity, index) in activities" :key="index" :timestamp="activity.timestamp">
{{ activity.content }}
</el-timeline-item>
</el-timeline>
</div>
</div>
</div>
</template>
<script>
import myPagination from "@/views/components/Pagination/index.vue"
import { getassetTaskid, geassetTaskcHc } from "@/api/renwuApi/index.js"
export default {
components:{myPagination},
dicts: ['zc_xtlx'],
components: { myPagination },
data() {
return {
index:1,
formInline:{
unit:"",
type:"",
status:"",
index: 1,
formInline: {
},
formInlineTwo:{
unitName:"",
formInlineTwo: {
unitName: "",
},
total:0,
pagination:{
current:1,
size:10,
total: 0,
pagination: {
current: 1,
size: 10,
},
tableData:[
tableData: [
{
number:20230001,
name:"XXX资产",
type:"1类资产",
unit:"太仓市XXX局",
status:0,
},{
number:20230001,
name:"XXX资产",
type:"1类资产",
unit:"太仓市XXX局",
status:1,
},{
number:20230001,
name:"XXX资产",
type:"1类资产",
unit:"太仓市XXX局",
status:2,
number: 20230001,
name: "XXX资产",
type: "1类资产",
unit: "太仓市XXX局",
status: 0,
}, {
number: 20230001,
name: "XXX资产",
type: "1类资产",
unit: "太仓市XXX局",
status: 1,
}, {
number: 20230001,
name: "XXX资产",
type: "1类资产",
unit: "太仓市XXX局",
status: 2,
},
],
tableDataTwo:[
tableDataTwo: [
{
unitName:"太仓市XXX局",
hczcsl:"100",
wcsl:"80",
wwcsl:"20",
wwcbl:"20%"
},{
unitName:"太仓市XXX局",
hczcsl:"100",
wcsl:"80",
wwcsl:"20",
wwcbl:"20%"
},{
unitName:"太仓市XXX局",
hczcsl:"100",
wcsl:"80",
wwcsl:"20",
wwcbl:"20%"
unitName: "太仓市XXX局",
hczcsl: "100",
wcsl: "80",
wwcsl: "20",
wwcbl: "20%"
}, {
unitName: "太仓市XXX局",
hczcsl: "100",
wcsl: "80",
wwcsl: "20",
wwcbl: "20%"
}, {
unitName: "太仓市XXX局",
hczcsl: "100",
wcsl: "80",
wwcsl: "20",
wwcbl: "20%"
},
],
loading:false,
loading: false,
tabHeader: undefined,
activities: [{
content: '管理员任务下发',
@ -252,89 +247,117 @@ export default {
}, {
content: '管理员审核通过',
timestamp: '2024-11-11 17:00:00'
}]
}],
titleInfoObj: {}
}
},
mounted(){
mounted() {
this.getList();
this.cancalDebounce();
window.addEventListener('resize', this.cancalDebounce);
this.titleInfo()
},
destroyed() {
window.removeEventListener('resize', this.cancalDebounce);
},
methods:{
methods: {
taskstatus(id) {
if (id) {
let obj = {
1: "进行中",
2: "正常完成", 3: "超期完成", 4: "正常完成", 5: "审核驳回"
}
return obj[id]
} else {
return "-"
}
},
titleInfo() {
console.log(this.$route.query);
getassetTaskid(this.$route.query.id).then(res => {
if (res.code == 200) {
this.titleInfoObj = res.data
}
})
},
//
resetQuery(){
resetQuery() {
this.pagination = {
current: 1,
size: 10,
}
if(this.index == 1) {
if (this.index == 1) {
this.formInline = {
unit:"",
type:"",
status:"",
}
this.getList();
} else if(this.index == 2) {
} else if (this.index == 2) {
this.formInlineTwo = {
unitName:"",
unitName: "",
}
this.getListTwo();
}
},
//
handleQuery(){
handleQuery() {
this.pagination = {
current: 1,
size: 10,
}
if(this.index == 1) {
this.pagination = { ...this.pagination,...this.formInline };
if (this.index == 1) {
this.pagination = { ...this.pagination, ...this.formInline };
this.getList();
} else if(this.index == 2) {
} else if (this.index == 2) {
this.getListTwo();
}
},
//
getPagination(){
getPagination() {
this.pagination.current = pages.page;
this.pagination.size = pages.limit;
if(this.index == 1) {
if (this.index == 1) {
this.getList();
} else if(this.index == 2) {
} else if (this.index == 2) {
this.getListTwo();
}
},
// tab
activeTab(id){
activeTab(id) {
this.index = id
if(id == 1) {
if (id == 1) {
this.formInline = {
unit:"",
type:"",
status:"",
unit: "",
type: "",
status: "",
}
this.getList();
} else {
this.formInlineTwo = {
unitName:"",
unitName: "",
}
this.getList();
}
},
getList(){},
getListTwo(){},
getList() {
geassetTaskcHc(this.pagination).then(res => {
this.tableData = res.data.records
})
},
getListTwo() { },
// table
tableRowClassName({row, rowIndex}){
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 !== 0) {
return 'evenNumber-row';
}
return '';
},
//
cancalDebounce(){
cancalDebounce() {
const element = document.getElementById('L-size-main'); // ID
const header = document.getElementById('L-header'); // ID
const tab = document.getElementById('L-tab'); // ID
@ -348,3 +371,13 @@ export default {
},
}
</script>
<style lang="scss" scoped>
::v-deep .el-timeline {
padding-left: 0;
font-size: 12px;
}
::v-deep .el-form-item__label {
padding-right: 3px;
}
</style>

@ -115,4 +115,7 @@ export default {
::v-deep .custom-my-class {
margin-top: 15vh !important;
}
::v-deep .el-dialog__body{
padding-top: 10px !important;
}
</style>

@ -4,7 +4,7 @@
<div class="L-main" id="L-size-main">
<div class="content-search" id="L-header">
<div class="search-title">查询条件</div>
<el-form :inline="true" :model="queryParams" ref="queryForm" size="small" class="demo-form-inline">
<el-form :inline="true" :model="queryParams" ref="queryForm" size="small" >
<el-row>
<el-col :span="6">
<el-form-item label="单位名称:" prop="nickName">
@ -85,7 +85,7 @@
<script>
// import { listUser, getUser, delUser, addUser, updateUser, resetUserPwd, changeUserStatus, deptTreeSelect } from "@/api/system/user";
import { listUnit, delUnit } from "@/api/auditPagesApi/index";
import { listUnitdw, delUnit } from "@/api/auditPagesApi/index";
import { getToken } from "@/utils/auth";
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
@ -227,7 +227,7 @@ export default {
/** 查询用户列表 */
getList() {
this.loading = true;
listUnit(this.queryParams).then(response => {
listUnitdw(this.queryParams).then(response => {
this.userList = response.data.records;
this.total = response.data.total;
this.loading = false;
@ -267,4 +267,13 @@ export default {
}
}
};
</script>
</script>
<style lang="scss" scoped>
::v-deep .danweiList{
padding: 0 20px;
}
::v-deep .content-search{
padding-top: 10px;
}
</style>

@ -1,36 +1,45 @@
<!-- 我的任务 -->
<!-- 任务管理 -->
<template>
<div class="L-main" id="L-size-main">
<div class="content-search" id="L-header">
<div class="search-title">查询条件</div>
<el-form :inline="true" :model="formInline" size="small" class="demo-form-inline">
<el-row>
<el-col :span="7">
<el-form-item label="任务编号">
<el-input v-model="formInline.type" placeholder="请输入"></el-input>
<el-col :span="8">
<el-form-item label="任务名称">
<el-input v-model="formInline.taskName" placeholder="请输入"></el-input>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="任务名称">
<el-input v-model="formInline.name" placeholder="请输入"></el-input>
<el-col :span="8">
<el-form-item label="任务编号">
<el-input v-model="formInline.taskId" placeholder="请输入"></el-input>
</el-form-item>
</el-col>
<el-col :span="7">
<el-col :span="8">
<el-form-item label="任务状态:">
<el-select v-model="formInline.status" placeholder="请选择">
<el-option label="item.label" value="item.value">
<el-select v-model="formInline.taskStatus" placeholder="请选择">
<el-option label="进行中" value="1">
</el-option>
<el-option label="正常完成" value="2">
</el-option>
<el-option label="超期完成" value="3">
</el-option>
<!-- <el-option
v-for="dict in dict.type.bms_approval_status"
:key="dict.value"
:label="dict.label"
:value="dict.value">
</el-option> -->
</el-select>
</el-form-item>
</el-col>
<el-col :span="3" style="text-align: right;padding-right: 20px;">
<el-form-item class="unit-form">
</el-row>
<el-row>
<el-col :span="8">
<el-form-item label="任务完成时间:">
<el-date-picker v-model="formInline.time" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange" start-placeholder="开始时间" end-placeholder="结束时间" placeholder="请选择">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="16" style="text-align: right;padding-right: 20px;">
<el-form-item>
<el-button size="mini" @click="resetQuery('queryFrom')"></el-button>
<el-button size="mini" type="primary" @click="handleQuery('queryFrom')"></el-button>
</el-form-item>
@ -39,110 +48,158 @@
</el-form>
</div>
<main>
<div class="search-title search-title-two">
<div class="search-title">
<span class="search-title-span">任务列表</span>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"></el-button>
</el-col>
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"></el-button>
</el-col>
</el-row>
</div>
<section>
<el-table v-loading="loading" :data="tableData" :height="tabHeader" :max-height="tabHeader" :row-class-name="tableRowClassName">
<el-table-column type="index" width="50" label="序号" align="center"/>
<el-table-column label="任务编号" key="number" width="200px" prop="number" align="center" />
<el-table-column label="任务名称" key="name" prop="name" align="center" />
<el-table-column label="任务下发时间" key="type" prop="type" align="center">
<el-table v-loading="loading" :data="tableData" :height="tabHeader" :max-height="tabHeader"
:row-class-name="tableRowClassName">
<el-table-column type="index" width="50" label="序号" align="center" />
<el-table-column label="任务编号" key="taskId" width="200px" prop="taskId" align="center" />
<el-table-column label="任务名称" key="taskName" prop="taskName" align="center" />
<el-table-column label="任务下发时间" key="taskTime" prop="taskTime" align="center">
<!-- <template slot-scope="scope">
<dict-tag :options="dict.type.project_middle_type" :value="scope.row.projectMiddleType"/>
</template> -->
</el-table-column>
<el-table-column label="任务期限" key="unit" prop="unit" align="center" />
<el-table-column label="任务状态" key="status" width="200px" prop="status" class-name="table-status" align="center">
<el-table-column label="任务期限" key="taskDeadline" prop="taskDeadline" align="center" />
<el-table-column label="任务完成时间" key="taskFinishTime" prop="taskFinishTime" align="center" />
<el-table-column label="任务状态" key="taskStatus" width="200px" prop="taskStatus" class-name="table-status"
align="center">
<template slot-scope="scope">
<span v-if="scope.row.status === 0" style="color: #F58A0C;">
待审核
<span v-if="scope.row.status === 1" style="color: #F58A0C;">
进行中
</span>
<span v-if="scope.row.status === 1" style="color: #F50C0C;">
审核驳回
<span v-if="scope.row.status === 2" style="color: #F50C0C;">
正常完成
</span>
<span v-if="scope.row.status === 2" style="color: #16B771;">
已完成
<span v-if="scope.row.status === 3" style="color: #16B771;">
超期完成
</span>
<span v-if="scope.row.status === 4" style="color: #1485EF;">
正常完成
</span>
<span v-if="scope.row.status === 5" style="color: #1485EF;">
审核驳回
</span>
</template>
</el-table-column>
<el-table-column label="操作" prop="userId" class-name="table-operation" align="center">
<el-table-column label="操作" prop="userId" width="180px" class-name="table-operation" align="center">
<template slot-scope="scope">
<div style="display: flex;align-items: center;justify-content: center;">
<div v-if="scope.row.status == 2" style="display: flex;align-items: center;cursor: pointer;">
<div style="display: flex;align-items: center;cursor: pointer;">
<img src="@/assets/images/icon-ck@2x.png" alt="" style="width: 20px;margin-right: 5px;">
<span class="look-info" @click="goInfo(scope.row,3)" style="color: #1485EF;margin-right: 15px;">查看</span>
</div>
<div v-if="scope.row.status == 0" style="display: flex;align-items: center;cursor: pointer;">
<img src="@/assets/images/icon-shenhe@2x.png" alt="" style="width: 15px;margin-right: 5px;">
<span class="del-info" @click="goInfo(scope.row,1)" style="color: #1485EF;margin-right: 15px;">开始核查</span>
<span class="look-info" @click="goInfo(scope.row)"
style="color: #1485EF;margin-right: 15px;cursor: pointer;">查看</span>
</div>
<div v-if="scope.row.status == 1" style="display: flex;align-items: center;cursor: pointer;">
<!-- v-if="scope.row.taskStatus == 1" -->
<div style="display: flex;align-items: center;cursor: pointer;">
<img src="@/assets/images/icon-shenhe@2x.png" alt="" style="width: 15px;margin-right: 5px;">
<span class="del-info" @click="goInfo(scope.row,2)" style="color: #1485EF;margin-right: 15px;">重新核查</span>
<span class="del-info" @click="delInfo(scope.row)"
style="color: #1485EF;margin-right: 15px;cursor: pointer;">开始核查</span>
</div>
</div>
</template>
</el-table-column>
</el-table>
</section>
<my-pagination
id="L-pagination"
:total="total"
:page="pagination.current"
:limit="pagination.size"
@pagination="getPagination"
:current-page.sync="pagination.current"
></my-pagination>
<my-pagination id="L-pagination" :total="total" :page="pagination.current" :limit="pagination.size"
@pagination="getPagination" :current-page.sync="pagination.current"></my-pagination>
</main>
<my-dialog title="新增任务" @close="importClose" ref="taskDialog" class="taskDialogBox" width="40%">
<el-row>
<el-col :span="18">
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px">
<el-form-item label="任务名称" prop="taskName">
<el-input v-model="ruleForm.taskName" placeholder="请输入单位名称"></el-input>
</el-form-item>
<el-form-item label="核查单位" prop="dwmc" class="select-box">
<el-col :span="24">
<el-select v-model="ruleForm.dwmc" placeholder="请选择活动区域" multiple collapse-tags>
</el-select>
</el-col>
<el-col class="btn-box">
<el-button type="primary" @click="addliebiao"><i class="el-icon-s-unfold"></i></el-button>
</el-col>
</el-form-item>
<el-form-item label="任务期限" prop="taskDeadline">
<el-date-picker type="date" placeholder="选择日期" v-model="ruleForm.taskDeadline" style="width: 100%;"
value-format="yyyy-MM-dd"></el-date-picker>
</el-form-item>
<el-form-item class="newTask-form-item">
<el-button @click="resetForm('ruleForm')"></el-button>
<el-button type="primary" @click="submitForm('ruleForm')"></el-button>
</el-form-item>
</el-form>
</el-col>
<el-col :span="6"></el-col>
</el-row>
</my-dialog>
<div class="newTask-liebiao">
<my-dialog title="单位列表" ref="liebiaoDialog" class="taskDialogBox" width="80%">
<danweiList ref="danweiList" @adddanweilist="adddanweilist" @liebiaoClose="liebiaoClose"></danweiList>
</my-dialog>
</div>
</div>
</template>
<script>
import myPagination from "@/views/components/Pagination/index.vue"
// import myDialog from "@/views/components/myDialog/index.vue"
import myDialog from "@/views/components/myDialog/index.vue"
import danweiList from "@/views/system/user/danweiList.vue"
import { addassetTaskadd, getassetTask, getassetTaskid } from "@/api/renwuApi/index.js"
export default {
// dicts: ['jjh_project_type', 'bms_approval_status', "project_middle_type", "project_small_type", "project_categories"],
components:{myPagination},
components: { myPagination, myDialog, danweiList },
data() {
return {
formInline:{
name:"",
type:"",
time:[],
number:"",
status:"",
formInline: {
name: "",
type: "",
time: [],
number: "",
status: "",
},
total:0,
pagination:{
current:1,
size:10,
total: 0,
pagination: {
current: 1,
size: 10,
},
tableData:[
{
number:20230001,
name:"XXX任务",
type:"2023-07-30 16:30:21",
unit:"2023-07-30",
status:0,
},{
number:20230001,
name:"XXX任务",
type:"2023-07-30 16:30:21",
unit:"2023-07-30",
status:1,
},{
number:20230001,
name:"XXX任务",
type:"2023-07-30 16:30:21",
unit:"2023-07-30",
status:2,
}
tableData: [
],
loading:false,
loading: false,
tabHeader: undefined,
ruleForm: {
taskName: "",
dwmc: [],
taskDeadline: "",
},
rules: {
taskName: [
{ required: true, message: '请输入', trigger: 'blur' },
],
dwmc: [
{ required: true, message: '请选择', trigger: 'change' }
],
taskDeadline: [
{ required: true, message: '请选择日期', trigger: 'change' }
],
},
tabclicklist: []
}
},
mounted(){
mounted() {
this.getInfo();
this.cancalDebounce();
window.addEventListener('resize', this.cancalDebounce);
@ -150,94 +207,161 @@ export default {
destroyed() {
window.removeEventListener('resize', this.cancalDebounce);
},
methods:{
methods: {
//
resetForm() {
this.ruleForm = {
dwmc: [],
taskName: "",
taskDeadline: "",
}
this.$refs.taskDialog.close()
this.tabclicklist = []
},
submitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
this.ruleForm.dwmc = this.ruleForm.dwmc.join(",")
addassetTaskadd(this.ruleForm).then(res => {
this.resetForm()
this.getInfo();
})
setTimeout(() => {
this.ruleForm.dwmc = this.ruleForm.dwmc.split(",")
}, 0);
} else {
console.log('error submit!!');
return false;
}
});
},
adddanweilist(val) {
if (val) {
let list = val
this.ruleForm.dwmc = []
list.forEach(element => {
this.ruleForm.dwmc.push(element.nickName)
});
} else {
this.ruleForm.dwmc = []
}
this.tabclicklist = val
},
//
getInfo(){
// this.loading = true;
// jProject(this.pagination).then(res=>{
// this.loading = false;
// this.total = res.data.total;
// this.tableData = res.data.records;
// })
getInfo() {
this.loading = true;
getassetTask(this.pagination).then(res => {
this.loading = false;
this.total = res.data.total;
this.tableData = res.data.records;
})
},
//
resetQuery(){
resetQuery() {
this.formInline = {
name:"",
type:"",
time:[],
number:"",
status:"",
name: "",
type: "",
time: [],
number: "",
status: "",
}
this.pagination = {
current: 1,
size: 10,
}
this.getList();
this.getInfo();
},
//
addliebiao() {
this.$refs.liebiaoDialog.open()
if (this.tabclicklist) {
setTimeout(() => {
this.$refs.danweiList.dakai(this.tabclicklist)
}, 100);
}
},
liebiaoClose() {
this.$refs.liebiaoDialog.close()
},
//
handleQuery(){
handleQuery() {
this.pagination = {
current: 1,
size: 10
}
if(this.formInline.time.length > 0) {
this.formInline.startTime = this.formInline.time[0]
if (this.formInline.time.length > 0) {
this.formInline.begainTime = this.formInline.time[0]
this.formInline.endTime = this.formInline.time[1]
}
this.pagination = { ...this.pagination,...this.formInline };
this.getList();
this.pagination = { ...this.pagination, ...this.formInline };
this.getInfo();
},
//
getPagination(pages){
getPagination(pages) {
this.pagination.current = pages.page;
this.pagination.size = pages.limit;
this.getList();
this.getInfo();
},
//
handleImport(){},
handleImport() { },
//
handleExport(){},
//
handleAdd(){
handleExport() { },
//
handleAdd() {
this.$refs.taskDialog.open()
},
//
importClose() {
},
//
goInfo(row,id){
if(id == 1) {
this.$router.push({name: 'mytaskAudit',query: {
pageType: "inspect",
}})
} else if(id == 2) {
this.$router.push({name: 'mytaskAudit',query: {
pageType: "inspect",
}})
} else if(id == 3) {
this.$router.push({name: 'mytaskInfo',query: {
goInfo(row) {
getassetTaskid(row.id)
this.$router.push({
name: 'TaskInfo', query: {
pageType: "look",
id:row.id
}
})
},
delInfo() {
this.$router.push({
name: 'taskAudit', query: {
pageType: "info",
}})
}
}
})
},
//
edit(){
edit() {
},
//
// table
tableRowClassName({row, rowIndex}){
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 !== 0) {
return 'evenNumber-row';
}
return '';
},
//
cancalDebounce(){
cancalDebounce() {
const element = document.getElementById('L-size-main'); // ID
const header = document.getElementById('L-header'); // ID
const pagination = document.getElementById('L-pagination'); // ID
const elementHeight = element.offsetHeight;
const headerHeight = header.offsetHeight;
const paginationtHeight = pagination.offsetHeight;
this.tabHeader = elementHeight - headerHeight - paginationtHeight - 100;
this.tabHeader = elementHeight - headerHeight - paginationtHeight - 110;
}
},
}
</script>
<style lang="scss" scoped>
.el-icon-s-unfold {
font-size: 16px;
}
</style>

Loading…
Cancel
Save