From 99d42be8d6f71e2ede10ddb35280e2fb2ca66611 Mon Sep 17 00:00:00 2001 From: zhangqinbin <181961702@qq.com> Date: Fri, 14 Jul 2023 16:17:53 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=B3=E9=97=AD=E7=94=B5=E5=AD=90=E8=AF=84?= =?UTF-8?q?=E6=A0=87=E5=AE=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ebtp/project/feign/EbtpEvaluationApi.java | 33 +++++++++++++++++++ .../EvaluationFeignFallbackFactory.java | 28 ++++++++++++++++ .../impl/ProjectExceptionServiceImpl.java | 26 +++++++++++++++ 3 files changed, 87 insertions(+) create mode 100644 src/main/java/com/chinaunicom/mall/ebtp/project/feign/EbtpEvaluationApi.java create mode 100644 src/main/java/com/chinaunicom/mall/ebtp/project/feign/fallback/EvaluationFeignFallbackFactory.java diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/feign/EbtpEvaluationApi.java b/src/main/java/com/chinaunicom/mall/ebtp/project/feign/EbtpEvaluationApi.java new file mode 100644 index 0000000..000d3f7 --- /dev/null +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/feign/EbtpEvaluationApi.java @@ -0,0 +1,33 @@ +package com.chinaunicom.mall.ebtp.project.feign; + +import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; +import com.chinaunicom.mall.ebtp.project.feign.fallback.EvaluationFeignFallbackFactory; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * 评标服务 + * + * @author dino + * @date 2020/12/2 19:50 + */ +@FeignClient(value = "${mconfig.service-name-evaluation}",fallbackFactory = EvaluationFeignFallbackFactory.class +// , url = "http://10.242.31.158:8100/biz-service-ebtp-evaluation/" +) +public interface EbtpEvaluationApi { + + @ApiOperation("预约的电子评标室关闭") + @GetMapping("/v1/eval/room/reserve/close") + BaseResponse closeEvalRoomReserve(@ApiParam(value = "评审室id", required = true) @RequestParam String roomId); + + @ApiOperation("异常处理取消/关闭评标室接口") + @GetMapping("/v1/eval/room/reserve/cancellation") + BaseResponse cancellationRoomReserve(List roomIds); +} diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/feign/fallback/EvaluationFeignFallbackFactory.java b/src/main/java/com/chinaunicom/mall/ebtp/project/feign/fallback/EvaluationFeignFallbackFactory.java new file mode 100644 index 0000000..c846add --- /dev/null +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/feign/fallback/EvaluationFeignFallbackFactory.java @@ -0,0 +1,28 @@ +package com.chinaunicom.mall.ebtp.project.feign.fallback; + + +import cn.hutool.core.exceptions.ExceptionUtil; +import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse; +import com.chinaunicom.mall.ebtp.project.feign.EbtpEvaluationApi; +import feign.hystrix.FallbackFactory; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +@Component +@Slf4j +public class EvaluationFeignFallbackFactory implements FallbackFactory { + + @Override + public EbtpEvaluationApi create(Throwable throwable) { + EbtpEvaluationApi back = new EbtpEvaluationApi() { + + @Override + public BaseResponse closeEvalRoomReserve(String roomId) { + log.info("closeEvalRoomReserve异常数据:" + ExceptionUtil.stacktraceToString(throwable)); + return BaseResponse.fail(false); + } + }; + log.info("异常数据:" + ExceptionUtil.stacktraceToString(throwable)); + return back; + } +} diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/projectexception/service/impl/ProjectExceptionServiceImpl.java b/src/main/java/com/chinaunicom/mall/ebtp/project/projectexception/service/impl/ProjectExceptionServiceImpl.java index 7aba51c..c2b1979 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/project/projectexception/service/impl/ProjectExceptionServiceImpl.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/projectexception/service/impl/ProjectExceptionServiceImpl.java @@ -23,9 +23,12 @@ import com.chinaunicom.mall.ebtp.project.common.ProjectCommonUtil; import com.chinaunicom.mall.ebtp.project.common.ProjectExceptionEnum; import com.chinaunicom.mall.ebtp.project.dict.entity.DictProject; import com.chinaunicom.mall.ebtp.project.dict.service.IDictProjectService; +import com.chinaunicom.mall.ebtp.project.feign.EbtpEvaluationApi; import com.chinaunicom.mall.ebtp.project.feign.EbtpMallBidApi; +import com.chinaunicom.mall.ebtp.project.feign.EbtpMallProcessApi; import com.chinaunicom.mall.ebtp.project.feign.MallPurpApi; import com.chinaunicom.mall.ebtp.project.feign.entity.AnnoVO; +import com.chinaunicom.mall.ebtp.project.feign.entity.BizAssessRoom; import com.chinaunicom.mall.ebtp.project.feign.entity.ProjInvitationFailRequest; import com.chinaunicom.mall.ebtp.project.projectentrust.entity.inquiryentity.InquiryNoticeVO; import com.chinaunicom.mall.ebtp.project.projectexception.dao.ProjectExceptionMapper; @@ -46,10 +49,12 @@ import com.chinaunicom.mall.ebtp.project.sectionsupplier.entity.SectionSupplierV import com.chinaunicom.mall.ebtp.project.sectionsupplier.service.ISectionSupplierService; import io.seata.core.context.RootContext; import io.seata.spring.annotation.GlobalTransactional; +import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.GetMapping; import javax.annotation.Resource; import java.util.ArrayList; @@ -99,6 +104,11 @@ public class ProjectExceptionServiceImpl extends BaseServiceImpl getPage(ProjectExceptionVO projectExceptionVO) { @@ -241,6 +251,22 @@ public class ProjectExceptionServiceImpl extends BaseServiceImpl{ + BizAssessRoom assessRoom = new BizAssessRoom(); + assessRoom.setSectionId(section.getId()); + assessRoom.setReviewMark(ProjectCommonUtil.REVIEW_MARK_0); + List bizAssessRoomList = ebtpMallProcessApi.listAll(assessRoom).getData(); + List assessIds = bizAssessRoomList.stream().map(BizAssessRoom::getId).distinct().collect(Collectors.toList()); + try{ + ebtpEvaluationApi.cancellationRoomReserve(assessIds); + }catch (Exception e){ + log.error("--关闭电子评标室异常---",e); + } + + }); + return result; }