From d0bec404f2c22ca04e8592f1a2ba0b39eab0be2f Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期一, 22 五月 2023 09:37:03 +0800 Subject: [PATCH] Default Changelist --- src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue | 142 ++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 115 insertions(+), 27 deletions(-) diff --git a/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue b/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue index 9dc80c7..5feb9f9 100644 --- a/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue +++ b/src/views/intellectInspect/inspectTaskManage/inspectTask/index.vue @@ -1,12 +1,19 @@ <template> <div class="home-container"> - <div style="height: 100%"> + <div style="height: 100%;display: flex;flex-direction: column;align-items: stretch;"> <el-row class="homeCard"> <div class="basic-line"> <span>任务类型:</span> <el-select v-model="tableData.params.workType" clearable filterable class="input-box" placeholder="任务类型"> <el-option v-for="item in workTypeList" :key="item.id" :label="item.name" :value="item.id"></el-option> </el-select> + </div> + <div class="basic-line"> + <span>部门:</span> + <el-cascader class="input-box" :options="departmentList" :props="{ emitPath: false, checkStrictly: true, value: 'depId', label: 'depName' }" + placeholder="请选择部门" clearable v-model="tableData.params.execDepId" + @change="changeGroup" + > </el-cascader> </div> <div class="basic-line"> <span>执行班组:</span> @@ -23,7 +30,7 @@ <div class="main-card"> <el-row class="cardTop"> <el-col :span="12" class="mainCardBtn"> - <el-button type="primary" :icon="Plus" size="default" @click="openInspectTaskDialog('新增', {})">新建</el-button> + <el-button type="primary" :icon="Plus" size="default" @click="openInspectTaskDialog('新增', {})">新增</el-button> <!-- <el-button type="danger" :icon="Delete" size="default" plain>删除</el-button>--> </el-col> <el-button type="primary" :icon="Refresh" size="default" /> @@ -80,12 +87,27 @@ <el-table-column prop="gmtCreate" label="创建时间" show-overflow-tooltip></el-table-column> <el-table-column prop="lastEditUserName" label="最后修改人" show-overflow-tooltip></el-table-column> <el-table-column prop="gmtModitify" label="最后修改时间" show-overflow-tooltip></el-table-column> - <el-table-column property="status" label="状态" width="60" /> + <el-table-column property="taskUnitStatus" label="状态" width="60"> + <template #default="scope"> + <div> + <div v-if="scope.row.taskUnitStatus === 1"> + <el-tag :type="''"> + {{ '开启' }} + </el-tag> + </div> + <div v-if="scope.row.taskUnitStatus === 2"> + <el-tag :type="'danger'"> + {{ '关闭' }} + </el-tag> + </div> + </div> + </template> + </el-table-column> <el-table-column fixed="right" label="操作" align="center" width="300"> <template #default="scope"> <el-button link type="primary" size="small" :icon="View" @click="openInspectTaskDialog('查看', scope.row)">查看</el-button> <el-button link type="primary" size="small" :icon="Edit" @click="openInspectTaskDialog('修改', scope.row)">修改</el-button> - <el-button link type="danger" size="small" :icon="Delete" @click="deleteInspectTask(scope.$index)">删除</el-button> + <el-button link type="danger" size="small" :icon="Delete" v-if="scope.row.taskUnitStatus === 2" @click="deleteInspectTask(scope.row)">删除</el-button> <div @click="changeStatus(scope.row)"> <el-switch v-model="scope.row.taskUnitStatus" inline-prompt active-text="开" inactive-text="关" :active-value="1" :inactive-value="2" style="margin: 0 10px" /> </div> @@ -128,6 +150,7 @@ params: { pageIndex: number | null; pageSize: number | null; + execDepId: number | null; unitName: string | null; workType: number | null; createUserId: number | null; @@ -167,6 +190,7 @@ pageIndex: 1, pageSize: 10, unitName: null, + execDepId: null, workType: null, createUserId: null, execClassgroupId: null, @@ -175,8 +199,8 @@ } }, workTypeList: [ - { id: 1, name: '日常任务' }, - { id: 2, name: '周期任务' } + { id: 1, name: '周期任务' }, + { id: 2, name: '单次任务' } ], quotaList: [], departmentList: [], @@ -190,7 +214,7 @@ { id: 3, name: '日' }, { id: 4, name: '月' }, { id: 5, name: '年' } - ] + ], }); //获取巡检任务数据 @@ -221,17 +245,29 @@ }; //获取部门 - const getQuotaList = async () => { - let res = await inspectTaskApi().getQuotaList(); - if (res.data.code === '200') { - state.quotaList = res.data.data; - } else { - ElMessage({ - type: 'warning', - message: res.data.msg - }); - } - }; + // const getQuotaList = async () => { + // let res = await inspectTaskApi().getQuotaList(); + // if (res.data.code === '200') { + // state.quotaList = res.data.data; + // } else { + // ElMessage({ + // type: 'warning', + // message: res.data.msg + // }); + // } + // }; + //获取部门 + const getQuotaList = async () => { + let res = await inspectTaskApi().getAllQuotaList(); + if (res.data.code === '200') { + state.quotaList = res.data.data; + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); + } + }; //获取巡检点 const getInspectTaskPoint = async () => { @@ -285,6 +321,19 @@ } }; + const changeGroup = async () => { + if(state.tableData.params.execDepId === null) { + state.classGroupList = [] + }else{ + let res = await departmentApi().getByDepId({depId:state.tableData.params.execDepId}) + if(res.data.code === '200'){ + state.classGroupList = res.data.data + }else{ + + } + } + }; + const changeStatus = async (value: { taskUnitStatus: number; id: number }) => { if (value.taskUnitStatus === 2) { ElMessageBox.confirm(`此操作将关闭该巡检任务”,是否继续?`, '提示', { @@ -295,6 +344,7 @@ .then(async () => { let res = await inspectTaskApi().openOrCloseInspectTask({ id: value.id, taskUnitStatus: 2 }); if (res.data.code === '200') { + await getInspectionTask(); ElMessage({ type: 'success', duration: 2000, @@ -307,9 +357,7 @@ }); } }) - .catch((error) => { - debugger; - }); + .catch((error) => {}); } else { ElMessageBox.confirm(`此操作将开启该巡检任务”,是否继续?`, '提示', { confirmButtonText: '确认', @@ -319,6 +367,7 @@ .then(async () => { let res = await inspectTaskApi().openOrCloseInspectTask({ id: value.id, taskUnitStatus: 1 }); if (res.data.code === '200') { + await getInspectionTask(); ElMessage({ type: 'success', duration: 2000, @@ -334,6 +383,32 @@ .catch((error) => {}); } await getInspectionTask(); + }; + + // 删除 + const deleteInspectTask = (row: any) => { + ElMessageBox.confirm(`此操作将永久删除该任务:“${row.unitName}”,是否继续?`, '提示', { + confirmButtonText: '确认', + cancelButtonText: '取消', + type: 'warning' + }) + .then(async () => { + let res = await inspectTaskApi().deleteInspectTask({ id: row.id }); + if (res.data.code === '200') { + ElMessage({ + type: 'success', + duration: 2000, + message: '删除成功' + }); + await getInspectionTask(); + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); + } + }) + .catch(() => {}); }; const openInspectTaskDialog = (type: string, value: {}) => { @@ -366,6 +441,7 @@ pageIndex: 1, pageSize: 10, unitName: null, + execDepId: null, workType: null, createUserId: null, execClassgroupId: null, @@ -393,7 +469,9 @@ Plus, reset, changeStatus, + changeGroup, parseNumber, + deleteInspectTask, getInspectionTask, onHandleSizeChange, onHandleCurrentChange, @@ -408,15 +486,17 @@ <style scoped lang="scss"> $homeNavLengh: 8; .home-container { - height: calc(100vh - 114px); + height: calc(100vh - 144px); box-sizing: border-box; overflow: hidden; + position: relative; .homeCard { width: 100%; padding: 20px; box-sizing: border-box; background: #fff; border-radius: 4px; + flex: 0 auto; .main-card { width: 100%; @@ -431,10 +511,18 @@ } } .pageBtn { - height: 60px; - display: flex; - align-items: center; - justify-content: right; + position: absolute; + width: 100%; + z-index: 99; + bottom: 0; + right: 0; + height: 60px; + border-radius: 0 0 4px 4px; + padding-right: 20px; + background: #fff; + display: flex; + align-items: center; + justify-content: right; .demo-pagination-block + .demo-pagination-block { margin-top: 10px; @@ -445,7 +533,7 @@ } } &:last-of-type { - height: calc(100% - 100px); + flex: 1; } } .el-row { -- Gitblit v1.9.2