liuying
2024-04-24 0c525ecf57809add2b988f331e22a74022ad1070
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
<template>
  <a-modal title="新增物料-替代品管理" :width="900" :visible="visible" :confirmLoading="confirmLoading" @ok="handleSubmit"
    @cancel="handleCancel">
    <a-spin :spinning="confirmLoading">
 
    </a-spin> <a-form :form="form">
      <!-- <a-form-item label="替代编号" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
        <a-input placeholder="请输入替代编号"
          v-decorator="['substituteCode', { rules: [{ required: true, message: '请输入替代编号!' }] }]" />
      </a-form-item> -->
      <!-- <a-form-item label="物料编号" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
        <a-input placeholder="请输入物料编号"
          v-decorator="['materialCode', { rules: [{ required: true, message: '请输入物料编号!' }] }]" />
      </a-form-item>
      <a-form-item label="物料名称" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
        <a-input placeholder="请输入物料名称"
          v-decorator="['materialName', { rules: [{ required: true, message: '请输入物料名称!' }] }]" />
      </a-form-item> -->
      <a-form-item label="替代品物料编号" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
        <!-- <a-input placeholder="请输入替代品物料编号"
          v-decorator="['substituteMaterialCode', { rules: [{ required: true, message: '请输入替代品物料编号!' }] }]" /> -->
        <a-select style="width: 100%" placeholder="请选择替代品物料编号"  v-decorator="['substituteMaterialCode', { rules: [{ required: true, message: '请输入替代品物料编号!' }] }]" >
          <a-select-option v-for="(item, index) in selectTypeData" :key="index" :value="item.materialCode" >{{
            item.materialName }}</a-select-option>
        </a-select>
 
      </a-form-item>
      <!-- <a-form-item label="替代品物料名称" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
        <a-input placeholder="请输入替代品物料名称"
          v-decorator="['substituteMaterialName', { rules: [{ required: true, message: '请输入替代品物料名称!' }] }]" />
      </a-form-item> -->
      <a-form-item label="替代次序" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
        <a-input-number placeholder="请输入替代次序" style="width: 100%"
          v-decorator="['substituteIndex', { rules: [{ required: true, message: '请输入替代次序!' }] }]" />
      </a-form-item>
      <!-- <a-form-item label="是否禁用" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback>
          <a-switch v-decorator="['isDisabled',{rules: [{ required: true, message: '请选择是否禁用!' }], valuePropName: 'checked'}]" />
        </a-form-item> -->
    </a-form>
  </a-modal>
</template>
 
<script>
import moment from 'moment'
import { WmsMaterialPage } from '@/api/modular/main/WmsBase/WmsMaterialManage'
export default {
  data() {
    return {
      labelCol: {
        xs: { span: 24 },
        sm: { span: 5 }
      },
      wrapperCol: {
        xs: { span: 24 },
        sm: { span: 15 }
      },
      visible: false,
      confirmLoading: false,
      form: this.$form.createForm(this)
    }
  },
  created() {
    this.getSelectDataList()
  },
  methods: {
    moment,
    // 初始化方法
    add(record) {
      this.visible = true
 
      this.$nextTick(() => {
        this.form.setFieldsValue(
          {
            materialCode: record.materialCode,
            materialName: record.materialName,
            // id: record.id,
            substituteCode: "",
            substituteMaterialCode: "",
            substituteMaterialName: "",
            substituteIndex: "",
            isDisabled: ""
          }
        )
      })
    },
    getSelectDataList() {
      WmsMaterialPage().then((d) => {
        this.selectTypeData = d.data.rows || []
      }).catch(() => {
      })
    },
    /**
     * 提交表单
     */
    handleSubmit() {
      const { form: { validateFields } } = this
      this.confirmLoading = true
      validateFields((errors, values) => {
        if (!errors) {
          for (const key in values) {
            if (typeof (values[key]) === 'object') {
              values[key] = JSON.stringify(values[key])
            }
          }
          this.confirmLoading = false
          this.$emit('ok', values)
          this.handleCancel()
 
 
          // WmsSubstituteGoodAdd(values).then((res) => {
          //   if (res.success) {
          //     this.$message.success('新增成功')
          //     this.confirmLoading = false
          //     this.$emit('ok', values)
          //     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>