| | |
| | | placeholder="请输入物料类型名称" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <!-- <a-col :md="8" :sm="24"> |
| | | <a-form-item label="物料类型描述"> |
| | | <a-input v-model="queryParam.materialTypeDescr" allow-clear |
| | | placeholder="请输入物料类型描述" /> |
| | | </a-form-item> |
| | | </a-col><a-col :md="8" :sm="24"> |
| | | </a-col> --> |
| | | <!-- <a-col :md="8" :sm="24"> |
| | | <a-form-item label="物料类型"> |
| | | <a-input-number v-model="queryParam.materialType" style="width: 100%" allow-clear |
| | | placeholder="请输入物料类型" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | </a-col> --> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="物料组"> |
| | | <a-input v-model="queryParam.materialGroup" allow-clear placeholder="请输入物料组" /> |
| | |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="采购单位"> |
| | | <a-input v-model="queryParam.pOUnit" allow-clear placeholder="请输入采购单位" /> |
| | | <a-input v-model="queryParam.poUnit" allow-clear placeholder="请输入采购单位" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="标包数量"> |
| | | <a-input v-model="queryParam.sNP" allow-clear placeholder="请输入标包数量" /> |
| | | <a-input v-model="queryParam.snp" allow-clear placeholder="请输入标包数量" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | |
| | | <a-input v-model="queryParam.batchRuleId" allow-clear placeholder="请输入批次属性规则" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <!-- <a-col :md="8" :sm="24"> |
| | | <a-form-item label="控制属性规则"> |
| | | <a-input v-model="queryParam.controlRuleId" allow-clear placeholder="请输入控制属性规则" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | </a-col> --> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="是否禁用"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isDisabled" |
| | |
| | | <a-form-item label="创建时间"> |
| | | <a-range-picker style="width: 100%" :placeholder="['开始时间', '结束时间']" :show-time="{ |
| | | format: 'HH:mm:ss', defaultValue: [moment('00:00:00', 'HH:mm:ss'), moment('23:59:59', 'HH:mm:ss')] |
| | | }" |
| | | v-model="queryParam.createdTime" value-format="YYYY-MM-DD HH:mm:ss" |
| | | format="YYYY-MM-DD HH:mm:ss" @change="onChangecreatedTime" /> |
| | | }" v-model="queryParam.createdTime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss" |
| | | @change="onChangecreatedTime" /> |
| | | |
| | | </a-form-item> |
| | | </a-col> |
| | |
| | | <a-form-item label="更新时间"> |
| | | <a-range-picker style="width: 100%" :placeholder="['开始时间', '结束时间']" :show-time="{ |
| | | format: 'HH:mm:ss', defaultValue: [moment('00:00:00', 'HH:mm:ss'), moment('23:59:59', 'HH:mm:ss')] |
| | | }" |
| | | v-model="queryParam.updatedTime" value-format="YYYY-MM-DD HH:mm:ss" |
| | | format="YYYY-MM-DD HH:mm:ss" @change="onChangeupdatedTime" /> |
| | | }" v-model="queryParam.updatedTime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss" |
| | | @change="onChangeupdatedTime" /> |
| | | |
| | | </a-form-item> |
| | | </a-col> |
| | |
| | | sorter: true, |
| | | dataIndex: 'materialTypeName' |
| | | }, |
| | | { |
| | | title: '物料类型描述', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'materialTypeDescr' |
| | | }, |
| | | { |
| | | title: '物料类型', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'materialType' |
| | | }, |
| | | // { |
| | | // title: '物料类型描述', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'materialTypeDescr' |
| | | // }, |
| | | // { |
| | | // title: '物料类型', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'materialType' |
| | | // }, |
| | | { |
| | | title: '物料组', |
| | | align: 'center', |
| | |
| | | sorter: true, |
| | | dataIndex: 'materialGroup' |
| | | }, |
| | | { |
| | | title: 'ABC分类名称', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'abcClassName' |
| | | }, |
| | | // { |
| | | // title: 'ABC分类名称', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'abcClassName' |
| | | // }, |
| | | { |
| | | title: 'ABC分类', |
| | | align: 'center', |
| | |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'pOUnit' |
| | | dataIndex: 'poUnit' |
| | | }, |
| | | { |
| | | title: '颜色', |
| | |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'sNP' |
| | | dataIndex: 'snp' |
| | | }, |
| | | { |
| | | title: '换算率', |
| | |
| | | sorter: true, |
| | | dataIndex: 'batchRuleId' |
| | | }, |
| | | { |
| | | title: '控制属性规则', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'controlRuleId' |
| | | }, |
| | | // { |
| | | // title: '控制属性规则', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'controlRuleId' |
| | | // }, |
| | | { |
| | | title: '是否禁用', |
| | | align: 'center', |
| | |
| | | } |
| | | } |
| | | </script> |
| | | <style lang="less">.table-operator { |
| | | <style lang="less"> |
| | | .table-operator { |
| | | margin-bottom: 18px; |
| | | } |
| | | |
| | | button { |
| | | margin-right: 8px; |
| | | }</style> |
| | | } |
| | | </style> |
| | |
| | | </a-form-item> --> |
| | | |
| | | <a-form-item label="物料类型" :labelCol="labelCol" :wrapperCol="wrapperCol"> |
| | | <a-select style="width: 100%" placeholder="请选择物料类型" v-decorator="['materialType']"> |
| | | <a-select style="width: 100%" placeholder="请选择物料类型" v-decorator="['materialType', { rules: [{ required: true, message: '请选择物料类型!' }] }]"> |
| | | <a-select-option v-for="(item, index) in materialTypeData" :key="index" :value="item.id">{{ |
| | | item.materialTypeName }}</a-select-option> |
| | | </a-select> |
| | |
| | | <a-form-item label="采购单位" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <!-- <a-input placeholder="请输入采购单位" v-decorator="['pOUnit']" /> --> |
| | | |
| | | <a-select style="width: 100%" placeholder="请选择采购单位" v-decorator="['pOUnit']"> |
| | | <a-select style="width: 100%" placeholder="请选择采购单位" v-decorator="['poUnit']"> |
| | | <a-select-option v-for="(item, index) in selectTypeData2" :key="index" :value="item.unitName">{{ |
| | | item.unitName }}</a-select-option> |
| | | </a-select> |
| | |
| | | <a-input placeholder="请输入重量" v-decorator="['weight']" /> |
| | | </a-form-item> |
| | | <a-form-item label="标包数量" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入标包数量" v-decorator="['sNP']" /> |
| | | <a-input placeholder="请输入标包数量" v-decorator="['snp']" /> |
| | | </a-form-item> |
| | | <a-form-item label="换算率" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input placeholder="请输入换算率" v-decorator="['translateRate']" /> |
| | |
| | | <a-tab-pane key="4" tab="替代品管理"> |
| | | <add-form-sub v-if="visible" ref="addFormWmsSubstituteGoodRef" /> |
| | | </a-tab-pane> |
| | | <a-tab-pane key="5" tab="客户"> |
| | | <a-tab-pane key="5" tab="往来单位"> |
| | | <add-form-base-customer v-if="visible" ref="addFormBaseCustomer" /> |
| | | </a-tab-pane> |
| | | |
| | |
| | | <div> |
| | | <!--tab 控制属性规则明细 --> |
| | | <a-form :form="form"> |
| | | <a-form-item label="控制属性规则" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-form-item label="控制属性规则编号" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-input disabled placeholder="请输入控制属性规则编号" v-decorator="['ruleCode', {rules: [{required: true, message: '请输入控制属性规则编号!'}]}]" /> |
| | | </a-form-item> |
| | | <a-form-item label="控制属性规则名称" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | |
| | | this.visible = false |
| | | let record = this.$refs.showList.selectedRows[0]; |
| | | this.form.setFieldsValue({ |
| | | id: record.id, |
| | | ruleCode: record.ruleCode, |
| | | maxImumqty: record.maxImumqty, |
| | | minImumqty: record.minImumqty, |
| | | safeImumqty: record.safeImumqty, |
| | | minStorageAge: record.minStorageAge, |
| | | maxStorageAge: record.maxStorageAge, |
| | | isNotChek: record.isNotChek, |
| | | shelfLifeDays: record.shelfLifeDays, |
| | | isDisabled: record.isDisabled |
| | | ...record |
| | | }) |
| | | |
| | | }, |
| | |
| | | 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> |
| | | item.materialCode }}</a-select-option> |
| | | </a-select> |
| | | |
| | | </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-select style="width: 100%" placeholder="请选择所在库区" |
| | | v-decorator="['areaid', { rules: [{ required: true, message: '请选择所在库区!' }] }]"> |
| | |
| | | <template> |
| | | <a-modal |
| | | title="编辑库位信息" |
| | | :width="1100" |
| | | :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-item label="库位编码" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <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="['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="Number(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-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> --> |
| | | <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="Number(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="Number(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-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', {rules: [{required: true, message: '请输入所在库区!'}]}]" /> |
| | | <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="Number(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> |
| | |
| | | <a-form-item label="是否禁用" :labelCol="labelCol" :wrapperCol="wrapperCol" has-feedback> |
| | | <a-switch v-decorator="['isDisabled', { valuePropName: 'checked' }]" /> |
| | | </a-form-item> |
| | | <a-form-item v-show="false"><a-input v-decorator="['id']" /></a-form-item> |
| | | </a-form> |
| | | </a-spin> |
| | | </a-modal> |
| | |
| | | import { |
| | | WmsPlaceEdit |
| | | } from '@/api/modular/main/WmsBase/WmsPlaceManage' |
| | | import { WmsAreaPage, WmsAreaDelete, WmsAreaToExcel } from '@/api/modular/main/WmsBase/WmsAreaManage' |
| | | export default { |
| | | data () { |
| | | return { |
| | |
| | | form: this.$form.createForm(this) |
| | | } |
| | | }, |
| | | |
| | | created() { |
| | | WmsAreaPage().then(res => { |
| | | this.WmsAreaData = res.data.rows |
| | | }) |
| | | }, |
| | | methods: { |
| | | moment, |
| | | // 初始化方法 |
| | |
| | | this.$nextTick(() => { |
| | | this.form.setFieldsValue( |
| | | { |
| | | id: record.id, |
| | | placeCode: record.placeCode, |
| | | placeName: record.placeName, |
| | | placeAlias: record.placeAlias, |
| | | placeType: record.placeType, |
| | | placeTypeName: record.placeTypeName, |
| | | placeStatus: record.placeStatus, |
| | | isSrmPlace: record.isSrmPlace, |
| | | srmPlaceNo: record.srmPlaceNo, |
| | | isRgvPlace: record.isRgvPlace, |
| | | rgvPlaceNo: record.rgvPlaceNo, |
| | | isAgvPlace: record.isAgvPlace, |
| | | agvPlaceNo: record.agvPlaceNo, |
| | | isTransPlace: record.isTransPlace, |
| | | transPlaceNo: record.transPlaceNo, |
| | | isActivateWCS: record.isActivateWCS, |
| | | environment: record.environment, |
| | | areaCode: record.areaCode, |
| | | areaId: record.areaId, |
| | | areaName: record.areaName, |
| | | verificationCode: record.verificationCode, |
| | | rowNo: record.rowNo, |
| | | columnNo: record.columnNo, |
| | | layerNo: record.layerNo, |
| | | laneNo: record.laneNo, |
| | | xzb: record.xzb, |
| | | yzb: record.yzb, |
| | | zzb: record.zzb, |
| | | length: record.length, |
| | | width: record.width, |
| | | height: record.height, |
| | | maxWeight: record.maxWeight, |
| | | inSequence: record.inSequence, |
| | | outSequence: record.outSequence, |
| | | isVirtually: record.isVirtually, |
| | | isDisabled: record.isDisabled |
| | | ...record |
| | | } |
| | | ) |
| | | }) |
| | | |
| | | }, |
| | | handleSubmit () { |
| | | const { form: { validateFields } } = this |
| | |
| | | </a-form-item> |
| | | </a-col><a-col :md="8" :sm="24"> |
| | | <a-form-item label="库位类型"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.placeType" placeholder="请选择库位类型"> |
| | | <a-select-option v-for="(item,index) in placeTypeData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.placeType" |
| | | placeholder="请选择库位类型"> |
| | | <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-col> |
| | |
| | | <a-form-item label="库位类型名称"> |
| | | <a-input v-model="queryParam.placeTypeName" allow-clear placeholder="请输入库位类型名称"/> |
| | | </a-form-item> --> |
| | | </a-col><a-col :md="8" :sm="24"> |
| | | <!-- </a-col> --> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="库位属性"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.placeStatus" placeholder="请选择库位属性"> |
| | | <a-select-option v-for="(item,index) in placeStatusData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.placeStatus" |
| | | placeholder="请选择库位属性"> |
| | | <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-col> |
| | |
| | | </a-col> --> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="是否激活与任务调度"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isActivateWCS" placeholder="请选择是否激活与任务调度"> |
| | | <a-select-option v-for="(item,index) in isActivateWCSData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isActivateWCS" |
| | | placeholder="请选择是否激活与任务调度"> |
| | | <a-select-option v-for="(item, index) in isActivateWCSData" :key="index" |
| | | :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | |
| | | <a-input v-model="queryParam.areaId" allow-clear placeholder="请输入所在库区"/> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <!-- <a-col :md="8" :sm="24"> |
| | | <a-form-item label="库区名称"> |
| | | <a-input v-model="queryParam.areaName" allow-clear placeholder="请输入库区名称"/> |
| | | </a-form-item> |
| | | </a-col> |
| | | </a-col> --> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="检验码"> |
| | | <a-input v-model="queryParam.verificationCode" allow-clear placeholder="请输入检验码"/> |
| | | </a-form-item> |
| | | </a-col><a-col :md="8" :sm="24"> |
| | | <a-form-item label="排"> |
| | | <a-input-number v-model="queryParam.rowNo" style="width: 100%" allow-clear placeholder="请输入排"/> |
| | | <a-input-number v-model="queryParam.rowNo" style="width: 100%" allow-clear |
| | | placeholder="请输入排" /> |
| | | </a-form-item> |
| | | </a-col><a-col :md="8" :sm="24"> |
| | | <a-form-item label="列"> |
| | | <a-input-number v-model="queryParam.columnNo" style="width: 100%" allow-clear placeholder="请输入列"/> |
| | | <a-input-number v-model="queryParam.columnNo" style="width: 100%" allow-clear |
| | | placeholder="请输入列" /> |
| | | </a-form-item> |
| | | </a-col><a-col :md="8" :sm="24"> |
| | | <a-form-item label="层"> |
| | | <a-input-number v-model="queryParam.layerNo" style="width: 100%" allow-clear placeholder="请输入层"/> |
| | | <a-input-number v-model="queryParam.layerNo" style="width: 100%" allow-clear |
| | | placeholder="请输入层" /> |
| | | </a-form-item> |
| | | </a-col><a-col :md="8" :sm="24"> |
| | | <a-form-item label="巷道"> |
| | | <a-input-number v-model="queryParam.laneNo" style="width: 100%" allow-clear placeholder="请输入巷道"/> |
| | | <a-input-number v-model="queryParam.laneNo" style="width: 100%" allow-clear |
| | | placeholder="请输入巷道" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | |
| | | </a-form-item> |
| | | </a-col><a-col :md="8" :sm="24"> |
| | | <a-form-item label="入库顺序"> |
| | | <a-input-number v-model="queryParam.inSequence" style="width: 100%" allow-clear placeholder="请输入入库顺序"/> |
| | | <a-input-number v-model="queryParam.inSequence" style="width: 100%" allow-clear |
| | | placeholder="请输入入库顺序" /> |
| | | </a-form-item> |
| | | </a-col><a-col :md="8" :sm="24"> |
| | | <a-form-item label="出库顺序"> |
| | | <a-input-number v-model="queryParam.outSequence" style="width: 100%" allow-clear placeholder="请输入出库顺序"/> |
| | | <a-input-number v-model="queryParam.outSequence" style="width: 100%" allow-clear |
| | | placeholder="请输入出库顺序" /> |
| | | </a-form-item> |
| | | </a-col> |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="是否虚拟"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isVirtually" placeholder="请选择是否虚拟"> |
| | | <a-select-option v-for="(item,index) in isVirtuallyData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isVirtually" |
| | | placeholder="请选择是否虚拟"> |
| | | <a-select-option v-for="(item, index) in isVirtuallyData" :key="index" |
| | | :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="是否禁用"> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isDisabled" placeholder="请选择是否禁用"> |
| | | <a-select-option v-for="(item,index) in isDisabledData" :key="index" :value="item.code">{{ item.name }}</a-select-option> |
| | | <a-select :allowClear="true" style="width: 100%" v-model="queryParam.isDisabled" |
| | | placeholder="请选择是否禁用"> |
| | | <a-select-option v-for="(item, index) in isDisabledData" :key="index" |
| | | :value="item.code">{{ item.name }}</a-select-option> |
| | | </a-select> |
| | | </a-form-item> |
| | | </a-col> |
| | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="创建时间"> |
| | | <a-range-picker style="width: 100%" :placeholder="['开始时间', '结束时间']" :show-time="{ |
| | | format: 'HH:mm:ss', defaultValue: [moment('00:00:00', 'HH:mm:ss'),moment('23:59:59', 'HH:mm:ss')]}" v-model="queryParam.createdTime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss" @change="onChangecreatedTime"/> |
| | | format: 'HH:mm:ss', defaultValue: [moment('00:00:00', 'HH:mm:ss'), moment('23:59:59', 'HH:mm:ss')] |
| | | }" |
| | | v-model="queryParam.createdTime" value-format="YYYY-MM-DD HH:mm:ss" |
| | | format="YYYY-MM-DD HH:mm:ss" @change="onChangecreatedTime" /> |
| | | |
| | | </a-form-item> |
| | | </a-col> |
| | |
| | | <a-col :md="8" :sm="24"> |
| | | <a-form-item label="更新时间"> |
| | | <a-range-picker style="width: 100%" :placeholder="['开始时间', '结束时间']" :show-time="{ |
| | | format: 'HH:mm:ss', defaultValue: [moment('00:00:00', 'HH:mm:ss'),moment('23:59:59', 'HH:mm:ss')]}" v-model="queryParam.updatedTime" value-format="YYYY-MM-DD HH:mm:ss" format="YYYY-MM-DD HH:mm:ss" @change="onChangeupdatedTime"/> |
| | | format: 'HH:mm:ss', defaultValue: [moment('00:00:00', 'HH:mm:ss'), moment('23:59:59', 'HH:mm:ss')] |
| | | }" |
| | | v-model="queryParam.updatedTime" value-format="YYYY-MM-DD HH:mm:ss" |
| | | format="YYYY-MM-DD HH:mm:ss" @change="onChangeupdatedTime" /> |
| | | |
| | | </a-form-item> |
| | | </a-col> |
| | |
| | | </a-card> |
| | | </div> |
| | | <a-card :bordered="false"> |
| | | <s-table |
| | | ref="table" |
| | | :columns="columns" |
| | | :data="loadData" |
| | | :alert="true" |
| | | @changeTablePage="pageInfo = $event" |
| | | :scroll="{x: true,y:tableHeight}" |
| | | :rowKey="(record) => record.id" |
| | | <s-table ref="table" :columns="columns" :data="loadData" :alert="true" @changeTablePage="pageInfo = $event" |
| | | :scroll="{ x: true, y: tableHeight }" :rowKey="(record) => record.id" |
| | | :rowSelection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"> |
| | | <template class="table-operator" slot="operator" v-if="hasPerm('WmsPlace:add')" > |
| | | <div ref="actionBar" class="actionBar"> |
| | | <a-button type="info" v-if="hasPerm('sysExcelTemplate:importExcel')" icon="upload" @click="$refs.excelForm.index()"> |
| | | <a-button type="info" v-if="hasPerm('sysExcelTemplate:importExcel')" icon="upload" |
| | | @click="$refs.excelForm.index()"> |
| | | 导入 |
| | | </a-button> |
| | | <a-button type="info" v-if="hasPerm('WmsPlace:exportExcel')" icon="download" @click="WmsPlaceToExcel()"> |
| | | <a-button type="info" v-if="hasPerm('WmsPlace:exportExcel')" icon="download" |
| | | @click="WmsPlaceToExcel()"> |
| | | 导出 |
| | | </a-button> |
| | | <a-button type="primary" v-if="hasPerm('WmsPlace:add')" icon="plus" @click="$refs.addForm.add()">新增库位信息</a-button> |
| | | <a-button type="primary" v-if="hasPerm('WmsPlace:add')" icon="plus" |
| | | @click="$refs.addForm.add()">新增库位信息</a-button> |
| | | </div> |
| | | </template> |
| | | <span slot="placeTypescopedSlots" slot-scope="text"> |
| | |
| | | |
| | | <a v-if="hasPerm('WmsPlace:edit')" @click="$refs.editForm.edit(record)">编辑</a> |
| | | <a-divider type="vertical" v-if="hasPerm('WmsPlace:edit') & hasPerm('WmsPlace:delete')"/> |
| | | <a-popconfirm v-if="hasPerm('WmsPlace:delete')" placement="topRight" title="确认删除?" @confirm="() => WmsPlaceDelete(record)"> |
| | | <a-popconfirm v-if="hasPerm('WmsPlace:delete')" placement="topRight" title="确认删除?" |
| | | @confirm="() => WmsPlaceDelete(record)"> |
| | | <a>删除</a> |
| | | </a-popconfirm> |
| | | </span> |
| | |
| | | dataIndex: 'placeType', |
| | | scopedSlots: { customRender: 'placeTypescopedSlots' } |
| | | }, |
| | | { |
| | | title: '库位类型名称', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'placeTypeName' |
| | | }, |
| | | // { |
| | | // title: '库位类型名称', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'placeTypeName' |
| | | // }, |
| | | { |
| | | title: '库位属性', |
| | | align: 'center', |
| | |
| | | dataIndex: 'placeStatus', |
| | | scopedSlots: { customRender: 'placeStatusscopedSlots' } |
| | | }, |
| | | { |
| | | title: '是否堆垛机库位', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '140px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isSrmPlace', |
| | | scopedSlots: { customRender: 'isSrmPlacescopedSlots' } |
| | | }, |
| | | { |
| | | title: '堆垛机库位号', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'srmPlaceNo' |
| | | }, |
| | | { |
| | | title: '是否RGV库位', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isRgvPlace', |
| | | scopedSlots: { customRender: 'isRgvPlacescopedSlots' } |
| | | }, |
| | | { |
| | | title: 'RGV库位号', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'rgvPlaceNo' |
| | | }, |
| | | { |
| | | title: '是否AGV库位', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isAgvPlace', |
| | | scopedSlots: { customRender: 'isAgvPlacescopedSlots' } |
| | | }, |
| | | { |
| | | title: 'AGV库位号', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'agvPlaceNo' |
| | | }, |
| | | { |
| | | title: '是否输送线库位', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'isTransPlace', |
| | | scopedSlots: { customRender: 'isTransPlacescopedSlots' } |
| | | }, |
| | | { |
| | | title: '输送线库位号', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'transPlaceNo' |
| | | }, |
| | | // { |
| | | // title: '是否堆垛机库位', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '140px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'isSrmPlace', |
| | | // scopedSlots: { customRender: 'isSrmPlacescopedSlots' } |
| | | // }, |
| | | // { |
| | | // title: '堆垛机库位号', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'srmPlaceNo' |
| | | // }, |
| | | // { |
| | | // title: '是否RGV库位', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'isRgvPlace', |
| | | // scopedSlots: { customRender: 'isRgvPlacescopedSlots' } |
| | | // }, |
| | | // { |
| | | // title: 'RGV库位号', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'rgvPlaceNo' |
| | | // }, |
| | | // { |
| | | // title: '是否AGV库位', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'isAgvPlace', |
| | | // scopedSlots: { customRender: 'isAgvPlacescopedSlots' } |
| | | // }, |
| | | // { |
| | | // title: 'AGV库位号', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'agvPlaceNo' |
| | | // }, |
| | | // { |
| | | // title: '是否输送线库位', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'isTransPlace', |
| | | // scopedSlots: { customRender: 'isTransPlacescopedSlots' } |
| | | // }, |
| | | // { |
| | | // title: '输送线库位号', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'transPlaceNo' |
| | | // }, |
| | | { |
| | | title: '是否激活与任务调度', |
| | | align: 'center', |
| | |
| | | sorter: true, |
| | | dataIndex: 'areaId' |
| | | }, |
| | | { |
| | | title: '库区名称', |
| | | align: 'center', |
| | | customHeaderCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | customCell: () => { |
| | | return { |
| | | style: { |
| | | 'min-width': '120px'//最小列宽设置 |
| | | } |
| | | } |
| | | }, |
| | | sorter: true, |
| | | dataIndex: 'areaName' |
| | | }, |
| | | // { |
| | | // title: '库区名称', |
| | | // align: 'center', |
| | | // customHeaderCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // customCell: () => { |
| | | // return { |
| | | // style: { |
| | | // 'min-width': '120px'//最小列宽设置 |
| | | // } |
| | | // } |
| | | // }, |
| | | // sorter: true, |
| | | // dataIndex: 'areaName' |
| | | // }, |
| | | { |
| | | title: '检验码', |
| | | align: 'center', |
| | |
| | | } |
| | | } |
| | | </script> |
| | | <style lang="less"> |
| | | .table-operator { |
| | | <style lang="less">.table-operator { |
| | | margin-bottom: 18px; |
| | | } |
| | | |
| | | button { |
| | | margin-right: 8px; |
| | | } |
| | | </style> |
| | | }</style> |