gaoshp
2025-08-20 5106bf7e31f218ca488097b3d32f52185eac33cc
添加比对
已修改2个文件
53 ■■■■ 文件已修改
src/views/flow/components/TodolistLeft.vue 51 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/flow/todolist.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/flow/components/TodolistLeft.vue
@@ -1,7 +1,7 @@
<!--
 * @Date: 2025-07-01 20:45:15
 * @LastEditors: gaoshp
 * @LastEditTime: 2025-08-17 11:50:24
 * @LastEditTime: 2025-08-20 21:01:55
 * @FilePath: /mdmweb/src/views/flow/components/TodolistLeft.vue
-->
<template>
@@ -19,7 +19,9 @@
                <template #default="{ row }">
                    <div style="display: flex;align-items: center;">
                        <span style="margin-right: 8px;">{{ row.name }}</span>
                        <el-icon v-if="row.fileType ==='other'"><FolderOpened /></el-icon>
                        <el-icon v-if="row.fileType === 'other'">
                            <FolderOpened />
                        </el-icon>
                        <img v-else src="./app.jpg" alt="" width="16" height="16">
                    </div>
                </template>
@@ -27,8 +29,14 @@
            <el-table-column fixed="right" label="操作" width="100" align="center">
            <template #default="scope" >
                <!--'cureProgramTask', 固化编制,不能删除和上传-->
                <a style="color: blue;margin-right: 4px;cursor: pointer;font-size: 12px;" v-show="['programmingTask','repalceProgrammingTask'].includes(row.taskDefinitionKey)" type="text" size="small" @click.stop="del(scope.$index,scope.row)">删除</a>
                <a style="color: blue;cursor: pointer;font-size: 12px;" type="text" size="small" @click.stop="downloadFile(scope.$index,scope.row)">下载</a>
                    <a style="color: blue;margin-right: 4px;cursor: pointer;font-size: 12px;"
                        v-show="['programmingTask', 'repalceProgrammingTask'].includes(row.taskDefinitionKey)"
                        type="text" size="small" @click.stop="del(scope.$index, scope.row)">删除</a>
                    <a style="color: blue;cursor: pointer;font-size: 12px;margin-right: 4px;" type="text" size="small"
                        @click.stop="downloadFile(scope.$index, scope.row)">下载</a>
                    <a style="color: blue;cursor: pointer;font-size: 12px;" type="text" size="small"
                        v-show="['program-cure'].includes(row.processDefinitionKey)"
                        @click.stop="diffFile(scope.$index, scope.row)">比对</a>
            </template>
            </el-table-column>
        </el-table>
@@ -36,13 +44,15 @@
        <div v-html="appContent" class="app-content">
        </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>
            <avue-form :option="attOption" v-model="attForm" :upload-after="uploadAfter" class="att-box"></avue-form>
            <!-- <div slot="footer" class="dialog-footer">
                <el-button @click="appDialog = false">取 消</el-button>
                <el-button type="primary" @click="add">确 定</el-button>
            </div> -->
        </el-dialog>
        <el-dialog title="程序选择" v-model="diffDialog" width="50%">
            <code-diff :old-string="this.content1" :new-string="this.content2" output-format="side-by-side"
                :hideStat="true" :filename="codeDiffFileName1" :newFilename="codeDiffFileName2" />
        </el-dialog>
    </basic-container>
</template>
@@ -69,6 +79,11 @@
    },
    data() {
        return {
            diffDialog: false,
            content1: '',
            content2: '',
            codeDiffFileName1: '回传版本',
            codeDiffFileName2: '试切版本',
            showContentId: '',
            attForm: {
                att: '',
@@ -154,6 +169,25 @@
        this.onLoad(this.page);
    },
    methods: {
        diffFile(index, row) {
            console.log(row)
            axios({
                url: '/blade-mdm/blade-mdm/flow/file/compare-with-try',
                method: 'get',
                params: { fileId: row.id },
            }).then(
                res => {
                    if(res.data.success) {
                        this.diffDialog = true;
                        this.content1 = res.data.data.content1;
                        this.content2 = res.data.data.content2;
                    } else {
                        this.$message.error(res.data.msg || '比对失败');
                    }
                }
            );
        },
        uploadAfter(res, done, loading, column) {
            if (res.code === 200) {
                this.getAttList();
@@ -261,6 +295,7 @@
.dialog-footer {
    text-align: center;
}
.app-content {
    background-color: #fffee1;
    padding: 10px 30px;
@@ -269,13 +304,13 @@
    max-height: 400px;
    white-space: pre-wrap;
}
</style>
<style lang="scss">
    .att-box {
        .el-form-item--default {
            margin-bottom: 0;
        }
        .avue-form__menu--center {
            display: none;
        }
src/views/flow/todolist.vue
@@ -755,7 +755,7 @@
    }
    .left {
        width: 400px;
        width: 40%;
    }
    .right {