diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/material/dao/MdMeMaterialbase.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/material/dao/MdMeMaterialbase.java index fa52e5f3..e98f1d4e 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/material/dao/MdMeMaterialbase.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/material/dao/MdMeMaterialbase.java @@ -1,6 +1,8 @@ package org.nl.wms.masterdata_manage.service.material.dao; import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import java.util.Date; @@ -26,6 +28,7 @@ public class MdMeMaterialbase implements Serializable { /** * 物料标识 */ + @TableId private String material_id; /** diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbBucketrecord.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbBucketrecord.java index edee1353..a56b0198 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbBucketrecord.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/masterdata_manage/service/vehicle/dao/MdPbBucketrecord.java @@ -3,8 +3,11 @@ package org.nl.wms.masterdata_manage.service.vehicle.dao; import java.math.BigDecimal; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; + +import lombok.Builder; import lombok.Data; import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; /** *

@@ -15,6 +18,7 @@ import lombok.EqualsAndHashCode; * @since 2023-05-10 */ @Data +@Builder @EqualsAndHashCode(callSuper = false) @TableName("md_pb_bucketrecord") public class MdPbBucketrecord implements Serializable { diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpServiceImpl.java index 7d72874b..72586305 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpServiceImpl.java @@ -19,8 +19,10 @@ import org.nl.common.utils.IdUtil; import org.nl.common.utils.SecurityUtils; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.system.util.CodeUtil; +import org.nl.wms.masterdata_manage.service.vehicle.IMdPbBucketrecordService; import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleextService; import org.nl.wms.masterdata_manage.service.vehicle.IMdPbStoragevehicleinfoService; +import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbBucketrecord; import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbStoragevehicleext; import org.nl.wms.masterdata_manage.service.vehicle.dao.MdPbStoragevehicleinfo; import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtBsrealstorattrService; @@ -34,8 +36,6 @@ import org.nl.wms.scheduler_manage.service.task.ISchBaseTaskService; import org.nl.wms.scheduler_manage.service.task.dao.SchBaseTask; import org.nl.wms.storage_manage.CHANGE_BILL_TYPE_ENUM; import org.nl.wms.storage_manage.IOSEnum; -import org.nl.wms.storage_manage.basedata.service.record.dto.StIvtStructivtflowDto; -import org.nl.wms.storage_manage.basedata.service.record.service.IStIvtStructivtflowService; import org.nl.wms.storage_manage.productmanage.service.iostorInv.IStIvtIostorinvCpService; import org.nl.wms.storage_manage.productmanage.service.iostorInv.IStIvtIostorinvdisCpService; import org.nl.wms.storage_manage.productmanage.service.iostorInv.IStIvtIostorinvdisdtlCpService; @@ -46,6 +46,8 @@ import org.nl.wms.storage_manage.productmanage.service.iostorInv.dao.StIvtIostor import org.nl.wms.storage_manage.productmanage.service.iostorInv.dao.StIvtIostorinvdtlCp; import org.nl.wms.storage_manage.productmanage.service.iostorInv.dao.mapper.StIvtIostorinvCpMapper; import org.nl.wms.storage_manage.productmanage.service.iostorInv.dto.IostorInvQuery; +import org.nl.wms.storage_manage.productmanage.service.structIvt.IStIvtStructivtCpService; +import org.nl.wms.storage_manage.productmanage.util.ChangeIvtUtil; import org.nl.wms.storage_manage.productmanage.util.DivRuleCpService; import org.nl.wms.storage_manage.productmanage.util.RuleUtil; import org.springframework.beans.factory.annotation.Autowired; @@ -94,20 +96,23 @@ public class StIvtIostorinvCpServiceImpl extends ServiceImpl pageQuery = this.page(page.build(), query.build()); @@ -231,7 +236,7 @@ public class StIvtIostorinvCpServiceImpl extends ServiceImpl disDtlList = iStIvtIostorinvdisdtlCpService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdisdtlCp::getIostorinv_id, whereJson.getString("iostorinv_id")) + ); + + for (StIvtIostorinvdisdtlCp disDtlDao : disDtlList) { + // 更新箱记录表 + iMdPbBucketrecordService.update( + MdPbBucketrecord.builder() + .status("03") // TODO 暂时写死 + .instor_optid(Long.getLong(SecurityUtils.getCurrentUserId())) + .instor_optname(SecurityUtils.getCurrentNickName()) + .instor_time(DateUtil.now()) + .build(), + new QueryWrapper().lambda() + .eq(MdPbBucketrecord::getBucketunique, disDtlDao.getBucketunique()) + ); + } + + // 5.更新任务为完成、更新库存、解锁点位 List disDaoList = iostorinvdisCpService.list( new QueryWrapper().lambda() .eq(StIvtIostorinvdisCp::getIostorinv_id, whereJson.getString("iostorinv_id")) ); - Map> collect = disDaoList.stream() - .collect(Collectors.groupingBy(StIvtIostorinvdisCp::getTask_id)); - - for (String task_id : collect.keySet()) { + for (StIvtIostorinvdisCp dao : disDaoList) { // 1)更新任务为完成 - SchBaseTask taskDao = iSchBaseTaskService.getById(task_id); - // 已完成则不更新 - if (StrUtil.equals(taskDao.getTask_id(), TaskStatusEnum.FINISHED.getCode())) continue; + SchBaseTask taskDao = iSchBaseTaskService.getById(dao.getTask_id()); - taskDao.setTask_status(TaskStatusEnum.FINISHED.getCode()); - iSchBaseTaskService.updateById(taskDao); + if (ObjectUtil.isNotEmpty(taskDao)) { + // 更新有任务分配 + if (!StrUtil.equals(taskDao.getTask_id(), TaskStatusEnum.FINISHED.getCode())) { + taskDao.setTask_status(TaskStatusEnum.FINISHED.getCode()); + iSchBaseTaskService.updateById(taskDao); + } + } // 2)更新库存 - List disList = collect.get(task_id); - for (StIvtIostorinvdisCp dao : disList) { - // 根据托盘对应货位更新 - structivtflowService.recordStructivtFlow( - StIvtStructivtflowDto.builder() - .bill_code(mstDao.getBill_code()) - .change_type_scode(CHANGE_BILL_TYPE_ENUM.IOSTORINV_IN_SEND) - .bill_table("st_ivt_iostorinv_cp") - .material_id(dao.getMaterial_id()) - .pcsn(dao.getPcsn()) - .struct_code(dao.getStruct_code()) - .result_qty(dao.getReal_qty()) - .change_qty(dao.getReal_qty()) - .task_id(dao.getTask_id()) - .storagevehicle_code(dao.getStoragevehicle_code()) - .build() - ); - } + iStIvtStructivtCpService.UpdateIvt(ivtDataParam(dao,ChangeIvtUtil.SUBWAREHOUSING_ADDIVT_QTY)); + + // 3)解锁终点 + unLockNext(dao.getStruct_id(),dao.getStoragevehicle_code()); } } @@ -721,4 +738,34 @@ public class StIvtIostorinvCpServiceImpl extends ServiceImpl list) { if (!CollectionUtils.isEmpty(list)){ @@ -67,13 +73,18 @@ public class StIvtIostorinvdisdtlCpServiceImpl extends ServiceImpl().lambda() + .eq(MdMeMaterialbase::getMaterial_code, item.getString("material_code")) + ); + StIvtIostorinvdisdtlCp disDtlDao = new StIvtIostorinvdisdtlCp() .setIostorinv_id(json.getString("iostorinv_id")) .setIostorinvdtl_id(json.getString("iostorinvdtl_id")) .setIostorinvdis_id(json.getString("iostorinvdis_id")) .setIostorinvdisdtl_id(IdUtil.getStringId()) .setSeq_no(new BigDecimal(1)) - .setMaterial_id(item.getString("material_id")) + .setMaterial_id(mataDao.getMaterial_id()) .setPcsn(item.getString("pcsn")) .setQuality_scode("00") // TODO 暂时写 .setIvt_level("01") // TODO 暂时写 @@ -88,16 +99,17 @@ public class StIvtIostorinvdisdtlCpServiceImpl extends ServiceImpl().eq("bucketunique", item.getString("bucketunique")) + MdPbBucketrecord.builder() + .storagevehicle_id(Long.getLong(vehicleDao.getStoragevehicle_id())) + .status("02") // TODO 暂时写死 + .storagevehicle_code(vehicleDao.getStoragevehicle_code()) + .makeup_optid(Long.getLong(SecurityUtils.getCurrentUserId())) + .makeup_optname(SecurityUtils.getCurrentNickName()) + .makeup_time(DateUtil.now()) + .build(), + new QueryWrapper() + .eq("bucketunique", item.getString("bucketunique")) ); }); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvdtlCpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvdtlCpServiceImpl.java index 42adae4b..fd967cce 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvdtlCpServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvdtlCpServiceImpl.java @@ -1,5 +1,6 @@ package org.nl.wms.storage_manage.productmanage.service.iostorInv.impl; +import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -65,7 +66,9 @@ public class StIvtIostorinvdtlCpServiceImpl extends ServiceImpl { + /** + * 成品库存更新 + * @param json + * { + * struct_id:仓位标识 + * material_id:物料标识 + * pcsn:批次 + * quality_scode:品质类型 + * ivt_level:库存等级 + * change_qty:变动数量 + * change_type:变动类型 + * } + */ + void UpdateIvt(JSONObject json); + } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/StIvtStructivtCp.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/StIvtStructivtCp.java index 71c89e21..fb3a2e03 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/StIvtStructivtCp.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/StIvtStructivtCp.java @@ -1,5 +1,6 @@ package org.nl.wms.storage_manage.productmanage.service.structIvt.dao; +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import lombok.EqualsAndHashCode; @@ -25,6 +26,7 @@ public class StIvtStructivtCp implements Serializable { /** * 库存记录标识 */ + @TableId private String stockrecord_id; /** diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/impl/StIvtStructivtCpServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/impl/StIvtStructivtCpServiceImpl.java index 0c942fe7..284bfffb 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/impl/StIvtStructivtCpServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/impl/StIvtStructivtCpServiceImpl.java @@ -1,10 +1,26 @@ package org.nl.wms.storage_manage.productmanage.service.structIvt.impl; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.NumberUtil; +import cn.hutool.core.util.ObjectUtil; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.nl.common.utils.IdUtil; +import org.nl.modules.common.exception.BadRequestException; +import org.nl.wms.masterdata_manage.service.material.IMdMeMaterialbaseService; +import org.nl.wms.masterdata_manage.service.material.dao.MdMeMaterialbase; +import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrService; +import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr; import org.nl.wms.storage_manage.productmanage.service.structIvt.IStIvtStructivtCpService; import org.nl.wms.storage_manage.productmanage.service.structIvt.dao.StIvtStructivtCp; import org.nl.wms.storage_manage.productmanage.service.structIvt.dao.mapper.StIvtStructivtCpMapper; +import org.nl.wms.storage_manage.productmanage.util.ChangeIvtUtil; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.math.BigDecimal; /** *

@@ -17,4 +33,173 @@ import org.springframework.stereotype.Service; @Service public class StIvtStructivtCpServiceImpl extends ServiceImpl implements IStIvtStructivtCpService { + @Autowired + protected IStIvtStructattrService iStIvtStructattrService; // 仓位属性服务 + + @Autowired + protected IMdMeMaterialbaseService iMdMeMaterialbaseService; // 物料服务 + + @Override + @Transactional(rollbackFor = Exception.class) + public void UpdateIvt(JSONObject json) { + // 校验数据 + checkParam(json); + + String change_type = json.getString("change_type"); // 变动类型 + + switch (change_type) { + case ChangeIvtUtil.ADDWAREHOUSING_QTY: + // 加待入 + addWrehousingQty(json); + break; + case ChangeIvtUtil.SUBWAREHOUSING_QTY: + // 减待入 + subWrehousingQty(json); + break; + case ChangeIvtUtil.SUBWAREHOUSING_ADDIVT_QTY: + // 减待入、加库存、加可用 + subWrehousingAddQty(json); + break; + default: + throw new BadRequestException("变动类型异常!"); + } + + + } + + /* + 加待入 + */ + private void addWrehousingQty(JSONObject json) { + + // 查询是否有库存 + StIvtStructivtCp ivtDao = this.getOne( + new QueryWrapper().lambda() + .eq(StIvtStructivtCp::getStruct_id, json.getString("struct_id")) + .eq(StIvtStructivtCp::getMaterial_id, json.getString("material_id")) + .eq(StIvtStructivtCp::getPcsn, json.getString("pcsn")) + ); + + if (ObjectUtil.isEmpty(ivtDao)) { + // 为空插入 + StIvtStructattr attrDao = iStIvtStructattrService.getById(json.getString("struct_id")); + + MdMeMaterialbase materDao = iMdMeMaterialbaseService.getById(json.getString("material_id")); + + StIvtStructivtCp dao = new StIvtStructivtCp(); + dao.setStockrecord_id(org.nl.common.utils.IdUtil.getStringId()); + dao.setStruct_id(attrDao.getStruct_id()); + dao.setStruct_code(attrDao.getStruct_code()); + dao.setStruct_name(attrDao.getStruct_name()); + dao.setMaterial_id(materDao.getMaterial_id()); + dao.setQuality_scode(json.getString("quality_scode")); + dao.setIvt_level(json.getString("ivt_level")); + dao.setIs_active(true); + dao.setPcsn(json.getString("pcsn")); + dao.setCanuse_qty(BigDecimal.valueOf(0)); + dao.setFrozen_qty(BigDecimal.valueOf(0)); + dao.setIvt_qty(BigDecimal.valueOf(0)); + dao.setWarehousing_qty(json.getBigDecimal("change_qty")); + dao.setQty_unit_id(materDao.getBase_unit_id()); + this.save(dao); + + } else { + // 更新待入数 + ivtDao.setWarehousing_qty(NumberUtil.add(ivtDao.getWarehousing_qty(),json.getDoubleValue("change_qty"))); + this.updateById(ivtDao); + } + } + + /* + 减待入 + */ + private void subWrehousingQty(JSONObject json) { + + // 查询是否有库存 + StIvtStructivtCp ivtDao = this.getOne( + new QueryWrapper().lambda() + .eq(StIvtStructivtCp::getStruct_id, json.getString("struct_id")) + .eq(StIvtStructivtCp::getMaterial_id, json.getString("material_id")) + .eq(StIvtStructivtCp::getPcsn, json.getString("pcsn")) + ); + + if (ObjectUtil.isEmpty(ivtDao)) { + // 为空报错 + throw new BadRequestException("库存不存在,请检查!"); + } else { + // 判断库存是否异常 + double change_qty = NumberUtil.sub(ivtDao.getWarehousing_qty(), json.getDoubleValue("change_qty")).doubleValue(); + + if (change_qty < 0) { + throw new BadRequestException("库存异常,请检查!"); + } else if (change_qty == 0 && ivtDao.getCanuse_qty().doubleValue() == 0 && + ivtDao.getFrozen_qty().doubleValue() == 0 && ivtDao.getIvt_qty().doubleValue() == 0) { + // 待入数、库存数、冻结数、可用数都为0时删除库存记录 + this.removeById(ivtDao.getStockrecord_id()); + } else { + ivtDao.setWarehousing_qty(BigDecimal.valueOf(change_qty)); + this.updateById(ivtDao); + } + } + } + + /* + 减待入、加库存、加可用 + */ + private void subWrehousingAddQty(JSONObject json) { + // 查询是否有库存 + StIvtStructivtCp ivtDao = this.getOne( + new QueryWrapper().lambda() + .eq(StIvtStructivtCp::getStruct_id, json.getString("struct_id")) + .eq(StIvtStructivtCp::getMaterial_id, json.getString("material_id")) + .eq(StIvtStructivtCp::getPcsn, json.getString("pcsn")) + ); + + if (ObjectUtil.isEmpty(ivtDao)) { + throw new BadRequestException("库存不存在,请检查!"); + } else { + double change_qty = NumberUtil.sub(ivtDao.getWarehousing_qty(), json.getDoubleValue("change_qty")).doubleValue(); + + // 判断待入数是否为负数 + if (change_qty < 0) throw new BadRequestException("库存异常,请检查!"); + // 减去待入 + ivtDao.setWarehousing_qty(BigDecimal.valueOf(change_qty)); + // 加库存 + BigDecimal ivt_qty = NumberUtil.add(ivtDao.getIvt_qty(), json.getDoubleValue("change_qty")); + // 加可用 + BigDecimal canuse_qty = NumberUtil.add(ivtDao.getCanuse_qty(), json.getDoubleValue("change_qty")); + + ivtDao.setCanuse_qty(canuse_qty); + ivtDao.setIvt_qty(ivt_qty); + ivtDao.setInstorage_time(DateUtil.now()); + this.updateById(ivtDao); + } + } + + /* + 校验数据 + */ + private void checkParam(JSONObject json) { + + if (ObjectUtil.isEmpty(json.getString("struct_id"))) + throw new BadRequestException("更新库存失败:仓位不能为空!"); + + if (ObjectUtil.isEmpty(json.getString("material_id"))) + throw new BadRequestException("更新库存失败:物料不能为空!"); + + if (ObjectUtil.isEmpty(json.getString("pcsn"))) + throw new BadRequestException("更新库存失败:批次不能为空!"); + + if (ObjectUtil.isEmpty(json.getString("quality_scode"))) + throw new BadRequestException("更新库存失败:品质类型不能为空!"); + + if (ObjectUtil.isEmpty(json.getString("ivt_level"))) + throw new BadRequestException("更新库存失败:库存等级不能为空!"); + + if (ObjectUtil.isEmpty(json.getString("change_qty"))) + throw new BadRequestException("更新库存失败:变动数量不能为空!"); + + if (ObjectUtil.isEmpty(json.getString("change_type"))) + throw new BadRequestException("更新库存失败:变动类型不能为空!"); + } } diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/ChangeIvtUtil.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/ChangeIvtUtil.java new file mode 100644 index 00000000..1e196734 --- /dev/null +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/ChangeIvtUtil.java @@ -0,0 +1,21 @@ +package org.nl.wms.storage_manage.productmanage.util; + +public class ChangeIvtUtil { + + /* + * 加待入 + */ + public static final String ADDWAREHOUSING_QTY = "1"; + + /* + * 减待入 + */ + public static final String SUBWAREHOUSING_QTY = "2"; + + /* + * 减待入、加库存、加可用 + */ + public static final String SUBWAREHOUSING_ADDIVT_QTY = "3"; + +} + diff --git a/mes/qd/src/views/wms/pub/StructDialog.vue b/mes/qd/src/views/wms/pub/StructDialog.vue index 5ee7e394..e4164b9f 100644 --- a/mes/qd/src/views/wms/pub/StructDialog.vue +++ b/mes/qd/src/views/wms/pub/StructDialog.vue @@ -47,10 +47,10 @@ @select-all="onSelectAll" > - - - - + + + + @@ -66,20 +66,20 @@ import CRUD, { header, presenter } from '@crud/crud' import rrOperation from '@crud/RR.operation' import pagination from '@crud/Pagination' -import crudRegion from '@/views/wms/scheduler_manage/region/region' +import crudStructattr from '@/api/wms/basedata/st/structattr' export default { name: 'StructDialog', components: { rrOperation, pagination }, cruds() { return CRUD({ - title: '点位', + title: '仓位', optShow: {}, - url: 'api/region/getPointQuery', - idField: 'region_code', - sort: 'region_code,desc', + url: 'api/structattr', + idField: 'struct_code', + sort: 'struct_code,ASC', query: { search: '', is_lock: '1', lock_type: '', sect_id: '', stor_id: '' }, - crudMethod: { ...crudRegion } + crudMethod: { ...crudStructattr } }) }, mixins: [presenter(), header()], diff --git a/mes/qd/src/views/wms/storage_manage/product/productIn/AddDtl.vue b/mes/qd/src/views/wms/storage_manage/product/productIn/AddDtl.vue index 7ffabf69..78bb9632 100644 --- a/mes/qd/src/views/wms/storage_manage/product/productIn/AddDtl.vue +++ b/mes/qd/src/views/wms/storage_manage/product/productIn/AddDtl.vue @@ -104,7 +104,7 @@ export default { cruds() { return CRUD({ title: '用户', - url: '/api/in/rawAssist/getBillDtl', + url: '/api/mdPbBucketrecord', crudMethod: {}, optShow: { reset: true diff --git a/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue b/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue index 38604026..5063f875 100644 --- a/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue +++ b/mes/qd/src/views/wms/storage_manage/product/productIn/DivDialog.vue @@ -208,6 +208,18 @@ + + + @@ -285,6 +297,14 @@ export default { } }, methods: { + disabledIos(row) { + debugger + if (row.iostorinvdis_id === undefined) { + return false + } else { + return true + } + }, open() { crudSectattr.getSect({ 'stor_id': this.storId }).then(res => { this.sects = res.content @@ -381,6 +401,9 @@ export default { this.form.tableMater.splice(-1, 0, item) } }, + deleteRow(index, rows) { + rows.splice(index, 1) + }, tableRowClassName({ row, rowIndex }) { row.index = rowIndex }, @@ -441,9 +464,14 @@ export default { return } crudProductIn.confirmvehicle(this.form).then(res => { - this.crud.notify('组盘成功!', CRUD.NOTIFICATION_TYPE.SUCCESS) - this.form.vehicle_code = '' - this.form.bucketunique = '' + crudProductIn.getIosInvDtl({ 'iostorinv_id': this.form.dtl_row.iostorinv_id }).then(res => { + this.form.vehicle_code = '' + this.form.bucketunique = '' + this.openParam = res + this.form.tableMater = [] + this.dis_row = null + this.crud.notify('组盘成功!', CRUD.NOTIFICATION_TYPE.SUCCESS) + }) }) }, diff --git a/mes/qd/src/views/wms/storage_manage/product/productIn/ViewDialog.vue b/mes/qd/src/views/wms/storage_manage/product/productIn/ViewDialog.vue index 95aaa188..f426a84b 100644 --- a/mes/qd/src/views/wms/storage_manage/product/productIn/ViewDialog.vue +++ b/mes/qd/src/views/wms/storage_manage/product/productIn/ViewDialog.vue @@ -235,13 +235,13 @@ export default { this.currentDis = current }, queryTableDtl() { - crudProductIn.getIODtl({ 'iostorinv_id': this.form.iostorinv_id }).then(res => { + crudProductIn.getIosInvDtl({ 'iostorinv_id': this.form.iostorinv_id }).then(res => { this.tableDtl = res }) }, queryTableDdis() { if (this.currentdtl !== null) { - crudProductIn.getDisTask({ 'iostorinvdtl_id': this.currentdtl.iostorinvdtl_id }).then(res => { + crudProductIn.getIosInvDis({ "iostorinvdtl_id": this.currentdtl.iostorinvdtl_id }).then(res => { this.tabledis = res }).catch(() => { this.tabledis = [] diff --git a/mes/qd/src/views/wms/storage_manage/product/productIn/index.vue b/mes/qd/src/views/wms/storage_manage/product/productIn/index.vue index 072d186d..9a8eda45 100644 --- a/mes/qd/src/views/wms/storage_manage/product/productIn/index.vue +++ b/mes/qd/src/views/wms/storage_manage/product/productIn/index.vue @@ -141,7 +141,7 @@ > 分配 - 作业任务 - + -->