用户只有一套UI,当用户查询UI没有时 则从默认中获取UI
This commit is contained in:
@@ -8,7 +8,6 @@ import java.net.InetSocketAddress;
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
@@ -22,7 +21,9 @@ import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.gzzn.omms.adminapi.domain.primary.dao.settings.UisettingsDao;
|
||||
import com.gzzn.omms.adminapi.domain.primary.dao.settings.UisettingsDefaultDao;
|
||||
import com.gzzn.omms.adminapi.domain.primary.entity.settings.Uisettings;
|
||||
import com.gzzn.omms.adminapi.domain.primary.entity.settings.UisettingsDefault;
|
||||
import com.gzzn.omms.adminapi.dto.OpLogSwitchDto;
|
||||
import com.gzzn.omms.adminapi.dto.ResponseDto;
|
||||
import com.gzzn.omms.adminapi.dto.settings.UisettingsDto;
|
||||
@@ -30,6 +31,7 @@ import com.gzzn.omms.adminapi.dto.settings.convert.UisettingsConvert;
|
||||
import com.gzzn.omms.adminapi.elasticsearch.CommCode;
|
||||
import com.gzzn.omms.adminapi.elasticsearch.ElasticsearchUtil;
|
||||
import com.gzzn.omms.adminapi.elasticsearch.UserOptLog;
|
||||
import com.gzzn.omms.adminapi.enums.ResultCode;
|
||||
import com.gzzn.omms.adminapi.service.IOplogSwithcInfoService;
|
||||
import com.gzzn.omms.adminapi.service.IUserService;
|
||||
import com.gzzn.omms.adminapi.utils.CommonUtils;
|
||||
@@ -53,6 +55,11 @@ public class UISettingsController {
|
||||
*/
|
||||
@Autowired
|
||||
private UisettingsDao uisettingsDao;
|
||||
/**
|
||||
* UI默认设置接口
|
||||
*/
|
||||
@Autowired
|
||||
private UisettingsDefaultDao uisettingsDefaultDao;
|
||||
/**
|
||||
* UI设置Dto接口
|
||||
*/
|
||||
@@ -80,27 +87,47 @@ public class UISettingsController {
|
||||
@RequestParam(required=false) String groupCode)
|
||||
{
|
||||
List<Uisettings> uisettingsList = new ArrayList<Uisettings>();
|
||||
List<UisettingsDefault> uisettingsDefaultList = new ArrayList<UisettingsDefault>();
|
||||
if(!StringUtils.isEmpty(envCode) && !StringUtils.isEmpty(groupCode)){
|
||||
//包括envCode、groupCode条件
|
||||
uisettingsList = uisettingsDao.findByEnvCodeAndGroupCodeAndUserid(envCode,groupCode,userService.getCurrentUserId());
|
||||
if(null==uisettingsList){ //用户未设置则查找默认的设置
|
||||
uisettingsDefaultList = uisettingsDefaultDao.findByEnvCodeAndGroupCode(envCode,groupCode);
|
||||
}
|
||||
}else if(StringUtils.isEmpty(envCode) && StringUtils.isEmpty(groupCode)){
|
||||
uisettingsList = uisettingsDao.findByUserid(userService.getCurrentUserId());
|
||||
if(null==uisettingsList){ //用户未设置则查找默认的设置
|
||||
uisettingsDefaultList = (List<UisettingsDefault>) uisettingsDefaultDao.findAll();
|
||||
}
|
||||
}else{
|
||||
if (!StringUtils.isEmpty(envCode) && StringUtils.isEmpty(groupCode)) {
|
||||
//envCode条件s
|
||||
uisettingsList = uisettingsDao.findByEnvCodeAndUserid(envCode,userService.getCurrentUserId());
|
||||
if(null==uisettingsList){ //用户未设置则查找默认的设置
|
||||
uisettingsDefaultList = uisettingsDefaultDao.findByEnvCode(envCode);
|
||||
}
|
||||
}
|
||||
if (StringUtils.isEmpty(envCode) && !StringUtils.isEmpty(groupCode)) {
|
||||
//groupCode条件
|
||||
uisettingsList = uisettingsDao.findByGroupCodeAndUserid(groupCode,userService.getCurrentUserId());
|
||||
if(null==uisettingsList){ //用户未设置则查找默认的设置
|
||||
uisettingsDefaultList = uisettingsDefaultDao.findByGroupCode(groupCode);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//转换dto
|
||||
List<UisettingsDto> uisettingsListDto = uisettingsList.stream().map(x -> {
|
||||
UisettingsDto dto = uisettingsConvert.uisettingsToUisettingsDto(x);
|
||||
return dto;
|
||||
}).collect(Collectors.toList());
|
||||
List<UisettingsDto> uisettingsListDto = new ArrayList<UisettingsDto>();
|
||||
if(null!=uisettingsList && uisettingsList.size()>0){
|
||||
for(Uisettings u:uisettingsList){
|
||||
uisettingsListDto.add(uisettingsConvert.uisettingsToUisettingsDto(u));
|
||||
}
|
||||
}
|
||||
if(null!=uisettingsDefaultList && uisettingsDefaultList.size()>0){
|
||||
for(UisettingsDefault ud:uisettingsDefaultList){
|
||||
uisettingsListDto.add(uisettingsConvert.uisettingsDefaultToUisettingsDto(ud));
|
||||
}
|
||||
}
|
||||
return ResponseDto.success(uisettingsListDto);
|
||||
}
|
||||
|
||||
@@ -114,20 +141,26 @@ public class UISettingsController {
|
||||
@PostMapping(value="/settings/uisettings")
|
||||
public ResponseDto<String> saveUISettings(@RequestBody UisettingsDto uisettingsDto)
|
||||
{
|
||||
if(StringUtils.isEmpty(uisettingsDto.getGroupCode())){
|
||||
return ResponseDto.failure(ResultCode.PARAM_NOT_COMPLETE, "分组Code不能为空");
|
||||
}
|
||||
//Dto转实体类
|
||||
Uisettings uisettings = uisettingsConvert.uisettingsDtoToUisettings(uisettingsDto);
|
||||
|
||||
Uisettings oldUisettings = null;
|
||||
String optType = CommCode.LOG_OPT_TYPE_ADD;
|
||||
String oldData = "无";
|
||||
//一个用户只能拥有一套UI 通过用户id 和 groupCode 获取旧的数据
|
||||
if(!StringUtils.isEmpty(uisettings.getId())){
|
||||
oldUisettings = uisettingsDao.findById(uisettings.getId());
|
||||
oldUisettings = uisettingsDao.findOneByGroupCodeAndUserid(uisettingsDto.getGroupCode(), userService.getCurrentUserId());
|
||||
}
|
||||
|
||||
if(null==oldUisettings)
|
||||
{
|
||||
uisettings.setId(CommonUtils.getUUID32()); //uuid自动生成
|
||||
}else{
|
||||
uisettings.setId(oldUisettings.getId());
|
||||
|
||||
oldData = JsonUtil.getString(oldUisettings);
|
||||
optType = CommCode.LOG_OPT_TYPE_UPDATE;
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ public interface UisettingsDao extends CrudRepository<Uisettings,String>{
|
||||
//根据条件goupCode、userid查询
|
||||
List<Uisettings> findByGroupCodeAndUserid(String goupCode,String userid);
|
||||
|
||||
Uisettings findOneByGroupCodeAndUserid(String goupCode,String userid);
|
||||
//保存
|
||||
Uisettings save(Uisettings uisettings);
|
||||
|
||||
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
package com.gzzn.omms.adminapi.domain.primary.dao.settings;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.springframework.data.repository.CrudRepository;
|
||||
|
||||
import com.gzzn.omms.adminapi.domain.primary.entity.settings.UisettingsDefault;
|
||||
|
||||
public interface UisettingsDefaultDao extends CrudRepository<UisettingsDefault,String>{
|
||||
|
||||
//根据条件envCode、goupCode查询
|
||||
List<UisettingsDefault> findByEnvCodeAndGroupCode(String envCode,String goupCode);
|
||||
|
||||
//根据条件envCode查询
|
||||
List<UisettingsDefault> findByEnvCode(String envCode);
|
||||
|
||||
//根据条件goupCode查询
|
||||
List<UisettingsDefault> findByGroupCode(String goupCode);
|
||||
|
||||
}
|
||||
@@ -5,11 +5,11 @@ import io.swagger.annotations.ApiModelProperty;
|
||||
|
||||
@ApiModel(value="UisettingsDto",description="UI设置Dto")
|
||||
public class UisettingsDto {
|
||||
|
||||
@ApiModelProperty(value="UI的主键id:存在则进行修改 否则 进行新增",example="1")
|
||||
private String id;
|
||||
@ApiModelProperty(value="用户id",example="1")
|
||||
private String userid;
|
||||
// 一个用户只有一套默认设置 不给予用户显示
|
||||
// @ApiModelProperty(value="UI的主键id:存在则进行修改 否则 进行新增",example="1")
|
||||
// private String id;
|
||||
// @ApiModelProperty(value="用户id",example="1")
|
||||
// private String userid;
|
||||
|
||||
@ApiModelProperty(value="环境Code",example="web")
|
||||
private String envCode;
|
||||
@@ -19,8 +19,7 @@ public class UisettingsDto {
|
||||
|
||||
@ApiModelProperty(value="设置的具体内容json串",example="{\"key1\": \"value1\",\"key2\": \"value2\"}")
|
||||
private String settingContent;
|
||||
|
||||
|
||||
|
||||
public String getEnvCode() {
|
||||
return envCode;
|
||||
}
|
||||
@@ -44,22 +43,4 @@ public class UisettingsDto {
|
||||
public void setSettingContent(String settingContent) {
|
||||
this.settingContent = settingContent;
|
||||
}
|
||||
|
||||
public String getUserid() {
|
||||
return userid;
|
||||
}
|
||||
|
||||
public void setUserid(String userid) {
|
||||
this.userid = userid;
|
||||
}
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
package com.gzzn.omms.adminapi.dto.settings.convert;
|
||||
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
import com.gzzn.omms.adminapi.domain.primary.entity.settings.Uisettings;
|
||||
import com.gzzn.omms.adminapi.domain.primary.entity.settings.UisettingsDefault;
|
||||
import com.gzzn.omms.adminapi.dto.settings.UisettingsDto;
|
||||
|
||||
@Mapper(componentModel="spring")
|
||||
@@ -10,4 +12,7 @@ public interface UisettingsConvert {
|
||||
public UisettingsDto uisettingsToUisettingsDto(Uisettings uisettings);
|
||||
//Dto转实体类
|
||||
public Uisettings uisettingsDtoToUisettings(UisettingsDto uisettingsDto);
|
||||
|
||||
//实体类转Dto
|
||||
public UisettingsDto uisettingsDefaultToUisettingsDto(UisettingsDefault uisettingsDefault);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user