diff --git a/ruoyi-ui/src/api/axsystem/base.js b/ruoyi-ui/src/api/axsystem/base.js new file mode 100644 index 000000000..8dc12cb47 --- /dev/null +++ b/ruoyi-ui/src/api/axsystem/base.js @@ -0,0 +1,53 @@ +import request from '@/utils/request' + +// 查询用户基础信息列表 +export function listBase(query) { + return request({ + url: '/axsystem/base/list', + method: 'get', + params: query + }) +} + +// 查询用户基础信息详细 +export function getBase(uid) { + return request({ + url: '/axsystem/base/' + uid, + method: 'get' + }) +} + +// 新增用户基础信息 +export function addBase(data) { + return request({ + url: '/axsystem/base', + method: 'post', + data: data + }) +} + +// 修改用户基础信息 +export function updateBase(data) { + return request({ + url: '/axsystem/base', + method: 'put', + data: data + }) +} + +// 删除用户基础信息 +export function delBase(uid) { + return request({ + url: '/axsystem/base/' + uid, + method: 'delete' + }) +} + +// 导出用户基础信息 +export function exportBase(query) { + return request({ + url: '/axsystem/base/export', + method: 'get', + params: query + }) +} \ No newline at end of file diff --git a/ruoyi-ui/src/views/axsystem/base/index.vue b/ruoyi-ui/src/views/axsystem/base/index.vue new file mode 100644 index 000000000..0c41cb245 --- /dev/null +++ b/ruoyi-ui/src/views/axsystem/base/index.vue @@ -0,0 +1,443 @@ + + + diff --git a/ruoyi-ui/src/views/login.vue b/ruoyi-ui/src/views/login.vue index 05e0d991f..d76e61491 100644 --- a/ruoyi-ui/src/views/login.vue +++ b/ruoyi-ui/src/views/login.vue @@ -65,8 +65,8 @@ export default { codeUrl: "", cookiePassword: "", loginForm: { - username: "admin", - password: "admin123", + username: "", + password: "", rememberMe: false, code: "", uuid: "" diff --git a/ruoyi/src/main/java/com/ruoyi/common/baidu/baiduUtils.java b/ruoyi/src/main/java/com/ruoyi/common/baidu/baiduUtils.java new file mode 100644 index 000000000..729d322f4 --- /dev/null +++ b/ruoyi/src/main/java/com/ruoyi/common/baidu/baiduUtils.java @@ -0,0 +1,11 @@ +package com.ruoyi.common.baidu; + +import com.ruoyi.common.core.lang.UUID; +import com.ruoyi.framework.config.RedisConfig; +import org.springframework.boot.autoconfigure.data.redis.RedisProperties; + +public class baiduUtils { + + + +} diff --git a/ruoyi/src/main/java/com/ruoyi/common/core/lang/UUID.java b/ruoyi/src/main/java/com/ruoyi/common/core/lang/UUID.java index 9e1bbeb32..eaa7e3502 100644 --- a/ruoyi/src/main/java/com/ruoyi/common/core/lang/UUID.java +++ b/ruoyi/src/main/java/com/ruoyi/common/core/lang/UUID.java @@ -84,7 +84,6 @@ public final class UUID implements java.io.Serializable, Comparable { return randomUUID(true); } - /** * 获取类型 4(伪随机生成的)UUID 的静态工厂。 使用加密的强伪随机数生成器生成该 UUID。 * diff --git a/ruoyi/src/main/java/com/ruoyi/framework/security/service/SysLoginService.java b/ruoyi/src/main/java/com/ruoyi/framework/security/service/SysLoginService.java index a5f8a229e..aeaee5f7d 100644 --- a/ruoyi/src/main/java/com/ruoyi/framework/security/service/SysLoginService.java +++ b/ruoyi/src/main/java/com/ruoyi/framework/security/service/SysLoginService.java @@ -47,13 +47,13 @@ public class SysLoginService public String login(String username, String password, String uuid) { String verifyKey = Constants.CAPTCHA_CODE_KEY + uuid; - String captcha = redisCache.getCacheObject(verifyKey); +// String captcha = redisCache.getCacheObject(verifyKey); redisCache.deleteObject(verifyKey); - if (captcha == null) - { - AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire"))); - throw new CaptchaExpireException(); - } +// if (captcha == null) +// { +// AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.expire"))); +// throw new CaptchaExpireException(); +// } // if (!code.equalsIgnoreCase(captcha)) // { // AsyncManager.me().execute(AsyncFactory.recordLogininfor(username, Constants.LOGIN_FAIL, MessageUtils.message("user.jcaptcha.error"))); diff --git a/ruoyi/src/main/java/com/ruoyi/project/axsystem/controller/UserBaseController.java b/ruoyi/src/main/java/com/ruoyi/project/axsystem/controller/UserBaseController.java new file mode 100644 index 000000000..a32f08f23 --- /dev/null +++ b/ruoyi/src/main/java/com/ruoyi/project/axsystem/controller/UserBaseController.java @@ -0,0 +1,111 @@ +package com.ruoyi.project.axsystem.controller; + +import java.util.List; + +import com.ruoyi.common.core.lang.UUID; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.ruoyi.framework.aspectj.lang.annotation.Log; +import com.ruoyi.framework.aspectj.lang.enums.BusinessType; +import com.ruoyi.project.axsystem.domain.UserBase; +import com.ruoyi.project.axsystem.service.IUserBaseService; +import com.ruoyi.framework.web.controller.BaseController; +import com.ruoyi.framework.web.domain.AjaxResult; +import com.ruoyi.common.utils.poi.ExcelUtil; +import com.ruoyi.framework.web.page.TableDataInfo; + +/** + * 用户基础信息Controller + * + * @author joy + * @date 2020-05-18 + */ +@RestController +@RequestMapping("/axsystem/base") +public class UserBaseController extends BaseController +{ + @Autowired + private IUserBaseService userBaseService; + + /** + * 查询用户基础信息列表 + */ + @PreAuthorize("@ss.hasPermi('axsystem:base:list')") + @GetMapping("/list") + public TableDataInfo list(UserBase userBase) + { + startPage(); + List list = userBaseService.selectUserBaseList(userBase); + return getDataTable(list); + } + + /** + * 导出用户基础信息列表 + */ + @PreAuthorize("@ss.hasPermi('axsystem:base:export')") + @Log(title = "用户基础信息", businessType = BusinessType.EXPORT) + @GetMapping("/export") + public AjaxResult export(UserBase userBase) + { + List list = userBaseService.selectUserBaseList(userBase); + ExcelUtil util = new ExcelUtil(UserBase.class); + return util.exportExcel(list, "base"); + } + + /** + * 获取用户基础信息详细信息 + */ + @PreAuthorize("@ss.hasPermi('axsystem:base:query')") + @GetMapping(value = "/{uid}") + public AjaxResult getInfo(@PathVariable("uid") Long uid) + { + return AjaxResult.success(userBaseService.selectUserBaseById(uid)); + } + + /** + * 新增用户基础信息 + */ + @PreAuthorize("@ss.hasPermi('axsystem:base:add')") + @Log(title = "用户基础信息", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody UserBase userBase) + { + return toAjax(userBaseService.insertUserBase(userBase)); + } + + /** + * 修改用户基础信息 + */ + @PreAuthorize("@ss.hasPermi('axsystem:base:edit')") + @Log(title = "用户基础信息", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody UserBase userBase) + { + return toAjax(userBaseService.updateUserBase(userBase)); + } + + /** + * 删除用户基础信息 + */ + @PreAuthorize("@ss.hasPermi('axsystem:base:remove')") + @Log(title = "用户基础信息", businessType = BusinessType.DELETE) + @DeleteMapping("/{uids}") + public AjaxResult remove(@PathVariable Long[] uids) + { + return toAjax(userBaseService.deleteUserBaseByIds(uids)); + } + + public static void main(String[] args) { + String s = UUID.randomUUID().toString(); + System.out.println(s); + } + +} diff --git a/ruoyi/src/main/java/com/ruoyi/project/axsystem/domain/UserBase.java b/ruoyi/src/main/java/com/ruoyi/project/axsystem/domain/UserBase.java new file mode 100644 index 000000000..e676749de --- /dev/null +++ b/ruoyi/src/main/java/com/ruoyi/project/axsystem/domain/UserBase.java @@ -0,0 +1,250 @@ +package com.ruoyi.project.axsystem.domain; + +import com.ruoyi.common.core.lang.UUID; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.ruoyi.framework.aspectj.lang.annotation.Excel; +import com.ruoyi.framework.web.domain.BaseEntity; + +/** + * 用户基础信息对象 user_base + * + * @author joy + * @date 2020-05-18 + */ +public class UserBase extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 用户ID */ + private String uid; + + /** 2正常用户 3禁言用户 4虚拟用户 5运营 */ + @Excel(name = "2正常用户 3禁言用户 4虚拟用户 5运营") + private Integer userRole; + + /** 注册:1手机号 2邮箱 3用户名 4qq 5微信 6腾讯微博 7新浪微博 */ + @Excel(name = "注册:1手机号 2邮箱 3用户名 4qq 5微信 6腾讯微博 7新浪微博") + private Integer registerSource; + + /** 账号 */ + @Excel(name = "账号") + private String userName; + + /** 昵称 */ + @Excel(name = "昵称") + private String nickName; + + /** 性别 0男1女 */ + @Excel(name = "性别 0男1女") + private Integer gender; + + /** 生日 */ + @Excel(name = "生日") + private Long birthday; + + /** 个人签名 */ + @Excel(name = "个人签名") + private String signature; + + /** 手机号码 */ + @Excel(name = "手机号码") + private String mobile; + + /** 手机号码绑定时间 */ + @Excel(name = "手机号码绑定时间") + private Long mobileBindTime; + + /** 邮箱 */ + @Excel(name = "邮箱") + private String email; + + /** 邮箱绑定时间 */ + @Excel(name = "邮箱绑定时间") + private Long emailBindTime; + + /** 头像 */ + @Excel(name = "头像") + private String face; + + /** 头像 200x200x80 */ + @Excel(name = "头像 200x200x80") + private String face200; + + /** 原图头像 */ + @Excel(name = "原图头像") + private String srcface; + + /** 用户设备 */ + @Excel(name = "用户设备") + private String pushToken; + + public void setUid(String uid) + { + this.uid = uid; + } + + public String getUid() + { + return uid; + } + public void setUserRole(Integer userRole) + { + this.userRole = userRole; + } + + public Integer getUserRole() + { + return userRole; + } + public void setRegisterSource(Integer registerSource) + { + this.registerSource = registerSource; + } + + public Integer getRegisterSource() + { + return registerSource; + } + public void setUserName(String userName) + { + this.userName = userName; + } + + public String getUserName() + { + return userName; + } + public void setNickName(String nickName) + { + this.nickName = nickName; + } + + public String getNickName() + { + return nickName; + } + public void setGender(Integer gender) + { + this.gender = gender; + } + + public Integer getGender() + { + return gender; + } + public void setBirthday(Long birthday) + { + this.birthday = birthday; + } + + public Long getBirthday() + { + return birthday; + } + public void setSignature(String signature) + { + this.signature = signature; + } + + public String getSignature() + { + return signature; + } + public void setMobile(String mobile) + { + this.mobile = mobile; + } + + public String getMobile() + { + return mobile; + } + public void setMobileBindTime(Long mobileBindTime) + { + this.mobileBindTime = mobileBindTime; + } + + public Long getMobileBindTime() + { + return mobileBindTime; + } + public void setEmail(String email) + { + this.email = email; + } + + public String getEmail() + { + return email; + } + public void setEmailBindTime(Long emailBindTime) + { + this.emailBindTime = emailBindTime; + } + + public Long getEmailBindTime() + { + return emailBindTime; + } + public void setFace(String face) + { + this.face = face; + } + + public String getFace() + { + return face; + } + public void setFace200(String face200) + { + this.face200 = face200; + } + + public String getFace200() + { + return face200; + } + public void setSrcface(String srcface) + { + this.srcface = srcface; + } + + public String getSrcface() + { + return srcface; + } + public void setPushToken(String pushToken) + { + this.pushToken = pushToken; + } + + public String getPushToken() + { + return pushToken; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("uid", getUid()) + .append("userRole", getUserRole()) + .append("registerSource", getRegisterSource()) + .append("userName", getUserName()) + .append("nickName", getNickName()) + .append("gender", getGender()) + .append("birthday", getBirthday()) + .append("signature", getSignature()) + .append("mobile", getMobile()) + .append("mobileBindTime", getMobileBindTime()) + .append("email", getEmail()) + .append("emailBindTime", getEmailBindTime()) + .append("face", getFace()) + .append("face200", getFace200()) + .append("srcface", getSrcface()) + .append("createTime", getCreateTime()) + .append("updateTime", getUpdateTime()) + .append("pushToken", getPushToken()) + .toString(); + } +} diff --git a/ruoyi/src/main/java/com/ruoyi/project/axsystem/mapper/UserBaseMapper.java b/ruoyi/src/main/java/com/ruoyi/project/axsystem/mapper/UserBaseMapper.java new file mode 100644 index 000000000..62b66ff7a --- /dev/null +++ b/ruoyi/src/main/java/com/ruoyi/project/axsystem/mapper/UserBaseMapper.java @@ -0,0 +1,61 @@ +package com.ruoyi.project.axsystem.mapper; + +import java.util.List; +import com.ruoyi.project.axsystem.domain.UserBase; + +/** + * 用户基础信息Mapper接口 + * + * @author joy + * @date 2020-05-18 + */ +public interface UserBaseMapper +{ + /** + * 查询用户基础信息 + * + * @param uid 用户基础信息ID + * @return 用户基础信息 + */ + public UserBase selectUserBaseById(Long uid); + + /** + * 查询用户基础信息列表 + * + * @param userBase 用户基础信息 + * @return 用户基础信息集合 + */ + public List selectUserBaseList(UserBase userBase); + + /** + * 新增用户基础信息 + * + * @param userBase 用户基础信息 + * @return 结果 + */ + public int insertUserBase(UserBase userBase); + + /** + * 修改用户基础信息 + * + * @param userBase 用户基础信息 + * @return 结果 + */ + public int updateUserBase(UserBase userBase); + + /** + * 删除用户基础信息 + * + * @param uid 用户基础信息ID + * @return 结果 + */ + public int deleteUserBaseById(Long uid); + + /** + * 批量删除用户基础信息 + * + * @param uids 需要删除的数据ID + * @return 结果 + */ + public int deleteUserBaseByIds(Long[] uids); +} diff --git a/ruoyi/src/main/java/com/ruoyi/project/axsystem/service/IUserBaseService.java b/ruoyi/src/main/java/com/ruoyi/project/axsystem/service/IUserBaseService.java new file mode 100644 index 000000000..f29c00b9e --- /dev/null +++ b/ruoyi/src/main/java/com/ruoyi/project/axsystem/service/IUserBaseService.java @@ -0,0 +1,61 @@ +package com.ruoyi.project.axsystem.service; + +import java.util.List; +import com.ruoyi.project.axsystem.domain.UserBase; + +/** + * 用户基础信息Service接口 + * + * @author joy + * @date 2020-05-18 + */ +public interface IUserBaseService +{ + /** + * 查询用户基础信息 + * + * @param uid 用户基础信息ID + * @return 用户基础信息 + */ + public UserBase selectUserBaseById(Long uid); + + /** + * 查询用户基础信息列表 + * + * @param userBase 用户基础信息 + * @return 用户基础信息集合 + */ + public List selectUserBaseList(UserBase userBase); + + /** + * 新增用户基础信息 + * + * @param userBase 用户基础信息 + * @return 结果 + */ + public int insertUserBase(UserBase userBase); + + /** + * 修改用户基础信息 + * + * @param userBase 用户基础信息 + * @return 结果 + */ + public int updateUserBase(UserBase userBase); + + /** + * 批量删除用户基础信息 + * + * @param uids 需要删除的用户基础信息ID + * @return 结果 + */ + public int deleteUserBaseByIds(Long[] uids); + + /** + * 删除用户基础信息信息 + * + * @param uid 用户基础信息ID + * @return 结果 + */ + public int deleteUserBaseById(Long uid); +} diff --git a/ruoyi/src/main/java/com/ruoyi/project/axsystem/service/impl/UserBaseServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/axsystem/service/impl/UserBaseServiceImpl.java new file mode 100644 index 000000000..3e2a6562f --- /dev/null +++ b/ruoyi/src/main/java/com/ruoyi/project/axsystem/service/impl/UserBaseServiceImpl.java @@ -0,0 +1,100 @@ +package com.ruoyi.project.axsystem.service.impl; + +import java.util.List; + +import com.ruoyi.common.core.lang.UUID; +import com.ruoyi.common.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.ruoyi.project.axsystem.mapper.UserBaseMapper; +import com.ruoyi.project.axsystem.domain.UserBase; +import com.ruoyi.project.axsystem.service.IUserBaseService; + +/** + * 用户基础信息Service业务层处理 + * + * @author joy + * @date 2020-05-18 + */ +@Service +public class UserBaseServiceImpl implements IUserBaseService +{ + @Autowired + private UserBaseMapper userBaseMapper; + + /** + * 查询用户基础信息 + * + * @param uid 用户基础信息ID + * @return 用户基础信息 + */ + @Override + public UserBase selectUserBaseById(Long uid) + { + return userBaseMapper.selectUserBaseById(uid); + } + + /** + * 查询用户基础信息列表 + * + * @param userBase 用户基础信息 + * @return 用户基础信息 + */ + @Override + public List selectUserBaseList(UserBase userBase) + { + return userBaseMapper.selectUserBaseList(userBase); + } + + /** + * 新增用户基础信息 + * + * @param userBase 用户基础信息 + * @return 结果 + */ + @Override + public int insertUserBase(UserBase userBase) + { + userBase.setCreateTime(DateUtils.getNowDate()); + String uuid = UUID.randomUUID().toString(); + userBase.setUid(uuid); + return userBaseMapper.insertUserBase(userBase); + } + + /** + * 修改用户基础信息 + * + * @param userBase 用户基础信息 + * @return 结果 + */ + @Override + public int updateUserBase(UserBase userBase) + { + userBase.setUpdateTime(DateUtils.getNowDate()); + return userBaseMapper.updateUserBase(userBase); + } + + /** + * 批量删除用户基础信息 + * + * @param uids 需要删除的用户基础信息ID + * @return 结果 + */ + @Override + public int deleteUserBaseByIds(Long[] uids) + { + return userBaseMapper.deleteUserBaseByIds(uids); + } + + /** + * 删除用户基础信息信息 + * + * @param uid 用户基础信息ID + * @return 结果 + */ + @Override + public int deleteUserBaseById(Long uid) + { + return userBaseMapper.deleteUserBaseById(uid); + } +} diff --git a/ruoyi/src/main/resources/application.yml b/ruoyi/src/main/resources/application.yml index 8de79e792..92ed77415 100644 --- a/ruoyi/src/main/resources/application.yml +++ b/ruoyi/src/main/resources/application.yml @@ -9,7 +9,7 @@ ruoyi: # 实例演示开关 demoEnabled: true # 文件路径 示例( Windows配置D:/ruoyi/uploadPath,Linux配置 /home/ruoyi/uploadPath) - profile: D:/ruoyi/uploadPath + profile: E:/AoLetter/uploadPath # 获取ip地址开关 addressEnabled: false diff --git a/ruoyi/src/main/resources/mybatis/axsystem/UserBaseMapper.xml b/ruoyi/src/main/resources/mybatis/axsystem/UserBaseMapper.xml new file mode 100644 index 000000000..8ca548d9a --- /dev/null +++ b/ruoyi/src/main/resources/mybatis/axsystem/UserBaseMapper.xml @@ -0,0 +1,131 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + select uid, user_role, register_source, user_name, nick_name, gender, birthday, signature, mobile, mobile_bind_time, email, email_bind_time, face, face200, srcface, create_time, update_time, push_token from user_base + + + + + + + + insert into user_base + + uid, + user_role, + register_source, + user_name, + nick_name, + gender, + birthday, + signature, + mobile, + mobile_bind_time, + email, + email_bind_time, + face, + face200, + srcface, + create_time, + update_time, + push_token, + + + #{uid}, + #{userRole}, + #{registerSource}, + #{userName}, + #{nickName}, + #{gender}, + #{birthday}, + #{signature}, + #{mobile}, + now(), + #{email}, + now(), + #{face}, + #{face200}, + #{srcface}, + now(), + now() + #{pushToken}, + + + + + update user_base + + user_role = #{userRole}, + register_source = #{registerSource}, + user_name = #{userName}, + nick_name = #{nickName}, + gender = #{gender}, + birthday = #{birthday}, + signature = #{signature}, + mobile = #{mobile}, + mobile_bind_time = #{mobileBindTime}, + email = #{email}, + email_bind_time = #{emailBindTime}, + face = #{face}, + face200 = #{face200}, + srcface = #{srcface}, + create_time = #{createTime}, + update_time = now(), + push_token = #{pushToken}, + + where uid = #{uid} + + + + delete from user_base where uid = #{uid} + + + + delete from user_base where uid in + + #{uid} + + + + \ No newline at end of file