增加UI设置实体类、DAO、controller、Dto、Convert、保存、更新接口实现

This commit is contained in:
714943302@qq.com
2018-11-02 18:25:28 +08:00
parent 35a6e0eea4
commit e7a930e8cb
6 changed files with 107 additions and 26 deletions
@@ -1,25 +1,46 @@
package com.gzzn.omms.adminapi.controller.settings; package com.gzzn.omms.adminapi.controller.settings;
import java.util.List; import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import java.util.stream.Collectors;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import com.gzzn.omms.adminapi.domain.primary.dao.settings.UisettingsDao;
import com.gzzn.omms.adminapi.domain.primary.entity.settings.Uisettings;
import com.gzzn.omms.adminapi.dto.ResponseDto; import com.gzzn.omms.adminapi.dto.ResponseDto;
import com.gzzn.omms.adminapi.dto.settings.FindByCurUserAndCondsDto;
import com.gzzn.omms.adminapi.dto.settings.UisettingsDto; import com.gzzn.omms.adminapi.dto.settings.UisettingsDto;
import com.gzzn.omms.adminapi.enums.ResultCode; import com.gzzn.omms.adminapi.dto.settings.convert.UisettingsConvert;
import com.gzzn.omms.adminapi.service.IUserService;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
@RestController @RestController
public class UISettingsController { public class UISettingsController {
/**
* UI设置接口
*/
@Autowired
private UisettingsDao uisettingsDao;
/**
* UI设置Dto接口
*/
@Autowired
private UisettingsConvert uisettingsConvert;
/**
* 获取当前用户ID
*/
private IUserService iUserService;
/** /**
* 根据条件查找当前用户所有UI设置 * 根据条件查找当前用户所有UI设置
* @return * @return
@@ -30,10 +51,28 @@ public class UISettingsController {
@ApiImplicitParam(name="groupCode",value="分组Code",dataType="string", paramType = "query",example="msgalert")}) @ApiImplicitParam(name="groupCode",value="分组Code",dataType="string", paramType = "query",example="msgalert")})
@GetMapping(value="/settings/uisettings") @GetMapping(value="/settings/uisettings")
public ResponseDto<List<UisettingsDto>> findByCurUserAndConds( public ResponseDto<List<UisettingsDto>> findByCurUserAndConds(
@RequestParam(required=false) @RequestParam(required=false) String envCode,
FindByCurUserAndCondsDto conditionsDto) @RequestParam(required=false) String groupCode)
{ {
return ResponseDto.failure(ResultCode.INTERFACE_NOT_IMPLEMENT); List<Uisettings> uisettingsList = new ArrayList<Uisettings>();
if (envCode!=null) {
//envCode条件
uisettingsList = uisettingsDao.findByEnvCode(envCode);
}else if (groupCode!=null) {
//groupCode条件
uisettingsList = uisettingsDao.findByGroupCode(groupCode);
}else {
//包括envCode、groupCode条件
uisettingsList = uisettingsDao.findByEnvCodeAndGroupCode(envCode,groupCode);
}
//转换dto
List<UisettingsDto> uisettingsListDto = uisettingsList.stream().map(x -> {
UisettingsDto dto = uisettingsConvert.uisettingsToUisettingsDto(x);
return dto;
}).collect(Collectors.toList());
return ResponseDto.success(uisettingsListDto);
} }
@@ -44,8 +83,18 @@ public class UISettingsController {
*/ */
@ApiOperation(value="保存当前用户的UI设置",tags="UI设置") @ApiOperation(value="保存当前用户的UI设置",tags="UI设置")
@PostMapping(value="/settings/uisettings") @PostMapping(value="/settings/uisettings")
public ResponseDto saveUISettings(@RequestBody UisettingsDto uisettingsDto) public ResponseDto<String> saveUISettings(@RequestBody UisettingsDto uisettingsDto)
{ {
return ResponseDto.failure(ResultCode.INTERFACE_NOT_IMPLEMENT); //Dto转实体类
Uisettings uisettings = uisettingsConvert.uisettingsDtoToUisettings(uisettingsDto);
if(StringUtils.isEmpty(uisettings.getId()))
{
uisettings.setId(UUID.randomUUID().toString()); //uuid自动生成
}
uisettings = uisettingsDao.save(uisettings);
return ResponseDto.success(uisettings.getId());
} }
} }
@@ -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.Uisettings;
public interface UisettingsDao extends CrudRepository<Uisettings,String>{
//根据条件envCode、goupCode查询
List<Uisettings> findByEnvCodeAndGroupCode(String envCode,String goupCode);
//根据条件envCode查询
List<Uisettings> findByEnvCode(String envCode);
//根据条件goupCode查询
List<Uisettings> findByGroupCode(String goupCode);
//保存
Uisettings save(Uisettings uisettings);
}
@@ -5,7 +5,7 @@ import javax.persistence.*;
/** /**
* The persistent class for the datadic_groups database table. * 字典分组
* *
*/ */
@Entity @Entity
@@ -16,10 +16,10 @@ public class DatadicGroup implements Serializable {
@Id @Id
@Column(name="group_code") @Column(name="group_code")
private String groupCode; private String groupCode; //分组代码,字典分组代码
@Column(name="group_name") @Column(name="group_name")
private String groupName; private String groupName; //分组名称,字典分组名称
public DatadicGroup() { public DatadicGroup() {
} }
@@ -3,9 +3,8 @@ package com.gzzn.omms.adminapi.domain.primary.entity.settings;
import java.io.Serializable; import java.io.Serializable;
import javax.persistence.*; import javax.persistence.*;
/** /**
* The persistent class for the uisettings database table. * UI设置
* *
*/ */
@Entity @Entity
@@ -18,15 +17,15 @@ public class Uisettings implements Serializable {
private String id; private String id;
@Column(name="env_code") @Column(name="env_code")
private String envCode; private String envCode; //环境配置code , web - 大屏幕环境 mobile - 移动小屏幕
@Column(name="group_code") @Column(name="group_code")
private String groupCode; private String groupCode; //设置分组,设置分组比如msgalert 消息提醒
@Column(name="setting_content") @Column(name="setting_content")
private String settingContent; private String settingContent; //具体的设置内容,json格式的设置内容。不超过60KB
private String userid; private String userid; //用户id
public Uisettings() { public Uisettings() {
} }
@@ -1,12 +1,12 @@
package com.gzzn.omms.adminapi.domain.primary.entity.settings; package com.gzzn.omms.adminapi.domain.primary.entity.settings;
import java.io.Serializable; import java.io.Serializable;
import javax.persistence.*; import javax.persistence.*;
/** /**
* The persistent class for the uisettings_default database table. * UI设置
*
*/ */
@Entity @Entity
@Table(name="adminapi_uisettings_default") @Table(name="adminapi_uisettings_default")
@@ -18,13 +18,13 @@ public class UisettingsDefault implements Serializable {
private String id; private String id;
@Column(name="env_code") @Column(name="env_code")
private String envCode; private String envCode; //环境配置code , web - 大屏幕环境 mobile - 移动小屏幕
@Column(name="group_code") @Column(name="group_code")
private String groupCode; private String groupCode; //设置分组,设置分组比如msgalert 消息提醒
@Column(name="setting_content") @Column(name="setting_content")
private String settingContent; private String settingContent; //具体的设置内容,json格式的设置内容。不超过60KB
public UisettingsDefault() { public UisettingsDefault() {
} }
@@ -0,0 +1,13 @@
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.dto.settings.UisettingsDto;
@Mapper(componentModel="spring")
public interface UisettingsConvert {
//实体类转Dto
public UisettingsDto uisettingsToUisettingsDto(Uisettings uisettings);
//Dto转实体类
public Uisettings uisettingsDtoToUisettings(UisettingsDto uisettingsDto);
}