diff --git a/src/main/java/com/luca/pilot/entity/AbstractAuditingEntity.java b/src/main/java/com/luca/pilot/entity/AbstractAuditingEntity.java index e13fd1615c57cc13aa8b57d0c4be7a92a553fbfe..55d6ddcbc9c7f8bba4af14dff3da89a2704b1616 100644 --- a/src/main/java/com/luca/pilot/entity/AbstractAuditingEntity.java +++ b/src/main/java/com/luca/pilot/entity/AbstractAuditingEntity.java @@ -30,6 +30,6 @@ public abstract class AbstractAuditingEntity implements Serializable { /** * 鍒犻櫎鏍囪锛坒alse:鏈垹闄� true:宸插垹闄わ級 */ - private boolean deleted = false; + private Integer deleted; } diff --git a/src/main/java/com/luca/pilot/entity/ModuleEntity.java b/src/main/java/com/luca/pilot/entity/ModuleEntity.java index 098fb84091b26bedfb43e0844d9700c08a4b6ef4..224160acad21baebb5198e2dfb26769f494d37e3 100644 --- a/src/main/java/com/luca/pilot/entity/ModuleEntity.java +++ b/src/main/java/com/luca/pilot/entity/ModuleEntity.java @@ -46,6 +46,6 @@ public class ModuleEntity extends AbstractAuditingEntity { /** * 妯″潡鐘舵€� */ - private Boolean enabled; + private Integer enabled; } diff --git a/src/main/java/com/luca/pilot/entity/Plan.java b/src/main/java/com/luca/pilot/entity/Plan.java index 8319284936bc078ba852db9e266731b99e5a198b..e898a96383a2d567ff30218f4c5be1cee62f6fa7 100644 --- a/src/main/java/com/luca/pilot/entity/Plan.java +++ b/src/main/java/com/luca/pilot/entity/Plan.java @@ -66,7 +66,7 @@ public class Plan extends AbstractAuditingEntity { /** * 鏄惁鍚敤(0:绂佺敤 1:鍚敤) */ - private Boolean enabled; + private Integer enabled; /** * 璁″垝浜岀淮鐮� diff --git a/src/main/java/com/luca/pilot/entity/PlanModule.java b/src/main/java/com/luca/pilot/entity/PlanModule.java index c990deae16017d83a341d58227098eff1589570f..02c677af840dec299d4c3f3f30fa0aca03eaf5c0 100644 --- a/src/main/java/com/luca/pilot/entity/PlanModule.java +++ b/src/main/java/com/luca/pilot/entity/PlanModule.java @@ -38,7 +38,7 @@ public class PlanModule { private Integer planTaskTaskCount; private Integer planTaskFinishDay; private Integer planTaskLoopType; - private Boolean planTaskEnabled; + private Integer planTaskEnabled; private Integer planTaskIsCirculation; private Integer planTaskBeginDay; private Integer planTaskCirculationDay; diff --git a/src/main/java/com/luca/pilot/entity/PlanTask.java b/src/main/java/com/luca/pilot/entity/PlanTask.java index d7cff83fdfb70f47e89f575162451e8cee7038ac..58cfe4c91b4137ebb12fdc34707dd75a39c59fdd 100644 --- a/src/main/java/com/luca/pilot/entity/PlanTask.java +++ b/src/main/java/com/luca/pilot/entity/PlanTask.java @@ -81,7 +81,7 @@ public class PlanTask extends AbstractAuditingEntity { * 鏄惁鍚敤(0:绂佺敤 1:鍚敤) */ @Field("enabled") - private Boolean enabled; + private Integer enabled; /** * 璁″垝鐩爣id diff --git a/src/main/java/com/luca/pilot/entity/ScaleModuleEntity.java b/src/main/java/com/luca/pilot/entity/ScaleModuleEntity.java index 0379b662df0e1403239e7729bf2d8fc74076ec3b..31b58b396f57461717e5bdd9dcb70509279e5352 100644 --- a/src/main/java/com/luca/pilot/entity/ScaleModuleEntity.java +++ b/src/main/java/com/luca/pilot/entity/ScaleModuleEntity.java @@ -25,5 +25,5 @@ public class ScaleModuleEntity extends AbstractAuditingEntity { private String moduleCode; @Field("scale_code") private String scaleCode; - private Boolean enabled; + private Integer enabled; } diff --git a/src/main/java/com/luca/pilot/entity/Site.java b/src/main/java/com/luca/pilot/entity/Site.java index 22c70b66933c0f4835dbaf1e05a8130ddc11c95a..8640c27aa75bed68b1f94bb49ece1bcbb5597fc5 100644 --- a/src/main/java/com/luca/pilot/entity/Site.java +++ b/src/main/java/com/luca/pilot/entity/Site.java @@ -83,7 +83,7 @@ public class Site extends AbstractAuditingEntity { /** * 鍚敤鐘舵€� */ - private Boolean enable; + private Integer enable; } \ No newline at end of file diff --git a/src/main/java/com/luca/pilot/entity/SynchronizeTime.java b/src/main/java/com/luca/pilot/entity/SynchronizeTime.java index 9391f86fdb6cfe251e9c2a0eec53ff7217da5f1b..3302ad1b28033b34553b91320a05d36923ab3b05 100644 --- a/src/main/java/com/luca/pilot/entity/SynchronizeTime.java +++ b/src/main/java/com/luca/pilot/entity/SynchronizeTime.java @@ -9,6 +9,6 @@ import java.time.LocalDateTime; public class SynchronizeTime { private String _id; - private LocalDateTime plan; + private String plan; } diff --git a/src/main/java/com/luca/pilot/service/impl/PlanServiceImpl.java b/src/main/java/com/luca/pilot/service/impl/PlanServiceImpl.java index 8e4dc42ea8e2b7361e00e67c190f3002534cbb7c..232ebba362c854281dd087edaf2e0044f6292a65 100644 --- a/src/main/java/com/luca/pilot/service/impl/PlanServiceImpl.java +++ b/src/main/java/com/luca/pilot/service/impl/PlanServiceImpl.java @@ -6,9 +6,15 @@ import com.luca.pilot.bizEnum.TableEnum; import com.luca.pilot.entity.*; import com.luca.pilot.service.PlanService; import com.luca.pilot.util.CrfUtil; +import com.mongodb.bulk.BulkWriteResult; +import com.mongodb.client.model.Filters; +import com.mongodb.client.model.UpdateOneModel; +import com.mongodb.client.model.UpdateOptions; +import com.mongodb.client.model.WriteModel; import lombok.extern.slf4j.Slf4j; import org.springframework.data.mongodb.core.BulkOperations; import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.mapping.Document; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; import org.springframework.data.mongodb.core.query.Update; @@ -24,6 +30,8 @@ import java.util.*; import java.util.stream.Collectors; import java.util.stream.Stream; +import static org.springframework.data.mongodb.core.query.Criteria.where; + @Slf4j @Service public class PlanServiceImpl implements PlanService { @@ -37,19 +45,19 @@ public class PlanServiceImpl implements PlanService { @Override @Scheduled(cron ="0 0/5 * * * ?") public void synchronizePlanTask() { - log.info("-----------synchronizePlanTask start-----------"); - LocalDateTime now = LocalDateTime.now(); + log.info("--------------synchronizePlanTask start---------"); + String nowTime = parseTimeFromDateTime (LocalDateTime.now()); SynchronizeTime synchronizeTime = findSynchronizeTime(); - LocalDateTime lastSynchronizeTime = null; + String lastSynchronizeTime = "2024-08-28 09:53:24"; if (Objects.nonNull(synchronizeTime)) { - lastSynchronizeTime = synchronizeTime.getPlan(); + lastSynchronizeTime = synchronizeTime.getPlan(); } Query countQuery = new Query(); if (Objects.nonNull(lastSynchronizeTime)) { - countQuery.addCriteria(Criteria.where("last_modified_at").gt(String.valueOf(lastSynchronizeTime))); + countQuery.addCriteria(where("last_modified_at").gt(lastSynchronizeTime)); } long totalPlanTaskDetailsCount = mongoTemplate.count(countQuery, PlanTaskDetails.class); log.info("PlanTaskDetails 鍦ㄥぇ浜� {} 鏃堕棿鍐呮湭鏌ヨ鍒版暟鎹� {} 鏉�", lastSynchronizeTime, totalPlanTaskDetailsCount); @@ -58,14 +66,14 @@ public class PlanServiceImpl implements PlanService { return; } - saveSynchronizeTime(synchronizeTime, now); + saveSynchronizeTime(synchronizeTime, nowTime); long skip = totalPlanTaskDetailsCount / 10000; if (totalPlanTaskDetailsCount % 10000 > 0) { skip++; } - long totalPlanModuleCount = mongoTemplate.count(countQuery, PlanModule.class); + long totalPlanModuleCount = mongoTemplate.count(new Query(), PlanModule.class); BulkOperations bulkOps = mongoTemplate.bulkOps(BulkOperations.BulkMode.UNORDERED, PlanModule.class); @@ -95,7 +103,6 @@ public class PlanServiceImpl implements PlanService { List<PlanModule> planMoudles = new ArrayList<>(); - //浠� planTaskDetail 鍜� planMoudleRelate 涓哄熀鍑� // 涓€涓� planTaskDetail 鑳藉搴斿涓� planMoudleRelate锛屽嵆涓€娆′换鍔¢厤缃簡澶氬皯涓ā鍧楋紙闂嵎锛岄噺琛紝鏁板瓧闈剁偣锛� for (PlanTaskDetails planTaskDetail : planTaskDetails) { @@ -222,7 +229,7 @@ public class PlanServiceImpl implements PlanService { // 鏄惁绗竴娆″叏閲忔彃鍏� if (totalPlanModuleCount > 0) { - Query upsertQuery = new Query(Criteria.where("key").is(planMoudle.getKey())); + Query upsertQuery = new Query(where("key").is(planMoudle.getKey())); Update update = buildUpdate(planMoudle); bulkOps.upsert(upsertQuery, update); } @@ -230,20 +237,22 @@ public class PlanServiceImpl implements PlanService { } } + // 鏄惁绗竴娆″叏閲忔彃鍏� if (totalPlanModuleCount > 0) { bulkOps.execute(); - log.info("bulkOps 鏇存柊鎴栨柊澧�:{} 鏉�", planMoudles.size()); + log.info("bulkOps 鏇存柊鎴栨彃鍏� {} 鏉℃暟鎹�", planMoudles.size()); } else { if (!CollectionUtils.isEmpty(planMoudles)) { mongoTemplate.insert(planMoudles, PlanModule.class); - log.info("mongoTemplate 鐩存帴鏂板:{} 鏉�", planMoudles.size()); + log.info("mongoTemplate insert {} 鏉℃暟鎹� ", planMoudles.size()); } } } - log.info("synchronizePlanTask end, 鑰楁椂:{} 绉�", LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8")) - now.toEpochSecond(ZoneOffset.of("+8"))); + log.info("synchronizePlanTask end, 鑰楁椂:{} 绉�", LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8")) - + LocalDateTime.parse(nowTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")).toEpochSecond(ZoneOffset.of("+8"))); } @@ -252,14 +261,14 @@ public class PlanServiceImpl implements PlanService { return mongoTemplate.findOne(query, SynchronizeTime.class); } - private void saveSynchronizeTime(SynchronizeTime synchronizeTime, LocalDateTime now) { + private void saveSynchronizeTime(SynchronizeTime synchronizeTime, String now) { if (Objects.isNull(synchronizeTime)) { SynchronizeTime time = new SynchronizeTime(); time.setPlan(now); mongoTemplate.save(time); } else { Query updateQuery = new Query(); - updateQuery.addCriteria(Criteria.where("_id").is(synchronizeTime.get_id())); + updateQuery.addCriteria(where("_id").is(synchronizeTime.get_id())); Update update = new Update(); update.set("plan", now); mongoTemplate.updateFirst(updateQuery, update, SynchronizeTime.class); @@ -313,11 +322,20 @@ public class PlanServiceImpl implements PlanService { } + public static void main(String[] args) { + String yim ="2024-08-30 10:14:45"; + System.out.println(LocalDateTime.parse(yim, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + } + private String parseTimeFromDate(LocalDate timeStr) { LocalDateTime localDateTime = timeStr.atStartOfDay(); DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); return localDateTime.format(fmt); } + private String parseTimeFromDateTime(LocalDateTime timeStr) { + DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + return timeStr.format(fmt); + } private List<PlanTaskDetailsModule> queryPlanTaskDetaiMoudles(List<PlanTaskDetails> planTaskDetails) { @@ -325,7 +343,7 @@ public class PlanServiceImpl implements PlanService { if (CollectionUtils.isEmpty(planTskDetailIds)) { return new ArrayList<>(); } - return mongoTemplate.find(new Query().addCriteria(Criteria.where("plan_task_details_id").in(planTskDetailIds)), PlanTaskDetailsModule.class); + return mongoTemplate.find(new Query().addCriteria(where("plan_task_details_id").in(planTskDetailIds)), PlanTaskDetailsModule.class); } @@ -335,7 +353,7 @@ public class PlanServiceImpl implements PlanService { return new HashMap<>(); } - Map<Long, List<ClinicalTrialsEvent>> eventMap = mongoTemplate.find(new Query().addCriteria(Criteria.where("plan_details_id").in(planTskDetailIds).and("relation_type").is("DIGITAL_MEDICAL")), ClinicalTrialsEvent.class) + Map<Long, List<ClinicalTrialsEvent>> eventMap = mongoTemplate.find(new Query().addCriteria(where("plan_details_id").in(planTskDetailIds).and("relation_type").is("DIGITAL_MEDICAL")), ClinicalTrialsEvent.class) .stream().collect(Collectors.groupingBy(ClinicalTrialsEvent::getPlanDetailsId)); Map<Long, Map<Long, String>> map = new HashMap<>(); @@ -358,7 +376,7 @@ public class PlanServiceImpl implements PlanService { return new HashMap<>(); } - Map<Long, List<ClinicalTrialsEvent>> eventMap = mongoTemplate.find(new Query().addCriteria(Criteria.where("plan_details_id").in(planTskDetailIds).and("relation_type").is("DIGITAL_MEDICAL")), ClinicalTrialsEvent.class) + Map<Long, List<ClinicalTrialsEvent>> eventMap = mongoTemplate.find(new Query().addCriteria(where("plan_details_id").in(planTskDetailIds).and("relation_type").is("DIGITAL_MEDICAL")), ClinicalTrialsEvent.class) .stream().collect(Collectors.groupingBy(ClinicalTrialsEvent::getPlanDetailsId)); Map<Long, Map<Long, Long>> map = new HashMap<>(); @@ -407,12 +425,12 @@ public class PlanServiceImpl implements PlanService { return new HashMap<>(); } - List<CrfAnswer> crfAnswers = mongoTemplate.find(new Query().addCriteria(Criteria.where("plan_task_details_id").in(planTskDetailIds)), CrfAnswer.class); + List<CrfAnswer> crfAnswers = mongoTemplate.find(new Query().addCriteria(where("plan_task_details_id").in(planTskDetailIds)), CrfAnswer.class); Map<Long, List<CrfAnswer>> crfAnswersMap = crfAnswers.stream().collect(Collectors.groupingBy(CrfAnswer::getPlanTaskDetailsId)); Set<Long> crfIds = crfAnswers.stream().map(CrfAnswer::getCrfId).collect(Collectors.toSet()); - Map<Long, String> crfMap = mongoTemplate.find(new Query().addCriteria(Criteria.where("id").in(crfIds)), Crf.class) + Map<Long, String> crfMap = mongoTemplate.find(new Query().addCriteria(where("id").in(crfIds)), Crf.class) .stream().collect(Collectors.toMap(Crf::getId, Crf::getQuestionJson, (k1, k2) -> k2)); Map<Long, Map<String, String>> map = new HashMap<>(); @@ -446,17 +464,17 @@ public class PlanServiceImpl implements PlanService { return new HashMap<>(); } - List<QuestionnaireAnswerRecord> records = mongoTemplate.find(new Query().addCriteria(Criteria.where("plan_task_details_id").in(planTskDetailIds)), QuestionnaireAnswerRecord.class); + List<QuestionnaireAnswerRecord> records = mongoTemplate.find(new Query().addCriteria(where("plan_task_details_id").in(planTskDetailIds)), QuestionnaireAnswerRecord.class); if (CollectionUtils.isEmpty(records)) { return new HashMap<>(); } Set<Long> recordIds = records.stream().map(QuestionnaireAnswerRecord::getId).collect(Collectors.toSet()); - List<QuestionnaireAnswer> answers = mongoTemplate.find(new Query().addCriteria(Criteria.where("record_id").in(recordIds)), QuestionnaireAnswer.class); + List<QuestionnaireAnswer> answers = mongoTemplate.find(new Query().addCriteria(where("record_id").in(recordIds)), QuestionnaireAnswer.class); Set<Long> ansowerIds = answers.stream().map(QuestionnaireAnswer::getId).collect(Collectors.toSet()); - List<QuestionnaireAnswerOption> answerOptions = mongoTemplate.find(new Query().addCriteria(Criteria.where("answer_id").in(ansowerIds)), QuestionnaireAnswerOption.class); + List<QuestionnaireAnswerOption> answerOptions = mongoTemplate.find(new Query().addCriteria(where("answer_id").in(ansowerIds)), QuestionnaireAnswerOption.class); Map<Long, Map<String, String>> map = new HashMap<>(); @@ -512,7 +530,7 @@ public class PlanServiceImpl implements PlanService { } Map<Long, List<PatientScaleEvaluatingEntity>> scaleEvaluatMap = - mongoTemplate.find(new Query().addCriteria(Criteria.where("plan_task_details_id").in(planTskDetailIds)), PatientScaleEvaluatingEntity.class) + mongoTemplate.find(new Query().addCriteria(where("plan_task_details_id").in(planTskDetailIds)), PatientScaleEvaluatingEntity.class) .stream().collect(Collectors.groupingBy(PatientScaleEvaluatingEntity::getPlanTaskDetailsId)); Map<Long, Map<String, String>> map = new HashMap<>(); @@ -556,35 +574,35 @@ public class PlanServiceImpl implements PlanService { */ Map<Long, String> map = new HashMap<>(); List<Long> questionnaireIds = planMoudleRelates.stream().filter(relate -> relate.getRelationType().equals("QUESTIONNAIRE")).map(PlanTaskModuleRelate::getRelationId).collect(Collectors.toList()); - Map<Long, String> questionaireMap = mongoTemplate.find(new Query().addCriteria(Criteria.where("top_id").in(questionnaireIds)), Questionnaire.class) + Map<Long, String> questionaireMap = mongoTemplate.find(new Query().addCriteria(where("top_id").in(questionnaireIds)), Questionnaire.class) .stream().collect(Collectors.toMap(Questionnaire::getTopId, Questionnaire::getName, (k1, k2) -> k2)); if (MapUtil.isNotEmpty(questionaireMap)) { map.putAll(questionaireMap); } List<Long> crfTopIds = planMoudleRelates.stream().filter(relate -> relate.getRelationType().equals("CRF")).map(PlanTaskModuleRelate::getRelationId).collect(Collectors.toList()); - Map<Long, String> crfMap = mongoTemplate.find(new Query().addCriteria(Criteria.where("crf_top_id").in(crfTopIds)), Crf.class) + Map<Long, String> crfMap = mongoTemplate.find(new Query().addCriteria(where("crf_top_id").in(crfTopIds)), Crf.class) .stream().collect(Collectors.toMap(Crf::getCrfTopId, Crf::getName, (k1, k2) -> k2)); if (MapUtil.isNotEmpty(crfMap)) { map.putAll(crfMap); } List<Long> scaleIds = planMoudleRelates.stream().filter(relate -> relate.getRelationType().equals("SCALE")).map(PlanTaskModuleRelate::getRelationId).collect(Collectors.toList()); - Map<Long, String> scaleMap = mongoTemplate.find(new Query().addCriteria(Criteria.where("id").in(scaleIds)), ScaleModuleDetailsEntity.class) + Map<Long, String> scaleMap = mongoTemplate.find(new Query().addCriteria(where("id").in(scaleIds)), ScaleModuleDetailsEntity.class) .stream().collect(Collectors.toMap(ScaleModuleDetailsEntity::getId, ScaleModuleDetailsEntity::getName, (k1, k2) -> k2)); if (MapUtil.isNotEmpty(scaleMap)) { map.putAll(scaleMap); } List<Long> digitalMedicalIds = planMoudleRelates.stream().filter(relate -> relate.getRelationType().equals("DIGITAL_MEDICAL")).map(PlanTaskModuleRelate::getRelationId).collect(Collectors.toList()); - Map<Long, String> digitalMedicalMap = mongoTemplate.find(new Query().addCriteria(Criteria.where("id").in(digitalMedicalIds)), DigitalMedicalDetails.class) + Map<Long, String> digitalMedicalMap = mongoTemplate.find(new Query().addCriteria(where("id").in(digitalMedicalIds)), DigitalMedicalDetails.class) .stream().collect(Collectors.toMap(DigitalMedicalDetails::getId, DigitalMedicalDetails::getName, (k1, k2) -> k2)); if (MapUtil.isNotEmpty(digitalMedicalMap)) { map.putAll(digitalMedicalMap); } List<Long> collectMoudleIds = planMoudleRelates.stream().filter(relate -> relate.getRelationType().equals("COLLECT_FLOW")).map(PlanTaskModuleRelate::getRelationId).collect(Collectors.toList()); - Map<Long, String> collectMoudleMap = mongoTemplate.find(new Query().addCriteria(Criteria.where("id").in(collectMoudleIds)), CollectModule.class) + Map<Long, String> collectMoudleMap = mongoTemplate.find(new Query().addCriteria(where("id").in(collectMoudleIds)), CollectModule.class) .stream().collect(Collectors.toMap(CollectModule::getId, CollectModule::getName, (k1, k2) -> k2)); if (MapUtil.isNotEmpty(collectMoudleMap)) { map.putAll(collectMoudleMap); @@ -596,13 +614,13 @@ public class PlanServiceImpl implements PlanService { private List<UserArchiveMapping> queryArchiveMapping(List<PlanTaskDetails> planTaskDetails) { List<String> patientCodes = planTaskDetails.stream().map(PlanTaskDetails::getPatientCode).collect(Collectors.toList()); Query archiveMappingquery = new Query(); - archiveMappingquery.addCriteria(Criteria.where("patient_code").in(patientCodes)); + archiveMappingquery.addCriteria(where("patient_code").in(patientCodes)); return mongoTemplate.find(archiveMappingquery, UserArchiveMapping.class); } private List<PlanTaskModuleRelate> queryPlanMoudleRelates(List<PlanTask> planTasks) { List<Long> planTaskIds = planTasks.stream().map(PlanTask::getId).collect(Collectors.toList()); - return mongoTemplate.find(new Query().addCriteria(Criteria.where("planTaskId").in(planTaskIds)), PlanTaskModuleRelate.class); + return mongoTemplate.find(new Query().addCriteria(where("planTaskId").in(planTaskIds)), PlanTaskModuleRelate.class); } private List<Site> querySites(List<UserArchiveMapping> userArchiveMappings) { @@ -610,24 +628,24 @@ public class PlanServiceImpl implements PlanService { if (CollectionUtils.isEmpty(siteIds)) { return new ArrayList<>(); } - return mongoTemplate.find(new Query().addCriteria(Criteria.where("id").in(siteIds)), + return mongoTemplate.find(new Query().addCriteria(where("id").in(siteIds)), Site.class); } private List<Project> queryProjct(List<PlanTaskDetails> planTaskDetails) { List<Long> projectIds = planTaskDetails.stream().map(PlanTaskDetails::getProjectId).collect(Collectors.toList()); - return mongoTemplate.find(new Query().addCriteria(Criteria.where("id").in(projectIds)), Project.class); + return mongoTemplate.find(new Query().addCriteria(where("id").in(projectIds)), Project.class); } private List<Plan> queryPlans(List<PlanTask> planTasks) { List<Long> planIds = planTasks.stream().map(PlanTask::getPlanId).collect(Collectors.toList()); - return mongoTemplate.find(new Query().addCriteria(Criteria.where("id").in(planIds)), + return mongoTemplate.find(new Query().addCriteria(where("id").in(planIds)), Plan.class); } private List<PlanTask> queryPlanTasks(List<PlanTaskDetails> planTaskDetails) { List<Long> planTaskIds = planTaskDetails.stream().map(PlanTaskDetails::getPlanTaskId).collect(Collectors.toList()); - return mongoTemplate.find(new Query().addCriteria(Criteria.where("id").in(planTaskIds)), + return mongoTemplate.find(new Query().addCriteria(where("id").in(planTaskIds)), PlanTask.class); } @@ -637,7 +655,7 @@ public class PlanServiceImpl implements PlanService { if (CollectionUtils.isEmpty(archiveIds)) { return new ArrayList<>(); } - return mongoArchiveTemplate.find(new Query().addCriteria(Criteria.where("_id").in(archiveIds)), + return mongoArchiveTemplate.find(new Query().addCriteria(where("_id").in(archiveIds)), UserArchive.class); } } diff --git a/src/main/java/com/luca/pilot/util/CrfUtil.java b/src/main/java/com/luca/pilot/util/CrfUtil.java index 6efcca4e435e15628b016aa19146018414131092..ccffa6c857708a9e60dfdd8a94e2c4421ac5b537 100644 --- a/src/main/java/com/luca/pilot/util/CrfUtil.java +++ b/src/main/java/com/luca/pilot/util/CrfUtil.java @@ -72,7 +72,7 @@ public class CrfUtil { }).collect(Collectors.toList()); } - private static void problemJsonNew(List<JSONObject> array, JSONObject data, String prefix) { + private static void problemJsonNew(List<com.alibaba.fastjson.JSONObject> array, com.alibaba.fastjson.JSONObject data, String prefix) { if (Objects.isNull(data)) { return; } @@ -92,14 +92,14 @@ public class CrfUtil { return; } try { - var head = JSONObject.parseObject(data.get("BindData").toString(), Feature.OrderedField).get("dataId").toString(); - var columnsBos = JSONObject.parseArray(JSONObject.toJSONString(columns), CrfTableJsonTopicBo.class).stream() + var head = com.alibaba.fastjson.JSONObject.parseObject(data.get("BindData").toString(), Feature.OrderedField).get("dataId").toString(); + var columnsBos = com.alibaba.fastjson.JSONObject.parseArray(com.alibaba.fastjson.JSONObject.toJSONString(columns), CrfTableJsonTopicBo.class).stream() .filter(bo -> !"title".equals(bo.getDataIndex())) // 鍘绘帀鏈€宸︿竴鍒� dataIndex 涓� title 鐨勫垪 .collect(Collectors.toList()); - var defaultValueBos = JSONObject.parseArray(JSONObject.toJSONString(defaultValue), CrfTableJsonTopicBo.class); + var defaultValueBos = com.alibaba.fastjson.JSONObject.parseArray(com.alibaba.fastjson.JSONObject.toJSONString(defaultValue), CrfTableJsonTopicBo.class); for (int i = 0; i < columnsBos.size(); i++) { for (int j = 0; j < defaultValueBos.size(); j++) { - JSONObject jsonObject = new JSONObject(); + com.alibaba.fastjson.JSONObject jsonObject = new com.alibaba.fastjson.JSONObject(); jsonObject.put("title", title + "," + defaultValueBos.get(j).getTitle() + "-" + columnsBos.get(i).getTitle()); jsonObject.put("questionType", CrfQuestionTypeEnum.CRFTABLE.getCode()); jsonObject.put("BindData", @@ -118,11 +118,11 @@ public class CrfUtil { return; } - var propertiesJsonObject = JSONObject.parseObject(properties.toString(), Feature.OrderedField); + var propertiesJsonObject = com.alibaba.fastjson.JSONObject.parseObject(properties.toString(), Feature.OrderedField); array.add(data); var keySet = propertiesJsonObject.keySet(); - var collect = keySet.stream().map(key -> JSONObject.parseObject(JSONObject.toJSONString(propertiesJsonObject.get(key)), Feature.OrderedField)).collect(Collectors.toList()); - for (JSONObject item : collect) { + var collect = keySet.stream().map(key -> com.alibaba.fastjson.JSONObject.parseObject(com.alibaba.fastjson.JSONObject.toJSONString(propertiesJsonObject.get(key)), Feature.OrderedField)).collect(Collectors.toList()); + for (com.alibaba.fastjson.JSONObject item : collect) { problemJsonNew(array, item, Objects.nonNull(title) ? title.toString() : null); } } diff --git a/src/test/java/com/luca/pilot/PlanTaskTest.java b/src/test/java/com/luca/pilot/PlanTaskTest.java index 9460f7cdf808c1f42976fb78ba85e0e5d272f4c9..c77b6aa782697cf9d2ef9033d34cc9878d3dc9a0 100644 --- a/src/test/java/com/luca/pilot/PlanTaskTest.java +++ b/src/test/java/com/luca/pilot/PlanTaskTest.java @@ -1,8 +1,6 @@ package com.luca.pilot; -import cn.hutool.json.JSONUtil; import com.luca.pilot.entity.UserArchive; -import com.luca.pilot.service.BaseModuleViewService; import com.luca.pilot.service.PlanService; import lombok.Data; import lombok.extern.slf4j.Slf4j; @@ -18,14 +16,12 @@ import java.util.List; @Slf4j @SpringBootTest -@ActiveProfiles("hj") +@ActiveProfiles("uat") public class PlanTaskTest { @Autowired private MongoTemplate mongoTemplate; @Autowired private PlanService planService; - @Autowired - private BaseModuleViewService baseModuleViewService; @Test @@ -51,11 +47,6 @@ public class PlanTaskTest { } - @Test - void synchronizeModuleView() { - baseModuleViewService.synchronizeModuleView(); - } - @Test