Fixiaobai
2023-10-27 adb49a3e193b7b9cc71805a82d1d6afb8a4c339b
src/views/basic/part/index.vue
@@ -1,30 +1,29 @@
<template>
  <div class="mod-config">
    <basic-container>
      <ttable
        :table="table"
        @handleSelectionChange="handleSelectionChange"
        :uploadInfo="uploadInfo"
        :isShowHide="true"
        :prelang="prelang"
        :options="options"
        :bottomOffset="125"
        :ajaxFun="ajaxFun"
        ref="partTable"
      >
      <ttable :table="table" @handleSelectionChange="handleSelectionChange" :uploadInfo="uploadInfo" :isShowHide="true"
        :prelang="prelang" :options="options" :bottomOffset="125" :ajaxFun="ajaxFun" ref="partTable">
        <template #toolbar></template>
      </ttable>
      <!-- 弹窗, 新增 / 修改 -->
      <table-form
        v-if="addOrUpdateVisible"
        ref="addOrUpdate"
        @refreshDataList="getData"
      ></table-form>
      <PrintLabelForm
        :currshowlist.sync="showPrintLabelForm"
        :printLabelInfo="printLabelInfo"
      />
      <table-form v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getData"></table-form>
      <PrintLabelForm :currshowlist.sync="showPrintLabelForm" :printLabelInfo="printLabelInfo" />
    </basic-container>
    <el-dialog title="获取IFS零件" :visible.sync="dialogVisible" width="30%" :before-close="handleClose">
      <el-row>
        <el-col :span="6" style="height: 40px;line-height: 30px;">
          同步日期:
        </el-col>
        <el-col :span="18">
          <el-date-picker style="width: 100%;height: 100%;" v-model="selectDate" type="date" placeholder="选择日期">
          </el-date-picker>
        </el-col>
      </el-row>
      <span slot="footer" class="dialog-footer">
        <el-button @click="handleClose">取 消</el-button>
        <el-button type="primary" @click="syncIfs">确 定</el-button>
      </span>
    </el-dialog>
  </div>
</template>
@@ -34,12 +33,13 @@
import { mapGetters } from 'vuex'
import ttable from '@/views/common/ztt-table.vue'
import { remote } from '../../../api/admin/dict'
import { dateFormat } from '@/util/date'
import { dateFormat,dateFormatYearMonthDate,dateFormatPlus } from '@/util/date'
import PrintLabelForm from './print-label-form.vue'
export default {
  data() {
    return {
      selectDate: "",
      dialogVisible: false,
      ajaxFun: fetchList,
      addOrUpdateVisible: false,
      multipleSelection: [],
@@ -363,9 +363,9 @@
            fun: this.addOrUpdateHandle
          },
          {
            text: '同步ERP',
            text: '获取IFS零件',
            type: 'primary',
            fun: this.syncIfs,
            fun: this.syncISDate,
            loading: false
          },
          {
@@ -427,6 +427,10 @@
    ...mapGetters(['permissions'])
  },
  methods: {
    handleClose() {
      this.selectDate = "";
      this.dialogVisible = false
    },
    // 获取数据列表
    getData() {
      this.$refs.partTable.getDataList()
@@ -446,7 +450,7 @@
        closeOnClickModal: false,
        type: 'warning'
      })
        .then(function() {
        .then(function () {
          return delObj(row.id)
        })
        .then((data) => {
@@ -627,14 +631,52 @@
    //     this.$message.warning('请先选择零件,再进行同步!')
    //   }
    // },
    syncISDate() {
      this.dialogVisible = true
      this.selectDate = ''
    },
    dateFormat(longTypeDate) {
      var dateTypeDate = "";
      var date = new Date();
      date.setTime(longTypeDate);
      dateTypeDate += date.getFullYear();   //年
      dateTypeDate += "-" + getMonth(date); //月
      dateTypeDate += "-" + getDay(date);   //日
      return dateTypeDate;
    },
    syncIfs() {
      syncPart({})
      this.table.toolbar.find((e) => e.text === '获取IFS零件').loading = true
      this.dialogVisible = false
      let datas = new FormData()
      let times = null;
      if (this.selectDate != '' && this.selectDate != null) {
        times=dateFormatPlus(this.selectDate)
      }else{
        times=null
      }
      datas.set("date", times)
      // console.log(datas.get("date"));
      // return ;np
      // console.log(datas.get("date"));
      // console.log(this.selectDate);
      // return
      syncPart(datas)
        .then((res) => {
          const data = res.data
          console.log(data);
          if (data.code === 0) {
            this.$message.success('开始同步')
            if (data.data > 0) {
              this.$message.success('同步成功' + data.data + "条数据")
            }
            if (data.data < 1) {
              this.$message.warning("该日期没有新的零件数据");
            }
            this.table.toolbar.find((e) => e.text === '获取IFS零件').loading = false
            this.getData()
          } else {
            this.$message.error('同步ERP失败')
            this.$message.error('同步IFS失败')
            this.table.toolbar.find((e) => e.text === '获取IFS零件').loading = false
            this.getData()
          }
        })
        .catch((e) => {