diff --git a/src/main/java/com/glxp/api/controller/collect/IoCollectOriginController.java b/src/main/java/com/glxp/api/controller/collect/IoCollectOriginController.java index c29b05360..3c97b5639 100644 --- a/src/main/java/com/glxp/api/controller/collect/IoCollectOriginController.java +++ b/src/main/java/com/glxp/api/controller/collect/IoCollectOriginController.java @@ -19,6 +19,7 @@ import com.glxp.api.res.basic.UserWorkResponse; import com.glxp.api.res.collect.CollectOrderBizResponse; import com.glxp.api.res.collect.IoCollectOrderResponse; import com.glxp.api.service.basic.BasicCollectUserService; +import com.glxp.api.service.basic.SysWorkplaceDocumentService; import com.glxp.api.service.collect.DownloadFactory; import com.glxp.api.service.collect.IoCollectOrderBizOriginService; import com.glxp.api.service.collect.IoCollectOrderOriginService; @@ -29,7 +30,10 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RestController; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import java.util.stream.Collectors; /** @@ -49,6 +53,8 @@ public class IoCollectOriginController extends BaseController { IoCollectOrderBizOriginService collectOrderBizOriginService; @Resource SysWorkplaceDocumentDao sysWorkplaceDocumentDao; + @Resource + SysWorkplaceDocumentService sysWorkplaceDocumentService; @PostMapping("/udiwms/basic/collect/origin/order/download") @@ -73,7 +79,9 @@ public class IoCollectOriginController extends BaseController { public BaseResponse filterOrder(CollectOrderRequest collectOrderRequest) { List workPlaceCodes = null; + List sysWorkplaceDocumentResponses = null; List page; + WorkBindBusTypeRequest workBindBusTypeRequest = new WorkBindBusTypeRequest(); if (collectOrderRequest.getWorkPlaceCode() == null) { Long userId = getUserId(); BasicCollectUserRequest request = new BasicCollectUserRequest(); @@ -86,8 +94,24 @@ public class IoCollectOriginController extends BaseController { .map(UserWorkResponse::getWorkplaceId) .collect(Collectors.toList()); } - collectOrderRequest.setWorkPlaceCodes(workPlaceCodes); + //通过工位列表 获取出 业务列表 + workBindBusTypeRequest.setWorkPlaceCodes(workPlaceCodes); + sysWorkplaceDocumentResponses = sysWorkplaceDocumentService.filterListByWorkplace(workBindBusTypeRequest); + }else { + workBindBusTypeRequest.setWorkplaceCode(collectOrderRequest.getWorkPlaceCode()); + sysWorkplaceDocumentResponses = sysWorkplaceDocumentService.filterListByWorkplace(workBindBusTypeRequest); + collectOrderRequest.setWorkPlaceCode(null); } + + if (CollUtil.isNotEmpty(sysWorkplaceDocumentResponses)){ + Set uniqueDocumentTypeCodesLinkedHashSet = sysWorkplaceDocumentResponses.stream() + .map(SysWorkplaceDocumentResponse::getDocumentTypeCode) + .collect(Collectors.toCollection(LinkedHashSet::new)); + List documentTypeCodes = new ArrayList<>(uniqueDocumentTypeCodesLinkedHashSet); + + collectOrderRequest.setDocumentTypeCodes(documentTypeCodes); + } + List orderResponses = collectOrderOriginService.filterList(collectOrderRequest); PageInfo pageInfo = new PageInfo<>(orderResponses); PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); diff --git a/src/main/java/com/glxp/api/service/collect/IoCollectOriginService.java b/src/main/java/com/glxp/api/service/collect/IoCollectOriginService.java index e0bf4bbd5..d42b7cf98 100644 --- a/src/main/java/com/glxp/api/service/collect/IoCollectOriginService.java +++ b/src/main/java/com/glxp/api/service/collect/IoCollectOriginService.java @@ -12,6 +12,7 @@ import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.dao.basic.SysWorkplaceDocumentDao; import com.glxp.api.entity.basic.BasicSkPrescribeEntity; import com.glxp.api.entity.basic.BasicSkPrescribeItemEntity; +import com.glxp.api.entity.basic.SysWorkplaceDocumentEntity; import com.glxp.api.entity.collect.IoCollectOrder; import com.glxp.api.entity.collect.IoCollectOrderBiz; import com.glxp.api.exception.JsonException; @@ -54,6 +55,8 @@ public class IoCollectOriginService { private DownloadFactory downloadFactory; @Resource private SysWorkplaceDocumentDao sysWorkplaceDocumentDao; + @Resource + private SysWorkplaceDocumentService sysWorkplaceDocumentService; public BaseResponse downloadOrder(CollectOrderRequest collectOrderRequest) { @@ -101,12 +104,10 @@ public class IoCollectOriginService { String busType = collectOrderRequest.getBusType(); if (StrUtil.isBlank(busType)) { //下载工位下的类型 - WorkBindBusTypeRequest workBindBusTypeRequest = new WorkBindBusTypeRequest(); - List sysWorkplaceDocumentResponses = sysWorkplaceDocumentDao.filterList(workBindBusTypeRequest); - if (CollUtil.isNotEmpty(sysWorkplaceDocumentResponses)) { - for (SysWorkplaceDocumentResponse sysWorkplaceDocumentResponse : sysWorkplaceDocumentResponses) { - String documentTypeCode = sysWorkplaceDocumentResponse.getDocumentTypeCode(); - collectOrderRequest.setBusType(documentTypeCode); + List list = sysWorkplaceDocumentService.list(); + if (CollUtil.isNotEmpty(list)) { + for (SysWorkplaceDocumentEntity item : list) { + collectOrderRequest.setBusType(item.getDocumentTypeCode()); downloadFactory.downloadOrder(collectOrderRequest); } }else{ diff --git a/src/main/resources/mybatis/mapper/basic/SysWorkplaceDocumentDao.xml b/src/main/resources/mybatis/mapper/basic/SysWorkplaceDocumentDao.xml index 7dec33bfa..1fc1d7823 100644 --- a/src/main/resources/mybatis/mapper/basic/SysWorkplaceDocumentDao.xml +++ b/src/main/resources/mybatis/mapper/basic/SysWorkplaceDocumentDao.xml @@ -38,7 +38,6 @@ left join thr_bustype_origin on thr_bustype_origin.action = sys_workplace_document.documentTypeCode - and sys_workplace_document.workplaceCode is not null AND sys_workplace_bus.workplaceCode = #{workplaceCode} diff --git a/src/main/resources/mybatis/mapper/collect/IoCollectOrderMapper.xml b/src/main/resources/mybatis/mapper/collect/IoCollectOrderMapper.xml index 79def5c86..fa8d5e8df 100644 --- a/src/main/resources/mybatis/mapper/collect/IoCollectOrderMapper.xml +++ b/src/main/resources/mybatis/mapper/collect/IoCollectOrderMapper.xml @@ -44,8 +44,12 @@ AND busType = #{busType} + - AND fromCorp LIKE concat('%', #{fromCorp}, '%') + AND ( fromCorp LIKE concat('%', #{fromCorp}, '%') or fromCorpName LIKE concat('%', #{fromCorp}, '%') ) + + + AND fromType LIKE concat('%', #{fromType}, '%') AND busType = #{busType} diff --git a/src/main/resources/mybatis/mapper/collect/IoCollectOrderOriginMapper.xml b/src/main/resources/mybatis/mapper/collect/IoCollectOrderOriginMapper.xml index c34bede56..311e9902c 100644 --- a/src/main/resources/mybatis/mapper/collect/IoCollectOrderOriginMapper.xml +++ b/src/main/resources/mybatis/mapper/collect/IoCollectOrderOriginMapper.xml @@ -46,7 +46,10 @@ AND busType = #{busType} - AND fromCorp LIKE concat('%', #{fromCorp}, '%') + AND ( fromCorp LIKE concat('%', #{fromCorp}, '%') or fromCorpName LIKE concat('%', #{fromCorp}, '%') ) + + + AND fromType LIKE concat('%', #{fromType}, '%') AND collectCode = #{collectCode}