fix(hjc): 入向推送补写发布时间/投标截止时间(无显式字段时取开售/截止时间兜底)

- HjcOneStopProjectPush 新增可选 publishTime/deadlineTime
- upsertFromPush: publishTime=显式publishTime||tenderOnsaleTime, deadlineTime=显式deadlineTime||tenderOffsaleTime
This commit is contained in:
2026-09-09 17:04:41 +08:00
parent 32a41bde6d
commit 1aa8b8d4e4
2 changed files with 13 additions and 0 deletions
@@ -38,6 +38,12 @@ public class HjcOneStopProjectPush {
@Schema(description = "截止时间/停售时间,yyyy-MM-dd HH:mm:ss") @Schema(description = "截止时间/停售时间,yyyy-MM-dd HH:mm:ss")
private String tenderOffsaleTime; private String tenderOffsaleTime;
@Schema(description = "发布时间(可选,未传则取开售时间 tenderOnsaleTime 兜底)")
private String publishTime;
@Schema(description = "投标截止时间(可选,未传则取截止时间 tenderOffsaleTime 兜底)")
private String deadlineTime;
@Schema(description = "公告标题") @Schema(description = "公告标题")
private String bulletinName; private String bulletinName;
@@ -82,6 +82,9 @@ public class HjcBizServiceImpl implements HjcBizService {
project.setTenderFile(push.getFiles()); project.setTenderFile(push.getFiles());
project.setOnsaleTime(parseDateTime(push.getTenderOnsaleTime())); project.setOnsaleTime(parseDateTime(push.getTenderOnsaleTime()));
project.setOffsaleTime(parseDateTime(push.getTenderOffsaleTime())); project.setOffsaleTime(parseDateTime(push.getTenderOffsaleTime()));
// 发布时间/投标截止:一站式推送未单独下发时取「开售时间/截止时间」兜底;显式下发则优先
project.setPublishTime(parseDateTime(firstNonBlank(push.getPublishTime(), push.getTenderOnsaleTime())));
project.setDeadlineTime(parseDateTime(firstNonBlank(push.getDeadlineTime(), push.getTenderOffsaleTime())));
project.setSellingMethod(push.getSellingMethod()); project.setSellingMethod(push.getSellingMethod());
project.setNeedSell(push.getNeedSellTender()); project.setNeedSell(push.getNeedSellTender());
project.setDataSource("PUSH"); project.setDataSource("PUSH");
@@ -248,6 +251,10 @@ public class HjcBizServiceImpl implements HjcBizService {
} }
} }
private String firstNonBlank(String a, String b) {
return StrUtil.isNotBlank(a) ? a : b;
}
private String limitStr(String s, int max) { private String limitStr(String s, int max) {
if (s == null) { if (s == null) {
return null; return null;