fujunling
2023-06-26 a4e4026aee8c5e6d12c1065ce71efee81a2b5518
Source/UBCS-WEB/src/components/BatchImport/ShowImportData.vue
@@ -6,6 +6,17 @@
    append-to-body
    top="5vh"
  >
    <div>
      <FormTemplate
        v-if="type === 'batchApplyCode'"
        type="add"
        :selfColumnType="selfColumnType"
        :selfColumnConfig="selfColumnConfig"
        ref="CodeApply"
        @getFormData="getCodeApplyFormData"
        @referConfigDataUpdate="referConfigDataUpdate"
      ></FormTemplate>
    </div>
    <div class="flex_box">
      <div class="left" :style="{ width: leftWidth }">
        <div class="isExpand_box">
@@ -46,15 +57,17 @@
            @tab-click="handleClick"
            size="small"
          >
            <el-tab-pane label="有相似项" name="resemble">
            <el-tab-pane :label="tab1Name" name="tab1">
              <el-table
                border
                :data="resembleData"
                :data="tab1Table"
                style="width: 100%"
                height="400px"
                highlight-current-row
                @current-change="resembleRowChange"
                @selection-change="tab1TableSelectChange"
              >
                <el-table-column type="index"></el-table-column>
                <el-table-column
                  v-for="item in cloNamesList"
                  :key="item.field"
@@ -65,8 +78,8 @@
                </el-table-column>
              </el-table>
            </el-tab-pane>
            <el-tab-pane label="正确数据" name="success">
              <el-table border :data="successData" height="400px">
            <el-tab-pane :label="tab2Name" name="tab2">
              <el-table border :data="tab2Table" height="400px">
                <el-table-column
                  v-for="item in cloNamesList"
                  :key="item.field"
@@ -115,7 +128,9 @@
    </div>
    <template #footer>
      <div>
        <el-button size="small" type="primary">确定导入</el-button>
        <el-button size="small" type="primary" @click="submit"
          >确定导入</el-button
        >
        <el-button size="small">取消</el-button>
      </div>
    </template>
@@ -135,11 +150,16 @@
  getHistoryResembleTable,
  getFormTemplate,
  getCurretnSelectedRowResemble,
  submitHistoryimport,
} from "../../api/batchImport/index";
import ResembleQuery from "../FormTemplate/ResembleQuery.vue";
import FormTemplate from "../FormTemplate/FormTemplate.vue";
import codeApply from '@/mixins/codeApply.js'
export default {
  name: "ShowImportData",
  components: { ResembleQuery },
  components: { ResembleQuery, FormTemplate },
  mixins: [ codeApply ],
  props: {
    title: {
      type: String,
@@ -151,6 +171,14 @@
      default: () => [],
    },
    redisOid: {
      type: String,
      default: "",
    },
    classifyAttr: {
      type: String,
      default: "id",
    },
    codeClassifyOid: {
      type: String,
      default: "",
    },
@@ -170,126 +198,16 @@
      isExpand: true,
      filterText: "",
      leftWidth: "200px",
      data: [
        {
          id: 1,
          label: "一级 1",
          children: [
            {
              id: 4,
              label: "二级 1-1",
              children: [
                {
                  id: 9,
                  label: "三级 1-1-1",
                },
                {
                  id: 10,
                  label: "三级 1-1-2",
                },
              ],
            },
          ],
        },
        {
          id: 2,
          label: "一级 2",
          children: [
            {
              id: 5,
              label: "二级 2-1",
            },
            {
              id: 6,
              label: "二级 2-2",
            },
          ],
        },
        {
          id: 3,
          label: "一级 3",
          children: [
            {
              id: 7,
              label: "二级 3-1",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
            {
              id: 8,
              label: "二级 3-2",
            },
          ],
        },
      ],
      resembleData: [],
      successData: [],
      activeTab: "resemble",
      cloNamesList: [],
      codeClassifyOid: "",
      resembleColumList: [],
      templateOid: null,
      tab1Name: "相似项",
      tab2Name: "正确数据",
      tab1Table: [],
      selectedTab1Table: [],
      tab2Table: [],
      activeTab: "tab1",
      cloNamesList: [], //列表头部字段
      localCodeClassifyOid: "",
      resembleColumList: [], //相似项查出来的列表字段
      currentSelectedResemble: [],
      currentSelectedResembleRow: {
        templateOid: "",
@@ -297,6 +215,7 @@
        rowOid: "",
        formTemplateVisible: false,
      },
      secVOList: [],
    };
  },
@@ -314,242 +233,17 @@
      this.isExpand = !this.isExpand;
    },
    treeNodeClick(data) {
      this.codeClassifyOid = data.codeclassifyoid;
      this.localCodeClassifyOid = data.codeclassifyoid;
      this.cloNamesList = data.cloNamesList;
      this.templateOid = data.codeClassifyTemplateVO.oid;
      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",
        //   },
        // ];
        this.tab2Table = res.data;
      });
      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",
        //   },
        // ];
        this.tab1Table = res.data;
      });
      getFormTemplate({
        templateOid: data.oid,
@@ -558,30 +252,48 @@
        this.resembleColumList = res.data.resembleTableVO.cols[0];
      });
    },
    tab1TableSelectChange(selection) {
      this.selectedTab1Table = selection;
    },
    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",
        //   },
        // ];
        this.currentSelectedResemble = res.data;
      });
    },
    openFormTemlpate(row) {
      this.currentSelectedResembleRow = {
        visible: true,
        templateOid: row.codetemplateoid,
        codeClassifyOid: this.codeClassifyOid,
        codeClassifyOid: this.localCodeClassifyOid,
        rowOid: row.rowOid,
      }
      };
    },
    submit() {
      const params = {
        classifyAttr: this.classifyAttr,
        isImprot: true,
        codeImprotSaveDatVOList: [
          {
            Clos: this.cloNamesList.map((item) => item.title),
            dataList: this.tab2Table.concat(this.selectedTab1Table),
            orderDTO: {
              codeClassifyOid: this.codeClassifyOid,
              templateOid: this.templateOid,
              secDTOList: [],
            },
          },
        ],
      };
      submitHistoryimport(params).then((res) => {
        if (res.code === 200) {
          this.$message.success(res.obj);
        } else {
          this.$message.error(res.obj);
        }
      });
    },
  },
  watch: {