OMS-GW-物料信息

This commit is contained in:
zhaoqing
2026-05-08 17:06:48 +08:00
parent 18f6d2eb6c
commit f3e7317132
10 changed files with 219 additions and 0 deletions
@@ -95,4 +95,8 @@ public interface WmsServiceFeign {
@ApiOperation("oms下发单明细保存") @ApiOperation("oms下发单明细保存")
@PostMapping(value = "/stockInOrderApi/omsInOrderAddDetail") @PostMapping(value = "/stockInOrderApi/omsInOrderAddDetail")
public void omsInOrderAddDetail(@RequestBody List<InMaterialDetail> inMaterialDetails); public void omsInOrderAddDetail(@RequestBody List<InMaterialDetail> inMaterialDetails);
@ApiOperation("oms查询物料列表")
@GetMapping("/materialBaseInfoApi/list")
public AjaxResult getMaterialBaseInfoList(MaterialInfoDTO materialInfoDTO);
} }
@@ -0,0 +1,43 @@
package com.mhd.system.api.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(description = "物料信息查询DTO")
public class MaterialInfoDTO {
@ApiModelProperty("物料名称")
private String materialName;
@ApiModelProperty("组织ID")
private Long organizationId;
@ApiModelProperty("创建时间起")
private String createTimeStart;
@ApiModelProperty("创建时间止")
private String createTimeEnd;
@ApiModelProperty("更新时间起")
private String updateTimeStart;
@ApiModelProperty("更新时间止")
private String updateTimeEnd;
@ApiModelProperty("推送状态")
private Integer pushStatus;
@ApiModelProperty("推送时间起")
private String pushTimeStart;
@ApiModelProperty("推送时间止")
private String pushTimeEnd;
}
@@ -69,6 +69,11 @@ public class RemoteWmsFallbackFactory implements FallbackFactory<WmsServiceFeign
@Override @Override
public void omsInOrderAddDetail(List<InMaterialDetail> inMaterialDetails) { public void omsInOrderAddDetail(List<InMaterialDetail> inMaterialDetails) {
} }
@Override
public AjaxResult getMaterialBaseInfoList(MaterialInfoDTO materialInfoDTO) {
return AjaxResult.error(cause.getMessage());
}
}; };
} }
} }
@@ -0,0 +1,38 @@
package com.mhd.oms.application.service.materialInfo;
import com.mhd.common.core.web.domain.AjaxResult;
import com.mhd.common.core.web.page.TableDataInfo;
import com.mhd.system.api.WmsServiceFeign;
import com.mhd.system.api.domain.MaterialInfoDTO;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
@Slf4j
public class MaterialInfoApplicationService {
private final WmsServiceFeign wmsServiceFeign;
public MaterialInfoApplicationService(WmsServiceFeign wmsServiceFeign) {
this.wmsServiceFeign = wmsServiceFeign;
}
public TableDataInfo queryList(MaterialInfoDTO materialInfoDTO) {
AjaxResult ajaxResult = wmsServiceFeign.getMaterialBaseInfoList(materialInfoDTO);
if(ajaxResult != null && "200".equals(String.valueOf(ajaxResult.get("code")))){
List<?> data = (List<?>) ajaxResult.get("data");
TableDataInfo tableDataInfo = new TableDataInfo();
tableDataInfo.setData(data);
tableDataInfo.setCode(200);
return tableDataInfo;
}
TableDataInfo tableDataInfo = new TableDataInfo();
tableDataInfo.setCode(500);
tableDataInfo.setMsg("查询失败");
return tableDataInfo;
}
}
@@ -0,0 +1,35 @@
package com.mhd.oms.interfaces.facade.materialInfo;
import com.mhd.common.core.web.controller.BaseController;
import com.mhd.common.core.web.page.TableDataInfo;
import com.mhd.oms.application.service.materialInfo.MaterialInfoApplicationService;
import com.mhd.system.api.domain.MaterialInfoDTO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
@Api(tags = "物料信息管理")
@RestController
@RequestMapping("/materialInfoApi")
public class MaterialInfoApi extends BaseController {
@Resource
private MaterialInfoApplicationService materialInfoApplicationService;
@ApiOperation("查询物料信息列表")
@GetMapping("/queryList")
public TableDataInfo queryList(MaterialInfoDTO materialInfoDTO){
startPage();
return materialInfoApplicationService.queryList(materialInfoDTO);
}
}
@@ -4,13 +4,16 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel; import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.handler.ListTypeHandler; import com.mhd.common.core.handler.ListTypeHandler;
import com.mhd.common.core.web.domain.BaseVOEntity; import com.mhd.common.core.web.domain.BaseVOEntity;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
import java.util.List; import java.util.List;
@@ -204,4 +207,13 @@ public class MaterialBaseInfo extends BaseVOEntity {
@TableField("copy_code") @TableField("copy_code")
private Integer copyCode; private Integer copyCode;
@ApiModelProperty(name = "推送状态 1-未推送 2-推送中 3-推送成功 4-推送失败")
private Integer pushStatus;
@ApiModelProperty(name = "推送时间")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date pushTime;
@ApiModelProperty(name = "推送人")
private Long pushBy;
} }
@@ -1,6 +1,8 @@
package com.mhd.wms.domain.materialBaseInfo.repository.po; package com.mhd.wms.domain.materialBaseInfo.repository.po;
import com.alibaba.nacos.shaded.io.grpc.Internal;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mhd.common.core.annotation.Excel; import com.mhd.common.core.annotation.Excel;
import com.mhd.common.core.handler.ListTypeHandler; import com.mhd.common.core.handler.ListTypeHandler;
import com.mhd.common.core.web.domain.BaseVOEntity; import com.mhd.common.core.web.domain.BaseVOEntity;
@@ -13,8 +15,10 @@ import com.mhd.wms.domain.materialWarehouseControl.repository.po.MaterialWarehou
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date;
import java.util.List; import java.util.List;
@@ -249,4 +253,15 @@ public class MaterialBaseInfoPO extends BaseVOEntity {
@Excel(name = "是否抄码: 1-是 2-否") @Excel(name = "是否抄码: 1-是 2-否")
private Integer copyCode; private Integer copyCode;
@ApiModelProperty("推送状态 1-未推送 2推送中 3-推送成功 4-推送失败")
private Integer pushStatus;
@ApiModelProperty("推送时间")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date pushTime;
@ApiModelProperty("推送人")
private Long pushBy;
} }
@@ -221,4 +221,25 @@ public class MaterialBaseInfoDO extends BaseVOEntity {
@ApiModelProperty("是否抄码: 1-是 2-否") @ApiModelProperty("是否抄码: 1-是 2-否")
@Excel(name = "是否抄码: 1-是 2-否") @Excel(name = "是否抄码: 1-是 2-否")
private Integer copyCode; private Integer copyCode;
@ApiModelProperty("推送状态")
private Integer pushStatus;
@ApiModelProperty("推送时间起")
private String pushTimeStart;
@ApiModelProperty("推送时间止")
private String pushTimeEnd;
@ApiModelProperty("创建时间起")
private String createTimeStart;
@ApiModelProperty("创建时间止")
private String createTimeEnd;
@ApiModelProperty("更新时间起")
private String updateTimeStart;
@ApiModelProperty("更新时间止")
private String updateTimeEnd;
} }
@@ -264,4 +264,25 @@ public class MaterialBaseInfoDTO extends BaseVOEntity {
@ApiModelProperty("是否抄码: 1-是 2-否") @ApiModelProperty("是否抄码: 1-是 2-否")
@Excel(name = "是否抄码: 1-是 2-否") @Excel(name = "是否抄码: 1-是 2-否")
private Integer copyCode; private Integer copyCode;
@ApiModelProperty("推送状态")
private Integer pushStatus;
@ApiModelProperty("推送时间起")
private String pushTimeStart;
@ApiModelProperty("推送时间止")
private String pushTimeEnd;
@ApiModelProperty("创建时间起")
private String createTimeStart;
@ApiModelProperty("创建时间止")
private String createTimeEnd;
@ApiModelProperty("更新时间起")
private String updateTimeStart;
@ApiModelProperty("更新时间止")
private String updateTimeEnd;
} }
@@ -58,6 +58,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="specificationModel" column="SPECIFICATION_MODEL" /> <result property="specificationModel" column="SPECIFICATION_MODEL" />
<result property="stockQuantity" column="stock_quantity" /> <result property="stockQuantity" column="stock_quantity" />
<result property="copyCode" column="copy_code" /> <result property="copyCode" column="copy_code" />
<result property="pushStatus" column="push_status" />
<result property="pushTime" column="push_time" />
<result property="pushBy" column="push_by" />
</resultMap> </resultMap>
@@ -66,6 +69,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
material_classify_name, a.material_type, a.material_type_name, a.pack_id, a.pack_code, a.pack_name, a.unit_code, a.unit_name, a.brand_id, a.brand_code, a.brand_name, a.shelf_life, a.weight_limit, a.volume_limit, a.material_shape, material_classify_name, a.material_type, a.material_type_name, a.pack_id, a.pack_code, a.pack_name, a.unit_code, a.unit_name, a.brand_id, a.brand_code, a.brand_name, a.shelf_life, a.weight_limit, a.volume_limit, a.material_shape,
material_shape_name, a.material_size, a.material_length, a.material_width, a.material_height, a.remark, a.nullify, a.create_time, a.create_by, a.create_by_name, a.update_time, a.update_by, a.update_by_name, a.del_flag, a.common, material_shape_name, a.material_size, a.material_length, a.material_width, a.material_height, a.remark, a.nullify, a.create_time, a.create_by, a.create_by_name, a.update_time, a.update_by, a.update_by_name, a.del_flag, a.common,
sku_code, a.unit_price, a.currency, a.origin_country, a.hs_code, a.declaration_unit, a.statutory_unit, a.statutory_second_unit, a.copy_code, sku_code, a.unit_price, a.currency, a.origin_country, a.hs_code, a.declaration_unit, a.statutory_unit, a.statutory_second_unit, a.copy_code,
a.push_status,a.push_time,a.push_by,
specification_model as specification_model,nvl(b.stock_qty,0) as stock_quantity from material_base_info a left join ( specification_model as specification_model,nvl(b.stock_qty,0) as stock_quantity from material_base_info a left join (
select material_base_info_id, sum(INVENTORY_QUANTITY) as stock_qty from MATERIAL_INVENTORY group by material_base_info_id select material_base_info_id, sum(INVENTORY_QUANTITY) as stock_qty from MATERIAL_INVENTORY group by material_base_info_id
) b on a.material_base_info_id = b.material_base_info_id ) b on a.material_base_info_id = b.material_base_info_id
@@ -209,6 +213,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and mgr.batch_id = #{batchId} and mgr.batch_id = #{batchId}
and mgr.del_flag = 1 and mgr.del_flag = 1
) )
</if>
<if test="pushStatus != null">
and a.push_status = #{pushStatus}
</if>
<if test="pushTimeStart != null and pushTimeStart != ''">
and date_format(a.push_time,'%Y-%m-%d') &gt;= #{pushTimeStart}
</if>
<if test="pushTimeEnd != null and pushTimeEnd != ''">
and date_format(a.push_time,'%Y-%m-%d') &lt;= #{pushTimeEnd}
</if>
<if test="createTimeStart != null and createTimeStart != ''">
and date_format(a.create_time,'%Y-%m-%d') &gt;= #{createTimeStart}
</if>
<if test="createTimeEnd != null and createTimeEnd != ''">
and date_format(a.create_time,'%Y-%m-%d') &lt;= #{createTimeEnd}
</if>
<if test="updateTimeStart != null and updateTimeStart != ''">
and date_format(a.update_time,'%Y-%m-%d') &gt;= #{updateTimeStart}
</if>
<if test="updateTimeEnd != null and updateTimeEnd != ''">
and date_format(a.update_time,'%Y-%m-%d') &lt;= #{updateTimeEnd}
</if> </if>
<!-- 传 1:只查公共 , 2:只查自己的 ,3:公共的和自己的 --> <!-- 传 1:只查公共 , 2:只查自己的 ,3:公共的和自己的 -->
<choose> <choose>