Merge branch 'master_异常生效关闭电子评标室' into 'master'

关闭电子评标室

See merge request eshop/biz_service_ebtp_project!7
This commit is contained in:
jl-zhangqb
2023-07-14 12:59:25 +00:00
3 changed files with 87 additions and 0 deletions

View File

@ -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<Boolean> closeEvalRoomReserve(@ApiParam(value = "评审室id", required = true) @RequestParam String roomId);
@ApiOperation("异常处理取消/关闭评标室接口")
@GetMapping("/v1/eval/room/reserve/cancellation")
BaseResponse<Boolean> cancellationRoomReserve(List<String> roomIds);
}

View File

@ -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<EbtpEvaluationApi> {
@Override
public EbtpEvaluationApi create(Throwable throwable) {
EbtpEvaluationApi back = new EbtpEvaluationApi() {
@Override
public BaseResponse<Boolean> closeEvalRoomReserve(String roomId) {
log.info("closeEvalRoomReserve异常数据" + ExceptionUtil.stacktraceToString(throwable));
return BaseResponse.fail(false);
}
};
log.info("异常数据:" + ExceptionUtil.stacktraceToString(throwable));
return back;
}
}

View File

@ -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.common.ProjectExceptionEnum;
import com.chinaunicom.mall.ebtp.project.dict.entity.DictProject; import com.chinaunicom.mall.ebtp.project.dict.entity.DictProject;
import com.chinaunicom.mall.ebtp.project.dict.service.IDictProjectService; 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.EbtpMallBidApi;
import com.chinaunicom.mall.ebtp.project.feign.EbtpMallProcessApi;
import com.chinaunicom.mall.ebtp.project.feign.MallPurpApi; 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.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.feign.entity.ProjInvitationFailRequest;
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.inquiryentity.InquiryNoticeVO; import com.chinaunicom.mall.ebtp.project.projectentrust.entity.inquiryentity.InquiryNoticeVO;
import com.chinaunicom.mall.ebtp.project.projectexception.dao.ProjectExceptionMapper; 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 com.chinaunicom.mall.ebtp.project.sectionsupplier.service.ISectionSupplierService;
import io.seata.core.context.RootContext; import io.seata.core.context.RootContext;
import io.seata.spring.annotation.GlobalTransactional; import io.seata.spring.annotation.GlobalTransactional;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.GetMapping;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList; import java.util.ArrayList;
@ -99,6 +104,11 @@ public class ProjectExceptionServiceImpl extends BaseServiceImpl<ProjectExceptio
@Resource @Resource
private OperationLogService logService; private OperationLogService logService;
@Resource
private EbtpMallProcessApi ebtpMallProcessApi;
@Resource
private EbtpEvaluationApi ebtpEvaluationApi;
@Override @Override
public IPage<ProjectExceptionVO> getPage(ProjectExceptionVO projectExceptionVO) { public IPage<ProjectExceptionVO> getPage(ProjectExceptionVO projectExceptionVO) {
@ -241,6 +251,22 @@ public class ProjectExceptionServiceImpl extends BaseServiceImpl<ProjectExceptio
log.info("异常处理通知招标服务停止接口参数:{}",JsonUtils.objectToJson(sectionExceptionIds)); log.info("异常处理通知招标服务停止接口参数:{}",JsonUtils.objectToJson(sectionExceptionIds));
abnormal(sectionExceptionIds); abnormal(sectionExceptionIds);
//关闭电子评标室
//查询标包对应的评审室 未开启-取消 已开启-关闭
sectionList.forEach(section->{
BizAssessRoom assessRoom = new BizAssessRoom();
assessRoom.setSectionId(section.getId());
assessRoom.setReviewMark(ProjectCommonUtil.REVIEW_MARK_0);
List<BizAssessRoom> bizAssessRoomList = ebtpMallProcessApi.listAll(assessRoom).getData();
List<String> assessIds = bizAssessRoomList.stream().map(BizAssessRoom::getId).distinct().collect(Collectors.toList());
try{
ebtpEvaluationApi.cancellationRoomReserve(assessIds);
}catch (Exception e){
log.error("--关闭电子评标室异常---",e);
}
});
return result; return result;
} }