| | |
| | | <template> |
| | | <a-modal |
| | | title="新增库位信息" |
| | | :width="900" |
| | | :visible="visible" |
| | | :confirmLoading="confirmLoading" |
| | | @ok="handleSubmit" |
| | | <a-modal title="新增库位信息" :width="1100" :visible="visible" :confirmLoading="confirmLoading" @ok="handleSubmit" |
| | | @cancel="handleCancel"> |
| | | <a-spin :spinning="confirmLoading"> |
| | | <a-form :form="form"> |
| | | <a-form :form="form"> |
| | | <a-form-item label="库位编码" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入库位编码" v-decorator="['placeCode', {rules: [{required: true, message: '请输入库位编码!'}]}]" /> |
| | | <a-input placeholder="请输入库位编码" |
| | | v-decorator="['placeCode', { rules: [{ required: true, message: '请输入库位编码!' }] }]" /> |
| | | </a-form-item> |
| | | <a-form-item label="库位名称" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入库位名称" v-decorator="['placeName', {rules: [{required: true, message: '请输入库位名称!'}]}]" /> |
| | | <a-input placeholder="请输入库位名称" |
| | | v-decorator="['placeName', { rules: [{ required: true, message: '请输入库位名称!' }] }]" /> |
| | | </a-form-item> |
| | | <a-form-item label="库位别名" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入库位别名" v-decorator="['placeAlias']" /> |
| | | </a-form-item> |
| | | <a-form-item label="库位类型" :labelCol="labelCol" :wrapperCol="wrapperCol"> |
| | | <a-select style="width: 100%" placeholder="请选择库位类型" v-decorator="['placeType', {rules: [{ required: true, message: '请选择库位类型!' }]}]"> |
| | | <a-select-option v-for="(item,index) in placeTypeData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | <a-select style="width: 100%" placeholder="请选择库位类型" |
| | | v-decorator="['placeType', { rules: [{ required: true, message: '请选择库位类型!' }] }]"> |
| | | <a-select-option v-for="(item, index) in placeTypeData" :key="index" :value="item.code">{{ item.name |
| | | }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | <a-form-item label="库位类型名称" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入库位类型名称" v-decorator="['placeTypeName']" /> |
| | | </a-form-item> |
| | | <!-- <a-form-item label="库位类型名称" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入库位类型名称" v-decorator="['placeTypeName', {rules: [{required: true, message: '请输入库位类型名称!'}]}]" /> |
| | | </a-form-item> --> |
| | | <a-form-item label="库位属性" :labelCol="labelCol" :wrapperCol="wrapperCol"> |
| | | <a-select style="width: 100%" placeholder="请选择库位属性" v-decorator="['placeStatus', {rules: [{ required: true, message: '请选择库位属性!' }]}]"> |
| | | <a-select-option v-for="(item,index) in placeStatusData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | <a-select style="width: 100%" placeholder="请选择库位属性" |
| | | v-decorator="['placeStatus', { rules: [{ required: true, message: '请选择库位属性!' }] }]"> |
| | | <a-select-option v-for="(item, index) in placeStatusData" :key="index" :value="item.code">{{ item.name |
| | | }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | <a-form-item label="是否堆垛机库位" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <!-- <a-form-item label="是否堆垛机库位" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-switch v-decorator="['isSrmPlace', { valuePropName: 'checked' }]" /> |
| | | </a-form-item> |
| | | <a-form-item label="堆垛机库位号" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | |
| | | </a-form-item> |
| | | <a-form-item label="输送线库位号" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入输送线库位号" v-decorator="['transPlaceNo']" /> |
| | | </a-form-item> |
| | | </a-form-item> --> |
| | | <a-form-item label="是否激活与任务调度" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-switch v-decorator="['isActivateWCS', { valuePropName: 'checked' }]" /> |
| | | </a-form-item> |
| | | <a-form-item label="库存环境" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入库存环境" v-decorator="['environment']" /> |
| | | </a-form-item> |
| | | <a-form-item label="库区编号" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <!-- <a-form-item label="库区编号" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入库区编号" v-decorator="['areaCode']" /> |
| | | </a-form-item> |
| | | </a-form-item> --> |
| | | <a-form-item label="所在库区" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入所在库区" v-decorator="['areaId']" /> |
| | | <a-select style="width: 100%" placeholder="请选择所在库区" |
| | | v-decorator="['areaid', { rules: [{ required: true, message: '请选择所在库区!' }] }]"> |
| | | <a-select-option v-for="(item, index) in WmsAreaData" :key="index" :value="item.id">{{ item.areaName |
| | | }}</a-select-option> |
| | | </a-select> |
| | | <!-- <a-input placeholder="请输入所在库区" v-decorator="['areaId', {rules: [{required: true, message: '请输入所在库区!'}]}]" /> --> |
| | | |
| | | |
| | | </a-form-item> |
| | | <a-form-item label="库区名称" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <!-- <a-form-item label="库区名称" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入库区名称" v-decorator="['areaName']" /> |
| | | </a-form-item> |
| | | </a-form-item> --> |
| | | <a-form-item label="检验码" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入检验码" v-decorator="['verificationCode']" /> |
| | | </a-form-item> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import moment from 'moment' |
| | | import { |
| | | import moment from 'moment' |
| | | import { |
| | | WmsPlaceAdd |
| | | } from '@/api/modular/main/WmsBase/WmsPlaceManage' |
| | | export default { |
| | | data () { |
| | | return { |
| | | labelCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 5 } |
| | | } from '@/api/modular/main/WmsBase/WmsPlaceManage' |
| | | import { WmsAreaPage, WmsAreaDelete, WmsAreaToExcel } from '@/api/modular/main/WmsBase/WmsAreaManage' |
| | | export default { |
| | | data() { |
| | | return { |
| | | labelCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 5 } |
| | | }, |
| | | wrapperCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 15 } |
| | | }, |
| | | placeTypeData: [], |
| | | placeStatusData: [], |
| | | visible: false, |
| | | confirmLoading: false, |
| | | form: this.$form.createForm(this), |
| | | WmsAreaData: [], |
| | | } |
| | | }, |
| | | wrapperCol: { |
| | | xs: { span: 24 }, |
| | | sm: { span: 15 } |
| | | }, |
| | | placeTypeData: [], |
| | | placeStatusData: [], |
| | | visible: false, |
| | | confirmLoading: false, |
| | | form: this.$form.createForm(this) |
| | | } |
| | | }, |
| | | methods: { |
| | | moment, |
| | | // 初始化方法 |
| | | add (record) { |
| | | this.visible = true |
| | | this.$nextTick(() => { |
| | | methods: { |
| | | moment, |
| | | // 初始化方法 |
| | | add(record) { |
| | | this.visible = true |
| | | this.$nextTick(() => { |
| | | |
| | | }); |
| | | const placeTypeOption = this.$options |
| | | this.placeTypeData = placeTypeOption.filters['dictData']('place_type') |
| | | const placeStatusOption = this.$options |
| | | this.placeStatusData = placeStatusOption.filters['dictData']('place_status') |
| | | }, |
| | | /** |
| | | * 提交表单 |
| | | */ |
| | | 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]) |
| | | } |
| | | }); |
| | | const placeTypeOption = this.$options |
| | | this.placeTypeData = placeTypeOption.filters['dictData']('place_type') |
| | | const placeStatusOption = this.$options |
| | | this.placeStatusData = placeStatusOption.filters['dictData']('place_status') |
| | | |
| | | // WmsAreaPage().then(res => { |
| | | // this.WmsAreaData = res.data.rows |
| | | // }) |
| | | }, |
| | | /** |
| | | * 提交表单 |
| | | */ |
| | | 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]) |
| | | } |
| | | WmsPlaceAdd(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 |
| | | } |
| | | WmsPlaceAdd(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> |
| | | <style lang="less" scoped> |
| | | .ant-row.ant-form-item { |
| | | width: 50% !important; |
| | | display: inline-block; |
| | | } |
| | | </style> |