zss
2024-01-05 a6d2cf654791065fe9ae41712c147f70380a13f0
src/views/plan/customerorder/index.vue
@@ -53,8 +53,7 @@
            style="margin-left:10px;"
            type="primary"
            @click="()=>exportDialogVisible=true"
            >导出台账</el-button
          >
            >导出台账</el-button>
        </template>
      </ttable>
      <!-- 弹窗, 日期选择 -->
@@ -273,7 +272,8 @@
  exportCustomerOrder,
  exportCustomerOrderSplit,
  syncOrder,
  dropByContractNo
  dropByContractNo,
  downloadWordFile
} from '../../../api/plan/customerorder'
import DocumentTable from '@/views/common/document.vue'
import { remote } from '@/api/admin/dict'
@@ -285,6 +285,7 @@
export default {
  data() {
    return {
      uniqueStateArr: [],
      dataForm: {
        selectTime: null,
        exportTime: null
@@ -414,6 +415,7 @@
            width: '100px',
            prop: 'contractNo',
            label: '合同编号',
            sort: true,
            isTrue: true,
            isSearch: true,
            searchInfoType: 'text',
@@ -818,36 +820,6 @@
  created() {
    // this.getManufactureAttrs()
    this.getTitles()
    /**
     * {
            text: '获取销售订单',
            type: 'primary',
            fun: this.pullCustomerOrder,
            disabled: false,
            permitArr: []
          },
          {
            text: '获取IFS行号',
            type: 'primary',
            fun: this.pullIfsLineNo,
            disabled: false,
            permitArr: [],
            loading: false
          },
          {
            text: '提交审核',
            type: 'primary',
            fun: this.auditCustomerOrder,
            disabled: false,
            permitArr: [],
            loading: false
          },
          {
            text: '主生产计划',
            disabled: false,
            fun: this.masterPlanHandle
          }
     */
    this.table.toolbar.push({
      text: '新增销售订单',
      type: 'primary',
@@ -855,14 +827,6 @@
      disabled: false,
      permitArr: []
    })
    // this.table.toolbar.push({
    //   text: '同步ERP',
    //   type: 'primary',
    //   fun: this.syncERP,
    //   loading: false,
    //   disabled: false,
    //   permitArr: []
    // })
    if (this.permissions.customerorder_from_otc) {
      this.table.toolbar.push({
        text: '获取销售订单',
@@ -872,16 +836,6 @@
        permitArr: []
      })
    }
    // if (this.permissions.customerorder_ifs_line) {
    //   this.table.toolbar.push({
    //     text: '获取ERP行号',
    //     type: 'primary',
    //     fun: this.pullIfsLineNo,
    //     disabled: false,
    //     permitArr: [],
    //     loading: false
    //   })
    // }
    if (this.permissions.customerorder_submit_oa) {
      this.table.toolbar.push({
        text: '提交审核',
@@ -897,18 +851,50 @@
        text: '设置销售件',
        type: 'primary',
        fun: this.setSalesPart,
        disabled: false
        disabled: false,
        permitArr: []
      })
    }
    if (this.permissions.customerorder_create_masterplan) {
      this.table.toolbar.push({
        text: '主生产计划',
        disabled: false,
        fun: this.masterPlanHandle
        fun: this.masterPlanHandle,
        permitArr: []
      })
    }
    this.table.toolbar.push({
        text: '下载Word',
        disabled: false,
        type: 'primary',
        fun: this.downloadWord,
        permitArr: ['03plan','04planed'],
    })
  },
  methods: {
    //下载word
    downloadWord(){
        let ids = this.multipleSelection.map(ele=>ele.id)
        if(ids.length<1){
            this.$message.error("请选择一条数据")
            return
        }
        downloadWordFile(ids).then(response=>{
          // 处理返回的文件流
          const blob = response.data
          const link = document.createElement('a')
          link.href = URL.createObjectURL(blob)
          link.download = '工艺文件.docx'
          document.body.appendChild(link)
          link.click()
          window.setTimeout(function() {
            URL.revokeObjectURL(blob)
            document.body.removeChild(link)
          }, 0)
        }).catch(error=>{
            console.error(error);
        })
    },
    getOtcPartSyncOptionList() {
      return this.otcPartSyncOptionList
    },
@@ -1225,6 +1211,21 @@
          this.stateTagArr[i].disabled = true
        }
      }
      // 循环表头按钮,判断每个按钮的permitArr是否完全包含选中状态,若完全包含,则按钮亮,否则按钮灰
      var toolbar = this.table.toolbar
      for (var j = 0; j < toolbar.length; j++) {
        if (
          uniqueStateArr.every((val) =>
            toolbar[j].permitArr.length <= 0
              ? true
              : toolbar[j].permitArr.includes(val)
          )
        ) {
          toolbar[j].disabled = false
        } else {
          toolbar[j].disabled = true
        }
      }
      this.multipleSelection = val
    },
    getCustomerCoState(row, column, cellValue) {