Merge remote-tracking branch 'origin/master'
This commit is contained in:
@ -146,9 +146,17 @@ public enum ProjectExceptionEnum implements BusinessExceptionAssert {
|
||||
|
||||
FRAME_EXCEPTION_PROJECT_SECTION_UPDATE_CHOOSE_PROCESS(110064, "标段流程信息不能为空,请选择流程!"),
|
||||
|
||||
FRAME_EXCEPTION_INQUIRY_REVIEW_START_TIME_EMPTY(110065,"询价评审开始时间不能为空不能为空"),
|
||||
FRAME_EXCEPTION_INQUIRY_REVIEW_START_TIME_EMPTY(110065,"询价评审开始时间不能为空"),
|
||||
|
||||
FRAME_EXCEPTION_INQUIRY_END_TIME_EMPTY(110066,"询价评审报价截止时间不能为空不能为空"),
|
||||
FRAME_EXCEPTION_INQUIRY_END_TIME_EMPTY(110066,"询价评审报价截止时间不能为空"),
|
||||
|
||||
FRAME_EXCEPTION_INQUIRY_NOTICE_STATUS_EMPTY(110067,"询价返回通知状态不能为空"),
|
||||
|
||||
FRAME_EXCEPTION_INQUIRY_RESPONSE_FORMAT_LIST_EMPTY(110068,"询价应答格式列表不能为空"),
|
||||
|
||||
FRAME_EXCEPTION_INQUIRY_RESPONSE_FORMAT_LIST_CODE_EMPTY(110069,"询价应答格式列表数据中类别编码不能为空"),
|
||||
|
||||
FRAME_EXCEPTION_PROJECT_ENTRUST_PURP_IMPLEMENT_NO_EMPTY(110070, "项目委托信息实施项目编号不能为空!"),
|
||||
;
|
||||
|
||||
/**
|
||||
|
@ -13,7 +13,7 @@ import org.springframework.web.bind.annotation.RequestParam;
|
||||
* @author daixc
|
||||
* @date 2020/11/25
|
||||
*/
|
||||
@FeignClient(value = ServiceNameConstants.AUCTION_SERVICE)
|
||||
@FeignClient(value = "${mconfig.service-name-auction}")
|
||||
public interface EbtpAuctionApi {
|
||||
/**
|
||||
* 出始化竞拍项目信息
|
||||
|
@ -12,7 +12,7 @@ import org.springframework.web.bind.annotation.RequestParam;
|
||||
* @author daixc
|
||||
* @date 2020/11/25
|
||||
*/
|
||||
@FeignClient(value = ServiceNameConstants.CALIBRATION_SERVICE)
|
||||
@FeignClient(value = "${mconfig.service-name-calibration}")
|
||||
public interface EbtpCalibrationApi {
|
||||
|
||||
/**
|
||||
|
@ -20,7 +20,7 @@ import java.util.List;
|
||||
* @author daixc
|
||||
* @date 2020/11/25
|
||||
*/
|
||||
@FeignClient(value = ServiceNameConstants.BID_SERVICE, fallbackFactory = EbtpMallBidClientFallback.class)
|
||||
@FeignClient(value = "${mconfig.service-name-bid}", fallbackFactory = EbtpMallBidClientFallback.class)
|
||||
public interface EbtpMallBidApi {
|
||||
|
||||
/**
|
||||
|
@ -18,7 +18,7 @@ import java.util.Map;
|
||||
* @author daixc
|
||||
* @date 2020/11/25
|
||||
*/
|
||||
@FeignClient(value = ServiceNameConstants.PROCESS_SERVICE,fallbackFactory = EbtpMallProcessClientFallback.class)
|
||||
@FeignClient(value = "${mconfig.service-name-process}",fallbackFactory = EbtpMallProcessClientFallback.class)
|
||||
public interface EbtpMallProcessApi {
|
||||
|
||||
/**
|
||||
|
@ -15,7 +15,7 @@ import java.util.List;
|
||||
* @author daixc
|
||||
* @date 2020/11/25
|
||||
*/
|
||||
@FeignClient(value = ServiceNameConstants.RESPS_SERVICE)
|
||||
@FeignClient(value = "${mconfig.service-name-resps}")
|
||||
public interface EbtpRespsApi {
|
||||
|
||||
/**
|
||||
|
@ -14,7 +14,7 @@ import org.springframework.web.bind.annotation.RequestParam;
|
||||
* @author daixc
|
||||
* @date 2020/11/25
|
||||
*/
|
||||
@FeignClient(value = ServiceNameConstants.RSMS_SERVICE)
|
||||
@FeignClient(value = "${mconfig.service-name-rsms}")
|
||||
public interface EbtpRsmsApi {
|
||||
|
||||
/**
|
||||
|
@ -13,7 +13,7 @@ import org.springframework.web.bind.annotation.RequestParam;
|
||||
* @author daixc
|
||||
* @date 2020/11/25
|
||||
*/
|
||||
@FeignClient(value = ServiceNameConstants.TENDER_SERVICE)
|
||||
@FeignClient(value = "${mconfig.service-name-tender}")
|
||||
public interface EbtpTenderApi {
|
||||
|
||||
/**
|
||||
|
@ -16,7 +16,6 @@ import java.util.List;
|
||||
* @date 2020/11/25
|
||||
*/
|
||||
@FeignClient(value = "${mconfig.service-name-purp}",fallbackFactory = EbtpProjectClientFallback.class)
|
||||
//@FeignClient(name="mall-purp", url = "http://10.92.119.64:7777/api/mall-purp" ,fallbackFactory = EbtpProjectClientFallback.class)
|
||||
public interface MallPurpApi {
|
||||
/**
|
||||
* 方案招标失败接口
|
||||
@ -26,7 +25,7 @@ public interface MallPurpApi {
|
||||
* @param failStatus 招标失败code
|
||||
* @param failCause 招标失败原因
|
||||
*/
|
||||
@PostMapping("/v1/purpImplement/projInvitationFail")
|
||||
@PostMapping("/api/mall-purp/v1/purpImplement/projInvitationFail")
|
||||
BaseResponse projInvitationFail(@RequestParam("purpImplmentId") String purpImplmentId,
|
||||
@RequestBody List<String> projIds,
|
||||
@RequestParam("failStatus") String failStatus,
|
||||
@ -38,8 +37,8 @@ public interface MallPurpApi {
|
||||
* @param purpImplmentId 项目实施ID
|
||||
* @return 返回结果
|
||||
*/
|
||||
@PostMapping("/v1/purpBaseInfo/findDataByPurpImplmentId")
|
||||
BaseResponse<PurpImplementSendVO> findDataByPurpImplmentId(@RequestParam("purpImplmentId") String purpImplmentId);
|
||||
@PostMapping("/api/mall-purp/v1/purpBaseInfo/findDataByPurpImplmentId")
|
||||
BaseResponse<PurpImplementSendVO> findDataByPurpImplmentId(@RequestParam("purpImplmentId") Long purpImplmentId);
|
||||
|
||||
|
||||
}
|
||||
|
@ -12,7 +12,6 @@ import org.springframework.web.bind.annotation.RequestParam;
|
||||
* @date 2020/12/21
|
||||
*/
|
||||
@FeignClient(value = "${mconfig.service-name-resu}",fallbackFactory = MallResuClientFallback.class)
|
||||
//@FeignClient(name="mall-resu",url = "http://3g6422829c.wicp.vip:38002/api/mall-resu",fallbackFactory = MallResuClientFallback.class)
|
||||
public interface MallResuApi {
|
||||
|
||||
/**
|
||||
|
@ -0,0 +1,26 @@
|
||||
package com.chinaunicom.mall.ebtp.project.feign;
|
||||
|
||||
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
|
||||
import com.chinaunicom.mall.ebtp.project.feign.fallback.PriceQueryApiClientFallback;
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.inquiryentity.InquiryNoticeVO;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
/**
|
||||
* 询价流程 访问API
|
||||
* @author daixc
|
||||
* @date 2020/12/21
|
||||
*/
|
||||
@FeignClient(value = "${mconfig.service-price-query}")
|
||||
//@FeignClient(name="biz-service-price-query",url = "http://172.16.15.75.vaiwan.com/",fallbackFactory = PriceQueryApiClientFallback.class)
|
||||
public interface PriceQueryApi {
|
||||
|
||||
/**
|
||||
* 招投标推送询价单是否可以发布
|
||||
* @param vo 推送实体
|
||||
* @return 返回结果
|
||||
*/
|
||||
@PostMapping("/outer/v1.0/inquiryInterface/updateInquiryAllowPublish")
|
||||
BaseResponse updateInquiryAllowPublish(@RequestBody InquiryNoticeVO vo);
|
||||
}
|
@ -12,7 +12,6 @@ import org.springframework.web.bind.annotation.RequestBody;
|
||||
* @date 2020/12/21
|
||||
*/
|
||||
@FeignClient(value = "${mconfig.service-name-wfap}")
|
||||
//@FeignClient(name="mall-wfap",url = "http://353u66p423.wicp.vip:48187/api/wfap/")
|
||||
public interface WfapApi {
|
||||
|
||||
|
||||
@ -21,6 +20,6 @@ public interface WfapApi {
|
||||
* @param approve 实施项目id
|
||||
* @return 返回结果
|
||||
*/
|
||||
@PostMapping("/v1/approve/auto/audit/start")
|
||||
@PostMapping("/api/mall-wfap/v1/approve/auto/audit/start")
|
||||
BaseResponse start(@RequestBody Approve approve);
|
||||
}
|
||||
|
@ -24,7 +24,7 @@ public class WfProjectConfigTask implements Serializable {
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ApiModelProperty(value = "主键")
|
||||
@ApiModelProperty(value = "")
|
||||
private String id;
|
||||
|
||||
/**
|
||||
@ -37,7 +37,7 @@ public class WfProjectConfigTask implements Serializable {
|
||||
* 流程定义ID
|
||||
*/
|
||||
@ApiModelProperty(value = "流程定义ID")
|
||||
private Long defId;
|
||||
private String defId;
|
||||
|
||||
/**
|
||||
* 流程节点顺序
|
||||
@ -49,6 +49,6 @@ public class WfProjectConfigTask implements Serializable {
|
||||
* 角色Id
|
||||
*/
|
||||
@ApiModelProperty(value = "角色Id")
|
||||
private Long roleId;
|
||||
private String roleId;
|
||||
|
||||
}
|
||||
|
@ -34,7 +34,7 @@ public class EbtpProjectClientFallback implements FallbackFactory<MallPurpApi> {
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseResponse<PurpImplementSendVO> findDataByPurpImplmentId(String purpImplmentId) {
|
||||
public BaseResponse<PurpImplementSendVO> findDataByPurpImplmentId(Long purpImplmentId) {
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
@ -0,0 +1,28 @@
|
||||
package com.chinaunicom.mall.ebtp.project.feign.fallback;
|
||||
|
||||
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
|
||||
import com.chinaunicom.mall.ebtp.project.feign.PriceQueryApi;
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.inquiryentity.InquiryNoticeVO;
|
||||
import feign.hystrix.FallbackFactory;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
/**
|
||||
* 询价接口返回
|
||||
* @author daixc
|
||||
* @date 2021/02/19
|
||||
*/
|
||||
@Slf4j
|
||||
@Component
|
||||
public class PriceQueryApiClientFallback implements FallbackFactory<PriceQueryApi> {
|
||||
@Override
|
||||
public PriceQueryApi create(Throwable throwable) {
|
||||
throwable.printStackTrace();
|
||||
return new PriceQueryApi() {
|
||||
@Override
|
||||
public BaseResponse updateInquiryAllowPublish(InquiryNoticeVO vo) {
|
||||
return null;
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
@ -320,7 +320,7 @@ public class ProjBaseInfoVO{
|
||||
private LocalDateTime recruitEndTime;
|
||||
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private Long createBy;
|
||||
private String createBy;
|
||||
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
|
@ -5,6 +5,8 @@ package com.chinaunicom.mall.ebtp.project.projectentrust.entity.ebpentity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
@ -51,8 +53,12 @@ public class ProjSuppRelVO{
|
||||
private String suppName;
|
||||
|
||||
@ApiModelProperty(value = "供应商id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long suppId;
|
||||
|
||||
@ApiModelProperty(value = "纳税人类型")
|
||||
private String taxpayerType;
|
||||
|
||||
@ApiModelProperty(value = "终止环节ID")
|
||||
private Long disuseStageId;
|
||||
|
||||
@ -74,6 +80,7 @@ public class ProjSuppRelVO{
|
||||
private String remark;
|
||||
|
||||
@ApiModelProperty(value = "供应商联系人id")
|
||||
@JsonSerialize(using = ToStringSerializer.class)
|
||||
private Long suppLinkManId;
|
||||
|
||||
@ApiModelProperty(value = "供应商联系人姓名")
|
||||
@ -103,17 +110,39 @@ public class ProjSuppRelVO{
|
||||
@ApiModelProperty(value = "账户")
|
||||
private String account;
|
||||
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private String createBy;
|
||||
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime createDate;
|
||||
|
||||
@ApiModelProperty(value = "更新人")
|
||||
private String updateBy;
|
||||
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime updateDate;
|
||||
|
||||
@ApiModelProperty(value = "租户标识")
|
||||
private String tenantId;
|
||||
|
||||
@ApiModelProperty(value = "租户名称")
|
||||
private String tenantName;
|
||||
|
||||
@ApiModelProperty(value = "逻辑删除")
|
||||
private String deleteFlag;
|
||||
|
||||
@ApiModelProperty(value = "最后更新时间戳")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime lastUpdateTime;
|
||||
|
||||
@ApiModelProperty(value = "乐观锁")
|
||||
private String versions;
|
||||
|
||||
@ApiModelProperty(value = "备用字段1")
|
||||
private String attribute1;
|
||||
|
||||
|
@ -84,7 +84,7 @@ public class PurpSuperVO{
|
||||
private LocalDateTime lastUpdateTime;
|
||||
|
||||
@ApiModelProperty("创建人")
|
||||
private Long createBy;
|
||||
private String createBy;
|
||||
|
||||
@ApiModelProperty("创建时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@ -92,7 +92,7 @@ public class PurpSuperVO{
|
||||
private LocalDateTime createDate;
|
||||
|
||||
@ApiModelProperty("编辑人")
|
||||
private Long updateBy;
|
||||
private String updateBy;
|
||||
|
||||
@ApiModelProperty("编辑时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
|
@ -121,6 +121,7 @@ public class ProjectEntrustInquiryServiceImpl extends BaseServiceImpl<ProjectEnt
|
||||
@Override
|
||||
public boolean inquiryNotice(InquiryNoticeVO inquiryNoticeVO) {
|
||||
boolean result = false;
|
||||
ProjectExceptionEnum.FRAME_EXCEPTION_INQUIRY_NOTICE_STATUS_EMPTY.customValid(null == inquiryNoticeVO.getInquiryNoticeStatus());
|
||||
switch (inquiryNoticeVO.getInquiryNoticeStatus()){
|
||||
case ProjectCommonUtil.INQUIRY_NOTICE_STATUS_0:result = initInquiryProject(inquiryNoticeVO);break;
|
||||
case ProjectCommonUtil.INQUIRY_NOTICE_STATUS_1:result = exceptionService.saveInquiryException(inquiryNoticeVO);break;
|
||||
@ -234,15 +235,6 @@ public class ProjectEntrustInquiryServiceImpl extends BaseServiceImpl<ProjectEnt
|
||||
if(!response.isSuccess()){
|
||||
ProjectExceptionEnum.FRAME_EXCEPTION_PROJECT_ENTRUST_NOT_FIND.customValidName(response.getMessage(),!response.isSuccess());
|
||||
}
|
||||
//修改评审室开始时间
|
||||
// Map<String, LocalDateTime> updateProcessMap = new HashMap<>(16);
|
||||
// updateProcessMap.put(sectionId,inquiryVO.getReviewStartTime());
|
||||
//
|
||||
// response = processApi.updateOpenTime(updateProcessMap);
|
||||
// if(!response.isSuccess()){
|
||||
// log.info("初始化询价项目 评审时间返回结果:"+ JsonUtils.objectToJson(response));
|
||||
// ProjectExceptionEnum.FRAME_EXCEPTION_PROJECT_ENTRUST_NOT_FIND.customValidName(response.getMessage(),!response.isSuccess());
|
||||
// }
|
||||
}
|
||||
|
||||
/**
|
||||
@ -357,5 +349,16 @@ public class ProjectEntrustInquiryServiceImpl extends BaseServiceImpl<ProjectEnt
|
||||
if(!isExistInquiryFile){
|
||||
ProjectExceptionEnum.FRAME_EXCEPTION_INQUIRY_ATTACHMENT_LIST_EMPTY.throwException();
|
||||
}
|
||||
|
||||
//询价应答格式不能为空
|
||||
if(null == inquiryVO.getResponseFormatList() || inquiryVO.getResponseFormatList().size() <= 0){
|
||||
ProjectExceptionEnum.FRAME_EXCEPTION_INQUIRY_RESPONSE_FORMAT_LIST_EMPTY.throwException();
|
||||
}else{
|
||||
//询价应答格式code不能为空
|
||||
long isEmptyCodeCount = inquiryVO.getResponseFormatList().stream().filter(n -> StringUtils.isEmpty(n.getCode())).count();
|
||||
if(isEmptyCodeCount > 0){
|
||||
ProjectExceptionEnum.FRAME_EXCEPTION_INQUIRY_RESPONSE_FORMAT_LIST_CODE_EMPTY.throwException();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -18,6 +18,7 @@ import com.chinaunicom.mall.ebtp.project.common.ProjectCommonUtil;
|
||||
import com.chinaunicom.mall.ebtp.project.common.ProjectExceptionEnum;
|
||||
import com.chinaunicom.mall.ebtp.project.feign.EbtpAuctionApi;
|
||||
import com.chinaunicom.mall.ebtp.project.feign.MallPurpApi;
|
||||
import com.chinaunicom.mall.ebtp.project.feign.PriceQueryApi;
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.dao.ProjectEntrustMapper;
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.ProjectEntrust;
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.ProjectEntrustExpand;
|
||||
@ -26,7 +27,7 @@ import com.chinaunicom.mall.ebtp.project.projectentrust.entity.ebpentity.ProjBas
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.ebpentity.PurpBaseInfoVO;
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.ebpentity.PurpImplementSendVO;
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.ebpentity.PurpSuperVO;
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.inquiryentity.InquiryVO;
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.inquiryentity.InquiryNoticeVO;
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.service.IProjectEntrustExpandService;
|
||||
import com.chinaunicom.mall.ebtp.project.projectentrust.service.IProjectEntrustService;
|
||||
import com.chinaunicom.mall.ebtp.project.projectrecord.service.IProjectRecordService;
|
||||
@ -65,6 +66,9 @@ public class ProjectEntrustServiceImpl extends BaseServiceImpl<ProjectEntrustMap
|
||||
@Resource
|
||||
private MallPurpApi mallPurpApi;
|
||||
|
||||
@Resource
|
||||
private PriceQueryApi priceQueryApi;
|
||||
|
||||
private static final String METHOD = "initProjectEntrust";
|
||||
|
||||
private static final String DESCRIPTION = "项目委托查询采购数据";
|
||||
@ -156,6 +160,7 @@ public class ProjectEntrustServiceImpl extends BaseServiceImpl<ProjectEntrustMap
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean agencyCompanyDispatch(String id,String remarks) {
|
||||
ProjectEntrust projectEntrust = this.getById(id);
|
||||
projectEntrust.setId(id);
|
||||
@ -164,12 +169,14 @@ public class ProjectEntrustServiceImpl extends BaseServiceImpl<ProjectEntrustMap
|
||||
boolean result = updateStatus(projectEntrust,ProjectCommonUtil.ENTRUS_STATUS_9);
|
||||
CommonExceptionEnum.FRAME_EXCEPTION_COMMON_NOT_UPDATE.customValid(!result);
|
||||
|
||||
//通知商城询价项目不接受
|
||||
if(StringUtils.equals(ProjectCommonUtil.PROCUREMENT_MODE_7,projectEntrust.getProcurementMode())){
|
||||
InquiryVO inquiryVO = new InquiryVO();
|
||||
InquiryNoticeVO inquiryVO = new InquiryNoticeVO();
|
||||
inquiryVO.setInquiryId(projectEntrust.getProcurementPlanId());
|
||||
inquiryVO.setApIsAllowPublish(ProjectCommonUtil.IS_ALLOW_PUBLISH_0);
|
||||
inquiryVO.setApRefuseReason(remarks);
|
||||
//todo 发送询价信息通知接口
|
||||
inquiryVO.setInquiryNoticeStatus(ProjectCommonUtil.INQUIRY_NOTICE_STATUS_1);
|
||||
inquiryVO.setReason(remarks);
|
||||
BaseResponse response = priceQueryApi.updateInquiryAllowPublish(inquiryVO);
|
||||
CommonExceptionEnum.FRAME_EXCEPTION_COMMON_NOT_UPDATE.customValidName(response.getMessage(),!response.isSuccess());
|
||||
}
|
||||
|
||||
return result;
|
||||
@ -188,12 +195,13 @@ public class ProjectEntrustServiceImpl extends BaseServiceImpl<ProjectEntrustMap
|
||||
|
||||
CommonExceptionEnum.FRAME_EXCEPTION_COMMON_NOT_UPDATE.customValid(!result);
|
||||
|
||||
//如果询价进行通知 其余出始化项目
|
||||
//如果询价进行通知 其余出始化项目 项目经理同意 发送可以发布
|
||||
if(StringUtils.equals(ProjectCommonUtil.PROCUREMENT_MODE_7,projectEntrust.getProcurementMode())){
|
||||
InquiryVO inquiryVO = new InquiryVO();
|
||||
InquiryNoticeVO inquiryVO = new InquiryNoticeVO();
|
||||
inquiryVO.setInquiryId(projectEntrust.getProcurementPlanId());
|
||||
inquiryVO.setApIsAllowPublish(ProjectCommonUtil.IS_ALLOW_PUBLISH_1);
|
||||
//todo 发送询价信息通知接口
|
||||
inquiryVO.setInquiryNoticeStatus(ProjectCommonUtil.INQUIRY_NOTICE_STATUS_0);
|
||||
BaseResponse response = priceQueryApi.updateInquiryAllowPublish(inquiryVO);
|
||||
CommonExceptionEnum.FRAME_EXCEPTION_COMMON_NOT_UPDATE.customValidName(response.getMessage(),!response.isSuccess());
|
||||
}else{
|
||||
//初始化项目信息
|
||||
result = projectRecordService.assent(id);
|
||||
@ -274,7 +282,7 @@ public class ProjectEntrustServiceImpl extends BaseServiceImpl<ProjectEntrustMap
|
||||
|
||||
if(isRequestClient){
|
||||
|
||||
BaseResponse<PurpImplementSendVO> baseResponse = mallPurpApi.findDataByPurpImplmentId(ebpProjectId);
|
||||
BaseResponse<PurpImplementSendVO> baseResponse = mallPurpApi.findDataByPurpImplmentId(Long.parseLong(ebpProjectId));
|
||||
|
||||
//调用接口 拼装数据
|
||||
baseOperLogService.addLog(METHOD,JsonUtils.objectToJson(baseResponse),DESCRIPTION,cacheUserService.getCacheUser(),"",true);
|
||||
@ -519,6 +527,10 @@ public class ProjectEntrustServiceImpl extends BaseServiceImpl<ProjectEntrustMap
|
||||
ProjectExceptionEnum.FRAME_EXCEPTION_PROJECT_ENTRUST_PURP_IMPLEMENT_ID_EMPTY.throwException();
|
||||
}
|
||||
|
||||
if(StringUtils.isEmpty(implementSendVO.getPurpImplementNo())){
|
||||
ProjectExceptionEnum.FRAME_EXCEPTION_PROJECT_ENTRUST_PURP_IMPLEMENT_NO_EMPTY.throwException();
|
||||
}
|
||||
|
||||
PurpSuperVO purpSuperVo = implementSendVO.getPurpSuperVo();
|
||||
if(null == purpSuperVo){
|
||||
ProjectExceptionEnum.FRAME_EXCEPTION_PROJECT_PURP_SUPER_VO_EMPTY.throwException();
|
||||
|
@ -157,7 +157,6 @@ public class ProjectExceptionServiceImpl extends BaseServiceImpl<ProjectExceptio
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@GlobalTransactional
|
||||
public boolean updateState(String id) {
|
||||
ProjectException projectException = this.getById(id);
|
||||
|
||||
@ -269,6 +268,7 @@ public class ProjectExceptionServiceImpl extends BaseServiceImpl<ProjectExceptio
|
||||
* @param projectException 项目ID
|
||||
* @param sectionList 项目标段
|
||||
*/
|
||||
@GlobalTransactional
|
||||
private void launchAgainProject(ProjectException projectException,List<ProjectSection> sectionList) {
|
||||
|
||||
//查询项目信息
|
||||
|
@ -149,7 +149,16 @@ mconfig:
|
||||
host-name: http://10.242.31.158/
|
||||
service-name-purp: mall-purp #采购系统委托项目微服务
|
||||
service-name-wfap: mall-wfap #重新评审 流程微服务
|
||||
service-name-resu: mall-resu #重新评审 项目中心服务
|
||||
service-name-resu: mall-resu #重新评审 项目中心查询服务
|
||||
service-price-query: biz-service-price-query #商城询价服务
|
||||
#内部服务
|
||||
service-name-auction: biz-service-ebtp-auction #竞拍服务API
|
||||
service-name-calibration: biz-service-ebtp-calibration #标段定标接口
|
||||
service-name-bid: biz-service-ebtp-bid #标段出始化流程
|
||||
service-name-process: biz-service-ebtp-process #标段出始化流程
|
||||
service-name-resps: biz-service-ebtp-resps #标段应答文件
|
||||
service-name-rsms: biz-service-ebtp-rsms #评审微服务
|
||||
service-name-tender: biz-service-ebtp-tender #标段投标微服务
|
||||
wfSectionNo: '001'
|
||||
wfSectionName: 采购方案审批
|
||||
|
||||
|
@ -2,121 +2,98 @@ server:
|
||||
port: 18012
|
||||
servlet:
|
||||
context-path: /
|
||||
# --------------seata ------------
|
||||
|
||||
# 对应 apollo 配置中心的应用名
|
||||
app:
|
||||
id: biz-service-ebtp-project-dev
|
||||
|
||||
# Apollo 配置信息
|
||||
apollo:
|
||||
meta: http://10.242.31.158:6001/
|
||||
bootstrap:
|
||||
namespace: application
|
||||
enabled: true
|
||||
eagerLoad:
|
||||
enabled: true
|
||||
seata:
|
||||
enabled: true
|
||||
application-id: ${spring.application.name}
|
||||
tx-service-group: ${spring.application.name}-group
|
||||
enable-auto-data-source-proxy: true
|
||||
use-jdk-proxy: false
|
||||
service:
|
||||
vgroup-mapping:
|
||||
default: default
|
||||
enable-degrade: false
|
||||
disable-global-transaction: false
|
||||
registry:
|
||||
type: eureka
|
||||
eureka:
|
||||
weight: 1
|
||||
service-url: http://${eureka.instance.hostname}:8761/eureka/
|
||||
biz-service-ebtp-project-dev-service-group: default
|
||||
|
||||
spring:
|
||||
aop:
|
||||
auto: true #开启spring的aop配置
|
||||
proxy-target-class: true
|
||||
|
||||
application:
|
||||
name: biz-service-ebtp-project
|
||||
name: biz-service-ebtp-project-dev
|
||||
|
||||
shardingsphere:
|
||||
datasource:
|
||||
# names: ds0,ds1 #主从库名称 开启主从时必须打开
|
||||
names: ds0
|
||||
ds0:
|
||||
type: com.alibaba.druid.pool.DruidDataSource
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
username: mall3-ebtp-dev
|
||||
password: mall3-ebtp-dev
|
||||
jdbc-url: jdbc:mysql://125.32.114.204:13306/ebtp_mall_project?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
|
||||
url: jdbc:mysql://125.32.114.204:13306/ebtp_mall_project?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
|
||||
filters: stat,wall,log4j
|
||||
maxActive: 20
|
||||
initialSize: 1
|
||||
maxWait: 60000
|
||||
minIdle: 1
|
||||
timeBetweenEvictionRunsMillis: 60000
|
||||
minEvictableIdleTimeMillis: 300000
|
||||
validationQuery: select 'x'
|
||||
testWhileIdle: true
|
||||
testOnBorrow: false
|
||||
testOnReturn: false
|
||||
poolPreparedStatements: true
|
||||
maxOpenPreparedStatements: 20
|
||||
connection-properties: druid.stat.merggSql=ture;druid.stat.slowSqlMillis=5000
|
||||
# ds1:
|
||||
# type: com.alibaba.druid.pool.DruidDataSource
|
||||
# driver-class-name: com.mysql.jdbc.Driver
|
||||
# username: root
|
||||
# password: root
|
||||
# jdbc-url: jdbc:mysql://localhost:3306/seata_order_1?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=UTC
|
||||
# url: jdbc:mysql://localhost:3306/seata_order_1?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=UTC
|
||||
# filters: stat,wall,log4j
|
||||
# maxActive: 20
|
||||
# initialSize: 1
|
||||
# maxWait: 60000
|
||||
# minIdle: 1
|
||||
# timeBetweenEvictionRunsMillis: 60000
|
||||
# minEvictableIdleTimeMillis: 300000
|
||||
# validationQuery: select 'x'
|
||||
# testWhileIdle: true
|
||||
# testOnBorrow: false
|
||||
# testOnReturn: false
|
||||
# poolPreparedStatements: true
|
||||
# maxOpenPreparedStatements: 20
|
||||
# connection-properties: druid.stat.merggSql=ture;druid.stat.slowSqlMillis=5000
|
||||
# masterslave: #读写分离设置
|
||||
# load-balance-algorithm-type: round_robin #轮询策略
|
||||
# master-data-source-name: ds0 #主库名称
|
||||
# slave-data-source-names: ds1 #从库名称
|
||||
# name: shardingDataSource #数据源名称
|
||||
props:
|
||||
sql:
|
||||
show: true
|
||||
|
||||
datasource:
|
||||
names: ds0
|
||||
ds0:
|
||||
type: com.alibaba.druid.pool.DruidDataSource
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
username: root
|
||||
password: root
|
||||
jdbc-url: jdbc:mysql://10.242.31.158:3033/ebtp_mall_project?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
|
||||
url: jdbc:mysql://10.242.31.158:3033/ebtp_mall_project?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true
|
||||
filters: stat,wall,log4j
|
||||
maxActive: 20
|
||||
initialSize: 1
|
||||
maxWait: 60000
|
||||
minIdle: 1
|
||||
timeBetweenEvictionRunsMillis: 60000
|
||||
minEvictableIdleTimeMillis: 300000
|
||||
validationQuery: select 'x'
|
||||
testWhileIdle: true
|
||||
testOnBorrow: false
|
||||
testOnReturn: false
|
||||
poolPreparedStatements: true
|
||||
maxOpenPreparedStatements: 20
|
||||
connection-properties: druid.stat.merggSql=ture;druid.stat.slowSqlMillis=5000
|
||||
props:
|
||||
sql:
|
||||
show: true
|
||||
|
||||
jackson:
|
||||
date-format: yyyy-MM-dd HH:mm:ss
|
||||
time-zone: GMT+8
|
||||
serialization:
|
||||
write-dates-as-timestamps: false
|
||||
|
||||
# 天宫Kafka增加了安全认证,需要配置安全属性
|
||||
kafka:
|
||||
bootstrap-servers: 127.0.0.1:9092
|
||||
bootstrap-servers: 10.125.164.192:32005,10.125.164.193:32005,10.125.164.194:32005
|
||||
template:
|
||||
default-topic: jl_test
|
||||
|
||||
# 生产者配置参数
|
||||
producer:
|
||||
# 写入失败时,重试次数。当leader节点失效,一个repli节点会替代成为leader节点,此时可能出现写入失败,
|
||||
# 当retris为0时,produce不会重复。retirs重发,此时repli节点完全成为leader节点,不会产生消息丢失。
|
||||
retries: 0
|
||||
# 每次批量发送消息的数量,produce积累到一定数据,一次发送
|
||||
batch-size: 2
|
||||
# produce积累数据一次发送,缓存大小达到buffer.memory就发送数据
|
||||
buffer-memory: 33554432
|
||||
#procedure要求leader在考虑完成请求之前收到的确认数,用于控制发送记录在服务端的持久化,其值可以为如下:
|
||||
#acks = 0 如果设置为零,则生产者将不会等待来自服务器的任何确认,该记录将立即添加到套接字缓冲区并视为已发送。在这种情况下,无法保证服务器已收到记录,并且重试配置将不会生效(因为客户端通常不会知道任何故障),为每条记录返回的偏移量始终设置为-1。
|
||||
#acks = 1 这意味着leader会将记录写入其本地日志,但无需等待所有副本服务器的完全确认即可做出回应,在这种情况下,如果leader在确认记录后立即失败,但在将数据复制到所有的副本服务器之前,则记录将会丢失。
|
||||
#acks = all 这意味着leader将等待完整的同步副本集以确认记录,这保证了只要至少一个同步副本服务器仍然存活,记录就不会丢失,这是最强有力的保证,这相当于acks = -1的设置。
|
||||
#可以设置的值为:all, -1, 0, 1
|
||||
acks: 1
|
||||
key-serializer: org.apache.kafka.common.serialization.StringSerializer
|
||||
value-serializer: org.apache.kafka.common.serialization.StringSerializer
|
||||
client-id: core-service-ebtp-crypt
|
||||
properties:
|
||||
security.protocol: SASL_PLAINTEXT
|
||||
sasl.mechanism: SCRAM-SHA-256
|
||||
sasl.jaas.config: org.apache.kafka.common.security.scram.ScramLoginModule required username="jltest" password="Unicom#123";
|
||||
|
||||
# 消费者配置参数
|
||||
consumer:
|
||||
group-id: user-group
|
||||
auto-offset-reset: earliest
|
||||
enable-auto-commit: true
|
||||
auto-commit-interval: 100
|
||||
key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
|
||||
value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
|
||||
#=========redis基础配置=========
|
||||
group-id: core-service-ebtp-crypt-consumer
|
||||
auto-offset-reset: latest
|
||||
properties:
|
||||
security.protocol: SASL_PLAINTEXT
|
||||
sasl.mechanism: SCRAM-SHA-256
|
||||
sasl.jaas.config: org.apache.kafka.common.security.scram.ScramLoginModule required username="jltest" password="Unicom#123";
|
||||
|
||||
# 天宫 redis 需要使用哨兵进行访问
|
||||
redis:
|
||||
sentinel:
|
||||
master: eshop-redis
|
||||
nodes: 10.125.164.124:32718, 10.125.164.118:32716, 10.125.164.121:32716
|
||||
password: Unicom#135
|
||||
|
||||
lettuce:
|
||||
# jedis:
|
||||
# jedis:
|
||||
pool:
|
||||
maxTotal: 50
|
||||
minIdle: 1
|
||||
@ -144,23 +121,14 @@ spring:
|
||||
password: redis@CC1234
|
||||
timeout: 6000
|
||||
|
||||
#=========eureka配置=========
|
||||
# 天宫Eureka配置
|
||||
eureka:
|
||||
instance:
|
||||
# eureka 注册路径地址
|
||||
prefer-ip-address: true
|
||||
hostname: 125.32.114.204
|
||||
ip-address: ${eureka.instance.hostname}
|
||||
instance-id: ${eureka.instance.hostname}:${server.port}
|
||||
client:
|
||||
serviceUrl:
|
||||
defaultZone: http://${eureka.instance.hostname}:8761/eureka/
|
||||
|
||||
#=========log配置=========
|
||||
#logging:
|
||||
# level:
|
||||
# org.springframework.cloud.alibaba.seata.web : info
|
||||
# io.seata : info
|
||||
client:
|
||||
service-url:
|
||||
defaultZone: http://10.242.31.158:5001/eureka,http://10.242.31.158:5002/eureka,http://10.242.31.158:5003/eureka
|
||||
instance:
|
||||
prefer-ip-address: true
|
||||
instance-ip: ${spring.cloud.client.ip-address}:${server.port}
|
||||
|
||||
mybatis-plus:
|
||||
configuration:
|
||||
@ -177,19 +145,7 @@ mybatis-plus:
|
||||
logic-not-delete-value: normal # 逻辑删除标记:正常数据
|
||||
logic-delete-value: deleted # 逻辑删除标记:已删除的数据
|
||||
type-aliases-package: com.chinaunicom.mall.ebtp.project
|
||||
# --------------feign ------------
|
||||
feign:
|
||||
hystrix:
|
||||
enabled: true
|
||||
httpclient:
|
||||
enabled: true
|
||||
okhttp:
|
||||
enabled: true
|
||||
client:
|
||||
config:
|
||||
default:
|
||||
connect-timeout: 60000
|
||||
read-timeout: 60000
|
||||
|
||||
hystrix:
|
||||
command:
|
||||
default:
|
||||
@ -203,9 +159,10 @@ hystrix:
|
||||
circuitBreaker:
|
||||
sleepWindowInMilliseconds: 20000
|
||||
forceClosed: true
|
||||
|
||||
ribbon:
|
||||
ReadTimeout: 60000 #请求处理的超时时间
|
||||
ConnectTimeout: 60000 #请求连接超时时间
|
||||
ReadTimeout: 20000 #请求处理的超时时间
|
||||
ConnectTimeout: 20000 #请求连接超时时间
|
||||
MaxAutoRetries: 0 #对当前实例的重试次数
|
||||
MaxAutoRetriesNextServer: 1 #切换实例的重试次数 1
|
||||
|
||||
@ -215,8 +172,28 @@ mconfig:
|
||||
seata-open-enabled: false
|
||||
work-id: 1 #终端ID
|
||||
datacenter-id: 1 #数据中心ID
|
||||
host-name: http://${eureka.instance.hostname}
|
||||
host-name: http://10.242.31.158/
|
||||
service-name-purp: mall-purp #采购系统委托项目微服务
|
||||
service-name-wfap: wfap #重新评审 流程微服务
|
||||
service-name-wfap: mall-wfap #重新评审 流程微服务
|
||||
service-name-resu: mall-resu #重新评审 项目中心查询服务
|
||||
service-price-query : biz-service-price-query #商城询价服务
|
||||
#内部服务
|
||||
service-name-auction: biz-service-ebtp-auction-dev #竞拍服务API
|
||||
service-name-calibration: biz-service-ebtp-calibration-dev #标段定标接口
|
||||
service-name-bid: biz-service-ebtp-bid-dev #标段出始化流程
|
||||
service-name-process: biz-service-ebtp-process-dev #标段出始化流程
|
||||
service-name-resps : biz-service-ebtp-resps-dev #标段应答文件
|
||||
service-name-rsms : biz-service-ebtp-rsms-dev #评审微服务
|
||||
service-name-tender : biz-service-ebtp-tender-dev #标段投标微服务
|
||||
wfSectionNo: '001'
|
||||
wfSectionName: 采购方案审批
|
||||
|
||||
# 用户暴露给 prometheus 的健康数据
|
||||
management:
|
||||
endpoints:
|
||||
web:
|
||||
exposure:
|
||||
include: "*"
|
||||
cors:
|
||||
allowed-origins: "*"
|
||||
allowed-methods: "*"
|
||||
|
Reference in New Issue
Block a user