王震
2023-12-19 2fa578a18ed9055f8cb9863a8a0f02977cfa8350
src/views/technology/structure/index.vue
@@ -13,13 +13,13 @@
        ref="structureTable"
      >
        <template #toolbar>
          <el-button type="primary" :loading="ifsSynsLoading" @click="syncIfs"
            >ERP同步</el-button
          >
          <el-button type="primary" @click="addOrUpdateHandle"
          v-if="permissions.technology_structure_add">新增</el-button>
          <el-button type="primary" @click="copyStructure"
          v-if="permissions.technology_structure_copy">复制</el-button>
        </template>
      </ttable>
      <!-- 弹窗, 新增 / 修改 -->
      <!--<table-form v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getData"></table-form>-->
      <el-dialog
        title="导入"
        :visible.sync="importStructureVisible"
@@ -47,44 +47,12 @@
                multiple
              >
                <i class="el-icon-upload"></i>
                <div class="el-upload__text"><em>导入装备数据</em></div>
                <div class="el-upload__text"><em>导入产品结构</em></div>
                <div class="el-upload__tip" slot="tip">
                  只能上传xlsx/xls文件,且不超过10M<el-button
                    type="text"
                    style="font-size:12px;"
                    @click="downZhuangbeiDataTemplate"
                    >下载模板</el-button
                  >
                </div>
              </el-upload>
            </div>
            <div>
              <el-upload
                style="margin-left:8px;display: inline;"
                class="upload-demo"
                drag
                :headers="headers"
                :action="shepinUploadInfo.url"
                :beforeUpload="beforeAvatarUpload"
                :limit="1"
                :show-file-list="false"
                :file-list="shepinfileList"
                :data="shepinUploadInfo.uploadData"
                :on-success="shepinFileSuccessUploadScan"
                :on-error="handleError"
                accept=".xlsx,.xls,.csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
                :auto-upload="true"
                ref="shepinUploadScan"
                multiple
              >
                <i class="el-icon-upload"></i>
                <div class="el-upload__text"><em>导入射频数据</em></div>
                <div class="el-upload__tip" slot="tip">
                  只能上传xlsx/xls文件,且不超过10M<el-button
                    type="text"
                    style="font-size:12px;"
                    @click="downShepinDataTemplate"
                    >下载模板</el-button
                    ></el-button
                  >
                </div>
              </el-upload>
@@ -130,7 +98,7 @@
      uploadInfo: {
        // 是否展示上传EXCEL以及对应的url
        isShow: true,
        url: '/mes/structure/uploadExt'
        url: '/mes/structure/uploadExcelPlus'
      },
      prelang: 'structure',
      options: {
@@ -185,39 +153,39 @@
            searchInfoType: 'text'
          },
          // 结构类型
          {
            minWidth: '120',
            prop: 'bomTypeDb',
            label: '结构类型',
            sort: true,
            isTrue: true,
            isSearch: true,
            searchInfoType: 'select',
            formatter: this.formatBomTypeDbType,
            optList: () => {
              return this.bomTypeDbOptions
            }
          },
          // {
          //   minWidth: '120',
          //   prop: 'bomTypeDb',
          //   label: '结构类型',
          //   sort: true,
          //   isTrue: true,
          //   isSearch: true,
          //   searchInfoType: 'select',
          //   formatter: this.formatBomTypeDbType,
          //   optList: () => {
          //     return this.bomTypeDbOptions
          //   }
          // },
          // 替代
          {
            minWidth: '120',
            prop: 'alternativeNo',
            label: '替代',
            sort: true,
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          // {
          //   minWidth: '120',
          //   prop: 'alternativeNo',
          //   label: '替代',
          //   sort: true,
          //   isTrue: true,
          //   isSearch: true,
          //   searchInfoType: 'text'
          // },
          // 替代描述
          {
            minWidth: '120',
            prop: 'alternativeDesc',
            label: '替代描述',
            sort: true,
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text'
          },
          // {
          //   minWidth: '120',
          //   prop: 'alternativeDesc',
          //   label: '替代描述',
          //   sort: true,
          //   isTrue: true,
          //   isSearch: true,
          //   searchInfoType: 'text'
          // },
          // 是否已同步至ERP
          {
            minWidth: '120',
@@ -235,7 +203,7 @@
            }
          },
          // 是否为默认结构
          {
          /* {
            minWidth: '120',
            prop: 'master',
            label: '默认结构',
@@ -249,7 +217,7 @@
            formatter: (row, column, cellValue) => {
              return cellValue == true ? '是' : '否'
            }
          },
          }, */
          // 描述
          {
            minWidth: '120',
@@ -262,22 +230,7 @@
            noShowTip: false
          }
        ],
        toolbar: [
          {
            text: '新增',
            // icon: 'el-icon-plus',
            type: 'primary',
            fun: this.addOrUpdateHandle,
            disabled: false,
            permitArr: []
          },
          {
            text: '复制',
            fun: this.copyStructure,
            disabled: false,
            permitArr: []
          }
        ],
        toolbar: [],
        operator: [
          {
            text: '删除',
@@ -326,7 +279,7 @@
      zhuangbeiUploadInfo: {
        // 是否展示上传EXCEL以及对应的url
        isShow: true,
        url: '/mes/structure/uploadExt'
        url: '/mes/structure/uploadExcelPlus'
      },
      zhuangbeifileList: [],
      shepinfileList: [],
@@ -345,6 +298,7 @@
    this.getData()
  },
  created() {
    this.uploadInfo.isShow = this.permissions.technology_structure_upload
    this.table.column.find((e) => e.label === '已同步至ERP').isTrue = false
    this.getBomTypeDbOptions()
  },
@@ -364,14 +318,21 @@
    },
    // 新增 / 修改
    addOrUpdateHandle(row) {
      if(!this.permissions.technology_structure_edit && row.id!=null){
        this.$message.error("该角色没有操作权限")
        return
      }
      this.$router.push({
        name: 'singleStructureForm',
        params: { id: row == null ? null : row.id }
      })
      // this.$router.push({name:"structureForm",query:{id:row==null?null:row.id}})
    },
    // 删除
    deleteHandle(row) {
      if(!this.permissions.technology_structure_del){
        this.$message.error("该角色没有操作权限")
        return
      }
      this.$confirm('是否确认删除ID为' + row.id, '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
@@ -487,8 +448,9 @@
        this.$message.warning(response.msg)
      } else {
        this.$message({
          message: '上传成功',
          type: 'success'
          message: response.data,
          type: 'success',
          dangerouslyUseHTMLString: true
        })
        this.getData()
      }