| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 | <template>  <div v-if="visible">    <el-dialog id="reviseplanDialog" title="修改计划" :destroy-on-close="true" :visible.sync="visible" :close-on-click-modal="false" append-to-body :before-close="closeDialog" width="90%">      <el-row class="dialogMinHeight">        <el-button class="successBorder" size="medium" style="position: absolute;z-index: 1;right: 2px;top: 2px;" @click="saveData()">应用</el-button>        <el-tabs v-model="parentActiveName" type="border-card" @tab-click="handleClick">          <el-tab-pane label="栏舍配方" name="栏舍配方">            <DhedFormula ref="DhedFormula" :parent-date="date" />          </el-tab-pane>          <el-tab-pane label="撒料计划" name="撒料计划">            <MaterialIssuancePlan ref="MaterialIssuancePlan" :parent-date="date" />          </el-tab-pane>          <el-tab-pane label="预混计划" name="预混计划">            <PremixedPlan ref="PremixedPlan" :parent-date="date" />          </el-tab-pane>        </el-tabs>      </el-row>      <div slot="footer" class="dialog-footer" style="bottom: 10px;">        <el-button class="cancelClose" @click="closeDialog()">关闭</el-button>      </div>    </el-dialog>  </div></template><script>import { PostDataByName } from '@/api/common'import DhedFormula from './typePage/dhedFormula.vue'import MaterialIssuancePlan from './typePage/materialIssuancePlan.vue'import PremixedPlan from './typePage/premixedPlan.vue'import { MessageBox } from 'element-ui'import Cookies from 'js-cookie'export default {  name: 'RevisePlan',  components: {    DhedFormula, MaterialIssuancePlan, PremixedPlan  },  props: {    show: { type: Boolean, default: false }, // 弹框可见标志    parentActiveName: { type: String, defalut: '栏舍配方' },    parentDate: { type: String, defalut: '' }  },  data() {    return {      typeList: [{ id: '1', effect: 'dark', label: '栏舍配方' }, { id: '2', effect: 'plain', label: '撒料计划' }, { id: '3', effect: 'plain', label: '预混计划' }],      visible: this.show,      dialogFormVisible: false,      dialogStatus: '',      rules: {},      date: '',      parentActiveName: '',      temp: {},      isDhedFormula: true,      isMaterialIssuancePlan: false,      isPremixedPlan: false,      textMap: {        revisePlan: '修改计划'      },      isokDisable: false,      requestParam: {}    }  },  watch: {    // 监听show,visible 随着show变化而变化    show: {      immediate: true,      handler(show) {        this.visible = show      }    },    parentDate: {      immediate: true,      handler(newVal, oldVal) {        console.log('newVal-date', newVal)        this.date = newVal      }    },    parentActiveName: {      immediate: true,      handler(newVal, oldVal) {        console.log('newVal===', newVal)        console.log('oldVal', oldVal)        this.parentActiveName = newVal      }    }  },  created() {  },  methods: {    closeDialog() {      this.$emit('update:show', false) // 子组件更新弹框隐藏      this.$emit('activeName', '栏舍配方')    },    saveData() {      console.log('点击了应用')      MessageBox.confirm('是否确认将' + this.date + '的数据应用到当前?', {        confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning'      }).then(() => {        this.requestParam.name = 'updatedownloadedplanDone'        this.requestParam.parammaps = {}        this.requestParam.parammaps.pastureid = Cookies.get('pastureid')        this.requestParam.parammaps.date = this.date        PostDataByName(this.requestParam).then(response => {          if (response.msg === 'fail') {            this.$notify({ title: '保存失败', message: response.data, type: 'warning', duration: 2000 })          } else {            this.$notify({ title: '成功', message: '保存成功', type: 'success', duration: 2000 })            this.closeDialog()          }        })      }).catch(() => {        this.$message({ type: 'info', message: '已取消应用' })      })    },    handleClick(item) {      console.log(item.name)      if (item.name == '撒料计划') {        this.$refs.MaterialIssuancePlan.getIsDisplay()        this.$refs.MaterialIssuancePlan.getDownList()      } else if (item.name == '栏舍配方') {        this.$refs.DhedFormula.getIsDisplay()        this.$refs.DhedFormula.getDownList()      } else {        this.$refs.PremixedPlan.getDownList()        this.$refs.PremixedPlan.getIsDisplay()        this.$refs.PremixedPlan.getList()      }    }  }}</script><style lang="scss" scoped>  #reviseplanDialog {      margin-top: -10vh !important  }</style>
 |