package com.sinata.appointment.service;
|
|
import com.sinata.appointment.constants.BizErrorCode;
|
import com.sinata.appointment.exception.BizException;
|
import java.util.ArrayList;
|
import java.util.LinkedHashMap;
|
import java.util.LinkedHashSet;
|
import java.util.List;
|
import java.util.Map;
|
import lombok.RequiredArgsConstructor;
|
import org.springframework.stereotype.Service;
|
import org.springframework.util.StringUtils;
|
|
@Service
|
@RequiredArgsConstructor
|
public class MiniSystemSettingApplicationService {
|
|
private final SysBizSettingCacheService sysBizSettingCacheService;
|
|
public Map<String, String> getByCodeOrCodes(String code, String codes) {
|
LinkedHashSet<String> keys = new LinkedHashSet<>();
|
if (StringUtils.hasText(code)) {
|
keys.add(code.trim());
|
}
|
if (StringUtils.hasText(codes)) {
|
String[] arr = codes.split(",");
|
for (String s : arr) {
|
if (StringUtils.hasText(s)) {
|
keys.add(s.trim());
|
}
|
}
|
}
|
if (keys.isEmpty()) {
|
throw new BizException(BizErrorCode.AUTH_INVALID_CREDENTIALS, "请传 code 或 codes");
|
}
|
List<String> keyList = new ArrayList<>(keys);
|
LinkedHashMap<String, String> out = new LinkedHashMap<>();
|
for (String k : keyList) {
|
out.put(k, sysBizSettingCacheService.getValue(k));
|
}
|
return out;
|
}
|
}
|