MetaParamsConfigService.java 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package com.izouma.nineth.service;
  2. import com.izouma.nineth.domain.MetaParamsConfig;
  3. import com.izouma.nineth.dto.PageQuery;
  4. import com.izouma.nineth.exception.BusinessException;
  5. import com.izouma.nineth.repo.MetaParamsConfigRepo;
  6. import com.izouma.nineth.utils.JpaUtils;
  7. import lombok.AllArgsConstructor;
  8. import org.springframework.data.domain.Page;
  9. import org.springframework.stereotype.Service;
  10. import java.time.LocalTime;
  11. import java.time.format.DateTimeFormatter;
  12. @Service
  13. @AllArgsConstructor
  14. public class MetaParamsConfigService {
  15. private MetaParamsConfigRepo metaParamsConfigRepo;
  16. public Page<MetaParamsConfig> all(PageQuery pageQuery) {
  17. return metaParamsConfigRepo.findAll(JpaUtils.toSpecification(pageQuery, MetaParamsConfig.class), JpaUtils.toPageRequest(pageQuery));
  18. }
  19. public boolean getBoolean(String name) {
  20. String str = metaParamsConfigRepo.findByName(name).map(MetaParamsConfig::getValue)
  21. .orElseThrow(new BusinessException("配置不存在"));
  22. return str.equals("1");
  23. }
  24. public String getString(String name) {
  25. return metaParamsConfigRepo.findByName(name).map(MetaParamsConfig::getValue).orElse(null);
  26. }
  27. public LocalTime getTime(String name) {
  28. String str = metaParamsConfigRepo.findByName(name).map(MetaParamsConfig::getValue)
  29. .orElseThrow(new BusinessException("配置不存在"));
  30. DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("HH:mm");
  31. return LocalTime.from(dateTimeFormatter.parse(str));
  32. }
  33. }