若依 2.0

This commit is contained in:
RuoYi
2020-06-10 11:31:13 +08:00
parent 57723b9ca1
commit 3603582c88
61 changed files with 1306 additions and 305 deletions

View File

@@ -0,0 +1,94 @@
package com.ruoyi.system.controller;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.core.web.page.TableDataInfo;
import com.ruoyi.common.log.annotation.Log;
import com.ruoyi.common.log.enums.BusinessType;
import com.ruoyi.system.domain.SysClientDetails;
import com.ruoyi.system.service.ISysClientDetailsService;
/**
* 终端配置 信息操作处理
*
* @author ruoyi
*/
@RestController
@RequestMapping("/client")
public class SysClientDetailsController extends BaseController
{
@Autowired
private ISysClientDetailsService sysClientDetailsService;
/**
* 查询终端配置列表
*/
@PreAuthorize("@ss.hasPermi('system:client:list')")
@GetMapping("/list")
public TableDataInfo list(SysClientDetails sysClientDetails)
{
startPage();
List<SysClientDetails> list = sysClientDetailsService.selectSysClientDetailsList(sysClientDetails);
return getDataTable(list);
}
/**
* 获取终端配置详细信息
*/
@PreAuthorize("@ss.hasPermi('system:client:query')")
@GetMapping(value = "/{clientId}")
public AjaxResult getInfo(@PathVariable("clientId") String clientId)
{
return AjaxResult.success(sysClientDetailsService.selectSysClientDetailsById(clientId));
}
/**
* 新增终端配置
*/
@PreAuthorize("@ss.hasPermi('system:client:add')")
@Log(title = "终端配置", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody SysClientDetails sysClientDetails)
{
String clientId = sysClientDetails.getClientId();
if (StringUtils.isNotNull(sysClientDetailsService.selectSysClientDetailsById(clientId)))
{
return AjaxResult.error("新增终端'" + clientId + "'失败,编号已存在");
}
return toAjax(sysClientDetailsService.insertSysClientDetails(sysClientDetails));
}
/**
* 修改终端配置
*/
@PreAuthorize("@ss.hasPermi('system:client:edit')")
@Log(title = "终端配置", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody SysClientDetails sysClientDetails)
{
return toAjax(sysClientDetailsService.updateSysClientDetails(sysClientDetails));
}
/**
* 删除终端配置
*/
@PreAuthorize("@ss.hasPermi('system:client:remove')")
@Log(title = "终端配置", businessType = BusinessType.DELETE)
@DeleteMapping("/{clientIds}")
public AjaxResult remove(@PathVariable String[] clientIds)
{
return toAjax(sysClientDetailsService.deleteSysClientDetailsByIds(clientIds));
}
}

View File

@@ -10,7 +10,11 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.ruoyi.common.core.constant.Constants;
import com.ruoyi.common.core.utils.ServletUtils;
import com.ruoyi.common.core.utils.ip.IpUtils;
import com.ruoyi.common.core.utils.poi.ExcelUtil;
import com.ruoyi.common.core.web.controller.BaseController;
import com.ruoyi.common.core.web.domain.AjaxResult;
@@ -40,7 +44,7 @@ public class SysLogininforController extends BaseController
List<SysLogininfor> list = logininforService.selectLogininforList(logininfor);
return getDataTable(list);
}
@Log(title = "登陆日志", businessType = BusinessType.EXPORT)
@PreAuthorize("@ss.hasPermi('system:logininfor:export')")
@PostMapping("/export")
@@ -67,4 +71,27 @@ public class SysLogininforController extends BaseController
logininforService.cleanLogininfor();
return AjaxResult.success();
}
@PostMapping
public AjaxResult add(@RequestParam("username") String username, @RequestParam("status") String status,
@RequestParam("message") String message)
{
String ip = IpUtils.getIpAddr(ServletUtils.getRequest());
// 封装对象
SysLogininfor logininfor = new SysLogininfor();
logininfor.setUserName(username);
logininfor.setIpaddr(ip);
logininfor.setMsg(message);
// 日志状态
if (Constants.LOGIN_SUCCESS.equals(status) || Constants.LOGOUT.equals(status))
{
logininfor.setStatus("0");
}
else if (Constants.LOGIN_FAIL.equals(status))
{
logininfor.setStatus("1");
}
return toAjax(logininforService.insertLogininfor(logininfor));
}
}

View File

@@ -0,0 +1,197 @@
package com.ruoyi.system.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.web.domain.BaseEntity;
/**
* 终端配置表 sys_oauth_client_details
*
* @author ruoyi
*/
public class SysClientDetails extends BaseEntity
{
private static final long serialVersionUID = 1L;
/**
* 终端编号
*/
private String clientId;
/**
* 资源ID标识
*/
private String resourceIds;
/**
* 终端安全码
*/
private String clientSecret;
/**
* 终端授权范围
*/
private String scope;
/**
* 终端授权类型
*/
private String authorizedGrantTypes;
/**
* 服务器回调地址
*/
private String webServerRedirectUri;
/**
* 访问资源所需权限
*/
private String authorities;
/**
* 设定终端的access_token的有效时间值
*/
private Integer accessTokenValidity;
/**
* 设定终端的refresh_token的有效时间值
*/
private Integer refreshTokenValidity;
/**
* 附加信息
*/
private String additionalInformation;
/**
* 是否登录时跳过授权
*/
private String autoapprove;
public String getClientId()
{
return clientId;
}
public void setClientId(String clientId)
{
this.clientId = clientId;
}
public String getResourceIds()
{
return resourceIds;
}
public void setResourceIds(String resourceIds)
{
this.resourceIds = resourceIds;
}
public String getClientSecret()
{
return clientSecret;
}
public void setClientSecret(String clientSecret)
{
this.clientSecret = clientSecret;
}
public String getScope()
{
return scope;
}
public void setScope(String scope)
{
this.scope = scope;
}
public String getAuthorizedGrantTypes()
{
return authorizedGrantTypes;
}
public void setAuthorizedGrantTypes(String authorizedGrantTypes)
{
this.authorizedGrantTypes = authorizedGrantTypes;
}
public String getWebServerRedirectUri()
{
return webServerRedirectUri;
}
public void setWebServerRedirectUri(String webServerRedirectUri)
{
this.webServerRedirectUri = webServerRedirectUri;
}
public String getAuthorities()
{
return authorities;
}
public void setAuthorities(String authorities)
{
this.authorities = authorities;
}
public Integer getAccessTokenValidity()
{
return accessTokenValidity;
}
public void setAccessTokenValidity(Integer accessTokenValidity)
{
this.accessTokenValidity = accessTokenValidity;
}
public Integer getRefreshTokenValidity()
{
return refreshTokenValidity;
}
public void setRefreshTokenValidity(Integer refreshTokenValidity)
{
this.refreshTokenValidity = refreshTokenValidity;
}
public String getAdditionalInformation()
{
return additionalInformation;
}
public void setAdditionalInformation(String additionalInformation)
{
this.additionalInformation = additionalInformation;
}
public String getAutoapprove()
{
return autoapprove;
}
public void setAutoapprove(String autoapprove)
{
this.autoapprove = autoapprove;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("clientId", getClientId())
.append("resourceIds", getResourceIds())
.append("clientSecret", getClientSecret())
.append("scope", getScope())
.append("authorizedGrantTypes", getAuthorizedGrantTypes())
.append("webServerRedirectUri", getWebServerRedirectUri())
.append("authorities", getAuthorities())
.append("accessTokenValidity", getAccessTokenValidity())
.append("refreshTokenValidity", getRefreshTokenValidity())
.append("additionalInformation", getAdditionalInformation())
.append("autoapprove", getAutoapprove())
.toString();
}
}

View File

@@ -23,34 +23,22 @@ public class SysLogininfor extends BaseEntity
@Excel(name = "用户账号")
private String userName;
/** 登录状态 0成功 1失败 */
@Excel(name = "登录状态", readConverterExp = "0=成功,1=失败")
/** 状态 0成功 1失败 */
@Excel(name = "状态", readConverterExp = "0=成功,1=失败")
private String status;
/** 登录IP地址 */
@Excel(name = "登录地址")
/** 地址 */
@Excel(name = "地址")
private String ipaddr;
/** 登录地点 */
@Excel(name = "登录地点")
private String loginLocation;
/** 浏览器类型 */
@Excel(name = "浏览器")
private String browser;
/** 操作系统 */
@Excel(name = "操作系统")
private String os;
/** 提示消息 */
@Excel(name = "提示消息")
/** 描述 */
@Excel(name = "描述")
private String msg;
/** 访问时间 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date loginTime;
private Date accessTime;
public Long getInfoId()
{
@@ -92,36 +80,6 @@ public class SysLogininfor extends BaseEntity
this.ipaddr = ipaddr;
}
public String getLoginLocation()
{
return loginLocation;
}
public void setLoginLocation(String loginLocation)
{
this.loginLocation = loginLocation;
}
public String getBrowser()
{
return browser;
}
public void setBrowser(String browser)
{
this.browser = browser;
}
public String getOs()
{
return os;
}
public void setOs(String os)
{
this.os = os;
}
public String getMsg()
{
return msg;
@@ -132,13 +90,13 @@ public class SysLogininfor extends BaseEntity
this.msg = msg;
}
public Date getLoginTime()
public Date getAccessTime()
{
return loginTime;
return accessTime;
}
public void setLoginTime(Date loginTime)
public void setAccessTime(Date accessTime)
{
this.loginTime = loginTime;
this.accessTime = accessTime;
}
}

View File

@@ -0,0 +1,60 @@
package com.ruoyi.system.mapper;
import java.util.List;
import com.ruoyi.system.domain.SysClientDetails;
/**
* 终端配置Mapper接口
*
* @author ruoyi
*/
public interface SysClientDetailsMapper
{
/**
* 查询终端配置
*
* @param clientId 终端配置ID
* @return 终端配置
*/
public SysClientDetails selectSysClientDetailsById(String clientId);
/**
* 查询终端配置列表
*
* @param sysClientDetails 终端配置
* @return 终端配置集合
*/
public List<SysClientDetails> selectSysClientDetailsList(SysClientDetails sysClientDetails);
/**
* 新增终端配置
*
* @param sysClientDetails 终端配置
* @return 结果
*/
public int insertSysClientDetails(SysClientDetails sysClientDetails);
/**
* 修改终端配置
*
* @param sysClientDetails 终端配置
* @return 结果
*/
public int updateSysClientDetails(SysClientDetails sysClientDetails);
/**
* 删除终端配置
*
* @param clientId 终端配置ID
* @return 结果
*/
public int deleteSysClientDetailsById(String clientId);
/**
* 批量删除终端配置
*
* @param clientIds 需要删除的数据ID
* @return 结果
*/
public int deleteSysClientDetailsByIds(String[] clientIds);
}

View File

@@ -15,7 +15,7 @@ public interface SysLogininforMapper
*
* @param logininfor 访问日志对象
*/
public void insertLogininfor(SysLogininfor logininfor);
public int insertLogininfor(SysLogininfor logininfor);
/**
* 查询系统登录日志集合

View File

@@ -0,0 +1,60 @@
package com.ruoyi.system.service;
import java.util.List;
import com.ruoyi.system.domain.SysClientDetails;
/**
* 终端配置Service接口
*
* @author ruoyi
*/
public interface ISysClientDetailsService
{
/**
* 查询终端配置
*
* @param clientId 终端配置ID
* @return 终端配置
*/
public SysClientDetails selectSysClientDetailsById(String clientId);
/**
* 查询终端配置列表
*
* @param sysClientDetails 终端配置
* @return 终端配置集合
*/
public List<SysClientDetails> selectSysClientDetailsList(SysClientDetails sysClientDetails);
/**
* 新增终端配置
*
* @param sysClientDetails 终端配置
* @return 结果
*/
public int insertSysClientDetails(SysClientDetails sysClientDetails);
/**
* 修改终端配置
*
* @param sysClientDetails 终端配置
* @return 结果
*/
public int updateSysClientDetails(SysClientDetails sysClientDetails);
/**
* 批量删除终端配置
*
* @param clientIds 需要删除的终端配置ID
* @return 结果
*/
public int deleteSysClientDetailsByIds(String[] clientIds);
/**
* 删除终端配置信息
*
* @param clientId 终端配置ID
* @return 结果
*/
public int deleteSysClientDetailsById(String clientId);
}

View File

@@ -15,7 +15,7 @@ public interface ISysLogininforService
*
* @param logininfor 访问日志对象
*/
public void insertLogininfor(SysLogininfor logininfor);
public int insertLogininfor(SysLogininfor logininfor);
/**
* 查询系统登录日志集合

View File

@@ -0,0 +1,92 @@
package com.ruoyi.system.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.SysClientDetailsMapper;
import com.ruoyi.system.domain.SysClientDetails;
import com.ruoyi.system.service.ISysClientDetailsService;
/**
* 终端配置Service业务层处理
*
* @author ruoyi
*/
@Service
public class SysClientDetailsServiceImpl implements ISysClientDetailsService
{
@Autowired
private SysClientDetailsMapper sysClientDetailsMapper;
/**
* 查询终端配置
*
* @param clientId 终端配置ID
* @return 终端配置
*/
@Override
public SysClientDetails selectSysClientDetailsById(String clientId)
{
return sysClientDetailsMapper.selectSysClientDetailsById(clientId);
}
/**
* 查询终端配置列表
*
* @param sysClientDetails 终端配置
* @return 终端配置
*/
@Override
public List<SysClientDetails> selectSysClientDetailsList(SysClientDetails sysClientDetails)
{
return sysClientDetailsMapper.selectSysClientDetailsList(sysClientDetails);
}
/**
* 新增终端配置
*
* @param sysClientDetails 终端配置
* @return 结果
*/
@Override
public int insertSysClientDetails(SysClientDetails sysClientDetails)
{
return sysClientDetailsMapper.insertSysClientDetails(sysClientDetails);
}
/**
* 修改终端配置
*
* @param sysClientDetails 终端配置
* @return 结果
*/
@Override
public int updateSysClientDetails(SysClientDetails sysClientDetails)
{
return sysClientDetailsMapper.updateSysClientDetails(sysClientDetails);
}
/**
* 批量删除终端配置
*
* @param clientIds 需要删除的终端配置ID
* @return 结果
*/
@Override
public int deleteSysClientDetailsByIds(String[] clientIds)
{
return sysClientDetailsMapper.deleteSysClientDetailsByIds(clientIds);
}
/**
* 删除终端配置信息
*
* @param clientId 终端配置ID
* @return 结果
*/
@Override
public int deleteSysClientDetailsById(String clientId)
{
return sysClientDetailsMapper.deleteSysClientDetailsById(clientId);
}
}

View File

@@ -25,9 +25,9 @@ public class SysLogininforServiceImpl implements ISysLogininforService
* @param logininfor 访问日志对象
*/
@Override
public void insertLogininfor(SysLogininfor logininfor)
public int insertLogininfor(SysLogininfor logininfor)
{
logininforMapper.insertLogininfor(logininfor);
return logininforMapper.insertLogininfor(logininfor);
}
/**