| | |
| | | <!-- |
| | | * @Date: 2025-07-01 20:45:15 |
| | | * @LastEditors: gaoshp |
| | | * @LastEditTime: 2025-08-06 20:40:36 |
| | | * @LastEditors: 李喆(开发组) lzhe@yxqiche.com |
| | | * @LastEditTime: 2025-08-11 10:35:59 |
| | | * @FilePath: /mdmweb/src/views/flow/components/TodolistLeft.vue |
| | | --> |
| | | <template> |
| | | <basic-container> |
| | | <div class="tool"> |
| | | <avue-form :option="attOption" |
| | | v-model="attForm" |
| | | :upload-after="uploadAfter" class="att-box"></avue-form> |
| | | <el-button type="primary" plain @click="addApp">添加文件</el-button> |
| | | </div> |
| | | <el-table :data="tableData" border @row-click="showContent" max-height="200"> |
| | | <!-- <el-table-column prop="machineCode" label="加工机床"> |
| | | </el-table-column> --> |
| | | <el-table-column type="index" label="#" width="40" align="center"/> |
| | | <el-table-column prop="name" label="程序名称"> |
| | | </el-table-column> |
| | | <el-table-column fixed="right" label="操作" width="60" align="center"> |
| | |
| | | <h4>程序内容</h4> |
| | | <div v-html="appContent" class="app-content"> |
| | | </div> |
| | | <el-dialog title="程序选择" v-model="appDialog" width="50%" v-if="appDialog"> |
| | | <avue-crud :option="optionApp" v-model="form" v-model:page="page" ref="crud" :data="appData" |
| | | @current-change="currentChange" @size-change="sizeChange" |
| | | @on-load="onLoad" @selection-change="selectionChange"> |
| | | <template #search="{ }"></template> |
| | | <template #search-menu="{ }"></template> |
| | | </avue-crud> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button @click="appDialog = false">取 消</el-button> |
| | | <el-button type="primary" @click="add">确 定</el-button> |
| | | </div> |
| | | <el-dialog title="程序选择" v-model="appDialog" width="400" v-if="appDialog"> |
| | | <avue-form :option="attOption" v-model="attForm" :upload-after="uploadAfter" class="att-box"></avue-form> |
| | | </el-dialog> |
| | | </basic-container> |
| | | </template> |
| | |
| | | props: { |
| | | row: { |
| | | type: Object, |
| | | } |
| | | }, |
| | | replaceDataId: {type: String}, |
| | | drawingNo: {type: String}, |
| | | processNo: {type: String}, |
| | | processEdition: {type: String} |
| | | }, |
| | | data() { |
| | | return { |
| | | showContentId: '', |
| | | attForm: { |
| | | att: '', |
| | | fileType: 'program' |
| | | }, //程序上传表单 |
| | | attOption: { |
| | | submitBtn: false, |
| | |
| | | menu: false, |
| | | column: [ |
| | | { |
| | | label: '添加程序', |
| | | label: '文件类型', |
| | | prop: 'fileType', |
| | | type: 'select', |
| | | span: 24, |
| | | clearable: false, |
| | | dicData: [ |
| | | { label: '程序文件', value: 'program' }, |
| | | { label: '其他文件', value: 'other' }, |
| | | ], |
| | | }, |
| | | { |
| | | label: '添加文件', |
| | | prop: 'att', |
| | | type: 'upload', |
| | | multiple: true, |
| | | action: '/api/blade-mdm/flow/mgr/ncupload', |
| | | action: '/api/blade-mdm/flow/replace/upload', |
| | | span: 24, |
| | | data: { |
| | | processInstanceId: this.row.processInstanceId |
| | | drawingNo: this.drawingNo, |
| | | processNo: this.processNo, |
| | | processEdition: this.processEdition, |
| | | processInstanceId: this.replaceDataId, |
| | | fileType: attForm.fileType, |
| | | }, |
| | | } |
| | | ] |
| | | }, //程序上传 |
| | | }, |
| | | tableData: [],//已选程序 |
| | | appContent: '',//程序内容 |
| | | appDialog: false, |
| | |
| | | this.getAttList(); |
| | | this.onLoad(this.page); |
| | | }, |
| | | watch: { |
| | | 'attForm.fileType': { |
| | | handler(newVal) { |
| | | this.attOption.column[1].data.fileType = newVal; |
| | | }, |
| | | immediate: true, |
| | | }, |
| | | }, |
| | | methods: { |
| | | addApp() { |
| | | this.appDialog = true; |
| | | }, |
| | | uploadAfter(res, done, loading, column) { |
| | | if (res.code === 200) { |
| | | this.getAttList(); |
| | | this.$message.success('上传成功'); |
| | | this.$message.success(res.msg || '上传成功'); |
| | | this.attForm.att = ''; |
| | | this.attForm.fileType = 'program' |
| | | this.appDialog = false |
| | | return done(); |
| | | } else { |
| | | console.log(res) |
| | |
| | | } |
| | | }, |
| | | getAttList () { |
| | | getSelectedAppList(this.row.processInstanceId).then(res => { |
| | | //console.log(this.row.processInstanceId) |
| | | getSelectedAppList(this.replaceDataId).then(res => { |
| | | if (res.data.code !== 200) { |
| | | this.$message.error('获取已选程序失败'); |
| | | return; |