yangys
2025-08-17 cafa9ae77da5ae18db0336a353a79a639b7cc299
src/views/wel/components/TodolistLeft.vue
@@ -7,9 +7,7 @@
<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 type="index" label="#" width="40" align="center"/>
@@ -24,17 +22,8 @@
        <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>
@@ -53,9 +42,11 @@
    },
    data() {
        return {
            fileType: '',
            showContentId: '',
            attForm: {
                att: '',
                fileType: 'program'
            }, //程序上传表单
            attOption: {
                submitBtn: false,
@@ -63,21 +54,33 @@
                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/replace/upload',
                        span: 24,
                        data: {
                            drawingNo: this.drawingNo,
                            processNo: this.processNo,
                            processEdition: this.processEdition,
                            processInstanceId: this.replaceDataId,
                            drawingNo: this.drawingNo,   //图号
                            processNo: this.processNo,  //工序号
                     processEdition: this.processEdition  //工序版次
                            fileType: this.fileType,
                        },
                    }
                ]
            }, //程序上传
            },
            tableData: [],//已选程序
            appContent: '',//程序内容
            appDialog: false,
@@ -127,14 +130,30 @@
        this.getAttList();
        this.onLoad(this.page);
    },
    watch: {
        'attForm.fileType': {
            handler(newVal) {
                this.attOption.column[1].data.fileType = newVal;
                this.fileType = newVal;
                console.log(this.fileType)
            },
            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)
                this.$message.warning(res.msg || '上传失败');
                done()
            }