diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/mps_manage/ordermanage/service/saleOrder/dao/MpsSaleOrder.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/mps_manage/ordermanage/service/saleOrder/dao/MpsSaleOrder.java index 2244a6dc..8db56de7 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/mps_manage/ordermanage/service/saleOrder/dao/MpsSaleOrder.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/mps_manage/ordermanage/service/saleOrder/dao/MpsSaleOrder.java @@ -1,6 +1,8 @@ package org.nl.wms.mps_manage.ordermanage.service.saleOrder.dao; import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import lombok.Data; @@ -24,7 +26,8 @@ public class MpsSaleOrder implements Serializable { /** * 销售单标识 */ - private Long sale_id; + @TableId + private String sale_id; /** * 销售单号 @@ -44,7 +47,7 @@ public class MpsSaleOrder implements Serializable { /** * 物料标识 */ - private Long material_id; + private String material_id; /** * 状态 @@ -64,7 +67,7 @@ public class MpsSaleOrder implements Serializable { /** * 客户标识 */ - private Long cust_id; + private String cust_id; /** * 客户编码 @@ -79,7 +82,7 @@ public class MpsSaleOrder implements Serializable { /** * 计量单位标识 */ - private Long qty_unit_id; + private String qty_unit_id; /** * 计划交期 @@ -89,7 +92,7 @@ public class MpsSaleOrder implements Serializable { /** * 创建人 */ - private Long create_id; + private String create_id; /** * 创建人姓名 @@ -104,7 +107,7 @@ public class MpsSaleOrder implements Serializable { /** * 提交人 */ - private Long audit_optid; + private String audit_optid; /** * 提交时间 @@ -119,7 +122,7 @@ public class MpsSaleOrder implements Serializable { /** * 确认人 */ - private Long confirm_optid; + private String confirm_optid; /** * 确认人姓名 @@ -144,7 +147,7 @@ public class MpsSaleOrder implements Serializable { /** * 车间标识 */ - private Long workshop_id; + private String workshop_id; /** * 生产数量 diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/dto/IostorInvQuery.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/dto/IostorInvQuery.java index 76612314..c32cda55 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/dto/IostorInvQuery.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/dto/IostorInvQuery.java @@ -29,6 +29,8 @@ public class IostorInvQuery extends BaseQuery { private String io_type; + private String product_area; + private Boolean is_delete = false; diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java index 36f3653c..cfc97775 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/iostorInv/impl/StIvtIostorinvCpOutServiceImpl.java @@ -29,8 +29,6 @@ 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; import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrService; import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtBsrealstorattr; @@ -40,7 +38,6 @@ import org.nl.wms.scheduler_manage.service.point.ISchBasePointService; import org.nl.wms.scheduler_manage.service.point.dao.SchBasePoint; 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.productmanage.service.iostorInv.IStIvtIostorinvCpOutService; import org.nl.wms.storage_manage.productmanage.service.iostorInv.IStIvtIostorinvdisCpService; @@ -209,6 +206,7 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl dtlDaoList = new ArrayList<>(); if (whereJson.getBoolean("type")) { + // 全部分配 dtlDaoList = iostorinvdtlCpService.list( new QueryWrapper().lambda() .eq(StIvtIostorinvdtlCp::getIostorinv_id, whereJson.getString("iostorinv_id")) @@ -216,6 +214,7 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl().lambda() .eq(StIvtIostorinvdtlCp::getIostorinvdtl_id, whereJson.getString("iostorinvdtl_id")) @@ -237,8 +236,8 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl disDaoList = new ArrayList<>(); if (whereJson.getBoolean("type")) { + // 全部取消 disDaoList = iostorinvdisCpService.list( new QueryWrapper().lambda() .eq(StIvtIostorinvdisCp::getIostorinv_id, whereJson.getString("iostorinv_id")) .orderByAsc(StIvtIostorinvdisCp::getSeq_no) ); } else { + // 单条取消 disDaoList = iostorinvdisCpService.list( new QueryWrapper().lambda() .eq(StIvtIostorinvdisCp::getIostorinvdtl_id, whereJson.getString("iostorinvdtl_id")) @@ -397,11 +398,15 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl().lambda() + .set(StIvtIostorinvdisCp::getPoint_id, pointDao.getPoint_id()) + .set(StIvtIostorinvdisCp::getPoint_code, pointDao.getPoint_code()) + .set(StIvtIostorinvdisCp::getPoint_name, pointDao.getPoint_name()) + .set(StIvtIostorinvdisCp::getWork_status, IOSEnum.WORK_STATUS.code("生成")) + .set(StIvtIostorinvdisCp::getTask_id, disDao.getTask_id()) + .eq(StIvtIostorinvdisCp::getIostorinv_id, disDao.getIostorinv_id()) + .eq(StIvtIostorinvdisCp::getStoragevehicle_code, disDao.getStoragevehicle_code()) ); } @@ -458,21 +463,12 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl row.getIostorinvdtl_id().equals(dao.getIostorinvdtl_id())) .findAny().get(); - iStIvtStructivtCpService.UpdateIvt(ivtDataParam(dao,ChangeIvtUtil.SUBFROZEN_SUBIVT_QTY,dtlDao.getSource_billdtl_id())); + iStIvtStructivtCpService.UpdateIvt(ivtDataParam(dao,ChangeIvtUtil.SUBFROZEN_SUBIVT_QTY,dtlDao.getBase_billdtl_id())); - // 3)解锁起点 + // 3)解锁起点 / 将此托盘上的库存全部出掉 unLockNext(dao.getStruct_id()); - // 4) 更新载具扩展属性 - iMdPbStoragevehicleextService.update( - new MdPbStoragevehicleext() - .setMaterial_id("") - .setStorage_qty(BigDecimal.valueOf(0)), - new QueryWrapper().lambda() - .eq(MdPbStoragevehicleext::getStoragevehicle_code,dao.getStoragevehicle_code()) - ); - - // 5) 更新箱记录表为出库 + // 4) 更新箱记录表为出库 iMdPbBucketrecordService.update( MdPbBucketrecord.builder() .status(MasterEnum.BOX_STATUS.code("出库")) @@ -480,7 +476,7 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl().lambda() .eq(MdPbBucketrecord::getStoragevehicle_code, dao.getStoragevehicle_code()) .eq(MdPbBucketrecord::getMaterial_id, dao.getMaterial_id()) - .eq(MdPbBucketrecord::getStatus, MasterEnum.BOX_STATUS.code("入库")) + .eq(MdPbBucketrecord::getStatus, MasterEnum.BOX_STATUS.code("出库")) ); } @@ -491,7 +487,7 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl().lambda() - .eq(StIvtIostorinvdisCp::getTask_id, task_id)); + .eq(StIvtIostorinvdisCp::getTask_id, task_id),false); // 更新任务状态为完成 if (status.equals(AcsTaskEnum.STATUS_FINISH.getCode())) { @@ -567,12 +563,23 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl> collect = iostorinvdisCpService.list( + new QueryWrapper().lambda() + .eq(StIvtIostorinvdisCp::getTask_id, task_id) + ) + .stream() + .collect(Collectors.groupingBy(StIvtIostorinvdisCp::getIostorinvdtl_id)); + + for(List list : collect.values()) { + StIvtIostorinvdisCp disDao_2 = list.get(0); + JSONObject mst_jo = new JSONObject(); + mst_jo.put("iostorinvdtl_id", disDao_2.getIostorinvdtl_id()); + mst_jo.put("iostorinv_id", disDao_2.getIostorinv_id()); + mst_jo.put("is_out", true); + iostorinvdisCpService.confirm(mst_jo); + } } else if (status.equals(AcsTaskEnum.STATUS_START.getCode())) { // 更新任务为执行中 @@ -609,12 +616,15 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl().lambda() + .set(StIvtIostorinvdisCp::getTask_id, "") + .set(StIvtIostorinvdisCp::getPoint_id, "") + .set(StIvtIostorinvdisCp::getPoint_code,"") + .set(StIvtIostorinvdisCp::getPoint_name,"") + .set(StIvtIostorinvdisCp::getWork_status, IOSEnum.WORK_STATUS.code("未生成")) + .eq(StIvtIostorinvdisCp::getTask_id, disDao.getTask_id()) + ); } @Override @@ -719,6 +729,7 @@ public class StIvtIostorinvCpOutServiceImpl extends ServiceImpl().lambda() - .eq(MdPbStoragevehicleinfo::getStoragevehicle_code, attrDao.getStoragevehicle_code()) - ); - - if (StrUtil.equals(vehicleDao.getOverstruct_type(),IOSEnum.IS_USED.code("是"))) { + if (StrUtil.equals(attrDao.getIs_zdepth(),IOSEnum.IS_USED.code("是"))) { // 解锁超限货位 iStIvtStructattrService.update( new UpdateWrapper().lambda() .set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定")) - .eq(StIvtStructattr::getControl_code,attrDao.getStruct_id()) + .eq(StIvtStructattr::getStruct_id,attrDao.getControl_code()) ); } + // 将此托盘上的所有库存删除 + iStIvtStructivtCpService.remove( + new QueryWrapper().lambda() + .eq(StIvtStructivtCp::getStruct_id, struct_id) + .eq(StIvtStructivtCp::getFrozen_qty, 0) + ); + attrDao.setInv_code(""); attrDao.setInv_type(""); attrDao.setInv_id(""); + attrDao.setIs_zdepth(""); attrDao.setStoragevehicle_code(""); attrDao.setLock_type(IOSEnum.LOCK_TYPE.code("未锁定")); iStIvtStructattrService.updateById(attrDao); 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 b71e3405..b2405974 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 @@ -38,6 +38,8 @@ import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtBsrealstorattr import org.nl.wms.masterdata_manage.storage.service.storage.IStIvtStructattrService; import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtBsrealstorattr; import org.nl.wms.masterdata_manage.storage.service.storage.dao.StIvtStructattr; +import org.nl.wms.mps_manage.ordermanage.service.saleOrder.IMpsSaleOrderService; +import org.nl.wms.mps_manage.ordermanage.service.saleOrder.dao.MpsSaleOrder; import org.nl.wms.product_manage.sch.manage.TaskStatusEnum; import org.nl.wms.scheduler_manage.service.point.ISchBasePointService; import org.nl.wms.scheduler_manage.service.point.dao.SchBasePoint; @@ -118,6 +120,9 @@ public class StIvtIostorinvCpServiceImpl extends ServiceImpl list : collect.values()) { @@ -454,8 +462,10 @@ public class StIvtIostorinvCpServiceImpl extends ServiceImpl().lambda() + .set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定")) + .eq(StIvtStructattr::getStruct_id,attrDao.getControl_code()) + ); + } + // 解锁货位 iStIvtStructattrService.update( new StIvtStructattr() .setLock_type(IOSEnum.LOCK_TYPE.code("未锁定")) .setInv_code("") .setInv_type("") + .setIs_zdepth("") .setInv_id(""), new QueryWrapper().lambda() - .eq(StIvtStructattr::getStruct_code, disDao.getStruct_code()) + .eq(StIvtStructattr::getStruct_id, disDao.getStruct_id()) ); - // 判断载具是否超限 - if (StrUtil.equals(whereJson.getString("vehicle_overstruct_type"),IOSEnum.VEHICLE_OVER_TYPE.code("横向超"))) { - - // 解锁超限货位 - iStIvtStructattrService.update( - new UpdateWrapper().lambda() - .set(StIvtStructattr::getLock_type, IOSEnum.LOCK_TYPE.code("未锁定")) - .eq(StIvtStructattr::getControl_code,disDao.getStruct_id()) - ); - } - // 更新库存 Map> collect = iostorinvdisCpService.list( new QueryWrapper().lambda() @@ -531,7 +545,7 @@ public class StIvtIostorinvCpServiceImpl extends ServiceImpl list : collect.values()) { @@ -543,7 +557,9 @@ public class StIvtIostorinvCpServiceImpl extends ServiceImpl().lambda() .eq(MpsSaleOrder::getSale_code, row.getBase_bill_code()) .eq(MpsSaleOrder::getSeq_no, row.getBase_bill_table()) ); if (ObjectUtil.isEmpty(orderDao)) - throw new BadRequestException("销售单号错误!"); + throw new BadRequestException("销售单不存在!"); row.setBase_billdtl_id(orderDao.getSale_id().toString()); row.setBase_bill_code(orderDao.getSale_code()); diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/moreOrLess/dao/mapper/StIfDeliveryorderCpMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/moreOrLess/dao/mapper/StIfDeliveryorderCpMapper.xml index 0585ae13..675c8c5f 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/moreOrLess/dao/mapper/StIfDeliveryorderCpMapper.xml +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/moreOrLess/dao/mapper/StIfDeliveryorderCpMapper.xml @@ -6,6 +6,7 @@ SELECT der.*, mater.material_name, + mater.material_spec, unit.unit_name AS qty_unit_name FROM ST_IF_DeliveryOrder_CP der @@ -18,16 +19,16 @@ and der.deliver_code = #{query.deliver_code} - and der.material_code >= #{query.material_code} + and der.material_code like #{query.material_code} - and der.status >= #{query.status} + and der.status = #{query.status} - and der.cust_code >= #{query.cust_code} + and der.cust_code like #{query.cust_code} - and der.sale_code >= #{query.sale_code} + and der.sale_code like #{query.sale_code} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/mapper/StIvtStructivtCpMapper.xml b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/mapper/StIvtStructivtCpMapper.xml index e44d6174..188079cb 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/mapper/StIvtStructivtCpMapper.xml +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dao/mapper/StIvtStructivtCpMapper.xml @@ -8,7 +8,7 @@ FROM ST_IVT_StructIvt_CP ivt LEFT JOIN st_ivt_structattr attr ON ivt.struct_id = attr.struct_id - WHERE attr.lock_type = '0' + WHERE ivt.canuse_qty > 0 and ivt.frozen_qty = 0 and attr.stor_id = #{stor_id} @@ -34,6 +34,7 @@ attr.storagevehicle_code, mater.material_code, mater.material_name, + mater.material_spec, unit.unit_name AS qty_unit_name FROM ST_IVT_StructIvt_CP ivt @@ -144,30 +145,48 @@ attr.sect_name, ivt.struct_code, ivt.struct_name, + mater.material_id, mater.material_name, mater.material_code, + mater.material_spec, attr.storagevehicle_code, ivt.canuse_qty, ivt.frozen_qty, ivt.ivt_qty, ivt.warehousing_qty, unit.unit_name, - ivt.instorage_time + unit.measure_unit_id, + ivt.instorage_time, + sale.sale_code, + sale.seq_no, + sale.sale_id, + sale.sale_type FROM st_ivt_structivt_cp ivt LEFT JOIN md_me_materialbase mater ON ivt.material_id = mater.material_id LEFT JOIN st_ivt_structattr attr ON attr.struct_id = ivt.struct_id LEFT JOIN md_pb_measureunit unit ON unit.measure_unit_id = ivt.qty_unit_id + LEFT JOIN mps_sale_order sale ON sale.sale_id = ivt.sale_id 1=1 and mater.material_code LIKE #{query.material_code} or - (mater.material_name LIKE #{query.material_code}) + (mater.material_name LIKE #{query.material_code}) or + (mater.material_spec LIKE #{query.material_code}) and attr.struct_code LIKE #{query.struct_code} or (attr.struct_name LIKE #{query.struct_code}) + + and sale.sale_code LIKE #{query.sale_code} + + + and sale.seq_no LIKE #{query.seq_no} + + + and attr.lock_type = #{query.lock_type} + and ivt.instorage_time >= #{query.start_time} diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dto/CpIvtQuery.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dto/CpIvtQuery.java index e02b21b9..23100b01 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dto/CpIvtQuery.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/service/structIvt/dto/CpIvtQuery.java @@ -18,6 +18,12 @@ public class CpIvtQuery extends BaseQuery { private String material_code; + private String sale_code; + + private String seq_no; + + private String lock_type; + @Override public void paramMapping() { super.doP.put("struct_code", QParam.builder().k(new String[]{"struct_code"}).type(QueryTEnum.LK).build()); 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 3da06584..8b3889b8 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 @@ -145,7 +145,7 @@ public class StIvtStructivtCpServiceImpl extends ServiceImpl().lambda() .eq(StIvtStructivtCp::getStruct_id, json.getString("struct_id")) .eq(StIvtStructivtCp::getMaterial_id, json.getString("material_id")) - .eq(StIvtStructivtCp::getPcsn, json.getString("pcsn")) + .eq(StIvtStructivtCp::getSale_id, json.getString("sale_id")) ); if (ObjectUtil.isEmpty(ivtDao)) { @@ -170,6 +170,9 @@ public class StIvtStructivtCpServiceImpl extends ServiceImpl().lambda() .eq(StIvtStructivtCp::getStruct_id, json.getString("struct_id")) .eq(StIvtStructivtCp::getMaterial_id, json.getString("material_id")) - .eq(StIvtStructivtCp::getPcsn, json.getString("pcsn")) + .eq(StIvtStructivtCp::getSale_id, json.getString("sale_id")) ); if (ObjectUtil.isEmpty(ivtDao)) { @@ -221,7 +224,7 @@ public class StIvtStructivtCpServiceImpl extends ServiceImpl().lambda() .eq(StIvtStructivtCp::getStruct_id, json.getString("struct_id")) .eq(StIvtStructivtCp::getMaterial_id, json.getString("material_id")) - .eq(StIvtStructivtCp::getPcsn, json.getString("pcsn")) + .eq(StIvtStructivtCp::getSale_id, json.getString("sale_id")) ); if (ObjectUtil.isEmpty(ivtDao)) { diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/RuleUtil.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/RuleUtil.java index 2c7a3e3e..1bb5b809 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/RuleUtil.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/storage_manage/productmanage/util/RuleUtil.java @@ -16,7 +16,7 @@ public class RuleUtil { /* * 出库分配: - * 根据 仓库、库区、物料、销售单找库存 + * 根据 仓库、库区、物料、销售单、行号找库存 */ public static final String PRODUCTION_OUT_1 = "out_1"; diff --git a/mes/qd/src/views/wms/storage_manage/product/productIn/AddDialog.vue b/mes/qd/src/views/wms/storage_manage/product/productIn/AddDialog.vue index f594cc86..2e1b4018 100644 --- a/mes/qd/src/views/wms/storage_manage/product/productIn/AddDialog.vue +++ b/mes/qd/src/views/wms/storage_manage/product/productIn/AddDialog.vue @@ -169,7 +169,7 @@ - + + 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 db27987a..03450ba0 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 @@ -59,8 +59,9 @@ - - + + + @@ -268,7 +269,7 @@ export default { name: 'DivDialog', components: { StructDiv, AddBox }, mixins: [crud()], - dicts: ['IO_BILL_STATUS', 'VEHICLE_OVER_TYPE'], + dicts: ['IO_BILL_STATUS', 'VEHICLE_OVER_TYPE', 'PCS_SAL_TYPE'], props: { dialogShow: { type: Boolean, @@ -596,6 +597,7 @@ export default { this.dis_row.stor_id = this.stor_id.toString() this.dis_row.sect_id = this.sect_id.toString() + this.dis_row.vehicle_overstruct_type = this.form.vehicle_overstruct_type crudProductIn.divStruct(this.dis_row).then(res => { crudProductIn.getIosInvDtl({ 'iostorinv_id': this.dis_row.iostorinv_id }).then(res => { this.openParam = res @@ -649,6 +651,9 @@ export default { this.crud.notify('操作成功!', CRUD.NOTIFICATION_TYPE.SUCCESS) }) }) + }, + formatBaseType(row) { + return this.dict.label.PCS_SAL_TYPE[row.base_bill_type] } } } diff --git a/mes/qd/src/views/wms/storage_manage/product/productIn/TaskDialog.vue b/mes/qd/src/views/wms/storage_manage/product/productIn/TaskDialog.vue index 135169b7..e0929ee4 100644 --- a/mes/qd/src/views/wms/storage_manage/product/productIn/TaskDialog.vue +++ b/mes/qd/src/views/wms/storage_manage/product/productIn/TaskDialog.vue @@ -42,6 +42,9 @@ + + + - + + @@ -204,6 +210,7 @@ import CRUD, { crud, form } from '@crud/crud' import crudProductIn from '@/views/wms/storage_manage/product/productIn/productin' import MaterDtl from '@/views/wms/pub/MaterDialog' import AddDtl from '@/views/wms/storage_manage/product/productOut/AddDtl' +import AddIvt from '@/views/wms/storage_manage/product/productOut/AddIvt' import crudStorattr, { getStor } from '@/views/wms/storage_manage/basedata/basedata' const defaultForm = { @@ -223,7 +230,7 @@ const defaultForm = { export default { name: 'AddDialog', - components: { MaterDtl, AddDtl }, + components: { MaterDtl, AddDtl, AddIvt }, mixins: [crud(), form(defaultForm)], dicts: ['IO_BILL_STATUS', 'ST_INV_OUT_TYPE', 'ST_QUALITY_SCODE', 'bill_type', 'product_area'], props: { @@ -240,6 +247,7 @@ export default { dialogVisible: false, materShow: false, dtlShow: false, + ivtShow: false, opendtlParam: null, materType: '03', // 关键成品 storlist: [], @@ -345,12 +353,41 @@ export default { data.material_id = row.material_id data.material_code = row.material_code data.material_name = row.material_name + data.material_spec = row.material_spec data.plan_qty = row.delivery_qty data.qty_unit_name = row.qty_unit_name data.qty_unit_id = row.qty_unit_id - data.source_billdtl_id = row.sale_id - data.source_bill_type = row.sale_type - data.source_bill_code = row.sale_code + data.source_billdtl_id = row.deliver_id + data.source_bill_type = row.deliver_type + data.source_bill_code = row.deliver_code + data.base_billdtl_id = row.sale_id + data.base_bill_code = row.sale_code + data.base_bill_table = row.sale_seq_no + data.edit = true + this.form.tableData.splice(-1, 0, data) + this.form.total_qty = parseFloat(this.form.total_qty) + parseFloat(data.plan_qty) + this.form.detail_count = this.form.tableData.length + } + }, + tableChanged3(row) { + let same_mater = true + this.form.tableData.forEach((item) => { + if (item.sale_id === row.sale_id) { + same_mater = false + } + }) + if (same_mater) { + const data = {} + data.material_id = row.material_id + data.material_code = row.material_code + data.material_name = row.material_name + data.material_spec = row.material_spec + data.plan_qty = row.canuse_qty + data.qty_unit_name = row.unit_name + data.qty_unit_id = row.measure_unit_id + data.base_billdtl_id = row.sale_id + data.base_bill_code = row.sale_code + data.base_bill_table = row.seq_no data.edit = true this.form.tableData.splice(-1, 0, data) this.form.total_qty = parseFloat(this.form.total_qty) + parseFloat(data.plan_qty) @@ -360,6 +397,9 @@ export default { insertEvent(row) { this.dtlShow = true }, + insertIvt() { + this.ivtShow = true + }, queryMater(index, row) { this.nowindex = index this.nowrow = row diff --git a/mes/qd/src/views/wms/storage_manage/product/productOut/AddDtl.vue b/mes/qd/src/views/wms/storage_manage/product/productOut/AddDtl.vue index f68da88b..5bdc47a1 100644 --- a/mes/qd/src/views/wms/storage_manage/product/productOut/AddDtl.vue +++ b/mes/qd/src/views/wms/storage_manage/product/productOut/AddDtl.vue @@ -78,9 +78,13 @@ - + + + + + @@ -105,6 +109,7 @@ import pagination from '@crud/Pagination' export default { name: 'AddDtl', + dicts: ['PCS_DELIVER_TYPE', 'PCS_DELI_STATUS'], components: { rrOperation, pagination, crudOperation }, cruds() { return CRUD({ @@ -175,6 +180,12 @@ export default { this.$emit('update:dialogShow', false) this.rows = this.$refs.multipleTable.selection this.$emit('tableChanged', this.tableRadio) + }, + formatStatus(row, column) { + return this.dict.label.PCS_DELI_STATUS[row.status] + }, + formatSourceType(row, column) { + return this.dict.label.PCS_DELIVER_TYPE[row.deliver_type] } } } diff --git a/mes/qd/src/views/wms/storage_manage/product/productOut/AddIvt.vue b/mes/qd/src/views/wms/storage_manage/product/productOut/AddIvt.vue new file mode 100644 index 00000000..91a3f174 --- /dev/null +++ b/mes/qd/src/views/wms/storage_manage/product/productOut/AddIvt.vue @@ -0,0 +1,198 @@ + + + + diff --git a/mes/qd/src/views/wms/storage_manage/product/productOut/DivDialog.vue b/mes/qd/src/views/wms/storage_manage/product/productOut/DivDialog.vue index ca40132a..0f4d65c6 100644 --- a/mes/qd/src/views/wms/storage_manage/product/productOut/DivDialog.vue +++ b/mes/qd/src/views/wms/storage_manage/product/productOut/DivDialog.vue @@ -112,7 +112,7 @@ - + @@ -204,10 +204,10 @@ - - - + + + @@ -227,7 +227,7 @@ export default { name: 'DivDialog', components: { StructIvt }, mixins: [crud()], - dicts: ['IO_BILL_STATUS', 'work_status'], + dicts: ['IO_BILL_STATUS', 'work_status', 'PCS_DELIVER_TYPE'], props: { dialogShow: { type: Boolean, @@ -315,6 +315,9 @@ export default { bill_statusFormat(row, column) { return this.dict.label.IO_BILL_STATUS[row.bill_status] }, + formatSourceType(row, column) { + return this.dict.label.PCS_DELIVER_TYPE[row.source_bill_type] + }, quality_scodeFormat(row, column) { return this.dict.label.ST_QUALITY_SCODE[row.quality_scode] }, diff --git a/mes/qd/src/views/wms/storage_manage/product/productOut/StructIvt.vue b/mes/qd/src/views/wms/storage_manage/product/productOut/StructIvt.vue index 88033482..2717ab56 100644 --- a/mes/qd/src/views/wms/storage_manage/product/productOut/StructIvt.vue +++ b/mes/qd/src/views/wms/storage_manage/product/productOut/StructIvt.vue @@ -79,8 +79,9 @@ + + -