diff --git a/emis-oms-biz-web/src/main/java/com/xdadan/erp/oms/web/Oms2cWarehouseInController.java b/emis-oms-biz-web/src/main/java/com/xdadan/erp/oms/web/Oms2cWarehouseInController.java index 994d8ba..840f138 100644 --- a/emis-oms-biz-web/src/main/java/com/xdadan/erp/oms/web/Oms2cWarehouseInController.java +++ b/emis-oms-biz-web/src/main/java/com/xdadan/erp/oms/web/Oms2cWarehouseInController.java @@ -1,11 +1,11 @@ -/** +/** * @Project: emis * @Title: EmisWarehouseInController.java * @author linfso * @date 2024-05-22 00:20:31 * @Copyright: ShangHai Duta 2022 All rights reserved. - * @version v1.0 + * @version v1.0 * @Description:

进仓单 控制器

*/ @@ -28,6 +28,7 @@ import feign.Response; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.MapUtils; import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; @@ -37,10 +38,11 @@ import java.io.*; import java.util.Arrays; import java.util.HashMap; import java.util.List; +import java.util.Map; /** * 进仓单Controller - * + * * @author linfso * @date 2024-05-22 00:20:31 */ @@ -84,9 +86,31 @@ public class Oms2cWarehouseInController extends BaseController String customerCode=getLoginUser().getUser().getCustomerCode(); emisWarehouseIn.setCustomerCode(customerCode); - String queryStatusType= MapUtils.getString(emisWarehouseIn.getParams(),"queryStatusType",""); + // 将对象转换为 Map,并处理 params 字段 + Map queryMap = convertToQueryMap(emisWarehouseIn); - return iRpcWarehouseInSvc.listSimpleByOms(customerCode,queryStatusType,emisWarehouseIn.getSearchValue(),pageNum,pageSize); + return iRpcWarehouseInSvc.listSimpleByOms(queryMap, pageNum, pageSize); + } + + /** + * 将 EmisWarehouseIn 转换为 Map,并处理 params 字段 + */ + @SuppressWarnings("unchecked") + private Map convertToQueryMap(EmisWarehouseIn emisWarehouseIn) { + String jsonString = JSON.toJSONString(emisWarehouseIn); + Map queryMap = (Map) JSON.parseObject(jsonString, Map.class); + + // 移除 params 字段,避免类型转换问题 + queryMap.remove("params"); + + // 将 params 中的键值对转换为 params[key]=value 的形式 + if (emisWarehouseIn.getParams() != null && emisWarehouseIn.getParams().size() > 0) { + for (Map.Entry entry : emisWarehouseIn.getParams().entrySet()) { + queryMap.put("params[" + entry.getKey() + "]", entry.getValue()); + } + } + + return queryMap; } /** diff --git a/emis-oms-biz/src/main/java/com/xdadan/erp/oms/service/svc/IRpcWarehouseInSvc.java b/emis-oms-biz/src/main/java/com/xdadan/erp/oms/service/svc/IRpcWarehouseInSvc.java index bb63c88..b63e6cb 100644 --- a/emis-oms-biz/src/main/java/com/xdadan/erp/oms/service/svc/IRpcWarehouseInSvc.java +++ b/emis-oms-biz/src/main/java/com/xdadan/erp/oms/service/svc/IRpcWarehouseInSvc.java @@ -4,7 +4,6 @@ package com.xdadan.erp.oms.service.svc; import com.xdadan.erp.oms.common.core.domain.AjaxResult; import com.xdadan.erp.oms.domain.EmisWarehouseIn; import com.xdadan.erp.oms.domain.EmisWarehouseInBatch; -import com.xdadan.erp.oms.domain.vo.WaybillOrder; import feign.Response; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.SpringQueryMap; @@ -28,10 +27,7 @@ public interface IRpcWarehouseInSvc { @GetMapping("/apiweb/emisWarehouseIn/listSimpleByOms") - public AjaxResult listSimpleByOms( - @RequestParam("customerCode") String customerCode, - @RequestParam("queryStatusType") String queryStatusType, - @RequestParam("searchValue") String searchValue, + public AjaxResult listSimpleByOms(@SpringQueryMap Map queryMap, @RequestParam("pageNum") Integer pageNum, @RequestParam("pageSize") Integer pageSize); @@ -52,4 +48,4 @@ public interface IRpcWarehouseInSvc { public AjaxResult reportBatchWsInError(@RequestBody EmisWarehouseInBatch emisWarehouseInBatch); -} \ No newline at end of file +}