xia
3 years ago
6 changed files with 470 additions and 0 deletions
-
88system/src/main/java/com/canvas/web/modules/device/domain/Device.java
-
8system/src/main/java/com/canvas/web/modules/device/repository/DeviceRepository.java
-
28system/src/main/java/com/canvas/web/modules/device/rest/DeviceController.java
-
78system/src/main/java/com/canvas/web/modules/utils/Response.java
-
142system/src/main/java/com/canvas/web/modules/utils/ResultUtils.java
-
126system/src/main/java/com/canvas/web/modules/utils/enums/ResponseEnum.java
@ -0,0 +1,88 @@ |
|||
package com.canvas.web.modules.device.domain; |
|||
|
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Getter; |
|||
import lombok.Setter; |
|||
import org.hibernate.annotations.CreationTimestamp; |
|||
import org.hibernate.annotations.GenericGenerator; |
|||
import org.hibernate.annotations.UpdateTimestamp; |
|||
|
|||
import javax.persistence.*; |
|||
import java.io.Serializable; |
|||
import java.sql.Timestamp; |
|||
|
|||
@Getter |
|||
@Setter |
|||
@Entity |
|||
@Table(name = "device") |
|||
public class Device implements Serializable { |
|||
|
|||
@Id |
|||
@Column(name = "id") |
|||
@GeneratedValue(generator = "idGenerator") |
|||
@GenericGenerator(name = "idGenerator", strategy = "uuid") |
|||
private String id ; |
|||
|
|||
@Column(name = "account") |
|||
@ApiModelProperty(value = "设备账号") |
|||
public String account; |
|||
|
|||
@Column(name = "device_name") |
|||
@ApiModelProperty(value = "设备名称") |
|||
public String deviceName; |
|||
|
|||
@Column(name = "device_direction") |
|||
@ApiModelProperty(value = "设备方向 1.竖屏 2.横屏") |
|||
public Integer deviceDirection; |
|||
|
|||
@Column(name = "orga_id") |
|||
@ApiModelProperty(value = "机构id") |
|||
public String orgaId; |
|||
|
|||
@Column(name = "open_setting") |
|||
@ApiModelProperty(value = "开机设置 1.每天 2.每周") |
|||
public Integer openSetting; |
|||
|
|||
@Column(name = "open_weekly") |
|||
@ApiModelProperty(value = "开机每周 如果设置为每天则为空") |
|||
public String openWeekly; |
|||
|
|||
@Column(name = "open_time") |
|||
@ApiModelProperty(value = "开机时间") |
|||
public Timestamp openTime; |
|||
|
|||
@Column(name = "close_setting") |
|||
@ApiModelProperty(value = "关机设置 1.每天 2.每周") |
|||
public Integer closeSetting; |
|||
|
|||
@Column(name = "close_weekly") |
|||
@ApiModelProperty(value = "关机每周 如果设置为每天则为空") |
|||
public String closeWeekly; |
|||
|
|||
@Column(name = "close_time") |
|||
@ApiModelProperty(value = "关机时间") |
|||
public Timestamp closeTime; |
|||
|
|||
@Column(name = "startup_screen") |
|||
@ApiModelProperty(value = "启动画面地址") |
|||
public String startupScreen; |
|||
|
|||
@CreationTimestamp |
|||
@Column(name = "is_createdate", updatable = false) |
|||
@ApiModelProperty(value = "创建时间", hidden = true) |
|||
private Timestamp isCreateTime; |
|||
|
|||
@UpdateTimestamp |
|||
@Column(name = "is_updatedate") |
|||
@ApiModelProperty(value = "更新时间", hidden = true) |
|||
private Timestamp isUpdateTime; |
|||
|
|||
@Column(name = "is_state") |
|||
@ApiModelProperty(value = "停用/禁用", hidden = true) |
|||
public Integer isState; |
|||
|
|||
@Column(name = "is_del") |
|||
@ApiModelProperty(value = "停用/禁用", hidden = true) |
|||
public Boolean isDel; |
|||
|
|||
} |
@ -0,0 +1,8 @@ |
|||
package com.canvas.web.modules.device.repository; |
|||
|
|||
import com.canvas.web.modules.device.domain.Device; |
|||
import org.springframework.data.jpa.repository.JpaRepository; |
|||
|
|||
public interface DeviceRepository extends JpaRepository<Device, String> { |
|||
|
|||
} |
@ -0,0 +1,28 @@ |
|||
package com.canvas.web.modules.device.rest; |
|||
|
|||
import com.canvas.web.modules.device.domain.Device; |
|||
import com.canvas.web.modules.utils.Response; |
|||
import com.canvas.web.modules.utils.ResultUtils; |
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import lombok.RequiredArgsConstructor; |
|||
import org.springframework.data.domain.Pageable; |
|||
import org.springframework.web.bind.annotation.GetMapping; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import java.util.List; |
|||
|
|||
@RestController |
|||
@RequiredArgsConstructor |
|||
@Api(tags = "设备管理") |
|||
@RequestMapping("/api/device") |
|||
public class DeviceController { |
|||
@ApiOperation("设备列表") |
|||
@GetMapping("/list") |
|||
public Response<ResultUtils<List<Device>>> list( |
|||
Pageable page |
|||
){ |
|||
return null; |
|||
} |
|||
} |
@ -0,0 +1,78 @@ |
|||
package com.canvas.web.modules.utils; |
|||
|
|||
import com.canvas.web.modules.utils.enums.ResponseEnum; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
|
|||
@ApiModel(description = "结果返回类") |
|||
public class Response<T> { |
|||
|
|||
@ApiModelProperty(value = "状态码") |
|||
private Integer code; |
|||
|
|||
@ApiModelProperty(value = "返回内容") |
|||
private String msg; |
|||
|
|||
@ApiModelProperty(value = "数据对象") |
|||
private T data; |
|||
|
|||
private long timestamp; |
|||
|
|||
|
|||
private Response(T data){ |
|||
this.code= ResponseEnum.SUCCESS.getCode(); |
|||
this.msg=ResponseEnum.SUCCESS.getMessage(); |
|||
this.timestamp=System.currentTimeMillis(); |
|||
this.data=data; |
|||
} |
|||
|
|||
private Response(ResponseEnum responseEnum){ |
|||
if (null==responseEnum){ |
|||
return; |
|||
} |
|||
this.code= responseEnum.getCode(); |
|||
this.msg= responseEnum.getMessage(); |
|||
} |
|||
|
|||
//成功时调用 |
|||
public static <T> Response<T> success() { |
|||
return success(null); |
|||
} |
|||
//成功时调用 |
|||
public static <T> Response<T> success(T data) { |
|||
return new Response<T>(data); |
|||
} |
|||
|
|||
public static <T> Response error(){ |
|||
return error(ResponseEnum.ERROR); |
|||
} |
|||
|
|||
public static <T> Response error(ResponseEnum responseEnum){ |
|||
return new Response<T>(responseEnum); |
|||
} |
|||
|
|||
public Integer getCode() { |
|||
return code; |
|||
} |
|||
|
|||
public Response<T> setCode(Integer code) { |
|||
this.code = code; |
|||
return this; |
|||
} |
|||
|
|||
public String getMsg() { |
|||
return msg; |
|||
} |
|||
|
|||
public Response<T> setMsg(String msg){ |
|||
this.msg=msg; |
|||
return this; |
|||
} |
|||
|
|||
public T getData() {return data;} |
|||
|
|||
public Response<T> setData(T data){ |
|||
this.data=data; |
|||
return this; |
|||
} |
|||
} |
@ -0,0 +1,142 @@ |
|||
package com.canvas.web.modules.utils; |
|||
|
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.AccessLevel; |
|||
import lombok.Getter; |
|||
import lombok.Setter; |
|||
import org.springframework.data.domain.Page; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Collections; |
|||
import java.util.List; |
|||
|
|||
@Getter |
|||
@Setter |
|||
public class ResultUtils<T> { |
|||
|
|||
@ApiModelProperty(value = "返回数据") |
|||
private List<T> content; |
|||
|
|||
@Getter(AccessLevel.NONE) |
|||
@ApiModelProperty(value = "返回数据") |
|||
private T contentT; |
|||
|
|||
@ApiModelProperty(value = "返回状态") |
|||
private boolean bReturn; |
|||
|
|||
@ApiModelProperty(value = "返回信息") |
|||
private String Msg; |
|||
|
|||
@ApiModelProperty(value = "是否有上一页") |
|||
private boolean hasPrevious; |
|||
|
|||
@ApiModelProperty(value = "是否有下一页") |
|||
private boolean hasNext; |
|||
|
|||
@ApiModelProperty(value = "总数量") |
|||
private long totalElements; |
|||
|
|||
@ApiModelProperty(value = "总页数") |
|||
private int totalPages; |
|||
|
|||
@ApiModelProperty(value = "当前页数") |
|||
private int number; |
|||
|
|||
@ApiModelProperty(value = "每页显示数量") |
|||
private int size; |
|||
|
|||
public ResultUtils() { } |
|||
|
|||
public ResultUtils(List<T> content, boolean hasPrevious, boolean hasNext, long totalElements, int totalPages, int number, int size) { |
|||
this.content = content; |
|||
this.bReturn = true; |
|||
this.Msg = "OK"; |
|||
this.hasPrevious = hasPrevious; |
|||
this.hasNext = hasNext; |
|||
this.totalElements = totalElements; |
|||
this.totalPages = totalPages; |
|||
this.number = number; |
|||
this.size = size; |
|||
} |
|||
|
|||
public ResultUtils(T contentT) { |
|||
List<T> tList = new ArrayList<>(); |
|||
tList.add(contentT); |
|||
this.content = tList; |
|||
this.bReturn = true; |
|||
this.Msg = "OK"; |
|||
this.hasPrevious = false; |
|||
this.hasNext = false; |
|||
this.totalElements = 1; |
|||
this.totalPages = 1; |
|||
this.number = 1; |
|||
this.size = 1; |
|||
} |
|||
|
|||
public ResultUtils(List<T> content){ |
|||
this.content = content; |
|||
this.bReturn = true; |
|||
this.Msg = "OK"; |
|||
this.hasPrevious = false; |
|||
this.hasNext = false; |
|||
this.totalElements = content.size(); |
|||
this.totalPages = 1; |
|||
this.number = 1; |
|||
this.size = content.size(); |
|||
} |
|||
|
|||
public ResultUtils(boolean bReturn, String Msg){ |
|||
this.bReturn = bReturn; |
|||
this.Msg = Msg; |
|||
} |
|||
|
|||
/*** |
|||
* 单条数据返回 |
|||
* @param content 数据 |
|||
* @param <T> 泛型类 |
|||
* @return 分页返回 |
|||
*/ |
|||
public static <T> ResultUtils<T> getResult(T content) { |
|||
return (ResultUtils<T>) new ResultUtils(Collections.singletonList(content)); |
|||
} |
|||
|
|||
/*** |
|||
* 多条数据返回 |
|||
* @param content 数据 |
|||
* @param <T> 泛型类 |
|||
* @return 分页返回 |
|||
*/ |
|||
public static <T> ResultUtils<List<T>> getResult(List<T> content) { |
|||
return (ResultUtils<List<T>>) new ResultUtils(content); |
|||
} |
|||
|
|||
/*** |
|||
* 多条数据分页返回 |
|||
* @param content 数据 |
|||
* @param pages 分页 |
|||
* @param <T> 泛型类 |
|||
* @return 分页返回 |
|||
*/ |
|||
public static <T> ResultUtils<List<T>> getResult(List<T> content, Page pages) { |
|||
return (ResultUtils<List<T>>) new ResultUtils(content, pages.hasPrevious(), pages.hasNext(), pages.getTotalElements(), pages.getTotalPages(), pages.getNumber() + 1, pages.getSize()); |
|||
} |
|||
|
|||
/*** |
|||
* 无返回时(添加、编辑、删除)返回成功 |
|||
* @return 无返回时(添加、编辑、删除)返回成功 |
|||
* @param <T> 泛型类 |
|||
*/ |
|||
public static <T> ResultUtils<T> Succsee(){ |
|||
return (ResultUtils<T>) new ResultUtils(true,"OK"); |
|||
} |
|||
|
|||
/*** |
|||
* 无返回时(添加、编辑、删除)返回失败 |
|||
* @param Msg 返回信息 |
|||
* @param <T> 泛型类 |
|||
* @return 无返回时(添加、编辑、删除)返回失败 |
|||
*/ |
|||
public static <T> ResultUtils<T> Error(String Msg){ |
|||
return (ResultUtils<T>) new ResultUtils(true,Msg); |
|||
} |
|||
} |
@ -0,0 +1,126 @@ |
|||
package com.canvas.web.modules.utils.enums; |
|||
|
|||
import lombok.Getter; |
|||
|
|||
import java.util.HashMap; |
|||
import java.util.Map; |
|||
|
|||
@Getter |
|||
public enum ResponseEnum { |
|||
|
|||
/***************************************************通用日志信息****************************************************/ |
|||
|
|||
/**http code**/ |
|||
/**操作成功**/ |
|||
SUCCESS(200,"操作成功"), |
|||
/**操作失败**/ |
|||
FAIL(000,"操作失败"), |
|||
/**服务端异常**/ |
|||
ERROR(500,"系统内部错误"), |
|||
/**对象创建成功**/ |
|||
CREATED ( 201,"对象创建成功"), |
|||
/**请求已经被接受**/ |
|||
ACCEPTED(202,"请求已经被接受"), |
|||
/**操作已经执行成功,但是没有返回数据**/ |
|||
NO_CONTENT(204,"操作已经执行成功,但是没有返回数据"), |
|||
/**资源已被移除**/ |
|||
MOVED_PERM(301,"资源已被移除"), |
|||
/**重定向*/ |
|||
SEE_OTHER(303,"重定向"), |
|||
/**资源没有被修改**/ |
|||
NOT_MODIFIED(304,"资源没有被修改"), |
|||
/**参数列表错误(缺少,格式不匹配**/ |
|||
BAD_REQUEST(400,"参数列表错误(缺少,格式不匹配)"), |
|||
/**未授权**/ |
|||
UNAUTHORIZED(401,"未授权"), |
|||
/**访问受限,授权过期**/ |
|||
FORBIDDEN(403,"访问受限,授权过期"), |
|||
/**资源,服务未找到**/ |
|||
NOT_FOUND(404,"资源,服务未找到"), |
|||
/**不允许的http方法**/ |
|||
BAD_METHOD(405,"不允许的http方法"), |
|||
/**资源冲突,或者资源被锁**/ |
|||
CONFLICT(409,"资源冲突,或者资源被锁"), |
|||
/**不支持的数据,媒体类型**/ |
|||
UNSUPPORTED_TYPE(415,"不支持的数据,媒体类型"), |
|||
/**接口未实现**/ |
|||
NOT_IMPLEMENTED(501,"接口未实现"), |
|||
|
|||
|
|||
/*********************10000-登录相关***************************/ |
|||
/**登录模块**/ |
|||
LOGIN_SUCCESS(10000,"登录成功"), |
|||
LOGIN_FAIL(10001,"登录失败"), |
|||
LOGOUT_SUCCESS(10002,"退出成功"), |
|||
LOGOUT_FAIL(10003,"退出失败"), |
|||
TOKEN_ERROR(10004,"token错误/失效"), |
|||
|
|||
|
|||
/*********************20000-业务相关***************************/ |
|||
/** |
|||
* 重复提交 |
|||
**/ |
|||
REPEAT_SUBMIT(20000, "不允许重复提交,请稍后再试"), |
|||
ADD_FAIL(20001, "新增失败"), |
|||
ADD_SUCCESS(20003, "新增成功"), |
|||
DELETE_FAIL(20004, "删除失败"), |
|||
DELETE_SUCCESS(20005, "删除成功"), |
|||
UPDATE_FAIL(20006, "修改失败"), |
|||
UPDATE_SUCCESS(20007, "修改成功"), |
|||
QUERY_FAIL(20008, "查询失败"), |
|||
QUERY_SUCCESS(20009, "查询成功"), |
|||
|
|||
/** |
|||
* 角色模块 |
|||
**/ |
|||
ROLE_ADD_ERROR_EXIST_NAME(20010, "新增角色失败,角色名称已存在"), |
|||
ROLE_ADD_ERROR_EXIST_AUTHORITY(20011, "新增角色失败,角色权限已存在"), |
|||
ROLE_UPDATE_ERROR_EXIST_NAME(20012, "修改角色失败,角色名称已存在"), |
|||
ROLE_UPDATE_ERROR_EXIST_AUTHORITY(20013, "修改角色失败,角色权限已存在"), |
|||
ROLE_UPDATE_ERROR(20014, "修改角色失败"), |
|||
|
|||
/** |
|||
* 菜单模块 |
|||
**/ |
|||
MENU_ADD_ERROR_EXIST(20015, "新增菜单失败,菜单名称已存在"), |
|||
MENU_ADD_ERROR_HTTP(20016, "新增菜单失败,地址必须以http(s)://开头"), |
|||
MENU_ADD_ERROR_SELF(20017, "新增菜单失败,上级菜单不能选择自己"), |
|||
MENU_DELETE_ERROR_SUB(20018, "删除菜单失败,存在子菜单,不允许删除"), |
|||
MENU_DELETE_ERROR_ROLE(20019, "删除菜单失败,菜单已分配角色,不允许删除"), |
|||
MENU_UPDATE_ERROR_EXIST(20020, "修改菜单失败,菜单名称已存在"), |
|||
MENU_UPDATE_ERROR_HTTP(20021, "修改菜单失败,地址必须以http(s)://开头"), |
|||
MENU_UPDATE_ERROR_SELF(20022, "修改菜单失败,上级菜单不能选择自己"), |
|||
|
|||
/***其他****/ |
|||
ABNORMAL_PICTURE_UPLOAD(21000, "上传图片异常,请联系管理员"); |
|||
|
|||
|
|||
//成员变量 |
|||
private Integer code; |
|||
private String message; |
|||
|
|||
|
|||
//构造 |
|||
ResponseEnum(Integer code, String message) { |
|||
this.code = code; |
|||
this.message=message; |
|||
} |
|||
|
|||
|
|||
private static final Map<Integer,ResponseEnum> ENUM_MAP=new HashMap<Integer,ResponseEnum>(); |
|||
|
|||
static { |
|||
for (ResponseEnum item : values()){ |
|||
ENUM_MAP.put(item.getCode(),item); |
|||
} |
|||
} |
|||
|
|||
public static ResponseEnum getModelByKey(Integer code){ |
|||
if(code !=null){ |
|||
return ENUM_MAP.get(code); |
|||
} |
|||
return null; |
|||
} |
|||
|
|||
|
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue