package com.tanpu.feo.feojob.service; import com.tanpu.feo.feojob.dao.admin.entity.OrgConfig; import com.tanpu.feo.feojob.dao.admin.entity.OrgConfigExample; import com.tanpu.feo.feojob.dao.admin.mapper.OrgConfigMapper; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.List; @Service public class OrgConfigService { @Resource private OrgConfigMapper orgConfigMapper; public void set(String key, Boolean value, String orgId) { set(key, String.valueOf(value), orgId); } public void set(String key, Integer value, String orgId) { set(key, String.valueOf(value), orgId); } public void set(String key, String value, String orgId) { OrgConfig cfg = select(key, orgId); if (cfg == null) { insert(key, value, orgId); } else { update(value, cfg.getId()); } } public String getString(String key, String orgId) { OrgConfig cfg = select(key, orgId); return cfg == null ? null : cfg.getCfgValue(); } public Integer getInt(String key, String orgId) { String v = getString(key, orgId); return v == null ? null : Integer.parseInt(v); } public Boolean getBool(String key, String orgId) { String v = getString(key, orgId); return v == null ? null : Boolean.parseBoolean(v); } public List<OrgConfig> selectByKey(String key) { OrgConfigExample example = new OrgConfigExample(); example.createCriteria().andCfgKeyEqualTo(key); return orgConfigMapper.selectByExample(example); } private OrgConfig select(String key, String orgId) { OrgConfigExample example = new OrgConfigExample(); example.createCriteria().andCfgKeyEqualTo(key).andOrgIdEqualTo(orgId); List<OrgConfig> ret = orgConfigMapper.selectByExample(example); return ret.isEmpty() ? null : ret.get(0); } private void insert(String key, String value, String orgId) { OrgConfig cfg = new OrgConfig(); cfg.setCfgKey(key); cfg.setCfgValue(value); cfg.setOrgId(orgId); orgConfigMapper.insert(cfg); } private void update(String value, Long id) { OrgConfig cfg = new OrgConfig(); cfg.setId(id); cfg.setCfgValue(value); orgConfigMapper.updateByPrimaryKey(cfg); } }