| | |
| | | <template>
|
| | | <el-dialog
|
| | | :title="title"
|
| | | :visible="dialogVisible"
|
| | | width="1200px"
|
| | | :visible.sync="dialogVisible"
|
| | | width="1300px"
|
| | | append-to-body
|
| | | top="5vh"
|
| | | >
|
| | | <div class="flex_box">
|
| | | <div class="left" :style="{ width: leftWidth }">
|
| | |
| | | <el-tree
|
| | | v-show="isExpand"
|
| | | class="filter_tree"
|
| | | :data="data"
|
| | | :data="leftTree"
|
| | | default-expand-all
|
| | | highlight-current
|
| | | :filter-node-method="filterNode"
|
| | | @node-click="treeNodeClick"
|
| | | ref="tree"
|
| | | :props="{
|
| | | label: 'name',
|
| | | }"
|
| | | >
|
| | | </el-tree>
|
| | | </div>
|
| | | <div class="right">
|
| | | <div class="tab_box">
|
| | | <el-tabs v-model="activeName" type="card" @tab-click="handleClick">
|
| | | <el-tab-pane label="正确数据" name="success">
|
| | | <el-table border :data="successData"></el-table>
|
| | | <el-tabs
|
| | | v-model="activeTab"
|
| | | type="card"
|
| | | @tab-click="handleClick"
|
| | | size="small"
|
| | | >
|
| | | <el-tab-pane label="有相似项" name="resemble">
|
| | | <el-table
|
| | | border
|
| | | :data="resembleData"
|
| | | style="width: 100%"
|
| | | height="400px"
|
| | | highlight-current-row
|
| | | @current-change="resembleRowChange"
|
| | | >
|
| | | <el-table-column
|
| | | v-for="item in cloNamesList"
|
| | | :key="item.field"
|
| | | :prop="item.field"
|
| | | :label="item.title"
|
| | | :width="item.width"
|
| | | >
|
| | | </el-table-column>
|
| | | </el-table>
|
| | | </el-tab-pane>
|
| | | <el-tab-pane label="有相似项或者错误数据" name="error">
|
| | | <el-table border :data="errorData"></el-table>
|
| | | <el-tab-pane label="正确数据" name="success">
|
| | | <el-table border :data="successData" height="400px">
|
| | | <el-table-column
|
| | | v-for="item in cloNamesList"
|
| | | :key="item.field"
|
| | | :prop="item.field"
|
| | | :label="item.title"
|
| | | :width="item.width"
|
| | | >
|
| | | </el-table-column>
|
| | | </el-table>
|
| | | </el-tab-pane>
|
| | | </el-tabs>
|
| | | </div>
|
| | | <div>
|
| | | <el-table
|
| | | border
|
| | | :data="currentSelectedResemble"
|
| | | style="width: 100%"
|
| | | height="200px"
|
| | | >
|
| | | <el-table-column
|
| | | v-for="item in resembleColumList"
|
| | | :key="item.field"
|
| | | :prop="item.field"
|
| | | :label="item.title"
|
| | | :minWidth="item.minWidth"
|
| | | >
|
| | | <template #default="{ row }">
|
| | | <span v-if="item.field === 'id'">
|
| | | <el-link type="primary" @click="openFormTemlpate(row)">{{
|
| | | row[item.field]
|
| | | }}</el-link>
|
| | | </span>
|
| | | <span v-else>
|
| | | {{ row[item.field] }}
|
| | | </span>
|
| | | </template>
|
| | | </el-table-column>
|
| | | <el-table-column
|
| | | v-show="resembleColumList.length > 0"
|
| | | prop="rowIndex"
|
| | | label="excel行数"
|
| | | ></el-table-column>
|
| | | </el-table>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | |
| | | <el-button size="small">取消</el-button>
|
| | | </div>
|
| | | </template>
|
| | | <FormTemplateDialog
|
| | | ref="FormTemplateDialog"
|
| | | type="detail"
|
| | | v-bind="currentSelectedResembleRow"
|
| | | :visible.sync="currentSelectedResembleRow.visible"
|
| | | title="查看详细信息"
|
| | | ></FormTemplateDialog>
|
| | | </el-dialog>
|
| | | </template>
|
| | |
|
| | | <script>
|
| | | import {
|
| | | getHistorySuccessTable,
|
| | | getHistoryResembleTable,
|
| | | getFormTemplate,
|
| | | getCurretnSelectedRowResemble,
|
| | | } from "../../api/batchImport/index";
|
| | | import ResembleQuery from "../FormTemplate/ResembleQuery.vue";
|
| | | export default {
|
| | | name: "ShowImportData",
|
| | | components: { ResembleQuery },
|
| | | props: {
|
| | | title: {
|
| | | type: String,
|
| | | default: "历史数据导入",
|
| | | },
|
| | | visible: false,
|
| | | leftTree: {
|
| | | type: Array,
|
| | | default: () => [],
|
| | | },
|
| | | redisOid: {
|
| | | type: String,
|
| | | default: "",
|
| | | },
|
| | | },
|
| | | computed: {
|
| | | dialogVisible: {
|
| | |
| | | ],
|
| | | },
|
| | | ],
|
| | | resembleData: [],
|
| | | successData: [],
|
| | | errorData: [],
|
| | | activeTab: "resemble",
|
| | | cloNamesList: [],
|
| | | codeClassifyOid: "",
|
| | | resembleColumList: [],
|
| | | currentSelectedResemble: [],
|
| | | currentSelectedResembleRow: {
|
| | | templateOid: "",
|
| | | codeClassifyOid: "",
|
| | | rowOid: "",
|
| | | formTemplateVisible: false,
|
| | | },
|
| | | };
|
| | | },
|
| | |
|
| | | methods: {
|
| | | filterNode(value, data) {
|
| | | if (!value) return true;
|
| | | return data.label.indexOf(value) !== -1;
|
| | | return data.name.indexOf(value) !== -1;
|
| | | },
|
| | | hideTree() {
|
| | | if (this.isExpand) {
|
| | |
| | | this.leftWidth = "200px";
|
| | | }
|
| | | this.isExpand = !this.isExpand;
|
| | | },
|
| | | treeNodeClick(data) {
|
| | | this.codeClassifyOid = data.codeclassifyoid;
|
| | | this.cloNamesList = data.cloNamesList;
|
| | | getHistorySuccessTable(this.redisOid).then((res) => {
|
| | | this.successData = res.data
|
| | | // this.successData = [
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH007",
|
| | | // caigouwl: "是",
|
| | | // oid: "433DFA8E-4445-18F4-AC95-85E7EE1C92CF",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH006",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺母",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试4",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0004",
|
| | | // id: "0201020013",
|
| | | // },
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH006",
|
| | | // caigouwl: "是",
|
| | | // oid: "E94E3320-841F-AE87-1D56-D6B3398D0FFC",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH005",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺母",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试3",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0003",
|
| | | // id: "0201020012",
|
| | | // },
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH003",
|
| | | // caigouwl: "是",
|
| | | // oid: "D2E0A166-A774-BE6F-A9C7-3277467CE8EC",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH003",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺母",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试2",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0002",
|
| | | // id: "0201020011",
|
| | | // },
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH002",
|
| | | // caigouwl: "是",
|
| | | // oid: "291CD01A-F18D-2D95-5291-D2C80ED57CC8",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH002",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺母",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试1",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0001",
|
| | | // id: "0201020010",
|
| | | // },
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH001",
|
| | | // caigouwl: "是",
|
| | | // oid: "FED83315-F2B4-C603-2AC2-11B0DF3029A6",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH001",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺栓",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试6",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0006",
|
| | | // id: "0201010019",
|
| | | // },
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH005",
|
| | | // caigouwl: "是",
|
| | | // oid: "3E120284-8EC2-9BF4-D1AB-579380DFA085",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH005",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺栓",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试5",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0005",
|
| | | // id: "0201010018",
|
| | | // },
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH004",
|
| | | // caigouwl: "是",
|
| | | // oid: "2EB3B122-2FE4-A236-53F2-9B67E40332AC",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH004",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺栓",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试4",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0004",
|
| | | // id: "0201010017",
|
| | | // },
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH009",
|
| | | // caigouwl: "是",
|
| | | // oid: "8940A341-8041-E031-6FE1-A18526C62DE9",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH008",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺母",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试6",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0006",
|
| | | // id: "0201020015",
|
| | | // },
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH008",
|
| | | // caigouwl: "是",
|
| | | // oid: "936CBC1E-2FD0-5CD7-C331-64B86204FD78",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH007",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺母",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试5",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0005",
|
| | | // id: "0201020014",
|
| | | // },
|
| | | // ];
|
| | | });
|
| | | getHistoryResembleTable({
|
| | | codeClassifyOid: data.codeClassifyOid,
|
| | | redisOid: this.redisOid + "-resemble",
|
| | | }).then((res) => {
|
| | | console.log(res);
|
| | | this.resembleData = res.data
|
| | | // this.resembleData = [
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH007",
|
| | | // caigouwl: "是",
|
| | | // oid: "FC2F0D9F-8B2E-5A19-3BDE-22107F373EB3",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH006",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺母",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试4",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0004",
|
| | | // id: "0201020013",
|
| | | // },
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH007",
|
| | | // caigouwl: "是",
|
| | | // oid: "B92CFF46-1D46-E680-66C4-33A3ABE77A6C",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH005",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺母",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试3",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0003",
|
| | | // id: "0201020012",
|
| | | // },
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH15",
|
| | | // caigouwl: "是",
|
| | | // oid: "B383C30E-D201-01F2-89EE-6F751EFA0AA1",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH008",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺母",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试6",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0006",
|
| | | // id: "0201020015",
|
| | | // },
|
| | | // {
|
| | | // xiaoshouwl: "是",
|
| | | // xinghaoguige: "XH17",
|
| | | // caigouwl: "是",
|
| | | // oid: "1C379116-F27B-3F20-DFC3-74A39B87E505",
|
| | | // kucunwl: "是",
|
| | | // tuhao: "TH007",
|
| | | // codeSecLengthField: "6#4",
|
| | | // codeclsfid: "紧固件#螺母",
|
| | | // materialtype: "材料",
|
| | | // chukufangshi: "先进先出",
|
| | | // hesuanfenlei: "原材料",
|
| | | // name: "测试5",
|
| | | // jiliangdw: "个",
|
| | | // oldcode: "z0005",
|
| | | // id: "0201020014",
|
| | | // },
|
| | | // ];
|
| | | });
|
| | | getFormTemplate({
|
| | | templateOid: data.oid,
|
| | | codeClassifyOid: data.codeClassifyOid,
|
| | | }).then((res) => {
|
| | | this.resembleColumList = res.data.resembleTableVO.cols[0];
|
| | | });
|
| | | },
|
| | | resembleRowChange(row) {
|
| | | getCurretnSelectedRowResemble({
|
| | | redisOid: this.redisOid + "-resemble-data",
|
| | | dataOid: row.oid,
|
| | | }).then((res) => {
|
| | | this.currentSelectedResemble = res.data
|
| | | // this.currentSelectedResemble = [
|
| | | // {
|
| | | // xinghaoguige: "XH007",
|
| | | // codetemplateoid: "f441b131-5ea0-4672-ab74-735b11161928",
|
| | | // rowIndex: "9",
|
| | | // id: "0201020012",
|
| | | // oid: "B92CFF46-1D46-E680-66C4-33A3ABE77A6C",
|
| | | // },
|
| | | // ];
|
| | | });
|
| | | },
|
| | | openFormTemlpate(row) {
|
| | | this.currentSelectedResembleRow = {
|
| | | visible: true,
|
| | | templateOid: row.codetemplateoid,
|
| | | codeClassifyOid: this.codeClassifyOid,
|
| | | rowOid: row.rowOid,
|
| | | }
|
| | | },
|
| | | },
|
| | | watch: {
|
| | |
| | | overflow-y: scroll;
|
| | | }
|
| | | }
|
| | | .right {
|
| | | margin-left: 20px;
|
| | | margin-top: 30px;
|
| | | width: 1000px;
|
| | | }
|
| | | }
|
| | | </style>
|