web/src/views/modules/sys/task/already-task.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
web/src/views/modules/sys/task/stay-task.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
web/src/views/modules/sys/task/taskCenter.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
web/src/views/modules/sys/task/already-task.vue
@@ -1,17 +1,18 @@ <template> <zt-table-wraper ref="tableObj" query-url="/task/taskCenter/pageDone" :paging="false" :lazy="true" v-slot="{ table }" paging-layout="total, prev, pager, next"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> <div> <!-- <zt-table-wraper ref="tableObj" query-url="/newPlan/taskCenter/pageDone" :paging="false" :lazy="true" v-slot="{ table }"--> <!-- paging-layout="total, prev, pager, next">--> <el-form :inline="true" :model="dataForm"> <el-input type="text" v-model="dataForm.djxlSystem" v-if="false" /> </el-form> <el-table ref="table" :height="getTransformHeight(transformHeight)" v-loading="table.dataLoading" :data="table.dataList" class="pushtable table-is__left-tz" v-loading="dataLoading" :data="dataList" style='margin-top:10px;transition: .5s;' @selection-change="table.selectionChangeHandle" border highlight-current-row> <el-table-column align="center" prop="index" width="60" label="序号"> <el-table-column align="center" prop="index" width="80" label="序号"> <template slot-scope="scope"> <span v-html="indexFormat(scope.$index)"></span> </template> @@ -26,7 +27,7 @@ <el-table-column align="center" prop="stepName" label="当前状态" width="240px"/> <el-table-column align="center" prop="receiveName" label="办理人" width="120px"/> <!-- <el-table-column align="center" prop="statusName" label="我的意见" />--> <zt-table-column-handle fixed="right" :table="table" :has-edit="false" :has-delete="false" :has-view="false" width="220px"> <el-table-column label="操作" width="220px"> <template v-slot="{ row }"> <zt-table-button v-show="row.canRecall == 1 && !$store.state.user.isAdmin" @click="reCall(row)">撤回</zt-table-button> <zt-table-button @click="check(row,'')" v-if="row.flowCode !== 'yearPlanFlow'">查看</zt-table-button> @@ -34,21 +35,36 @@ <zt-table-button @click="flowChart(row)">流程图</zt-table-button> <zt-table-button v-if="row.flowCode != 'yearPlan2'" @click="getFlowTrack(row)">办理轨迹</zt-table-button> </template> </zt-table-column-handle> </el-table-column> <infinite-loading spinner="bubbles" distance="200" slot="append" identifier="infiniteId" @infinite="infiniteHandler" ref="infiniteLoading" force-use-infinite-wrapper=".pushtable .el-table__body-wrapper"> <div slot="no-more" style="margin-top: 10px;margin-bottom: 10px;"><span v-if="dataListAll.length > pageSize">没有更多了</span></div> </infinite-loading> </el-table> <!-- 弹窗, 新增 / 修改 --> <!-- <el-dialog title="项目进度图" top="10vh" width='85%' :visible.sync="dialogVisible">--> <!-- <processTimeline ref="processTimeline"></processTimeline>--> <!-- </el-dialog>--> </zt-table-wraper> <!-- 已办任务弹窗 --> <ItemCirculatOrder ref="itemCirculatOrder" @refreshDataList="getQuery()"></ItemCirculatOrder> <!-- </zt-table-wraper>--> </div> </template> <script> // import processTimeline from '../../../../map/processTimeline' import Cookies from "js-cookie"; import InfiniteLoading from 'vue-infinite-loading' import ItemCirculatOrder from '@/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate' export default { data() { return { page: 1, pageSize: 30, dataLoading: false, dataList:[], dataListAll:[], dataForm: { djxlSystem:'' }, @@ -63,6 +79,8 @@ } }, components: { InfiniteLoading, ItemCirculatOrder }, watch:{ }, @@ -78,10 +96,55 @@ this.dataForm.djxlSystem = Cookies.get('djxlSystem') this.getQuery() this.$EventBus.$on('newProject',()=>{ this.$refs.tableObj.query() // this.$refs.tableObj.query() this.getQuery() }) }, methods: { async infiniteHandler($state) { console.log('in infiniteHandler--------') if ((this.page * this.pageSize) < this.dataListAll.length) { this.page++ // let begin = (this.page - 1) * this.pageSize let end = this.page * this.pageSize if (end > this.dataListAll.length) { end = this.dataListAll.length } this.dataList = this.dataListAll.slice(0, end) console.log(this.dataList.length, 'infiniteHandler:this.dataList.length') console.log(this.page, 'infiniteHandler:this.page') setTimeout(() => { $state.loaded() }, 100) } else { $state.loaded() console.log("$state.complete()", this.page) this.page = 1; $state.complete() console.log(this.page, 'infiniteHandler:this.page') } }, handleInfiniteLoadingBeforeGet() { this.page = 1; this.dataListAll = [] this.dataList = [] }, handleInfiniteLoadingAfterGet(res) { this.dataListAll = res.data console.log(this.dataListAll.length, 'handleInfiniteLoadingAfterGet:this.dataListAll.length') // let begin = (this.page - 1) * this.pageSize let end = this.page * this.pageSize if (end > this.dataListAll.length) { end = this.dataListAll.length } this.dataList = this.dataListAll.slice(0, end) console.log(this.dataList.length, 'handleInfiniteLoadingAfterGet:this.dataList.length') console.log(this.page, 'handleInfiniteLoadingAfterGet:this.page') this.$nextTick(() => { this.$refs.infiniteLoading.$emit('$InfiniteLoading:reset'); }); }, getTransformHeight(transformHeight){ let Height=document.documentElement.clientHeight if(transformHeight){ @@ -90,15 +153,29 @@ return Height-650 } }, getQuery(){ this.$refs.tableObj.query() this.$emit('getQuery') async getQuery(){ this.handleInfiniteLoadingBeforeGet() this.dataLoading = true let params = { djxlSystem: this.dataForm.djxlSystem, } let res = await this.$http.get(`/task/taskCenter/pageDone`,{ params: params }) if (res.success) { this.dataLoading = false this.handleInfiniteLoadingAfterGet(res) console.log(this.dataList, 'getQuery:this.dataList') } else { this.dataLoading = true } }, async reCall(row) { if (await this.$tip.confirm('确定要进行撤回吗?')) { this.$http.get(`/wf/reCallFlow`, {params: row}).then(res => { if (res.data == 'OK') { this.$refs.tableObj.query(); // this.$refs.tableObj.query(); this.getQuery() } else { this.$tip.alert(res.data) @@ -107,42 +184,11 @@ } }, check(row) { // if(row.stepMarker === 'jsfa_sc' || row.stepMarker === 'jsfa_sp'){ // this.$refs.repairSkillScheme.$refs.dialog.init(row) // } // else if (row.title === '年度修理计划') { this.$refs.annualRepairPlanAdd.$refs.dialog2.init(row,'readOnly') } else if (row.flowCode === 'NewProjectFlow') { let id = row.bizId this.$refs.projectUpdate.$refs.dialog.init(id, 'view') } else if (row.flowCode==='monthPlanFlow'){ this.$refs.monthlyPlan.$refs.dialog.init('yb', row) } else if (row.flowCode==='weekPlanFlow'){ this.$refs.weeklyPlan.$refs.dialog.init('yb', row) } else if (row.flowCode==='rjhFlow') { this.$refs.dailyPlan.$refs.dialog.init('yb', row) } else if (row.flowCode==='wlt3Flow'){ this.$refs.networkdiagram3.$refs.dialog.init('yb', row) } else if (row.flowCode==='cjjdrwFlow'){ this.$refs.partsInspectionHandle.$refs.dialog.init(row,'yb') } else if (row.flowCode==='zjbyFlow' || row.flowCode==='jjbyFlow'){ this.$refs.inspectionCheckHandle.$refs.dialog.init(row,'yb') } else if (row.flowCode==='jzjysFlow'){ this.$refs.inspectionCheckZcHandle.$refs.dialog.init(row,'yb') } else if (row.flowCode==='jjysFlow'){ this.$refs.inspectionCheckDbsHandle.$refs.dialog.init(row,'yb') } else if (row.flowCode==='cjjdFlow'){ this.$refs.partsInspectionJdHandle.$refs.dialog.init(row,'yb') console.log(row, "task row"); if (row.flowCode === 'wplz') { this.$refs.itemCirculatOrder.$refs.dialog.init(row) } else if (row.flowCode === 'aaa') { //this.$refs.itemCirculatOrder.$refs.dialog.init(row) } else { if (row.stepReadRouterId === null){ @@ -191,9 +237,10 @@ } }, indexFormat(index) { let page = this.$refs.tableObj.page let limit = this.$refs.tableObj.limit let indexs = limit * (page - 1) + index + 1 // let page = this.page // let limit = this.pageSize // let indexs = limit * (page - 1) + index + 1 let indexs = index + 1 return '<span>' + indexs + '</span>' }, }, web/src/views/modules/sys/task/stay-task.vue
@@ -1,15 +1,16 @@ <template> <zt-table-wraper ref="tableObj" query-url="/task/taskCenter/page" :paging="false" :lazy="true" v-slot="{ table }" paging-layout="total, prev, pager, next"> <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()"> <div> <!-- <zt-table-wraper ref="tableObj" query-url="/newPlan/taskCenter/page" :paging="false" :lazy="true" v-slot="{ table }" paging-layout="total, prev, pager, next">--> <el-form :inline="true" :model="dataForm" @keyup.enter.native="getQuery()"> <el-input type="text" v-model="dataForm.djxlSystem" v-if="false" /> </el-form> <el-table ref="table" :height="getTransformHeight(transformHeight)" v-loading="table.dataLoading" :data="table.dataList" v-loading="dataLoading" :data="dataList" style='margin-top:10px;transition: .5s;' @selection-change="table.selectionChangeHandle" class="alreadyTaskPushTable table-is__left-tz" border highlight-current-row> <el-table-column prop="index" width="60" label="序号" align="center"> <template slot-scope="scope"> @@ -34,21 +35,36 @@ <zt-table-button v-if="row.flowCode === 'yearPlan2'" @click="getFlowTrack (row)">流程轨迹</zt-table-button> </template> </zt-table-column-handle> <infinite-loading spinner="bubbles" distance="200" slot="append" identifier="infiniteId" @infinite="infiniteHandler" ref="infiniteLoading" force-use-infinite-wrapper=".alreadyTaskPushTable .el-table__body-wrapper"> <div slot="no-more" style="margin-top: 10px;margin-bottom: 10px;"><span v-if="dataListAll.length > pageSize">没有更多了</span></div> </infinite-loading> </el-table> <!-- <el-dialog title="项目进度图" top="10vh" width='85%' :visible.sync="dialogVisible">--> <!-- <processTimeline ref="processTimeline"></processTimeline>--> <!-- </el-dialog>--> <!-- 弹窗, 新增 / 修改 --> </zt-table-wraper> <!-- 待办任务弹窗弹窗, 新增 / 修改 --> <ItemCirculatOrder ref="itemCirculatOrder" @refreshDataList="getQuery()"></ItemCirculatOrder> <!-- </zt-table-wraper>--> </div> </template> <script> // import processTimeline from '../../../../map/processTimeline' import Cookies from "js-cookie"; import InfiniteLoading from 'vue-infinite-loading' import ItemCirculatOrder from '@/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate' export default { data() { return { page: 1, pageSize: 30, dataLoading: false, dataList:[], dataListAll:[], dataForm: { djxlSystem:'' }, @@ -66,6 +82,11 @@ } }, watch: { '$route.params.projectId'() { //this.dataForm.projectId = this.$route.params.projectId // this.getIsExistConstructionInfo() this.getQuery() }, 'tableBottomOffset'(){ console.log(this.tableBottomOffset,'tableBottomOffset') } @@ -74,6 +95,8 @@ }, components: { InfiniteLoading, ItemCirculatOrder }, created() { if (this.$route.path.indexOf('taskCenter')>0 || this.system=='smj'){ @@ -87,12 +110,72 @@ this.dataForm.projectId = this.$route.params.projectId } this.dataForm.djxlSystem = Cookies.get('djxlSystem') this.$refs.tableObj.query() this.getQuery() this.$EventBus.$on('newProject',()=>{ this.$refs.tableObj.query() this.getQuery() }) }, methods: { async infiniteHandler($state) { console.log('in infiniteHandler--------') if ((this.page * this.pageSize) < this.dataListAll.length) { this.page++ // let begin = (this.page - 1) * this.pageSize let end = this.page * this.pageSize if (end > this.dataListAll.length) { end = this.dataListAll.length } this.dataList = this.dataListAll.slice(0, end) console.log(this.dataList.length, 'infiniteHandler:this.dataList.length') console.log(this.page, 'infiniteHandler:this.page') setTimeout(() => { $state.loaded() }, 100) } else { $state.loaded() console.log("$state.complete()", this.page) this.page = 1; $state.complete() console.log(this.page, 'infiniteHandler:this.page') } }, handleInfiniteLoadingBeforeGet() { this.page = 1; this.dataListAll = [] this.dataList = [] }, handleInfiniteLoadingAfterGet(res) { this.dataListAll = res.data console.log(this.dataListAll.length, 'handleInfiniteLoadingAfterGet:this.dataListAll.length') // let begin = (this.page - 1) * this.pageSize let end = this.page * this.pageSize if (end > this.dataListAll.length) { end = this.dataListAll.length } this.dataList = this.dataListAll.slice(0, end) console.log(this.dataList.length, 'handleInfiniteLoadingAfterGet:this.dataList.length') console.log(this.page, 'handleInfiniteLoadingAfterGet:this.page') this.$nextTick(() => { this.$refs.infiniteLoading.$emit('$InfiniteLoading:reset'); }); }, async getQuery(){ this.handleInfiniteLoadingBeforeGet() this.dataLoading = true let params = { djxlSystem: this.dataForm.djxlSystem, } let res = await this.$http.get(`/task/taskCenter/page`,{ params: params }) if (res.success) { this.dataLoading = false this.handleInfiniteLoadingAfterGet(res) console.log(this.dataList, 'getQuery:this.dataList') } else { this.dataLoading = true } }, getTransformHeight(transformHeight){ let Height=document.documentElement.clientHeight if(transformHeight){ @@ -108,13 +191,9 @@ } }, getStayTask() { this.$refs.tableObj.query() this.getQuery() }, flowChart(row) { // this.dialogVisible = true // this.$nextTick(() => { // this.$refs.processTimeline.init(row) // }) this.$emit('fatherMethod',row) }, async getFlowTrack(row){ @@ -129,82 +208,11 @@ }, async createTask(row) { console.log(row, "task row"); /* if (row.stepMarker === 'sgmx_xf') { let res = await this.$http.get(`/sy/maintain/constructionInfo/getListByProjectId?projectId=${row.bizId}`) console.log(res.data,'this.existConstructionInfo') if(res.data) { this.existConstructionInfo = true if (row.flowCode === 'wplz') { this.$refs.itemCirculatOrder.$refs.dialog.init(row) } else if (row.flowCode === 'aaa') { //this.$refs.itemCirculatOrder.$refs.dialog.init(row) } }*/ if (row.stepMarker === 'jsfa_sc' || row.stepMarker === 'jsfa_sp') { this.$refs.repairSkillScheme.$refs.dialog.init(row) } else if (row.stepMarker=='tdjj_tysq'||row.stepMarker == 'tdjj_ywzsh' || row.stepMarker == 'tdjj_tzsp' || row.stepMarker == 'tdjj_zlsh' || row.stepMarker == 'tdjj_czsp' || row.stepMarker == 'tdjj_xtzjs') { this.$refs.shipTeamConnectAddOrUpdate.$refs.dialog.init(row) } else if (row.stepId === '80') { this.$refs.annualRepairPlanAdd.$refs.dialog.init(row) } else if (row.stepId === '90') { this.$refs.annualRepairPlanAdd.$refs.dialog.init(row) } else if (row.stepMarker=='smjkw_xg' || row.stepMarker=='smjkw_zlsh' || row.stepMarker=='smjkw_ztssh') { this.$refs.lifeKwFlowSh.$refs.dialog.init(row,'smjkwFlow') }else if (row.stepMarker === 'newProject_tz') { this.$refs.newProject.$refs.dialog.init(row) } else if(row.stepMarker==='jgxy_sc'){ this.$refs.contractSupervision.$refs.dialog.init(row) } else if(row.stepMarker==='zbdg_sc'){ this.$refs.warrantyOutline.$refs.dialog.init(row) } else if(row.stepMarker==='gcky_jh'){ this.$refs.engineeringSurveyKyjh.$refs.dialog.init(row) } else if (row.flowCode==='monthPlanFlow'){ this.$refs.monthlyPlan.$refs.dialog.init('db', row) } else if (row.flowCode==='weekPlanFlow'){ this.$refs.weeklyPlan.$refs.dialog.init('db', row) } else if (row.flowCode==='rjhFlow'){ if (row.stepMarker==='rjh_cy') { this.$refs.dailyPlanReadonly.$refs.dialog.init('db', row) } else { this.$refs.dailyPlan.$refs.dialog.init('db', row) } } else if (row.flowCode==='wlt3Flow'){ this.$refs.networkdiagram3.$refs.dialog.init('db', row) } else if (row.stepMarker==='zjgc_tzxf'){ this.$refs.addProjectApplyDescription.$refs.dialog.init(row.bizId,'db') } else if (row.stepMarker==='cjjdbb_by'){ this.$refs.partsInspectionByHandle.$refs.dialog.init(row,'db') } else if (row.flowCode==='cjjdrwFlow'){ this.$refs.partsInspectionHandle.$refs.dialog.init(row,'db') } else if (row.stepMarker==='jyys_by' || row.stepMarker==='jjby_by'){ this.$refs.inspectionCheckByHandle.$refs.dialog.init(row,'db') } else if (row.flowCode==='zjbyFlow' || row.flowCode==='jjbyFlow'){ this.$refs.inspectionCheckHandle.$refs.dialog.init(row,'db') } else if (row.stepMarker==='jzjys_by'){ this.$refs.inspectionCheckZcHandle.$refs.dialog.init(row,'db') } else if (row.stepMarker==='jzjys_hz'){ this.$refs.inspectionCheckZcHandle.$refs.dialog.init(row,'db') } else if (row.stepMarker==='jjys_by'){ this.$refs.inspectionCheckDbsHandle.$refs.dialog.init(row,'db') } else if (row.stepMarker==='jjys_dbs'){ this.$refs.inspectionCheckDbsHandle.$refs.dialog.init(row,'db') } else if (row.flowCode==='cjjdFlow'){ this.$refs.partsInspectionJdHandle.$refs.dialog.init(row,'db') } else { if (row.stepRouterId === null) { this.$tip.alert("没有配置菜单id") @@ -235,20 +243,8 @@ }) } }, async getIsExistConstructionInfo(bizId) { if (bizId) { let res = await this.$http.get(`/sy/maintain/constructionInfo/getListByProjectId?projectId=${bizId}`) console.log(res.data,'this.existConstructionInfo') if(res.data) { this.existConstructionInfo = true alert('555') } } }, indexFormat(index) { let page = this.$refs.tableObj.page let limit = this.$refs.tableObj.limit let indexs = limit * (page - 1) + index + 1 let indexs = index + 1 return '<span>' + indexs + '</span>' }, }, web/src/views/modules/sys/task/taskCenter.vue
@@ -43,25 +43,18 @@ this.$refs.processTimeline.init(row) }) }, // getDiagram2(row){ // console.log(row,'getDiagram processTimeline') // this.dialogVisible = true // this.$nextTick(() => { // this.$refs.processTimeline.init(row) // }) // }, async tabClick(tab, event) { if (tab.index === '1') { let res = await this.$http.get('/task/taskCenter/pageDone') let res = await this.$http.get('/newPlan/taskCenter/pageDone') this.$refs.alreadyTask.getQuery() } if (tab.index === '0') { let res = await this.$http.get('/task/taskCenter/page') let res = await this.$http.get('/newPlan/taskCenter/page') this.$refs.stayTask.getStayTask() } }, async oneKeyDoneCy() { let res = await this.$http['put'](`/task/taskCenter/oneKeyDoneCy`) let res = await this.$http['put'](`/newPlan/taskCenter/oneKeyDoneCy`) if (res.success) { await this.$tip.success() this.$refs.stayTask.getStayTask()