| | |
| | | <template> |
| | | <div class="app-container"> |
| | | |
| | | |
| | | <el-table v-loading="loading" :data="tastList"> |
| | | <!-- <el-table-column label="流程ID" align="center" prop="id"/>--> |
| | | <el-table-column label="流程名称" align="center" prop="instanceName"/> |
| | | <el-table-column label="任务节点名称" align="center" prop="name"/> |
| | | <el-table-column label="任务状态" align="center" prop="status"/> |
| | | <el-table-column label="办理人" align="center" prop="assignee"/> |
| | | <el-table-column label="创建时间" align="center" prop="createdDate"/> |
| | | <el-table-column label="流程名称" align="center" prop="title"/> |
| | | <el-table-column label="任务节点名称" align="center" prop="taskName"/> |
| | | <el-table-column label="任务状态" align="center" prop=""/> |
| | | <el-table-column label="办理人" align="center" prop="userId"/> |
| | | <el-table-column label="创建时间" align="center" prop="createTime"/> |
| | | |
| | | <el-table-column label="操作" align="center" class-name="small-padding fixed-width"> |
| | | <template slot-scope="scope"> |
| | |
| | | size="mini" |
| | | type="text" |
| | | icon="el-icon-edit" |
| | | @click="examineAndApprove (scope.row)" |
| | | @click="showTodoDetail(scope.row)" |
| | | v-hasPermi="['wf:task:**']" |
| | | >审批 |
| | | </el-button> |
| | |
| | | |
| | | <!-- 审批对话框 --> |
| | | <el-dialog :title="title" :visible.sync="open" v-if="open" width="500px" append-to-body> |
| | | <leaveHistoryForm :businessKey="businessKey" v-if="'leave'==definitionKey"/> |
| | | |
| | | <!-- <leaveHistoryForm :businessKey="businessKey" v-if="'leave'==definitionKey"/>--> |
| | | <el-form :model="form" ref="form" label-width="100px" class="demo-dynamic"> |
| | | <el-form-item |
| | | v-for="(domain, index) in form.formData" |
| | | :label="domain.controlLable" |
| | | :key="index" |
| | | > |
| | | <el-radio-group v-model="domain.controlValue" v-if="'radio'==domain.controlType"> |
| | | <el-radio v-for="(defaults,indexd) in domain.controlDefault.split('--__--')" |
| | | :label=indexd |
| | | :key="indexd" |
| | | >{{defaults}} |
| | | |
| | | </el-radio> |
| | | |
| | | </el-radio-group> |
| | | <el-input type="textarea" v-model="domain.controlValue" v-if="'textarea'==domain.controlType" |
| | | ></el-input> |
| | | <el-form-item label="流程名称"> |
| | | <el-input v-model="todoTask.title"/> |
| | | </el-form-item> |
| | | <el-form-item label="任务名称"> |
| | | <el-input v-model="todoTask.taskName"/> |
| | | </el-form-item> |
| | | <el-form-item label="业务主键" prop="businessKey"> |
| | | <!-- <el-input v-model="todoTask.businessKey"/>--> |
| | | <el-input v-model="form.businessKey"/> |
| | | </el-form-item> |
| | | <el-form-item label="流程标识" prop="processDefinitionKey"> |
| | | <!-- <el-input v-model="todoTask.processDefinitionKey"/>--> |
| | | <el-input v-model="form.processDefinitionKey"/> |
| | | </el-form-item> |
| | | <el-form-item label="任务ID" prop="taskInstanceId"> |
| | | <!-- <el-input v-model="todoTask.id"/>--> |
| | | <el-input v-model="form.taskInstanceId"/> |
| | | </el-form-item> |
| | | <el-form-item label="审批选项" prop="approveResult"> |
| | | <el-radio-group v-model="form.approveResult"> |
| | | <el-radio value="yes">同意</el-radio> |
| | | <el-radio value="no">退回</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="审批意见" prop="approveSummary"> |
| | | <el-input v-model="form.approveSummary" placeholder="输入审批意见" maxlength="90" /> |
| | | </el-form-item> |
| | | |
| | | </el-form> |
| | | |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="submitForm">确 定</el-button> |
| | | <el-button type="primary" @click="submitForm">转 发</el-button> |
| | | <el-button @click="cancel">取 消</el-button> |
| | | </div> |
| | | </el-dialog> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | |
| | | |
| | | import {listTask, formDataShow, formDataSave} from "@/api/activiti/task"; |
| | | import leaveHistoryForm from "@/views/workflow/leave/leaveHistoryForm"; |
| | | import {listTask, todoDetail, transmission, formDataShow, formDataSave} from "@/api/activiti/task"; |
| | | // import leaveHistoryForm from "@/views/workflow/leave/leaveHistoryForm"; |
| | | |
| | | export default { |
| | | name: "Leave", |
| | | components: {leaveHistoryForm}, |
| | | components: {}, |
| | | data() { |
| | | return { |
| | | id:'', |
| | | definitionKey: '', |
| | | businessKey: '', |
| | | // 当前待办任务详细(点击的详情),2023-04-03 |
| | | todoTask: undefined, |
| | | // 遮罩层 |
| | | loading: true, |
| | | // 选中数组 |
| | |
| | | }, |
| | | // 表单参数 |
| | | form: { |
| | | formData:[] |
| | | businessKey: undefined, |
| | | processDefinitionKey: undefined, |
| | | assignee: undefined, |
| | | taskInstanceId: undefined, |
| | | approveResult: undefined, |
| | | approveSummary: '', |
| | | approveTime: undefined |
| | | }, |
| | | // 表单校验 |
| | | rules: {} |
| | |
| | | }, |
| | | // 表单重置 |
| | | reset() { |
| | | this.definitionKey = '', |
| | | this.businessKey = '', |
| | | this.form = { |
| | | formData:[], |
| | | }; |
| | | this.definitionKey = ''; |
| | | this.businessKey = ''; |
| | | this.form = {}; |
| | | this.resetForm("form"); |
| | | }, |
| | | |
| | | /** 审批按钮操作 */ |
| | | examineAndApprove(row) { |
| | | console.log(row) |
| | | showTodoDetail(row) { |
| | | console.log(row); |
| | | this.reset(); |
| | | this.definitionKey = row.definitionKey; |
| | | this.businessKey = row.businessKey; |
| | | this.id=row.id; |
| | | formDataShow(row.id).then(response => { |
| | | todoDetail(row).then(response => { |
| | | // FormProperty_3qipis2--__!!radio--__!!审批意见--__!!i--__!!同意--__--不同意 |
| | | // FormProperty_0lffpcm--__!!textarea--__!!批注--__!!f--__!!null |
| | | let datas = response.data; |
| | | let formData = [] |
| | | for (let i = 0; i < datas.length; i++) { |
| | | let strings = datas[i].split('--__!!') |
| | | let controlValue = null |
| | | let controlDefault = null |
| | | switch (strings[1]) { |
| | | case 'radio': |
| | | controlValue = 0; |
| | | controlDefault = strings[4] |
| | | break; |
| | | // default: |
| | | } |
| | | formData.push({ |
| | | controlId: strings[0], |
| | | controlType: strings[1], |
| | | controlLable: strings[2], |
| | | controlIsParam: strings[3], |
| | | controlValue: controlValue, |
| | | controlDefault: controlDefault |
| | | }) |
| | | } |
| | | this.form.formData = formData; |
| | | this.todoTask = response.data; |
| | | this.form.businessKey = this.todoTask.businessKey; |
| | | this.form.taskInstanceId = this.todoTask.id; |
| | | this.form.processDefinitionKey = this.todoTask.processDefinitionKey; |
| | | |
| | | // this.form.formData = formData; |
| | | this.open = true; |
| | | this.title = "审批"; |
| | | }); |
| | | }, |
| | | /** 提交按钮 */ |
| | | submitForm() { |
| | | formDataSave(this.id,this.form.formData).then(response => { |
| | | transmission(this.form).then(response => { |
| | | this.$modal.msgSuccess("审批成功"); |
| | | this.open = false; |
| | | this.getList(); |
| | | }); |
| | | }, |
| | | } |
| | | } |
| | | }; |
| | | </script> |