This commit is contained in:
ajaxfan
2021-02-02 10:20:07 +08:00
parent 13e2a391b8
commit 5c9f14df31
15 changed files with 268 additions and 21 deletions

View File

@ -4,6 +4,7 @@ import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
import com.chinaunicom.mall.ebtp.common.constant.ServiceNameConstants;
import com.chinaunicom.mall.ebtp.project.feign.entity.AgainRoomVO;
import com.chinaunicom.mall.ebtp.project.feign.entity.AnnoVO;
import com.chinaunicom.mall.ebtp.project.feign.entity.DocumentXjVO;
import com.chinaunicom.mall.ebtp.project.feign.fallback.EbtpMallBidClientFallback;
import com.chinaunicom.mall.ebtp.project.sectionsupplier.entity.SectionSupplierVO;
import org.springframework.cloud.openfeign.FeignClient;
@ -60,5 +61,14 @@ public interface EbtpMallBidApi {
@PostMapping("/v1/anno/failList")
BaseResponse<List<AnnoVO>> getAnnoStatus(@RequestBody List<String> abnormalIds);
/**
* 询价:初始化询价文件
*
* @param vo 询价文件实体
* @return 返回结果
*/
@PostMapping("/v1/document/xj")
BaseResponse<Boolean> insertTp(@RequestBody DocumentXjVO vo);
}

View File

@ -9,6 +9,7 @@ import com.chinaunicom.mall.ebtp.project.feign.fallback.EbtpMallProcessClientFal
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
@ -60,4 +61,12 @@ public interface EbtpMallProcessApi {
@PostMapping("/v1/bizassessroom/listAll")
BaseResponse<List<BizAssessRoom>> listAll(@RequestBody BizAssessRoom bizAssessRoomVO);
/**
* 更新评审开始时间
* @param sectionMap 标段 评审时间
* @return 返回结果
*/
@PostMapping("/v1/bizassessroom/updateOpenTime")
BaseResponse<Boolean> updateOpenTime(@RequestBody Map<String, LocalDateTime> sectionMap);
}

View File

@ -3,10 +3,13 @@ package com.chinaunicom.mall.ebtp.project.feign;
import com.chinaunicom.mall.ebtp.common.base.entity.BaseResponse;
import com.chinaunicom.mall.ebtp.common.constant.ServiceNameConstants;
import com.chinaunicom.mall.ebtp.project.feign.entity.AgainRoomVO;
import com.chinaunicom.mall.ebtp.project.feign.entity.TdocVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* 标段应答文件
* @author daixc
@ -22,4 +25,12 @@ public interface EbtpRespsApi {
*/
@PostMapping("/v1/tdoc/copyTdocByAgainRoom")
BaseResponse<AgainRoomVO> copyTdocByAgainRoom(@RequestBody AgainRoomVO againRoom);
/**
* 初始化询价项目应答文件信息
* @param tdocParam 应答文件传入实体
* @return 返回应答文件信息
*/
@PostMapping("/v1/tdoc/initInquiryResponseFormat")
BaseResponse<List<String>> initInquiryResponseFormat(@RequestBody TdocVO tdocParam);
}

View File

@ -0,0 +1,46 @@
package com.chinaunicom.mall.ebtp.project.feign.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.inquiryentity.AttachmentVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.List;
/**
* 实体类 BizBidDocument
*
* @auto.generated
*/
@Data
@Accessors(chain = true)
@ApiModel
@TableName(autoResultMap = true)
public class DocumentXjVO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 项目id
*/
@ApiModelProperty(value = "项目id")
private String tpId;
/**
* 项目id
*/
@ApiModelProperty(value = "包id")
private String bsId;
/**
* 附件数据
*/
@ApiModelProperty(value = "附件数据")
private List<AttachmentVO> list;
}

View File

@ -0,0 +1,39 @@
package com.chinaunicom.mall.ebtp.project.feign.entity;
import com.chinaunicom.mall.ebtp.project.projectentrust.entity.inquiryentity.InquiryResponseFormatVO;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
/**
* 实体类 Tdoc-目录主表
*
* @author yss
*/
@Data
@Accessors(chain = true)
@ApiModel(value = "Tdoc对象", description = "目录主表")
public class TdocVO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "标段id")
private String sectionId;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "应答截止时间")
private LocalDateTime endDate;
@ApiModelProperty(value = "询价应答格式列表")
private List<InquiryResponseFormatVO> list;
}

View File

@ -50,6 +50,11 @@ public class EbtpMallBidClientFallback implements FallbackFactory<EbtpMallBidApi
return null;
}
@Override
public BaseResponse<Boolean> insertTp(DocumentXjVO vo) {
return null;
}
};
}

View File

@ -13,6 +13,7 @@ import feign.hystrix.FallbackFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
@ -53,6 +54,11 @@ public class EbtpMallProcessClientFallback implements FallbackFactory<EbtpMallPr
public BaseResponse<List<BizAssessRoom>> listAll(BizAssessRoom bizAssessRoomVO) {
return null;
}
@Override
public BaseResponse<Boolean> updateOpenTime(Map<String, LocalDateTime> sectionMap) {
return null;
}
};
}
}

View File

@ -53,5 +53,5 @@ public class ProjectEntrustExpand extends BaseEntity implements Serializable {
*/
@ApiModelProperty(value = "商城系统推送询价项目信息")
@TableField(typeHandler = CustomJacksonTypeHandler.class)
private InquiryVO inquiryVO;
private InquiryVO inquiry;
}

View File

@ -0,0 +1,73 @@
package com.chinaunicom.mall.ebtp.project.projectentrust.entity.inquiryentity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
/**
* @description附件
* @authorweiyg
* @date2021/1/29 16:59
* @params
* @return
* @since2021/1/29 16:59
* @update [序号][日期YYYY-MM-DD] [更改人姓名][变更描述]
*/
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="EshopAttachmentVO对象", description="公开市场附件")
public class AttachmentVO implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "attachment_id")
private String attachmentId;
@ApiModelProperty(value = "模块类型1招募结果2询价单3归档单4合同模版")
private Integer moduleType;
@ApiModelProperty(value = "单据id")
private String billId;
@ApiModelProperty(value = "业务类型招募结果1评审报告,2决策依据,3其它附件询价单1,2,3归档单1,2,3")
private Integer businessType;
@ApiModelProperty(value = "附件名称")
private String fileName;
@ApiModelProperty(value = "附件类型")
private String fileType;
@ApiModelProperty(value = "附件大小B")
private Long fileSize;
@ApiModelProperty(value = "文档中心文件id")
private String fileId;
private Date lastUpdateTime;
@ApiModelProperty(value = "备用字段1")
private String attachmentReserved1;
@ApiModelProperty(value = "备用字段2")
private String attachmentReserved2;
@ApiModelProperty(value = "备用字段3")
private String attachmentReserved3;
@ApiModelProperty(value = "备用字段4")
private String attachmentReserved4;
@ApiModelProperty(value = "备用字段5")
private String attachmentReserved5;
}

View File

@ -9,6 +9,7 @@ import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
/**
@ -34,12 +35,12 @@ public class InquiryNoticeVO implements Serializable {
@ApiModelProperty(value = "报价截至时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date endTime;
private LocalDateTime endTime;
@ApiModelProperty(value = "评审开始时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date reviewStartTime;
private LocalDateTime reviewStartTime;
@ApiModelProperty(value = "附件")
private String uploadFile;

View File

@ -3,6 +3,7 @@ package com.chinaunicom.mall.ebtp.project.projectentrust.entity.inquiryentity;
import java.math.BigDecimal;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
@ -90,12 +91,12 @@ public class InquiryVO implements Serializable {
@ApiModelProperty(value = "报价截至时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date endTime;
private LocalDateTime endTime;
@ApiModelProperty(value = "期望收货时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date hopeReceiptTime;
private LocalDateTime hopeReceiptTime;
@ApiModelProperty(value = "是否报含税价 1是 0")
private Integer ifCompanyPricle;
@ -250,12 +251,12 @@ public class InquiryVO implements Serializable {
@ApiModelProperty(value = "阶段询价有效开始时间,默认为审批通过时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date priceStartTime;
private LocalDateTime priceStartTime;
@ApiModelProperty(value = "阶段询价有效结束时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date priceEndTime;
private LocalDateTime priceEndTime;
@ApiModelProperty(value = "修改商品池中商品价格0-不修改1-修改(修改时有效期内商品池不能调价)")
private Integer changeGoodsPrice;
@ -266,12 +267,12 @@ public class InquiryVO implements Serializable {
@ApiModelProperty(value = "公示开始时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date showDateStart;
private LocalDateTime showDateStart;
@ApiModelProperty(value = "公示结束时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date showDateEnd;
private LocalDateTime showDateEnd;
@ApiModelProperty(value = "公示天数")
private Integer showTime;
@ -297,7 +298,7 @@ public class InquiryVO implements Serializable {
@ApiModelProperty(value = "唱标时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date announcementTime;
private LocalDateTime announcementTime;
@ApiModelProperty(value = "唱标状态 -1不需要唱标 0 未唱标 1 唱标中 2 唱标结束 ")
private Integer announcementStatus;
@ -347,12 +348,12 @@ public class InquiryVO implements Serializable {
@ApiModelProperty(value = "公开直购订单公示开始时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date orderShowDateStart;
private LocalDateTime orderShowDateStart;
@ApiModelProperty(value = "公开直购订单公示结束时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date orderShowDateEnd;
private LocalDateTime orderShowDateEnd;
@ApiModelProperty(value = "公开直购订单公示天数")
private Integer orderShowDay;
@ -448,7 +449,7 @@ public class InquiryVO implements Serializable {
@ApiModelProperty(value = "评审开始时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
private Date reviewStartTime;
private LocalDateTime reviewStartTime;
@ApiModelProperty(value = "多伦询价,前一轮询价单发起继续询价时的状态")
private Integer mrPreviousInquiryStatus;
@ -573,4 +574,7 @@ public class InquiryVO implements Serializable {
@ApiModelProperty(value = "应答格式列表")
private List<InquiryResponseFormatVO> responseFormatList;
@ApiModelProperty(value = "附件列表")
List<AttachmentVO> attachmentList;
}

View File

@ -7,6 +7,11 @@ import com.chinaunicom.mall.ebtp.common.util.PropertyUtils;
import com.chinaunicom.mall.ebtp.project.common.InquiryCommonUtil;
import com.chinaunicom.mall.ebtp.project.common.ProjectCommonUtil;
import com.chinaunicom.mall.ebtp.project.common.ProjectExceptionEnum;
import com.chinaunicom.mall.ebtp.project.feign.EbtpMallBidApi;
import com.chinaunicom.mall.ebtp.project.feign.EbtpMallProcessApi;
import com.chinaunicom.mall.ebtp.project.feign.EbtpRespsApi;
import com.chinaunicom.mall.ebtp.project.feign.entity.DocumentXjVO;
import com.chinaunicom.mall.ebtp.project.feign.entity.TdocVO;
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;
@ -25,6 +30,9 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.Map;
/**
@ -50,6 +58,15 @@ public class ProjectEntrustInquiryServiceImpl extends BaseServiceImpl<ProjectEnt
@Resource
private IProjectEntrustExpandService entrustExpandService;
@Resource
private EbtpRespsApi ebtpRespsApi;
@Resource
private EbtpMallProcessApi processApi;
@Resource
private EbtpMallBidApi bidApi;
@Override
@Transactional(rollbackFor = Exception.class)
public boolean initProjectEntrust(InquiryVO inquiryVO) {
@ -117,7 +134,7 @@ public class ProjectEntrustInquiryServiceImpl extends BaseServiceImpl<ProjectEnt
result = projectRecordService.assent(projectEntrust.getId());
//初始化后续流程
ProjectEntrustExpand expand = entrustExpandService.getOne(new QueryWrapper<ProjectEntrustExpand>().eq("entrust_id",projectEntrust.getId()));
InquiryVO inquiryVO = expand.getInquiryVO();
InquiryVO inquiryVO = expand.getInquiry();
inquiryVO.setEndTime(inquiryNoticeVO.getEndTime());
inquiryVO.setReviewStartTime(inquiryNoticeVO.getReviewStartTime());
@ -138,11 +155,29 @@ public class ProjectEntrustInquiryServiceImpl extends BaseServiceImpl<ProjectEnt
Map<String,String> sectionMaps = projectSectionService.getFlowList(recordVO.getId());
projectRecordService.initialize(recordVO.getId(), false, sectionMaps);
InquiryVO inquiryVO = projectEntrustVO.getProjectEntrustExpand().getInquiry();
//标段ID
String sectionId = "";
for(String key : sectionMaps.keySet()){
sectionId = key;
}
//初始化招标文件
DocumentXjVO xjVO = new DocumentXjVO();
xjVO.setTpId(recordVO.getId());
xjVO.setBsId(sectionId);
xjVO.setList(inquiryVO.getAttachmentList());
bidApi.insertTp(xjVO);
//初始化应答文件
TdocVO tdocVO = new TdocVO();
tdocVO.setList(inquiryVO.getResponseFormatList());
tdocVO.setSectionId(sectionId);
tdocVO.setEndDate(inquiryVO.getEndTime());
ebtpRespsApi.initInquiryResponseFormat(tdocVO);
//修改评审室开始时间
Map<String, LocalDateTime> updateProcessMap = new HashMap<>();
updateProcessMap.put(sectionId,inquiryVO.getReviewStartTime());
processApi.updateOpenTime(updateProcessMap);
}
/**
@ -188,7 +223,7 @@ public class ProjectEntrustInquiryServiceImpl extends BaseServiceImpl<ProjectEnt
ProjectEntrustExpand expand = new ProjectEntrustExpand();
expand.setId(PropertyUtils.getSnowflakeId());
expand.setEntrustId(entrustVO.getId());
expand.setInquiryVO(inquiryVO);
expand.setInquiry(inquiryVO);
entrustVO.setProjectEntrustExpand(expand);
return entrustVO;

View File

@ -714,7 +714,7 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl<ProjectRecordMappe
*/
private Map<String,Object> assembleInquiryProject(ProjectEntrust projectEntrust,ProjectEntrustExpand expand){
InquiryVO inquiryVO = expand.getInquiryVO();
InquiryVO inquiryVO = expand.getInquiry();
ProjectRecord record = new ProjectRecord();
//项目编号

View File

@ -143,7 +143,8 @@
resultType="com.chinaunicom.mall.ebtp.project.projectsection.entity.ProjectSectionVO">
select t.id,
t.bid_sect_name as bidSectName,
t.bid_sect_biz_num as bidSectBizNum
t.bid_sect_biz_num as bidSectBizNum,
t.status as status
from biz_project_section t
where t.project_id = ${projectId}
and not exists (select * from biz_project_section_exception e where e.section_id = t.id)
@ -154,7 +155,8 @@
select t.id,
(case when e.id is not null then '1' else '0' end) as isExceptionCheck,
t.bid_sect_name as bidSectName,
t.bid_sect_biz_num as bidSectBizNum
t.bid_sect_biz_num as bidSectBizNum,
t.status as status
from biz_project_section t
left join biz_project_section_exception e on e.section_id = t.id and e.exception_id = ${exceptionId}
where t.project_id = ${projectId} and t.status != '9'
@ -164,7 +166,8 @@
resultType="com.chinaunicom.mall.ebtp.project.projectsection.entity.ProjectSectionVO">
select t.id,
t.bid_sect_name as bidSectName,
t.bid_sect_biz_num as bidSectBizNum
t.bid_sect_biz_num as bidSectBizNum,
t.status as status
from biz_project_section t,biz_project_section_exception e
where e.section_id = t.id
and t.project_id = ${projectId}

View File

@ -447,6 +447,11 @@ public class ProjectSectionServiceImpl extends BaseServiceImpl<ProjectSectionMap
sectionFlowService.save(sectionFlow);
}
/**
* 查询标段结合信息包含流程ID
* @param projectId 项目ID
* @return 返回结果
*/
private List<ProjectSectionVO> getSectionFlowList(String projectId){
return projectSectionMapper.getSectionFlowList(projectId);