|
@@ -61,11 +61,16 @@
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="hsytem" label="所属系统" align="center">
|
|
|
</el-table-column>
|
|
|
- <el-table-column prop="createTime" label="创建时间" width="130" align="center">
|
|
|
+ <el-table-column prop="createTime" label="创建时间" width="130" align="center" v-if="false">
|
|
|
<template slot-scope="scope">
|
|
|
<span>{{ parseTime(scope.row.createTime) }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
+ <el-table-column prop="status1" label="当前实施状态" width="120" align="center">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <span style="color: green">{{scope.row.act.taskName}}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
<el-table-column prop="status" label="状态" width="80" align="center">
|
|
|
<template slot-scope="scope">
|
|
|
<div v-if="scope.row.status===0" style="color: green">待开始</div>
|
|
@@ -82,7 +87,8 @@
|
|
|
</el-button>
|
|
|
<el-button size="mini" v-if="scope.row.status===0" type="danger" @click="deleteEnforce(scope.row)">删除
|
|
|
</el-button>
|
|
|
- <el-button size="mini" type="success" @click="openEnforceManageDialog(scope.row)">查看详情</el-button>
|
|
|
+ <el-button size="mini" v-if="scope.row.status!==0 && scope.row.act.id!==undefined" type="primary" @click="enforceFlowDealWin(scope.row)">流程处理</el-button>
|
|
|
+ <el-button size="mini" type="success" v-if="scope.row.status!==0" @click="openEnforceManageDialog(scope.row)">查看详情</el-button>
|
|
|
<el-button size="mini" v-show="false" v-if="scope.row.status!==0" type="primary"
|
|
|
@click="getEnforceDetail(scope.row)">
|
|
|
查看实施详情
|
|
@@ -232,8 +238,7 @@
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
|
|
|
- <el-dialog title="实施详情" :visible.sync="enforceFlowVisble" width="85%" @click="enforceFlowDialog"
|
|
|
- :close-on-click-modal="false">
|
|
|
+ <el-dialog title="实施详情" :visible.sync="enforceFlowVisble" width="85%" @click="enforceFlowDialog" :close-on-click-modal="false">
|
|
|
<el-table
|
|
|
border
|
|
|
:data="enforceTableData"
|
|
@@ -362,9 +367,7 @@
|
|
|
<template slot="label">
|
|
|
当前负责人
|
|
|
</template>
|
|
|
- <el-input size="small" v-model="enforceForm.director" :disabled="true"
|
|
|
- @keyup.enter.native="openUsers()">
|
|
|
- <el-button @click="openUsers" icon="el-icon-search" slot="append"></el-button>
|
|
|
+ <el-input size="small" v-model="enforceForm.director" :disabled="true">
|
|
|
</el-input>
|
|
|
</el-descriptions-item>
|
|
|
<el-descriptions-item :span="2">
|
|
@@ -490,8 +493,6 @@
|
|
|
v-model="editEnforceRecord.enforceTime"
|
|
|
type="date"
|
|
|
size="mini"
|
|
|
- value-format="yyyy-MM-dd"
|
|
|
- format="yyyy-MM-dd"
|
|
|
placeholder="选择日期" style="width: 350px">
|
|
|
</el-date-picker>
|
|
|
</el-form-item>
|
|
@@ -505,6 +506,104 @@
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
|
|
|
+ <!--处理实施工作任务--->
|
|
|
+ <el-dialog title="审批处理" :visible.sync="editEnforceFormVisible1" width="75%" :close-on-click-modal="false">
|
|
|
+ <el-form label-width="120px" :model="enforceForm" size="mini">
|
|
|
+ <el-descriptions title="" :column="2" border size="mini">
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template slot="label">
|
|
|
+ 项目名称
|
|
|
+ </template>
|
|
|
+ {{ enforceFlow.name }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template slot="label">
|
|
|
+ 项目总负责人
|
|
|
+ </template>
|
|
|
+ {{ enforceFlow.enforcer }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template slot="label">
|
|
|
+ 实施医院
|
|
|
+ </template>
|
|
|
+ {{ enforceFlow.hno }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template slot="label">
|
|
|
+ 实施系统
|
|
|
+ </template>
|
|
|
+ {{ enforceFlow.hsytem }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template slot="label">
|
|
|
+ 实施时间
|
|
|
+ </template>
|
|
|
+ {{ enforceFlow.time }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item>
|
|
|
+ <template slot="label">
|
|
|
+ 实施状态
|
|
|
+ </template>
|
|
|
+ <span style="color: darkred" v-if="enforceFlow.status===0">待开始</span>
|
|
|
+ <span style="color: green" v-else-if="enforceFlow.status===1">进行中</span>
|
|
|
+ <span style="color: darkblue" v-else="enforceFlow.status===2">已结束</span>
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item :span="2">
|
|
|
+ <template slot="label">
|
|
|
+ 当前任务
|
|
|
+ </template>
|
|
|
+ {{ enforceFlow.flowType }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item :span="2">
|
|
|
+ <template slot="label">
|
|
|
+ 实施内容
|
|
|
+ </template>
|
|
|
+ {{ enforceFlow.content }}
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item :span="2">
|
|
|
+ <template slot="label">
|
|
|
+ 下个步骤负责人
|
|
|
+ </template>
|
|
|
+ <el-input size="small" v-model="enforceForm.director" :disabled="true" @keyup.enter.native="openUsers()">
|
|
|
+ <el-button @click="openUsers" icon="el-icon-search" slot="append"></el-button>
|
|
|
+ </el-input>
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item :span="2">
|
|
|
+ <template slot="label">
|
|
|
+ 备注说明
|
|
|
+ </template>
|
|
|
+ <el-input size="small" v-model="enforceForm.remark" type="textarea" :rows="4"></el-input>
|
|
|
+ </el-descriptions-item>
|
|
|
+
|
|
|
+ <el-descriptions-item :span="2">
|
|
|
+ <template slot="label">
|
|
|
+ 文件列表
|
|
|
+ </template>
|
|
|
+ <el-upload
|
|
|
+ ref="upload"
|
|
|
+ :action="fileAction"
|
|
|
+ :on-remove="handleRemove"
|
|
|
+ :on-success="handleSuccess"
|
|
|
+ :on-error="handleError"
|
|
|
+ name="file">
|
|
|
+ <el-button slot="trigger" size="mini" type="primary">选取文件</el-button>
|
|
|
+ </el-upload>
|
|
|
+ </el-descriptions-item>
|
|
|
+ <el-descriptions-item :span="2">
|
|
|
+ <template slot="label">
|
|
|
+ 其他说明
|
|
|
+ </template>
|
|
|
+ <div id="editorElem1" style="text-align:left" >
|
|
|
+ </div>
|
|
|
+ </el-descriptions-item>
|
|
|
+ </el-descriptions>
|
|
|
+ </el-form>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button size="mini" @click="closeEnforceDialog1">取消</el-button>
|
|
|
+ <el-button size="mini" type="primary" class="title" @click="submitEnforceForm1('editForm')">确定处理</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
+
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -513,6 +612,7 @@ import E from 'wangeditor';
|
|
|
|
|
|
let editor;
|
|
|
let editorEnforce;
|
|
|
+let editorElem1;
|
|
|
import Pagination from '@/components/Page/Pagination'
|
|
|
import {
|
|
|
getEnforcesByPage,
|
|
@@ -521,7 +621,11 @@ import {
|
|
|
addEnforce,
|
|
|
deleteEnforce,
|
|
|
startEnforceFlow,
|
|
|
- getEnforceFlowsByEnforceId, getEnforceFlowsByEnforceIdAndStep, getEnforceFlowFiles
|
|
|
+ getEnforceFlowsByEnforceId,
|
|
|
+ getEnforceFlowsByEnforceIdAndStep,
|
|
|
+ getEnforceFlowFiles,
|
|
|
+ getPersonalTaskList,
|
|
|
+ getPersonalTaskMap, completeTask
|
|
|
} from '@/api/meeting/enforce'
|
|
|
import {getDeptUserTree} from '@/api/system/user'
|
|
|
import {deleteEnforceRemindById, editEnforceRemind, getEnforceRemindList} from '@/api/meeting/enforceRemind'
|
|
@@ -543,7 +647,7 @@ export default {
|
|
|
enforceType: '',
|
|
|
enforceTime: null,
|
|
|
enforceId: null,
|
|
|
- remark: ''
|
|
|
+ remark: '',
|
|
|
},
|
|
|
enforceFileData: [],
|
|
|
addEnforceRecordWin: false,
|
|
@@ -585,7 +689,10 @@ export default {
|
|
|
director: null,
|
|
|
directorId: null,
|
|
|
remark: null,
|
|
|
- content: null
|
|
|
+ taskId: null,
|
|
|
+ currentStep: null,
|
|
|
+ filess: [],
|
|
|
+ content:null
|
|
|
},
|
|
|
enforceFlow: {
|
|
|
name: '',
|
|
@@ -632,7 +739,9 @@ export default {
|
|
|
elBadge10: true,
|
|
|
elBadge11: true,
|
|
|
elBadge12: true,
|
|
|
- }
|
|
|
+ },
|
|
|
+ editEnforceFormVisible1:false,
|
|
|
+ enforceFlowData:[]
|
|
|
}
|
|
|
},
|
|
|
// 注册组件
|
|
@@ -765,6 +874,25 @@ export default {
|
|
|
this.closeEnforceDialog();
|
|
|
this.resetSearch();
|
|
|
|
|
|
+ },
|
|
|
+ submitEnforceForm1() {
|
|
|
+ let data = this.enforceForm;
|
|
|
+ if (data.director === '' || data.remark === null || data.remark === '') {
|
|
|
+ this.$message({
|
|
|
+ message: '请将表单信息填写完整!',
|
|
|
+ type: 'warning'
|
|
|
+ });
|
|
|
+ return
|
|
|
+ }
|
|
|
+ completeTask(data).then(res => {
|
|
|
+ this.$message({
|
|
|
+ message: '操作成功!',
|
|
|
+ type: 'success'
|
|
|
+ });
|
|
|
+ this.editEnforceFormVisible1=false
|
|
|
+ this.resetSearch();
|
|
|
+ });
|
|
|
+
|
|
|
},
|
|
|
closeUserDialog() {
|
|
|
this.usersVisble = false
|
|
@@ -834,8 +962,14 @@ export default {
|
|
|
this.enforceManageVisble = true
|
|
|
this.enforceFlowId = row.id
|
|
|
this.enforceFlowTitle = row.name + "实施流程明细"
|
|
|
- this.on_click(1)
|
|
|
+ let step=row.act.step
|
|
|
+ if(step===undefined){
|
|
|
+ step=12
|
|
|
+ this.maxStep=12
|
|
|
+ }
|
|
|
this.enforceDetail = row
|
|
|
+ this.on_click(step)
|
|
|
+
|
|
|
},
|
|
|
createwangeditor() {
|
|
|
editor = new E('#editorElem');
|
|
@@ -852,7 +986,16 @@ export default {
|
|
|
editorEnforce.create()
|
|
|
editorEnforce.txt.html(this.editEnforceRecord.remark)
|
|
|
editorEnforce.config.onchange = (html) => {
|
|
|
- this.editEnforceRecord.remark = editor.txt.html()
|
|
|
+ this.editEnforceRecord.remark = editorEnforce.txt.html()
|
|
|
+ };
|
|
|
+ },
|
|
|
+ createeditorElem1Editor(){
|
|
|
+ editorElem1 = new E('#editorElem1');
|
|
|
+ editorElem1.config.height = 300
|
|
|
+ editorElem1.create()
|
|
|
+ editorElem1.txt.html(this.enforceForm.content)
|
|
|
+ editorElem1.config.onchange = (html) => {
|
|
|
+ this.enforceForm.content = editorElem1.txt.html()
|
|
|
};
|
|
|
},
|
|
|
handleRemove(file, fileList) {
|
|
@@ -888,6 +1031,10 @@ export default {
|
|
|
},
|
|
|
on_click(e) {
|
|
|
let dot = e;
|
|
|
+ //判断一下当前最大流程
|
|
|
+ let maxStep=this.maxStep;
|
|
|
+
|
|
|
+
|
|
|
switch (dot) {
|
|
|
case 1:
|
|
|
this.elBadgeForm.elBadge1 = false;
|
|
@@ -940,7 +1087,7 @@ export default {
|
|
|
}
|
|
|
|
|
|
if (e !== "" || e != null) {
|
|
|
- if (e !== 12 && e != 11) {
|
|
|
+ if (e !== 12 && e !== 11) {
|
|
|
let id = this.enforceFlowId
|
|
|
getEnforceFlowsByEnforceIdAndStep(id, e).then(res => {
|
|
|
console.log(JSON.stringify(res))
|
|
@@ -948,10 +1095,10 @@ export default {
|
|
|
this.enforceFlow = data.enforceFlow
|
|
|
if (data.dtos.length > 0) {
|
|
|
this.enforceFlow.fileDatas = data.dtos[0].fileDatas
|
|
|
+ this.uploadFileList=[]
|
|
|
for (let i = 0; i < data.dtos[0].fileDatas.length; i++) {
|
|
|
let file = data.dtos[0].fileDatas[i];
|
|
|
- this.uploadFileList.push(
|
|
|
- {
|
|
|
+ this.uploadFileList.push({
|
|
|
url: file.url,
|
|
|
name: file.fileName.substring(0, file.fileName.indexOf('<'))
|
|
|
}
|
|
@@ -977,6 +1124,7 @@ export default {
|
|
|
} else if (e === 12) {
|
|
|
this.getEnforceRemindList()
|
|
|
this.active = e
|
|
|
+
|
|
|
} else {
|
|
|
this.getEnforceFlowFileList();
|
|
|
this.active = e
|
|
@@ -1028,6 +1176,8 @@ export default {
|
|
|
},
|
|
|
addEnforceRecordClick() {
|
|
|
this.addEnforceRecordWin = true
|
|
|
+ this.editEnforceRecord.id=null
|
|
|
+ this.editEnforceRecord.remark=''
|
|
|
this.$nextTick(() => {
|
|
|
if (editorEnforce == null) {
|
|
|
this.createEnforceEditor()
|
|
@@ -1103,6 +1253,44 @@ export default {
|
|
|
return true
|
|
|
};
|
|
|
return data.name.indexOf(value) !== -1;
|
|
|
+ },
|
|
|
+ closeEnforceDialog1(){
|
|
|
+ this.editEnforceFormVisible1=false
|
|
|
+ },
|
|
|
+ getTaskList() {
|
|
|
+ getPersonalTaskList().then(res => {
|
|
|
+ console.log(res.data)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ enforceFlowDealWin(row){
|
|
|
+ this.enforceFlow.name = row.name
|
|
|
+ this.enforceFlow.enforcer = row.enforcer
|
|
|
+ this.enforceFlow.hno = row.hname
|
|
|
+ this.enforceFlow.hsytem = row.hsytem
|
|
|
+ this.enforceFlow.content = row.content
|
|
|
+ this.enforceFlow.time = row.beginTime + "至" + row.endTime
|
|
|
+ this.enforceFlow.status = row.status
|
|
|
+ this.enforceFlow.flowType = row.act.taskName
|
|
|
+ this.enforceForm.taskId = row.act.taskId
|
|
|
+ this.enforceForm.currentStep = row.act.step
|
|
|
+ this.enforceForm.enforceId = row.id
|
|
|
+ let userId=this.$store.getters.userId
|
|
|
+ let userName=this.$store.getters.name
|
|
|
+ this.enforceForm.director=userName
|
|
|
+ this.enforceForm.directorId=userId
|
|
|
+ this.enforceForm.remark=''
|
|
|
+ this.enforceForm.filess=[]
|
|
|
+ this.enforceForm.content=''
|
|
|
+
|
|
|
+ this.$nextTick(()=>{
|
|
|
+ if (editorElem1==null){
|
|
|
+ this.createeditorElem1Editor()
|
|
|
+ }else {
|
|
|
+ editorElem1.destroy();//这里做了一次判断,判断编辑器是否被创建,如果创建了就先销毁。
|
|
|
+ this.createeditorElem1Editor()
|
|
|
+ }
|
|
|
+ });
|
|
|
+ this.editEnforceFormVisible1=true
|
|
|
}
|
|
|
}
|
|
|
|