package doumeemes.biz.system.impl; import com.aliyun.openservices.shade.io.netty.util.internal.ConcurrentSet; import doumeemes.biz.system.SystemDictDataBiz; import doumeemes.core.constants.ResponseStatus; import doumeemes.core.exception.BusinessException; import doumeemes.core.utils.Constants; import doumeemes.core.utils.edpg.EdgpServerUtil; import doumeemes.core.utils.edpg.bean.AppUserInfoModel; import doumeemes.dao.system.model.SystemDict; import doumeemes.dao.system.model.SystemDictData; import doumeemes.service.system.SystemDictDataService; import doumeemes.service.system.SystemDictService; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; @Service public class SystemDictDataBizImpl implements SystemDictDataBiz { @Autowired private SystemDictService systemDictService; @Autowired private SystemDictDataService systemDictDataService; @Override public Integer create(SystemDictData systemDictData) { SystemDictData queryDto = new SystemDictData(); queryDto.setDictId(systemDictData.getDictId()); queryDto.setCode(systemDictData.getCode()); queryDto.setDeleted(Boolean.FALSE); SystemDictData dictData = systemDictDataService.findOne(queryDto); if (dictData != null) { throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "数据值已存在"); } return systemDictDataService.create(systemDictData); } @Override public void updateById(SystemDictData systemDictData) { SystemDictData queryDto = new SystemDictData(); queryDto.setDictId(systemDictData.getDictId()); queryDto.setCode(systemDictData.getCode()); queryDto.setDeleted(Boolean.FALSE); SystemDictData dictData = systemDictDataService.findOne(queryDto); if (dictData != null && !dictData.getId().equals(systemDictData.getId())) { throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "数据值已存在"); } systemDictDataService.updateById(systemDictData); } @Override public SystemDictData queryByCode(String dicCode, String label){ SystemDict queryDto = new SystemDict(); queryDto.setCode(dicCode); queryDto.setDeleted(Boolean.FALSE); SystemDict dictData = systemDictService.findOne(queryDto); if (dictData == null) { throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "数据值不存在"); } SystemDictData data = new SystemDictData(); data.setDictId(dictData.getId()); data.setLabel(label); data.setDeleted(Boolean.FALSE); data = systemDictDataService.findOne(data); if(data == null){ data = new SystemDictData(); } return data; } @Override public String queryCodeById(Integer id){ SystemDictData data = systemDictDataService.findById(id); if(data == null){ return data.getCode(); } return null; } @Override public List queryListByCode(String dicCode, String label){ SystemDict queryDto = new SystemDict(); queryDto.setCode(dicCode); queryDto.setDeleted(Boolean.FALSE); SystemDict dictData = systemDictService.findOne(queryDto); if (dictData == null) { throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "数据值不存在"); } SystemDictData data = new SystemDictData(); data.setDictId(dictData.getId()); data.setLabel(label); data.setDeleted(Boolean.FALSE); List list= systemDictDataService.findList(data); return list; } @Override public List queryDataByCode(String dicCode, String code){ SystemDict queryDto = new SystemDict(); queryDto.setCode(dicCode); queryDto.setDeleted(Boolean.FALSE); SystemDict dictData = systemDictService.findOne(queryDto); if (dictData == null) { throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "数据值不存在"); } SystemDictData data = new SystemDictData(); data.setDictId(dictData.getId()); data.setCode(code); data.setDeleted(Boolean.FALSE); List list= systemDictDataService.findList(data); return list; } @Override public void updatEdgpAccessToken() { SystemDictData data = queryByCode(Constants.EDGP_PARAM,Constants.EDGP_ACCESSTOKEN); EdgpServerUtil edgpServerUtil = new EdgpServerUtil( queryByCode(Constants.EDGP_PARAM,Constants.EDGP_SERVER_URL).getCode(), queryByCode(Constants.EDGP_PARAM,Constants.EDGP_APPKEY).getCode(), queryByCode(Constants.EDGP_PARAM,Constants.EDGP_SECRET).getCode()); String token = edgpServerUtil.getAccessToken(); if(StringUtils.isNotBlank(token)){ data.setCode(token); data.setUpdateTime(new Date()); updateById(data); } } }