|
|
@@ -15,19 +15,38 @@
|
|
|
:edit="false"
|
|
|
ref="generateForm"
|
|
|
>
|
|
|
+ <template v-slot:blank_adopzrdd="scope">
|
|
|
+ <div v-for="(item, index) in scope.model.blank_adopzrdd" :key="index">
|
|
|
+ <div class="blank_adopzrdd">
|
|
|
+ <span>{{ index + 1 }}报销事项:</span>
|
|
|
+ <el-input
|
|
|
+ v-model="scope.model.blank_adopzrdd[index].remark"
|
|
|
+ type="textarea"
|
|
|
+ style="width: calc(100% - 80px)"
|
|
|
+ ></el-input>
|
|
|
+ </div>
|
|
|
+ <div class="blank_adopzrdd">
|
|
|
+ <span>金额:</span>
|
|
|
+ <el-input
|
|
|
+ v-model="scope.model.blank_adopzrdd[index].price"
|
|
|
+ type="number"
|
|
|
+ style="width: calc(100% - 80px)"
|
|
|
+ ></el-input>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
</fm-generate-form>
|
|
|
<div slot="footer" class="dialog-footer">
|
|
|
<el-form label-width="100px" ref="formRef" :model="form">
|
|
|
<!-- prop="reason" -->
|
|
|
<el-form-item
|
|
|
label="审批建议"
|
|
|
-
|
|
|
style="margin-bottom: 20px"
|
|
|
:rules="{
|
|
|
- required: true,
|
|
|
- message: '',
|
|
|
- trigger: 'blur'
|
|
|
- }"
|
|
|
+ required: true,
|
|
|
+ message: '',
|
|
|
+ trigger: 'blur'
|
|
|
+ }"
|
|
|
>
|
|
|
<el-input
|
|
|
type="textarea"
|
|
|
@@ -41,7 +60,7 @@
|
|
|
type="success"
|
|
|
size="mini"
|
|
|
@click="handleAudit(1)"
|
|
|
- >通过
|
|
|
+ >通过
|
|
|
</el-button>
|
|
|
|
|
|
<el-button
|
|
|
@@ -49,10 +68,13 @@
|
|
|
type="danger"
|
|
|
size="mini"
|
|
|
@click="handleAudit(0)"
|
|
|
- >驳回
|
|
|
+ >驳回
|
|
|
</el-button>
|
|
|
|
|
|
- <el-dropdown @command="(command) => handleCommand(command)" style="margin-left: 30px;">
|
|
|
+ <el-dropdown
|
|
|
+ @command="(command) => handleCommand(command)"
|
|
|
+ style="margin-left: 30px"
|
|
|
+ >
|
|
|
<span class="el-dropdown-link">
|
|
|
更多<i class="el-icon-arrow-down el-icon--right"></i>
|
|
|
</span>
|
|
|
@@ -60,103 +82,116 @@
|
|
|
<el-dropdown-item command="cancel">作废</el-dropdown-item>
|
|
|
</el-dropdown-menu>
|
|
|
</el-dropdown>
|
|
|
- </div>
|
|
|
-
|
|
|
-
|
|
|
+ </div>
|
|
|
</ele-modal>
|
|
|
</template>
|
|
|
<script>
|
|
|
-import Parser from "@/components/FormGenerator/components/parser/Parser.vue";
|
|
|
-import {projectsUpdateAPI} from "@/api/bpm/components/project-manage";
|
|
|
-import {approveTaskWithVariables, cancelTask, rejectTask} from "@/api/bpm/task";
|
|
|
-import {getToken} from "@/utils/token-util";
|
|
|
+ import Parser from '@/components/FormGenerator/components/parser/Parser.vue';
|
|
|
+ import { projectsUpdateAPI } from '@/api/bpm/components/project-manage';
|
|
|
+ import {
|
|
|
+ approveTaskWithVariables,
|
|
|
+ cancelTask,
|
|
|
+ rejectTask
|
|
|
+ } from '@/api/bpm/task';
|
|
|
+ import { getToken } from '@/utils/token-util';
|
|
|
|
|
|
-export default {
|
|
|
- name: 'formParserDialog',
|
|
|
- components: {Parser},
|
|
|
- props: {
|
|
|
- businessId: {
|
|
|
- default: ''
|
|
|
+ export default {
|
|
|
+ name: 'formParserDialog',
|
|
|
+ components: { Parser },
|
|
|
+ props: {
|
|
|
+ businessId: {
|
|
|
+ default: ''
|
|
|
+ },
|
|
|
+ formParserDialogFlag: {
|
|
|
+ type: Boolean,
|
|
|
+ default: false
|
|
|
+ }
|
|
|
},
|
|
|
- formParserDialogFlag: {
|
|
|
- type: Boolean,
|
|
|
- default: false
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ form: {},
|
|
|
+ index: '',
|
|
|
+ jsonData: {}
|
|
|
+ };
|
|
|
},
|
|
|
- },
|
|
|
- data() {
|
|
|
- return {
|
|
|
- form:{},
|
|
|
- index:"",
|
|
|
- jsonData: {},
|
|
|
- }
|
|
|
- },
|
|
|
- methods: {
|
|
|
- open(row){
|
|
|
- this.form = _.cloneDeep(row)
|
|
|
- this.jsonData = JSON.parse(this.form.formJson.makingJson);
|
|
|
- this.jsonData.config.dataSource &&
|
|
|
- this.jsonData.config.dataSource.forEach((item) => {
|
|
|
- item.headers = {
|
|
|
- Authorization: getToken()
|
|
|
+ methods: {
|
|
|
+ open(row) {
|
|
|
+ this.form = _.cloneDeep(row);
|
|
|
+ this.jsonData = JSON.parse(this.form.formJson.makingJson);
|
|
|
+ this.jsonData.config.dataSource &&
|
|
|
+ this.jsonData.config.dataSource.forEach((item) => {
|
|
|
+ item.headers = {
|
|
|
+ Authorization: getToken()
|
|
|
+ };
|
|
|
+ // item.url = item.url && item.url.replace('/api', this.APIUrl);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ cancel() {
|
|
|
+ this.$emit('update:formParserDialogFlag', false);
|
|
|
+ },
|
|
|
+ async handleAudit(status) {
|
|
|
+ await this._approveTaskWithVariables(status);
|
|
|
+ },
|
|
|
+ async _approveTaskWithVariables(status) {
|
|
|
+ let variables = {
|
|
|
+ pass: !!status
|
|
|
};
|
|
|
- // item.url = item.url && item.url.replace('/api', this.APIUrl);
|
|
|
- });
|
|
|
- },
|
|
|
- cancel() {
|
|
|
- this.$emit('update:formParserDialogFlag', false);
|
|
|
- },
|
|
|
- async handleAudit(status) {
|
|
|
- await this._approveTaskWithVariables(status);
|
|
|
- },
|
|
|
- async _approveTaskWithVariables(status) {
|
|
|
- let variables = {
|
|
|
- pass: !!status
|
|
|
- };
|
|
|
- let API = !!status ? approveTaskWithVariables : rejectTask
|
|
|
+ let API = !!status ? approveTaskWithVariables : rejectTask;
|
|
|
|
|
|
- API({
|
|
|
- id: this.form.id,
|
|
|
- reason: this.form.reason,
|
|
|
- businessId: this.businessId,
|
|
|
- variables
|
|
|
- }).then((res) => {
|
|
|
- if (res.data.code != '-1') {
|
|
|
- let params = {
|
|
|
- status,
|
|
|
- title: status === 0 ? '驳回' : ''
|
|
|
+ API({
|
|
|
+ id: this.form.id,
|
|
|
+ reason: this.form.reason,
|
|
|
+ businessId: this.businessId,
|
|
|
+ variables
|
|
|
+ }).then((res) => {
|
|
|
+ if (res.data.code != '-1') {
|
|
|
+ let params = {
|
|
|
+ status,
|
|
|
+ title: status === 0 ? '驳回' : ''
|
|
|
+ };
|
|
|
+ this.$message.success(`审批${params.title}成功!`);
|
|
|
+ this.$emit('reload');
|
|
|
+ this.cancel();
|
|
|
}
|
|
|
- this.$message.success(`审批${params.title}成功!`);
|
|
|
- this.$emit('reload')
|
|
|
- this.cancel()
|
|
|
+ });
|
|
|
+ },
|
|
|
|
|
|
+ //更多
|
|
|
+ handleCommand(command) {
|
|
|
+ if (command === 'cancel') {
|
|
|
+ this.$confirm('是否确认作废?', {
|
|
|
+ type: 'warning',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ confirmButtonText: '确定'
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
+ cancelTask({
|
|
|
+ taskId: this.form.id,
|
|
|
+ id: this.form.processInstance.id,
|
|
|
+ reason: this.form.reason
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
+ this.$emit('reload');
|
|
|
+ this.cancel();
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ this.$message.error('流程作废失败');
|
|
|
+ });
|
|
|
+ })
|
|
|
+ .catch(() => {});
|
|
|
}
|
|
|
- });
|
|
|
- },
|
|
|
-
|
|
|
- //更多
|
|
|
- handleCommand(command) {
|
|
|
- if (command === 'cancel') {
|
|
|
- this.$confirm("是否确认作废?", {
|
|
|
- type: 'warning',
|
|
|
- cancelButtonText: '取消',
|
|
|
- confirmButtonText: '确定'
|
|
|
- }).then(() => {
|
|
|
- cancelTask({
|
|
|
- taskId: this.form.id,
|
|
|
- id: this.form.processInstance.id,
|
|
|
- reason: this.form.reason
|
|
|
- }).then(() => {
|
|
|
- this.$emit('reload')
|
|
|
- this.cancel()
|
|
|
- }).catch(() => {
|
|
|
- this.$message.error("流程作废失败");
|
|
|
- });
|
|
|
- }).catch(() => {
|
|
|
- });
|
|
|
}
|
|
|
- },
|
|
|
-
|
|
|
- }
|
|
|
-};
|
|
|
+ }
|
|
|
+ };
|
|
|
</script>
|
|
|
-<style scoped lang="scss"></style>
|
|
|
+<style scoped lang="scss">
|
|
|
+ .blank_adopzrdd {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ > span {
|
|
|
+ display: inline-block;
|
|
|
+ width: 80px;
|
|
|
+ }
|
|
|
+ margin-bottom: 10px;
|
|
|
+ }
|
|
|
+</style>
|