liuying
2024-04-24 e4963529b19325117dcbf419c97503b86b16bf22
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
<template>
  <!-- @ok="handleSubmit" -->
  <a-modal
    title="控制属性规则明细"
    :width="900"
    :visible="visible"
    :confirmLoading="confirmLoading"
    @cancel="handleCancel"
    @ok="visible=false"
  >
    <a-spin :spinning="confirmLoading">
      <control-rule-detail ref="controlRuleDetail" @ok="handleOk" />
    </a-spin>
  </a-modal>
 
</template>
 
<script>
import moment from 'moment'
import { WmsControlRuleEdit } from '@/api/modular/main/WmsBase/WmsControlRuleManage'
import ControlRuleDetail from './detail.vue'
 
export default {
  components: {
    ControlRuleDetail
  },
  data() {
    return {
      Id: 0,
      labelCol: {
        xs: { span: 24 },
        sm: { span: 5 }
      },
      wrapperCol: {
        xs: { span: 24 },
        sm: { span: 15 }
      },
      record: {},
      visible: false,
      confirmLoading: false,
      form: this.$form.createForm(this)
    }
  },
  methods: {
    moment,
    // 初始化方法
    edit(record) {
      this.visible = true
      this.Id = record.id
      this.$nextTick(() => {})
      //深度拷贝 移除VUE的监听,防止INDEX页面值变动
      this.record = JSON.parse(JSON.stringify(record))
      this.$nextTick(() => {
        this.form.setFieldsValue({
          id: record.id,
          ruleCode: record.ruleCode,
          ruleName: record.ruleName,
          ruleDesc: record.ruleDesc,
          isDisabled: record.isDisabled
        })
      })
    },
    handleOk(){
    },
    handleSubmit() {
      const {
        form: { validateFields }
      } = this
      this.confirmLoading = true
      validateFields((errors, values) => {
        if (!errors) {
          for (const key in values) {
            if (values[key] == null) continue
            if (typeof values[key] === 'object') {
              values[key] = JSON.stringify(values[key])
              this.record[key] = values[key]
            } else {
              this.record[key] = values[key]
            }
          }
          WmsControlRuleEdit(this.record)
            .then(res => {
              if (res.success) {
                this.$message.success('编辑成功')
                this.confirmLoading = false
                this.$emit('ok', this.record)
                this.handleCancel()
              } else {
                this.$message.error('编辑失败:' + JSON.stringify(res.message))
              }
            })
            .finally(res => {
              this.confirmLoading = false
            })
        } else {
          this.confirmLoading = false
        }
      })
    },
    handleCancel() {
      this.form.resetFields()
      this.visible = false
    }
  }
}
</script>