diff --git a/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java b/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java index 3b6dac8bf..d6bf5cfc0 100644 --- a/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java +++ b/src/main/java/com/glxp/api/controller/basic/BasicCorpController.java @@ -1,6 +1,11 @@ package com.glxp.api.controller.basic; +import cn.hutool.core.collection.CollUtil; import com.glxp.api.dto.DictDto; +import com.glxp.api.entity.auth.InvWarehouseEntity; +import com.glxp.api.req.auth.FilterInvSubWarehouseRequest; +import com.glxp.api.res.basic.FromCorpResponse; +import com.glxp.api.service.auth.InvWarehouseService; import org.springframework.beans.BeanUtils; import cn.hutool.core.util.IdUtil; import com.github.pagehelper.PageInfo; @@ -589,5 +594,49 @@ public class BasicCorpController extends BaseController { return ResultVOUtils.success(getCorpList); } + @Resource + InvWarehouseService invWarehouseService; + + /** + * 往来单位类型:1.客户,2:供应商,3:内部科室,4.特殊单据 + * + * @return + */ + @AuthRuleAnnotation("") + @PostMapping("/udiwms/basic/collect/fromCorp") + public BaseResponse getFromCorp(@RequestBody BasicUnitMaintainFilterRequest basicUnitMaintainFilterRequest) { + List fromCorpResponses = new ArrayList<>(); + if (basicUnitMaintainFilterRequest.getCorpType() == 3) { + FilterInvSubWarehouseRequest filterInvSubWarehouseRequest = new FilterInvSubWarehouseRequest(); + BeanUtils.copyProperties(basicUnitMaintainFilterRequest, filterInvSubWarehouseRequest); + filterInvSubWarehouseRequest.setAdvanceType(1); + List invWarehouseEntities = invWarehouseService.filterInvSubWarehouse(filterInvSubWarehouseRequest); + + List results = new ArrayList<>(); + if (CollUtil.isNotEmpty(invWarehouseEntities)) { + invWarehouseEntities.forEach(invWarehouseEntity -> { + if (!invWarehouseEntity.getCode().equals(basicUnitMaintainFilterRequest.getInvCode())) { + results.add(invWarehouseEntity); + } + }); + } + for (InvWarehouseEntity invWarehouseEntity : results) { + FromCorpResponse fromCorpResponse = new FromCorpResponse(); + fromCorpResponse.setCode(invWarehouseEntity.getCode()); + fromCorpResponse.setName(invWarehouseEntity.getName()); + fromCorpResponses.add(fromCorpResponse); + } + } else { + List getCorpList = basicUnitMaintainService.selectCorpList(basicUnitMaintainFilterRequest); + for (BasicCorpEntity basicCorpEntity : getCorpList) { + FromCorpResponse fromCorpResponse = new FromCorpResponse(); + fromCorpResponse.setCode(basicCorpEntity.getErpId()); + fromCorpResponse.setName(basicCorpEntity.getName()); + fromCorpResponses.add(fromCorpResponse); + } + } + return ResultVOUtils.success(fromCorpResponses); + } + } diff --git a/src/main/java/com/glxp/api/req/basic/BasicUnitMaintainFilterRequest.java b/src/main/java/com/glxp/api/req/basic/BasicUnitMaintainFilterRequest.java index 70f736495..d53b175f4 100644 --- a/src/main/java/com/glxp/api/req/basic/BasicUnitMaintainFilterRequest.java +++ b/src/main/java/com/glxp/api/req/basic/BasicUnitMaintainFilterRequest.java @@ -30,7 +30,13 @@ public class BasicUnitMaintainFilterRequest extends ListPageRequest { private String lastUpdateTime; private List corpTypeList; private List corpTypeLists;//用来往来单位查询 - ListthrCorpEntities; + List thrCorpEntities; private List erpIds; + + /** + * 1: + */ + private Integer fromCorpType; + private String invCode; } diff --git a/src/main/java/com/glxp/api/res/basic/FromCorpResponse.java b/src/main/java/com/glxp/api/res/basic/FromCorpResponse.java new file mode 100644 index 000000000..23de9e75a --- /dev/null +++ b/src/main/java/com/glxp/api/res/basic/FromCorpResponse.java @@ -0,0 +1,10 @@ +package com.glxp.api.res.basic; + +import lombok.Data; + +@Data +public class FromCorpResponse { + + private String code; + private String name; +}