diff --git a/hw-modules/hw-wms/src/main/java/com/hw/wms/domain/WmsWarehouseMaterial.java b/hw-modules/hw-wms/src/main/java/com/hw/wms/domain/WmsWarehouseMaterial.java new file mode 100644 index 00000000..05783810 --- /dev/null +++ b/hw-modules/hw-wms/src/main/java/com/hw/wms/domain/WmsWarehouseMaterial.java @@ -0,0 +1,108 @@ +package com.hw.wms.domain; + +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.hw.common.core.annotation.Excel; +import com.hw.common.core.web.domain.BaseEntity; + +/** + * 仓库可储存物料信息对象 wms_warehouse_material + * + * @author xins + * @date 2024-01-09 + */ +public class WmsWarehouseMaterial extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + private Long warehouseMaterialId; + + /** 仓库ID */ + private Long warehouseId; + + /** 库位编码;单独需要针对库位设置的,后续扩展使用 */ + private String locationCode; + + /** 存储类型(1、物料,2、物料类型);先支持物料 */ + private String storageType; + + /** 根据存储类型对应各自表的主键 */ + private Long storageId; + + private String materialCode; + + private String materialName; + + public Long getWarehouseMaterialId() { + return warehouseMaterialId; + } + + public void setWarehouseMaterialId(Long warehouseMaterialId) { + this.warehouseMaterialId = warehouseMaterialId; + } + + public void setWarehouseId(Long warehouseId) + { + this.warehouseId = warehouseId; + } + + public Long getWarehouseId() + { + return warehouseId; + } + public void setLocationCode(String locationCode) + { + this.locationCode = locationCode; + } + + public String getLocationCode() + { + return locationCode; + } + public void setStorageType(String storageType) + { + this.storageType = storageType; + } + + public String getStorageType() + { + return storageType; + } + public void setStorageId(Long storageId) + { + this.storageId = storageId; + } + + public Long getStorageId() + { + return storageId; + } + + public String getMaterialCode() { + return materialCode; + } + + public void setMaterialCode(String materialCode) { + this.materialCode = materialCode; + } + + public String getMaterialName() { + return materialName; + } + + public void setMaterialName(String materialName) { + this.materialName = materialName; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("warehouseId", getWarehouseId()) + .append("locationCode", getLocationCode()) + .append("storageType", getStorageType()) + .append("storageId", getStorageId()) + .append("createTime", getCreateTime()) + .append("createBy", getCreateBy()) + .toString(); + } +} diff --git a/hw-modules/hw-wms/src/main/java/com/hw/wms/mapper/WmsWarehouseMaterialMapper.java b/hw-modules/hw-wms/src/main/java/com/hw/wms/mapper/WmsWarehouseMaterialMapper.java new file mode 100644 index 00000000..d6e31579 --- /dev/null +++ b/hw-modules/hw-wms/src/main/java/com/hw/wms/mapper/WmsWarehouseMaterialMapper.java @@ -0,0 +1,80 @@ +package com.hw.wms.mapper; + +import java.util.List; + +import com.hw.wms.domain.WmsWarehouseMaterial; + +/** + * 仓库可储存物料信息Mapper接口 + * + * @author xins + * @date 2024-01-09 + */ +public interface WmsWarehouseMaterialMapper { + /** + * 查询仓库可储存物料信息 + * + * @param warehouseId 仓库可储存物料信息主键 + * @return 仓库可储存物料信息 + */ + public WmsWarehouseMaterial selectWmsWarehouseMaterialByWarehouseId(Long warehouseId); + + /** + * 查询仓库可储存物料信息列表 + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 仓库可储存物料信息集合 + */ + public List selectWmsWarehouseMaterialList(WmsWarehouseMaterial wmsWarehouseMaterial); + + /** + * 新增仓库可储存物料信息 + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 结果 + */ + public int insertWmsWarehouseMaterial(WmsWarehouseMaterial wmsWarehouseMaterial); + + /** + * 修改仓库可储存物料信息 + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 结果 + */ + public int updateWmsWarehouseMaterial(WmsWarehouseMaterial wmsWarehouseMaterial); + + /** + * 删除仓库可储存物料信息 + * + * @param warehouseId 仓库可储存物料信息主键 + * @return 结果 + */ + public int deleteWmsWarehouseMaterialByWarehouseMaterialId(Long warehouseId); + + /** + * 批量删除仓库可储存物料信息 + * + * @param warehouseIds 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteWmsWarehouseMaterialByWarehouseMaterialIds(Long[] warehouseIds); + + + + /** + * 查询仓库可储存物料信息列表,Join material + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 仓库可储存物料信息集合 + */ + public List selectWmsWarehouseMaterialJoinList(WmsWarehouseMaterial wmsWarehouseMaterial); + + /** + * 批量新增仓库物料配置信息 + * + * @param warehouseMaterialList 仓库物料列表 + * @return 结果 + */ + public int batchInsertWarehouseMaterial(List warehouseMaterialList); + +} diff --git a/hw-modules/hw-wms/src/main/java/com/hw/wms/service/IWmsWarehouseMaterialService.java b/hw-modules/hw-wms/src/main/java/com/hw/wms/service/IWmsWarehouseMaterialService.java new file mode 100644 index 00000000..0459b9fb --- /dev/null +++ b/hw-modules/hw-wms/src/main/java/com/hw/wms/service/IWmsWarehouseMaterialService.java @@ -0,0 +1,78 @@ +package com.hw.wms.service; + +import java.util.List; +import com.hw.wms.domain.WmsWarehouseMaterial; + +/** + * 仓库可储存物料信息Service接口 + * + * @author xins + * @date 2024-01-09 + */ +public interface IWmsWarehouseMaterialService +{ + /** + * 查询仓库可储存物料信息 + * + * @param warehouseId 仓库可储存物料信息主键 + * @return 仓库可储存物料信息 + */ + public WmsWarehouseMaterial selectWmsWarehouseMaterialByWarehouseId(Long warehouseId); + + /** + * 查询仓库可储存物料信息列表 + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 仓库可储存物料信息集合 + */ + public List selectWmsWarehouseMaterialList(WmsWarehouseMaterial wmsWarehouseMaterial); + + /** + * 新增仓库可储存物料信息 + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 结果 + */ + public int insertWmsWarehouseMaterial(WmsWarehouseMaterial wmsWarehouseMaterial); + + /** + * 修改仓库可储存物料信息 + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 结果 + */ + public int updateWmsWarehouseMaterial(WmsWarehouseMaterial wmsWarehouseMaterial); + + /** + * 批量删除仓库可储存物料信息 + * + * @param warehouseMaterialIds 需要删除的仓库可储存物料信息主键集合 + * @return 结果 + */ + public int deleteWmsWarehouseMaterialByWarehouseMaterialIds(Long[] warehouseMaterialIds); + + /** + * 删除仓库可储存物料信息信息 + * + * @param warehouseMaterialId 仓库可储存物料信息主键 + * @return 结果 + */ + public int deleteWmsWarehouseMaterialByWarehouseMaterialId(Long warehouseMaterialId); + + + /** + * 查询仓库可储存物料信息列表,join material + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 仓库可储存物料信息 + */ + public List selectWmsWarehouseMaterialJoinList(WmsWarehouseMaterial wmsWarehouseMaterial); + + /** + * 批量新增仓库配置物料信息 + * + * @param warehouseId 仓库ID + * @param materialIds 物料组 + */ + public void batchInsertWarehouseMaterial(Long warehouseId, Long[] materialIds); +} diff --git a/hw-modules/hw-wms/src/main/java/com/hw/wms/service/impl/WmsWarehouseMaterialServiceImpl.java b/hw-modules/hw-wms/src/main/java/com/hw/wms/service/impl/WmsWarehouseMaterialServiceImpl.java new file mode 100644 index 00000000..7fd5ae53 --- /dev/null +++ b/hw-modules/hw-wms/src/main/java/com/hw/wms/service/impl/WmsWarehouseMaterialServiceImpl.java @@ -0,0 +1,134 @@ +package com.hw.wms.service.impl; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +import com.hw.common.core.constant.WmsConstants; +import com.hw.common.core.utils.DateUtils; +import com.hw.common.core.utils.StringUtils; +import com.hw.common.security.utils.SecurityUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.hw.wms.mapper.WmsWarehouseMaterialMapper; +import com.hw.wms.domain.WmsWarehouseMaterial; +import com.hw.wms.service.IWmsWarehouseMaterialService; + +/** + * 仓库可储存物料信息Service业务层处理 + * + * @author xins + * @date 2024-01-09 + */ +@Service +public class WmsWarehouseMaterialServiceImpl implements IWmsWarehouseMaterialService { + @Autowired + private WmsWarehouseMaterialMapper wmsWarehouseMaterialMapper; + + /** + * 查询仓库可储存物料信息 + * + * @param warehouseId 仓库可储存物料信息主键 + * @return 仓库可储存物料信息 + */ + @Override + public WmsWarehouseMaterial selectWmsWarehouseMaterialByWarehouseId(Long warehouseId) { + return wmsWarehouseMaterialMapper.selectWmsWarehouseMaterialByWarehouseId(warehouseId); + } + + /** + * 查询仓库可储存物料信息列表 + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 仓库可储存物料信息 + */ + @Override + public List selectWmsWarehouseMaterialList(WmsWarehouseMaterial wmsWarehouseMaterial) { + return wmsWarehouseMaterialMapper.selectWmsWarehouseMaterialList(wmsWarehouseMaterial); + } + + /** + * 新增仓库可储存物料信息 + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 结果 + */ + @Override + public int insertWmsWarehouseMaterial(WmsWarehouseMaterial wmsWarehouseMaterial) { + wmsWarehouseMaterial.setCreateTime(DateUtils.getNowDate()); + return wmsWarehouseMaterialMapper.insertWmsWarehouseMaterial(wmsWarehouseMaterial); + } + + /** + * 修改仓库可储存物料信息 + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 结果 + */ + @Override + public int updateWmsWarehouseMaterial(WmsWarehouseMaterial wmsWarehouseMaterial) { + return wmsWarehouseMaterialMapper.updateWmsWarehouseMaterial(wmsWarehouseMaterial); + } + + /** + * 批量删除仓库可储存物料信息 + * + * @param wmsWarehouseMaterialIds 需要删除的仓库可储存物料信息主键 + * @return 结果 + */ + @Override + public int deleteWmsWarehouseMaterialByWarehouseMaterialIds(Long[] wmsWarehouseMaterialIds) { + return wmsWarehouseMaterialMapper.deleteWmsWarehouseMaterialByWarehouseMaterialIds(wmsWarehouseMaterialIds); + } + + /** + * 删除仓库可储存物料信息信息 + * + * @param warehouseMaterialId 仓库可储存物料信息主键 + * @return 结果 + */ + @Override + public int deleteWmsWarehouseMaterialByWarehouseMaterialId(Long warehouseMaterialId) { + return wmsWarehouseMaterialMapper.deleteWmsWarehouseMaterialByWarehouseMaterialId(warehouseMaterialId); + } + + + /** + * 查询仓库可储存物料信息列表,join material + * + * @param wmsWarehouseMaterial 仓库可储存物料信息 + * @return 仓库可储存物料信息 + */ + @Override + public List selectWmsWarehouseMaterialJoinList(WmsWarehouseMaterial wmsWarehouseMaterial) { + return wmsWarehouseMaterialMapper.selectWmsWarehouseMaterialJoinList(wmsWarehouseMaterial); + } + + /** + * 批量新增仓库配置物料信息 + * + * @param warehouseId 仓库ID + * @param materialIds 物料组 + */ + @Override + public void batchInsertWarehouseMaterial(Long warehouseId, Long[] materialIds) { + if (StringUtils.isNotEmpty(materialIds)) { + String userName = SecurityUtils.getUsername(); + Date currentDate = new Date(); + // 新增仓库的物料配置信息 + List list = new ArrayList(); + for (Long materialId : materialIds) { + WmsWarehouseMaterial warehouseMaterial = new WmsWarehouseMaterial(); + warehouseMaterial.setWarehouseId(warehouseId); + warehouseMaterial.setStorageType(WmsConstants.WMS_WAREHOUSE_MATERIAL_STORAGE_TYPE_MATERIAL); + warehouseMaterial.setStorageId(materialId); + warehouseMaterial.setCreateBy(userName); + warehouseMaterial.setCreateTime(currentDate); + list.add(warehouseMaterial); + } + wmsWarehouseMaterialMapper.batchInsertWarehouseMaterial(list); + } + } + + +} diff --git a/hw-modules/hw-wms/src/main/resources/mapper/wms/WmsWarehouseMaterialMapper.xml b/hw-modules/hw-wms/src/main/resources/mapper/wms/WmsWarehouseMaterialMapper.xml new file mode 100644 index 00000000..85025480 --- /dev/null +++ b/hw-modules/hw-wms/src/main/resources/mapper/wms/WmsWarehouseMaterialMapper.xml @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + select warehouse_id, location_code, storage_type, storage_id, create_time, create_by from wms_warehouse_material + + + + + + + + insert into wms_warehouse_material + + warehouse_id, + location_code, + storage_type, + storage_id, + create_time, + create_by, + + + #{warehouseId}, + #{locationCode}, + #{storageType}, + #{storageId}, + #{createTime}, + #{createBy}, + + + + + update wms_warehouse_material + + location_code = #{locationCode}, + storage_type = #{storageType}, + storage_id = #{storageId}, + create_time = #{createTime}, + create_by = #{createBy}, + + where warehouse_id = #{warehouseId} + + + + delete from wms_warehouse_material where warehouse_material_id = #{warehouseMaterialId} + + + + delete from wms_warehouse_material where warehouse_material_id in + + #{warehouseMaterialId} + + + + + + + + + + insert into wms_warehouse_material(warehouse_id, storage_type,storage_id,create_time,create_by) values + + (#{item.warehouseId},#{item.storageType},#{item.storageId},#{item.createTime},#{item.createBy}) + + + + +