feat: 更新阿里健康数据

v3
chenhc 3 months ago
parent daffb56657
commit 737c4ea464

@ -73,4 +73,14 @@ public class ThirdAliDrugController {
return ResultVOUtils.success(list);
}
@GetMapping("/udiwms/aliDrug/111")
public BaseResponse teest111() {
thirdAliDrugService.updateThirdAliDrugTask();
return ResultVOUtils.success();
}
}

@ -5,6 +5,7 @@ import com.glxp.udidl.admin.entity.collect.ThirdAliDrug;
import com.glxp.udidl.admin.req.collect.ThirdAliDrugRequest;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
@ -16,4 +17,8 @@ public interface ThirdAliDrugMapper extends BaseMapper<ThirdAliDrug> {
int saveOrUpdateBatch(@Param("list") List<ThirdAliDrug> list);
List<ThirdAliDrug> filterList(ThirdAliDrugRequest thirdAliDrug);
@Select("SELECT cpmctymc FROM third_ali_drug GROUP BY cpmctymc")
List<ThirdAliDrug> groupByCpmctymc();
}

@ -66,4 +66,24 @@ public class ThirdAliDrugService extends ServiceImpl<ThirdAliDrugMapper, ThirdAl
}
}
public void updateThirdAliDrugTask() {
List<ThirdAliDrug> groupedByCpmctymc = this.baseMapper.groupByCpmctymc();
if (CollUtil.isNotEmpty(groupedByCpmctymc)){
for (int i = 0; i < groupedByCpmctymc.size(); i++) {
ThirdAliDrug thirdAliDrug = groupedByCpmctymc.get(i);
String cpmctymc = thirdAliDrug.getCpmctymc();
ThirdAliDrugAddRequest thirdAliDrugAddRequest = new ThirdAliDrugAddRequest();
// TODO: 2025/1/4 这里用调用的 入参 cpmctymc
List<ThirdAliDrug> add = new ArrayList<>();
thirdAliDrugAddRequest.setList(add);
this.addThirdAliDrug(thirdAliDrugAddRequest);
}
}
}
}

@ -0,0 +1,49 @@
package com.glxp.udidl.admin.thread;
import com.glxp.udidl.admin.dao.info.ScheduledMapper;
import com.glxp.udidl.admin.entity.info.ScheduledEntity;
import com.glxp.udidl.admin.req.info.ScheduledRequest;
import com.glxp.udidl.admin.service.chsapi.ChsYbHcxxService;
import com.glxp.udidl.admin.service.collect.ThirdAliDrugService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.SchedulingConfigurer;
import org.springframework.scheduling.config.ScheduledTaskRegistrar;
import org.springframework.scheduling.support.CronTrigger;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@Component
@EnableScheduling
public class ThirdAliDrugTask implements SchedulingConfigurer {
@Resource
private ScheduledMapper scheduledDao;
@Resource
private ThirdAliDrugService thirdAliDrugService;
final Logger logger = LoggerFactory.getLogger(ThirdAliDrugTask.class);
@Override
public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) {
scheduledTaskRegistrar.addTriggerTask(() -> process(),
triggerContext -> {
ScheduledRequest scheduledRequest = new ScheduledRequest();
scheduledRequest.setCronName("thirdAliDrugTask");
ScheduledEntity scheduledEntity = scheduledDao.findScheduled(scheduledRequest);
String cron = scheduledEntity.getCron();
if (cron.isEmpty()) {
logger.error("cron is null");
}
return new CronTrigger(cron).nextExecutionTime(triggerContext);
});
}
private void process() {
System.out.println("开始执行更新阿里健康数据");
thirdAliDrugService.updateThirdAliDrugTask();
}
}

@ -329,4 +329,6 @@ CALL Pro_Temp_ColumnWork('third_ali_drug', 'physicTypeDesc',
1);
CALL Pro_Temp_ColumnWork('third_ali_drug', 'packUnitName',
' varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT ''包装单位''',
1);
1);
INSERT IGNORE INTO `scheduled` (`id`, `cronName`, `cron`, `customerId`) VALUES (11, 'thirdAliDrugTask', '0 0 */2 * * ?', NULL);

Loading…
Cancel
Save