田源
2023-07-12 99a6eb4e06c930f00bbf05348e53f38b65969ecd
Source/UBCS-WEB/src/components/Crud/VciMasterCrud.vue
@@ -1,103 +1,91 @@
<template>
  <basic-container>
    <div class="main">
    <div class="top">
      <div class="testbox">
        <div>
          <!-- <el-button plain size="small" type="primary" @click="addvisible = true">增加
          </el-button>
          <el-button plain size="small" type="primary" @click="editHandler">编辑
          </el-button>
          <el-button plain size="small" type="primary" @click="openBatchImport('batchImportApply')">批量导入申请</el-button>
          <el-button plain size="small" type="primary" @click="openBatchImport('historyImport')">历史数据导入</el-button>
          <el-button plain size="small" type="primary" @click="openBatchImport('batchApplyCode')">批量申请编码</el-button>
          <el-button plain size="small" type="primary">批量发布</el-button>
          <el-button plain size="small" type="primary">查看流程历史</el-button>
          <el-button plain size="small" type="primary">删除</el-button>
          <el-button plain size="small" type="primary" @click="setHandler">发布</el-button>
          <el-button plain size="small" type="primary" @click="DataChange">数据更改</el-button>
          <el-button plain size="small" type="primary" @click="huishouHandler">回收</el-button>
          <el-button plain size="small" type="primary" @click="openD">导出
          </el-button>
          <el-button plain size="small" type="primary" @click="findHandler">查询
          </el-button>
          <el-button plain size="small" type="primary" @click="similarHandler">相似项查询</el-button>
          <el-button plain size="small" type="primary">刷新</el-button>
          <el-input placeholder="请输入关键字按回车查询" size="small"
            style="width: 180px; margin-left: 5px; margin-top: 10px"></el-input> -->
    <div class="testbox">
      <div>
        <!-- <el-button plain size="small" type="primary" @click="addvisible = true">增加
        </el-button>
        <el-button plain size="small" type="primary" @click="editHandler">编辑
        </el-button>
        <el-button plain size="small" type="primary" @click="openBatchImport('batchImportApply')">批量导入申请</el-button>
        <el-button plain size="small" type="primary" @click="openBatchImport('historyImport')">历史数据导入</el-button>
        <el-button plain size="small" type="primary" @click="openBatchImport('batchApplyCode')">批量申请编码</el-button>
        <el-button plain size="small" type="primary">批量发布</el-button>
        <el-button plain size="small" type="primary">查看流程历史</el-button>
        <el-button plain size="small" type="primary">删除</el-button>
        <el-button plain size="small" type="primary" @click="setHandler">发布</el-button>
        <el-button plain size="small" type="primary" @click="DataChange">数据更改</el-button>
        <el-button plain size="small" type="primary" @click="huishouHandler">回收</el-button>
        <el-button plain size="small" type="primary" @click="openD">导出
        </el-button>
        <el-button plain size="small" type="primary" @click="findHandler">查询
        </el-button>
        <el-button plain size="small" type="primary" @click="similarHandler">相似项查询</el-button>
        <el-button plain size="small" type="primary">刷新</el-button>
        <el-input placeholder="请输入关键字按回车查询" size="small"
          style="width: 180px; margin-left: 5px; margin-top: 10px"></el-input> -->
      </div>
      <el-row style="height: 700px; width: 100%">
        <div>
          <el-button v-for="(item, index) in masterVrBtnList" :key="index" plain size="small" type="primary" v-if="!['PREVIEW', 'DELETEFILE', 'revisefile', 'DOWNLOADFILE', 'UPLOADFILE'].includes(item.uniqueFlag)"
                     @click="handelBtnClick(item)">{{
              item.name
            }}
          </el-button>
          <el-input v-model="WupinFindValue" placeholder="请输入关键字按回车查询"
                    size="small" style="width: 180px; margin-left: 5px; margin-top: 10px"></el-input>
        </div>
        <el-row style="height: 700px; width: 100%">
          <div>
            <el-button v-for="(item, index) in masterVrBtnList" :key="index" plain size="small" type="primary"
                       @click="handelBtnClick(item)">{{
                item.name
              }}
            </el-button>
            <el-input v-model="WupinFindValue" placeholder="请输入关键字按回车查询"
                      size="small" style="width: 180px; margin-left: 5px; margin-top: 10px"></el-input>
          </div>
          <el-table v-if="tableData.length != 0" v-loading="isLoading" :data="tableData" max-height="700" style=""
                    @cell-click="handleCellClick" @row-click="handleRowClick" @selection-change="handleSelectionChange" @select="handleSelection" @sort-change="sortChange">
            <el-table-column fixed type="selection" width="55"></el-table-column>
            <el-table-column fixed label="序号" type="index" width="55">
            </el-table-column>
            <el-table-column v-for="item in this.tableHeadFindData" :key="item.id" :formatter="item.formatter" :label="item.label"
                             :prop="item.prop" :show-overflow-tooltip="true"
                             :sortable="item.sortable"
                             :width="item.label.length >= 4 ? '150' : item.label.length == 3 ? '120' : '90'"
                             align="center">
            </el-table-column>
          </el-table>
        </el-row>
        <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
                            :disabledProp="disabledProp" :templateOid="templateOid" :visible.sync="addvisible" type="add"
                            @submit="AddSumbit">
        </FormTemplateDialog>
        <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
                            :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'修改编码信息'"
                            :visible.sync="editvisible"
                            type="edit" @submit="EditSumbit"></FormTemplateDialog>
        <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
                            :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'已发布数据更改'"
                            :type="edit"
                            :visible.sync="DataVisible"></FormTemplateDialog>
        <set-personnel :parameter="this.parameter" :visible.sync="visibleFlow"></set-personnel>
        <advanced-query :options="this.options" :visible.sync="findvisible" @echoContion="echoContion"></advanced-query>
        <integration-transfer :data="transferData" :props="transferProps" :visible.sync="dialogPush"
                              @save="handelTransferSave"></integration-transfer>
        <ResembleQueryDialog :codeClassifyOid="codeClassifyOid" :codeRuleOid="this.codeRuleOid" :rowOid="rowOid"
                             :templateOid="templateOid" :visible.sync="similarVisible"></ResembleQueryDialog>
      </div>
      <div class="block" style="display: flex; justify-content: flex-end">
        <el-pagination :current-page="page.currentPage" :page-size="page.pageSizes" :page-sizes="page.pageSizes"
                       :total="page.total" layout="total, sizes, prev, pager, next, jumper"
                       @size-change="handleSizeChange"
                       @current-change="handleCurrentChange">
        </el-pagination>
      </div>
      <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :visible.sync="batchImportData.visible">
      </BatchImport>
        <el-table v-if="tableData.length != 0" v-loading="isLoading" :data="tableData" max-height="700" style=""
                  @cell-click="handleCellClick" @selection-change="handleSelectionChange" @sort-change="sortChange">
          <el-table-column fixed type="selection" width="55"></el-table-column>
          <el-table-column fixed label="序号" type="index" width="55">
          </el-table-column>
          <el-table-column v-for="item in this.tableHeadFindData" :key="item.id" :formatter="item.formatter" :label="item.label"
                           :prop="item.prop" :show-overflow-tooltip="true"
                           :sortable="item.sortable"
                           :width="item.label.length >= 4 ? '150' : item.label.length == 3 ? '120' : '90'"
                           align="center">
          </el-table-column>
        </el-table>
      </el-row>
      <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
                          :disabledProp="disabledProp" :templateOid="templateOid" :visible.sync="addvisible" type="add"
                          @submit="AddSumbit">
      </FormTemplateDialog>
      <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
                          :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'修改编码信息'"
                          :visible.sync="editvisible"
                          type="edit" @submit="EditSumbit"></FormTemplateDialog>
      <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid"
                          :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'已发布数据更改'"
                          :type="edit"
                          :visible.sync="DataVisible"></FormTemplateDialog>
      <set-personnel :parameter="this.parameter" :visible.sync="visibleFlow"></set-personnel>
      <advanced-query :options="this.options" :visible.sync="findvisible" @echoContion="echoContion"></advanced-query>
      <integration-transfer :data="transferData" :props="transferProps" :visible.sync="dialogPush"
                            @save="handelTransferSave"></integration-transfer>
      <ResembleQueryDialog :codeClassifyOid="codeClassifyOid" :codeRuleOid="this.codeRuleOid" :rowOid="rowOid"
                           :templateOid="templateOid" :visible.sync="similarVisible"></ResembleQueryDialog>
    </div>
    <div class="bottom">
      <el-collapse v-model="visibleNames" accordion>
        <el-collapse-item title="附件列表" name="1">
          <fileInHtml :options="fileOptions"></fileInHtml>
        </el-collapse-item>
      </el-collapse>
    <div class="block" style="display: flex; justify-content: flex-end">
      <el-pagination :current-page="page.currentPage" :page-size="page.pageSizes" :page-sizes="page.pageSizes"
                     :total="page.total" layout="total, sizes, prev, pager, next, jumper"
                     @size-change="handleSizeChange"
                     @current-change="handleCurrentChange">
      </el-pagination>
    </div>
    </div>
    <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :visible.sync="batchImportData.visible">
    </BatchImport>
  </basic-container>
</template>
<script>
import {MasterTable, TableData, FindData} from "@/api/GetItem";
import {MasterTable, TableData, FindData,addSaveCode,editSaveCode} from "@/api/GetItem";
import {listCodeAttributeByClassId} from "@/api/integration/integration.js";
import integrationTransfer from "@/views/integration/integrationTransfer";
import SetPersonnel from "@/components/template/SetPersonnel";
import ResembleQueryDialog from "@/components/FormTemplate/ResembleQueryDialog.vue";
import BatchImport from '@/components/BatchImport'
import {validatenull} from "@/util/validate";
import fileInHtml from "@/components/file/inHtml.vue";
export default {
  components: {
@@ -105,7 +93,7 @@
    SetPersonnel,
    ResembleQueryDialog,
    BatchImport,
    fileInHtml
    // fileInHtml
  },
  name: "Crud.vue",
  props: {
@@ -166,7 +154,6 @@
        }
      },
      visibleNames:[],
      visibleFile:false,
      visibleFlow: false,
      transferData: [],
      transferProps: {
@@ -220,8 +207,7 @@
      }
    };
  },
  computed: {
  },
  computed: {},
  created() {
  },
  mounted() {
@@ -515,11 +501,21 @@
      }
    },
    //增加保存
    AddSumbit() {
    AddSumbit(val) {
      this.addvisible = false;
      console.log(val)
      addSaveCode(val).then(res=>{
        console.log(res)
        this.onLoad()
      })
    },
    EditSumbit(val) {
      this.editvisible = false;
      console.log(val)
      editSaveCode(val).then(res=>{
        console.log(res)
        this.onLoad()
      })
    },
    openBatchImport(type) {
      this.batchImportData.visible = true