Browse Source

版本修改 4-26 todo

master
fkf 2 years ago
parent
commit
07a81c7c14
  1. 1
      demo-common/demo-common-core/src/main/java/com/yxt/demo/common/core/query/Query.java
  2. 2
      demo-common/demo-common-core/src/main/java/com/yxt/demo/common/core/vo/Vo.java
  3. 60
      demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/ValidationUtil.java
  4. 189
      demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/allutils/Encodes.java
  5. 395
      demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/allutils/StringUtils.java
  6. 197
      demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/convert/StringUtil.java
  7. 345
      demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/http/OkHttpUtils.java
  8. 85
      demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/jwt/JwtUtils.java
  9. 4
      demo-gateway/src/main/java/com/yxt/demo/gateway/AuthFilter.java
  10. 21
      demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_forum/SysForumFeign.java
  11. 19
      demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_forum_comment/SysForumCommentFeign.java
  12. 19
      demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_info/SysInfoFeign.java
  13. 19
      demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_notice/SysNoticeFeign.java
  14. 28
      demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_role/SysRoleFeign.java
  15. 59
      demo-system/demo-system-biz/pom.xml
  16. 11
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/SystemApplication.java
  17. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommon.java
  18. 3
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonDto.java
  19. 8
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonFeign.java
  20. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonFeignFallback.java
  21. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonQuery.java
  22. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonTypeQuery.java
  23. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonVo.java
  24. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictType.java
  25. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeDto.java
  26. 9
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeFeign.java
  27. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeFeignFallback.java
  28. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeQuery.java
  29. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeVo.java
  30. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum/SysForum.java
  31. 14
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum/SysForumFeign.java
  32. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum/SysForumFeignFallback.java
  33. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum_comment/SysForumComment.java
  34. 12
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum_comment/SysForumCommentFeign.java
  35. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum_comment/SysForumCommentFeignFallback.java
  36. 7
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_info/SysInfo.java
  37. 40
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_info/SysInfoFeign.java
  38. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_info/SysInfoFeignFallback.java
  39. 18
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_info/SysInfoPageCount.java
  40. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_info_ship/SysInfoShip.java
  41. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenu.java
  42. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuDto.java
  43. 10
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuFeign.java
  44. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuFeignFallback.java
  45. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuQuery.java
  46. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuVo.java
  47. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu_role/SysMenuRole.java
  48. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_notice/SysNotice.java
  49. 12
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_notice/SysNoticeFeign.java
  50. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_notice/SysNoticeFeignFallback.java
  51. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_plan/SysPlan.java
  52. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_plan/SysPlanFeign.java
  53. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_plan_schedule/SysPlanSchedule.java
  54. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_plan_schedule/SysPlanScheduleFeign.java
  55. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_resources/SysResources.java
  56. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_resources/SysResourcesFeign.java
  57. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_role/SysRole.java
  58. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_role/SysRoleDto.java
  59. 38
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_role/SysRoleFeign.java
  60. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_role/SysRoleFeignFallback.java
  61. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_score/SysScore.java
  62. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_score/SysScoreDto.java
  63. 13
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_score/SysScoreFeign.java
  64. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_score/SysScoreFeignFallback.java
  65. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_student_score/SysStudentScore.java
  66. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_student_score/SysStudentScoreFeign.java
  67. 3
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user/SysUser.java
  68. 10
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user/SysUserDto.java
  69. 16
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user/SysUserFeign.java
  70. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user/SysUserFeignFallback.java
  71. 0
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user/SysUserLoginQuery.java
  72. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user_role/SysUserRole.java
  73. 29
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user_role/SysUserRoleFeign.java
  74. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/dict_common/DictCommonMapper.java
  75. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/dict_common/DictCommonRest.java
  76. 12
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/dict_common/DictCommonService.java
  77. 3
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/dict_type/DictTypeRest.java
  78. 11
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/dict_type/DictTypeService.java
  79. 3
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_forum/SysForumMapper.java
  80. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_forum/SysForumMapper.xml
  81. 12
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_info/SysInfoMapper.java
  82. 23
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_info/SysInfoMapper.xml
  83. 30
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_info/SysInfoRest.java
  84. 73
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_info/SysInfoService.java
  85. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_menu/SysMenuRest.java
  86. 9
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_menu/SysMenuService.java
  87. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_plan/SysPlanMapper.xml
  88. 9
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_role/SysRoleMapper.java
  89. 8
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_role/SysRoleMapper.xml
  90. 61
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_role/SysRoleRest.java
  91. 49
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_role/SysRoleService.java
  92. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_score/SysScoreMapper.java
  93. 2
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_score/SysScoreRest.java
  94. 4
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_score/SysScoreService.java
  95. 7
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user/SysUserMapper.java
  96. 8
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user/SysUserMapper.xml
  97. 8
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user/SysUserRest.java
  98. 72
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user/SysUserService.java
  99. 11
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user_role/SysUserRoleMapper.java
  100. 3
      demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user_role/SysUserRoleMapper.xml

1
demo-common/demo-common-core/src/main/java/com/yxt/demo/common/core/query/Query.java

@ -9,4 +9,5 @@ import com.yxt.demo.common.core.vo.Vo;
*/
public interface Query extends Vo {
}

2
demo-common/demo-common-core/src/main/java/com/yxt/demo/common/core/vo/Vo.java

@ -1,8 +1,8 @@
package com.yxt.demo.common.core.vo;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.demo.common.core.domain.Entity;
import javax.swing.text.html.parser.Entity;
import java.io.Serializable;
import java.util.Map;

60
demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/ValidationUtil.java

@ -1,60 +0,0 @@
package com.yxt.demo.common.utils;
import org.apache.commons.lang3.StringUtils;
import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import java.util.List;
import java.util.Set;
/**
* @Author dimengzhe
* @Date 2022/6/21 0:03
* @Description 校验参数工具
*/
public class ValidationUtil {
public final static Validator validator = Validation.buildDefaultValidatorFactory().getValidator();
/**
* 验证单个实体
*
* @param t 参数
* @param <T> 类型
* @return 验证结果
*/
public static <T> String validateOne(T t) {
Set<ConstraintViolation<T>> validateResult = validator.validate(t);
if (validateResult != null && validateResult.size() != 0) {
StringBuilder sb = new StringBuilder();
for (ConstraintViolation<T> valid : validateResult) {
sb.append(valid.getPropertyPath().toString()).append(StringUtils.SPACE).append(valid.getMessage())
.append(",");
}
return sb.toString();
}
return StringUtils.EMPTY;
}
/**
* 验证多个实体
*
* @param ts 参数
* @param <T> 类型
* @return 验证结果
*/
public static <T> String validateMutil(List<T> ts) {
StringBuilder sb = new StringBuilder();
for (int index = 0; index < ts.size(); ++index) {
String validateOneResult = validateOne(ts.get(index));
if (!StringUtils.isBlank(validateOneResult)) {
sb.append("index[" + index + "]:").append(validateOneResult).append(";");
}
}
return sb.toString();
}
}

189
demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/allutils/Encodes.java

@ -1,189 +0,0 @@
package com.yxt.demo.common.utils.allutils;
import org.apache.commons.codec.DecoderException;
import org.apache.commons.codec.binary.Hex;
import org.apache.commons.lang3.StringEscapeUtils;
import org.apache.tomcat.util.codec.binary.Base64;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
* 封装各种格式的编码解码工具类. 1.Commons-Codec的 hex/base64 编码 2.自制的base62 编码
* 3.Commons-Lang的xml/html escape 4.JDK提供的URLEncoder
*
* @author dimengzhe
* @date 2020/9/11 13:38
* @description 编码解码工具类
*/
public class Encodes {
private static final String DEFAULT_URL_ENCODING = "UTF-8";
private static final char[] BASE62 = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".toCharArray();
private static final String SALT = "jlzx@yxt?";
/**
* Hex编码.
*/
public static String encodeHex(byte[] input) {
return new String(Hex.encodeHex(input));
}
/**
* Hex解码.
*/
public static byte[] decodeHex(String input) {
try {
return Hex.decodeHex(input.toCharArray());
} catch (DecoderException e) {
throw Exceptions.unchecked(e);
}
}
/**
* Base64编码.
*/
public static String encodeBase64(byte[] input) {
return new String(Base64.encodeBase64(input));
}
/**
* Base64编码.
*/
public static String encodeBase64(String input) {
try {
return new String(Base64.encodeBase64(input.getBytes(DEFAULT_URL_ENCODING)));
} catch (UnsupportedEncodingException e) {
return "";
}
}
/**
* Base64解码.
*/
public static byte[] decodeBase64(String input) {
return Base64.decodeBase64(input.getBytes());
}
/**
* Base64解码.
*/
public static String decodeBase64String(String input) {
try {
return new String(Base64.decodeBase64(input.getBytes()), DEFAULT_URL_ENCODING);
} catch (UnsupportedEncodingException e) {
return "";
}
}
/**
* Base62编码
*/
public static String encodeBase62(byte[] input) {
char[] chars = new char[input.length];
for (int i = 0; i < input.length; i++) {
chars[i] = BASE62[((input[i] & 0xFF) % BASE62.length)];
}
return new String(chars);
}
/**
* Html 转码.
*/
public static String escapeHtml(String html) {
return StringEscapeUtils.escapeHtml4(html);
}
/**
* Html 解码.
*/
public static String unescapeHtml(String htmlEscaped) {
return StringEscapeUtils.unescapeHtml4(htmlEscaped);
}
/**
* Xml 转码.
*/
public static String escapeXml(String xml) {
return StringEscapeUtils.escapeXml10(xml);
}
/**
* Xml 解码.
*/
public static String unescapeXml(String xmlEscaped) {
return StringEscapeUtils.unescapeXml(xmlEscaped);
}
/**
* URL 编码, Encode默认为UTF-8.
*/
public static String urlEncode(String part) {
try {
return URLEncoder.encode(part, DEFAULT_URL_ENCODING);
} catch (UnsupportedEncodingException e) {
throw Exceptions.unchecked(e);
}
}
/**
* URL 解码, Encode默认为UTF-8.
*/
public static String urlDecode(String part) {
try {
return URLDecoder.decode(part, DEFAULT_URL_ENCODING);
} catch (UnsupportedEncodingException e) {
throw Exceptions.unchecked(e);
}
}
public static String md5(String str) {
return digest("MD5", str + SALT);
}
public static String sha1(CharSequence cs) {
return digest("SHA1", cs);
}
public static String digest(String algorithm, CharSequence cs) {
return digest(algorithm, StringUtils.getBytesUTF8(null == cs ? "" : cs), null, 1);
}
public static String digest(String algorithm, byte[] bytes, byte[] salt, int iterations) {
try {
MessageDigest md = MessageDigest.getInstance(algorithm);
if (salt != null) {
md.update(salt);
}
byte[] hashBytes = md.digest(bytes);
for (int i = 1; i < iterations; i++) {
md.reset();
hashBytes = md.digest(hashBytes);
}
return fixedHexString(hashBytes);
} catch (NoSuchAlgorithmException e) {
throw Exceptions.unchecked(e);
}
}
public static String fixedHexString(byte[] hashBytes) {
StringBuffer sb = new StringBuffer();
for (int i = 0; i < hashBytes.length; i++) {
sb.append(Integer.toString((hashBytes[i] & 0xFF) + 256, 16).substring(1));
}
return sb.toString();
}
public static String md5(String str, boolean isShort) {
if (isShort) {
return md5(str).substring(8, 24);
}
return md5(str);
}
}

395
demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/allutils/StringUtils.java

@ -1,395 +0,0 @@
package com.yxt.demo.common.utils.allutils;
import org.apache.commons.lang3.StringEscapeUtils;
import javax.servlet.http.HttpServletRequest;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* @author dimengzhe
* @date 2020/9/18 9:35
* @description
*/
public class StringUtils extends org.apache.commons.lang3.StringUtils {
private static final char SEPARATOR = '_';
private static final String CHARSET_NAME = "UTF-8";
public static boolean isNull(Object obj) {
return obj == null;
}
public static boolean isNotNull(Object obj) {
return !isNull(obj);
}
/**
* 转换为字节数组
*
* @param str 字符串
* @return
*/
public static byte[] getBytes(String str) {
if (str != null) {
try {
return str.getBytes(CHARSET_NAME);
} catch (UnsupportedEncodingException e) {
return null;
}
} else {
return null;
}
}
/**
* 转换为字节数组
*
* @param bytes
* @return
*/
public static String toString(byte[] bytes) {
try {
return new String(bytes, CHARSET_NAME);
} catch (UnsupportedEncodingException e) {
return EMPTY;
}
}
/**
* 是否包含字符串
*
* @param str 验证字符串
* @param strs 字符串组
* @return 包含返回true
*/
public static boolean inString(String str, String... strs) {
if (str != null) {
for (String s : strs) {
if (str.equals(trim(s))) {
return true;
}
}
}
return false;
}
/**
* 替换掉HTML标签方法
*/
public static String replaceHtml(String html) {
if (isBlank(html)) {
return "";
}
String regEx = "<.+?>";
Pattern p = Pattern.compile(regEx);
Matcher m = p.matcher(html);
String s = m.replaceAll("");
return s;
}
/**
* 替换为手机识别的HTML去掉样式及属性保留回车
*
* @param html
* @return
*/
public static String replaceMobileHtml(String html) {
if (html == null) {
return "";
}
return html.replaceAll("<([a-z]+?)\\s+?.*?>", "<$1>");
}
/**
* 替换为手机识别的HTML去掉样式及属性保留回车
*
* @param txt
* @return
*/
public static String toHtml(String txt) {
if (txt == null) {
return "";
}
return replace(replace(Encodes.escapeHtml(txt), "\n", "<br/>"), "\t", "&nbsp; &nbsp; ");
}
/**
* 缩略字符串不区分中英文字符
*
* @param str 目标字符串
* @param length 截取长度
* @return
*/
public static String abbr(String str, int length) {
if (str == null) {
return "";
}
try {
StringBuilder sb = new StringBuilder();
int currentLength = 0;
for (char c : replaceHtml(StringEscapeUtils.unescapeHtml4(str)).toCharArray()) {
currentLength += String.valueOf(c).getBytes("GBK").length;
if (currentLength <= length - 3) {
sb.append(c);
} else {
sb.append("...");
break;
}
}
return sb.toString();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return "";
}
public static String abbr2(String param, int length) {
if (param == null) {
return "";
}
StringBuffer result = new StringBuffer();
int n = 0;
char temp;
boolean isCode = false; // 是不是HTML代码
boolean isHTML = false; // 是不是HTML特殊字符,如&nbsp;
for (int i = 0; i < param.length(); i++) {
temp = param.charAt(i);
if (temp == '<') {
isCode = true;
} else if (temp == '&') {
isHTML = true;
} else if (temp == '>' && isCode) {
n = n - 1;
isCode = false;
} else if (temp == ';' && isHTML) {
isHTML = false;
}
try {
if (!isCode && !isHTML) {
n += String.valueOf(temp).getBytes("GBK").length;
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
if (n <= length - 3) {
result.append(temp);
} else {
result.append("...");
break;
}
}
// 取出截取字符串中的HTML标记
String temp_result = result.toString().replaceAll("(>)[^<>]*(<?)", "$1$2");
// 去掉不需要结素标记的HTML标记
temp_result = temp_result.replaceAll(
"</?(AREA|BASE|BASEFONT|BODY|BR|COL|COLGROUP|DD|DT|FRAME|HEAD|HR|HTML|IMG|INPUT|ISINDEX|LI|LINK|META|OPTION|P|PARAM|TBODY|TD|TFOOT|TH|THEAD|TR|area|base|basefont|body|br|col|colgroup|dd|dt|frame|head|hr|html|img|input|isindex|li|link|meta|option|p|param|tbody|td|tfoot|th|thead|tr)[^<>]*/?>",
"");
// 去掉成对的HTML标记
temp_result = temp_result.replaceAll("<([a-zA-Z]+)[^<>]*>(.*?)</\\1>", "$2");
// 用正则表达式取出标记
Pattern p = Pattern.compile("<([a-zA-Z]+)[^<>]*>");
Matcher m = p.matcher(temp_result);
List<String> endHTML = new ArrayList<String>();
while (m.find()) {
endHTML.add(m.group(1));
}
// 补全不成对的HTML标记
for (int i = endHTML.size() - 1; i >= 0; i--) {
result.append("</");
result.append(endHTML.get(i));
result.append(">");
}
return result.toString();
}
/**
* 转换为Double类型
*/
public static Double toDouble(Object val) {
if (val == null) {
return 0D;
}
try {
return Double.valueOf(trim(val.toString()));
} catch (Exception e) {
return 0D;
}
}
/**
* 转换为Float类型
*/
public static Float toFloat(Object val) {
return toDouble(val).floatValue();
}
/**
* 转换为Long类型
*/
public static Long toLong(Object val) {
return toDouble(val).longValue();
}
/**
* 转换为Integer类型
*/
public static Integer toInteger(Object val) {
return toLong(val).intValue();
}
/**
* 转换为BigDecimal类型
*/
public static BigDecimal toBigDecimal(String val) {
if (StringUtils.isBlank(val)) {
return null;
}
BigDecimal bd = new BigDecimal(val);
return bd;
}
/**
* 获得用户远程地址
*/
public static String getRemoteAddr(HttpServletRequest request) {
String remoteAddr = request.getHeader("X-Real-IP");
if (isNotBlank(remoteAddr)) {
remoteAddr = request.getHeader("X-Forwarded-For");
} else if (isNotBlank(remoteAddr)) {
remoteAddr = request.getHeader("Proxy-Client-IP");
} else if (isNotBlank(remoteAddr)) {
remoteAddr = request.getHeader("WL-Proxy-Client-IP");
}
return remoteAddr != null ? remoteAddr : request.getRemoteAddr();
}
/**
* 驼峰命名法工具
*
* @return toCamelCase(" hello_world ") == "helloWorld"
* toCapitalizeCamelCase("hello_world") == "HelloWorld"
* toUnderScoreCase("helloWorld") = "hello_world"
*/
public static String toCamelCase(String s) {
if (s == null) {
return null;
}
s = s.toLowerCase();
StringBuilder sb = new StringBuilder(s.length());
boolean upperCase = false;
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
if (c == SEPARATOR) {
upperCase = true;
} else if (upperCase) {
sb.append(Character.toUpperCase(c));
upperCase = false;
} else {
sb.append(c);
}
}
return sb.toString();
}
/**
* 驼峰命名法工具
*
* @return toCamelCase(" hello_world ") == "helloWorld"
* toCapitalizeCamelCase("hello_world") == "HelloWorld"
* toUnderScoreCase("helloWorld") = "hello_world"
*/
public static String toCapitalizeCamelCase(String s) {
if (s == null) {
return null;
}
s = toCamelCase(s);
return s.substring(0, 1).toUpperCase() + s.substring(1);
}
/**
* 驼峰命名法工具
*
* @return toCamelCase(" hello_world ") == "helloWorld"
* toCapitalizeCamelCase("hello_world") == "HelloWorld"
* toUnderScoreCase("helloWorld") = "hello_world"
*/
public static String toUnderScoreCase(String s) {
if (s == null) {
return null;
}
StringBuilder sb = new StringBuilder();
boolean upperCase = false;
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
boolean nextUpperCase = true;
if (i < (s.length() - 1)) {
nextUpperCase = Character.isUpperCase(s.charAt(i + 1));
}
if ((i > 0) && Character.isUpperCase(c)) {
if (!upperCase || !nextUpperCase) {
sb.append(SEPARATOR);
}
upperCase = true;
} else {
upperCase = false;
}
sb.append(Character.toLowerCase(c));
}
return sb.toString();
}
/**
* 如果不为空则设置值
*
* @param target
* @param source
*/
public static void setValueIfNotBlank(String target, String source) {
if (isNotBlank(source)) {
target = source;
}
}
/**
* 转换为JS获取对象值生成三目运算返回结果
*
* @param objectString 对象串 例如row.user.id
* 返回!row?'':!row.user?'':!row.user.id?'':row.user.id
*/
public static String jsGetVal(String objectString) {
StringBuilder result = new StringBuilder();
StringBuilder val = new StringBuilder();
String[] vals = split(objectString, ".");
for (int i = 0; i < vals.length; i++) {
val.append("." + vals[i]);
result.append("!" + (val.substring(1)) + "?'':");
}
result.append(val.substring(1));
return result.toString();
}
public static byte[] getBytesUTF8(CharSequence cs) {
try {
return cs.toString().getBytes("UTF-8");
} catch (UnsupportedEncodingException e) {
throw Exceptions.unchecked(e);
}
}
}

197
demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/convert/StringUtil.java

@ -1,197 +0,0 @@
package com.yxt.demo.common.utils.convert;
import org.apache.commons.lang3.StringUtils;
import java.util.Collection;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/7/23 23:38
* @Description
*/
public class StringUtil extends StringUtils {
/**
* 空字符串
*/
private static final String NULLSTR = "";
/**
* 下划线
*/
private static final char SEPARATOR = '_';
/**
* 星号
*/
private static final String START = "*";
/**
* * 判断一个Collection是否为空 包含ListSetQueue
*
* @param coll 要判断的Collection
* @return true为空 false非空
*/
public static boolean isEmpty(Collection<?> coll) {
return isNull(coll) || coll.isEmpty();
}
/**
* * 判断一个对象是否为空
*
* @param object Object
* @return true为空 false非空
*/
public static boolean isNull(Object object) {
return object == null;
}
/**
* 查找指定字符串是否匹配指定字符串列表中的任意一个字符串
*
* @param str 指定字符串
* @param strs 需要检查的字符串数组
* @return 是否匹配
*/
public static boolean matchesTwo(String str, List<String> strs) {
if (isEmpty(str) || isEmpty(strs)) {
return false;
}
for (String testStr : strs) {
if (matchesTwo(str, testStr)) {
return true;
}
}
return false;
}
public static boolean matches(String str, List<String> strs) {
if (isEmpty(str) || isEmpty(strs)) {
return false;
}
for (String testStr : strs) {
if (matches(str, testStr)) {
return true;
}
}
return false;
}
public static boolean matches(String str, String pattern) {
if (isEmpty(pattern) || isEmpty(str)) {
return false;
}
pattern = pattern.replaceAll("\\s*", ""); // 替换空格
int beginOffset = 0; // pattern截取开始位置
int formerStarOffset = -1; // 前星号的偏移位置
int latterStarOffset = -1; // 后星号的偏移位置
String remainingURI = str;
String prefixPattern = "";
String suffixPattern = "";
boolean result = false;
do {
formerStarOffset = indexOf(pattern, START, beginOffset);
prefixPattern = substring(pattern, beginOffset, formerStarOffset > -1 ? formerStarOffset : pattern.length());
// 匹配前缀Pattern
result = remainingURI.equals(prefixPattern);
// 已经没有星号,直接返回
if (formerStarOffset == -1) {
return result;
}
// 匹配失败,直接返回
if (!result) {
return false;
}
if (!isEmpty(prefixPattern)) {
remainingURI = substringAfter(str, prefixPattern);
}
// 匹配后缀Pattern
latterStarOffset = indexOf(pattern, START, formerStarOffset + 1);
suffixPattern = substring(pattern, formerStarOffset + 1, latterStarOffset > -1 ? latterStarOffset : pattern.length());
result = remainingURI.equals(suffixPattern);
// 匹配失败,直接返回
if (!result) {
return false;
}
if (!isEmpty(suffixPattern)) {
remainingURI = substringAfter(str, suffixPattern);
}
// 移动指针
beginOffset = latterStarOffset + 1;
}
while (!isEmpty(suffixPattern) && !isEmpty(remainingURI));
return true;
}
/**
* 查找指定字符串是否匹配
*
* @param str 指定字符串
* @param pattern 需要检查的字符串
* @return 是否匹配
*/
public static boolean matchesTwo(String str, String pattern) {
if (isEmpty(pattern) || isEmpty(str)) {
return false;
}
pattern = pattern.replaceAll("\\s*", ""); // 替换空格
int beginOffset = 0; // pattern截取开始位置
int formerStarOffset = -1; // 前星号的偏移位置
int latterStarOffset = -1; // 后星号的偏移位置
String remainingURI = str;
String prefixPattern = "";
String suffixPattern = "";
boolean result = false;
do {
formerStarOffset = indexOf(pattern, START, beginOffset);
prefixPattern = substring(pattern, beginOffset, formerStarOffset > -1 ? formerStarOffset : pattern.length());
// 匹配前缀Pattern
result = remainingURI.contains(prefixPattern);
// 已经没有星号,直接返回
if (formerStarOffset == -1) {
return result;
}
// 匹配失败,直接返回
if (!result) {
return false;
}
if (!isEmpty(prefixPattern)) {
remainingURI = substringAfter(str, prefixPattern);
}
// 匹配后缀Pattern
latterStarOffset = indexOf(pattern, START, formerStarOffset + 1);
suffixPattern = substring(pattern, formerStarOffset + 1, latterStarOffset > -1 ? latterStarOffset : pattern.length());
result = remainingURI.contains(suffixPattern);
// 匹配失败,直接返回
if (!result) {
return false;
}
if (!isEmpty(suffixPattern)) {
remainingURI = substringAfter(str, suffixPattern);
}
// 移动指针
beginOffset = latterStarOffset + 1;
}
while (!isEmpty(suffixPattern) && !isEmpty(remainingURI));
return true;
}
}

345
demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/http/OkHttpUtils.java

@ -1,345 +0,0 @@
package com.yxt.demo.common.utils.http;
import com.alibaba.fastjson.JSON;
import okhttp3.*;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
import java.io.IOException;
import java.net.URLEncoder;
import java.security.SecureRandom;
import java.security.cert.X509Certificate;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.concurrent.Semaphore;
import java.util.concurrent.TimeUnit;
/**
* @Author dimengzhe
* @Date 2021/11/5 20:57
* @Description 封装OkHttp3工具类
*/
public class OkHttpUtils {
private static volatile OkHttpClient okHttpClient = null;
private static volatile Semaphore semaphore = null;
private Map<String, String> headerMap;
private Map<String, String> paramMap;
private String url;
private Request.Builder request;
/**
* 初始化okHttpClient并且允许https访问
*/
private OkHttpUtils() {
if (okHttpClient == null) {
synchronized (OkHttpUtils.class) {
if (okHttpClient == null) {
TrustManager[] trustManagers = buildTrustManagers();
okHttpClient = new OkHttpClient.Builder()
.connectTimeout(15, TimeUnit.SECONDS)
.writeTimeout(20, TimeUnit.SECONDS)
.readTimeout(20, TimeUnit.SECONDS)
.sslSocketFactory(createSSLSocketFactory(trustManagers), (X509TrustManager) trustManagers[0])
.hostnameVerifier((hostName, session) -> true)
.retryOnConnectionFailure(true)
.build();
addHeader("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36");
}
}
}
}
/**
* 用于异步请求时控制访问线程数返回结果
*
* @return
*/
private static Semaphore getSemaphoreInstance() {
//只能1个线程同时访问
synchronized (OkHttpUtils.class) {
if (semaphore == null) {
semaphore = new Semaphore(0);
}
}
return semaphore;
}
/**
* 创建OkHttpUtils
*
* @return
*/
public static OkHttpUtils builder() {
return new OkHttpUtils();
}
/**
* 添加url
*
* @param url
* @return
*/
public OkHttpUtils url(String url) {
this.url = url;
return this;
}
/**
* 添加参数
*
* @param key 参数名
* @param value 参数值
* @return
*/
public OkHttpUtils addParam(String key, String value) {
if (paramMap == null) {
paramMap = new LinkedHashMap<>(16);
}
paramMap.put(key, value);
return this;
}
/**
* 添加请求头
*
* @param key 参数名
* @param value 参数值
* @return
*/
public OkHttpUtils addHeader(String key, String value) {
if (headerMap == null) {
headerMap = new LinkedHashMap<>(16);
}
headerMap.put(key, value);
return this;
}
/**
* 初始化get方法
*
* @return
*/
public OkHttpUtils get() {
request = new Request.Builder().get();
StringBuilder urlBuilder = new StringBuilder(url);
if (paramMap != null) {
urlBuilder.append("?");
try {
for (Map.Entry<String, String> entry : paramMap.entrySet()) {
urlBuilder.append(URLEncoder.encode(entry.getKey(), "utf-8")).
append("=").
append(URLEncoder.encode(entry.getValue(), "utf-8")).
append("&");
}
} catch (Exception e) {
e.printStackTrace();
}
urlBuilder.deleteCharAt(urlBuilder.length() - 1);
}
request.url(urlBuilder.toString());
return this;
}
/**
* 初始化post方法
*
* @param isJsonPost true等于json的方式提交数据类似postman里post方法的raw
* false等于普通的表单提交
* @return
*/
public OkHttpUtils post(boolean isJsonPost) {
RequestBody requestBody;
if (isJsonPost) {
String json = "";
if (paramMap != null) {
json = JSON.toJSONString(paramMap);
}
requestBody = RequestBody.create(MediaType.parse("application/json; charset=utf-8"), json);
} else {
FormBody.Builder formBody = new FormBody.Builder();
if (paramMap != null) {
paramMap.forEach(formBody::add);
}
requestBody = formBody.build();
}
request = new Request.Builder().post(requestBody).url(url);
return this;
}
/**
* 同步请求
*
* @return
*/
public String sync() {
setHeader(request);
try {
Response response = okHttpClient.newCall(request.build()).execute();
assert response.body() != null;
return response.body().string();
} catch (IOException e) {
e.printStackTrace();
return "请求失败:" + e.getMessage();
}
}
/**
* 异步请求有返回值
*/
public String async() {
StringBuilder buffer = new StringBuilder("");
setHeader(request);
okHttpClient.newCall(request.build()).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
buffer.append("请求出错:").append(e.getMessage());
}
@Override
public void onResponse(Call call, Response response) throws IOException {
assert response.body() != null;
buffer.append(response.body().string());
getSemaphoreInstance().release();
}
});
try {
getSemaphoreInstance().acquire();
} catch (InterruptedException e) {
e.printStackTrace();
}
return buffer.toString();
}
/**
* 异步请求带有接口回调
*
* @param callBack
*/
public void async(ICallBack callBack) {
setHeader(request);
okHttpClient.newCall(request.build()).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
callBack.onFailure(call, e.getMessage());
}
@Override
public void onResponse(Call call, Response response) throws IOException {
assert response.body() != null;
callBack.onSuccessful(call, response.body().string());
}
});
}
/**
* 为request添加请求头
*
* @param request
*/
private void setHeader(Request.Builder request) {
if (headerMap != null) {
try {
for (Map.Entry<String, String> entry : headerMap.entrySet()) {
request.addHeader(entry.getKey(), entry.getValue());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
/**
* 生成安全套接字工厂用于https请求的证书跳过
*
* @return
*/
private static SSLSocketFactory createSSLSocketFactory(TrustManager[] trustAllCerts) {
SSLSocketFactory ssfFactory = null;
try {
SSLContext sc = SSLContext.getInstance("SSL");
sc.init(null, trustAllCerts, new SecureRandom());
ssfFactory = sc.getSocketFactory();
} catch (Exception e) {
e.printStackTrace();
}
return ssfFactory;
}
private static TrustManager[] buildTrustManagers() {
return new TrustManager[]{
new X509TrustManager() {
@Override
public void checkClientTrusted(X509Certificate[] chain, String authType) {
}
@Override
public void checkServerTrusted(X509Certificate[] chain, String authType) {
}
@Override
public X509Certificate[] getAcceptedIssuers() {
return new X509Certificate[]{};
}
}
};
}
/**
* 自定义一个接口回调
*/
public interface ICallBack {
void onSuccessful(Call call, String data);
void onFailure(Call call, String errorMsg);
}
/*****************************使用教程************************************************************/
public static void main(String[] args) {
// get请求,方法顺序按照这种方式,切记选择post/get一定要放在倒数第二,同步或者异步倒数第一,才会正确执行
OkHttpUtils.builder().url("请求地址,http/https都可以")
// 有参数的话添加参数,可多个
.addParam("参数名", "参数值")
.addParam("参数名", "参数值")
// 也可以添加多个
.addHeader("Content-Type", "application/json; charset=utf-8")
.get()
// 可选择是同步请求还是异步请求
//.async();
.sync();
// post请求,分为两种,一种是普通表单提交,一种是json提交
OkHttpUtils.builder().url("请求地址,http/https都可以")
// 有参数的话添加参数,可多个
.addParam("参数名", "参数值")
.addParam("参数名", "参数值")
// 也可以添加多个
.addHeader("Content-Type", "application/json; charset=utf-8")
// 如果是true的话,会类似于postman中post提交方式的raw,用json的方式提交,不是表单
// 如果是false的话传统的表单提交
.post(true)
.sync();
// 选择异步有两个方法,一个是带回调接口,一个是直接返回结果
OkHttpUtils.builder().url("")
.post(false)
.async();
OkHttpUtils.builder().url("").post(false).async(new ICallBack() {
@Override
public void onSuccessful(Call call, String data) {
// 请求成功后的处理
}
@Override
public void onFailure(Call call, String errorMsg) {
// 请求失败后的处理
}
});
}
}

85
demo-common/demo-common-utils/src/main/java/com/yxt/demo/common/utils/jwt/JwtUtils.java

@ -1,85 +0,0 @@
package com.yxt.demo.common.utils.jwt;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* @Author dimengzhe
* @Date 2021/11/6 22:55
* @Description
*/
public class JwtUtils {
/**
* 签名密钥高度保密
*/
private static final String SECRET = "qYYjXt7s1C*nEC%9RCwQGFA$YwPr$Jrj";
/**
* 签名算法
*/
private static final SignatureAlgorithm SIGNATURE_ALGORITHM = SignatureAlgorithm.HS512;
/**
* token前缀
*/
private static final String TOKEN_PREFIX = "Bearer ";
/**
* 有效期1天
*/
private static final Long TIME = 24 * 3600 * 1000L;
/**
* 生成JWT token
*
* @param map 传入数据
* @return
*/
public static String sign(Map<String, Object> map) {
Date now = new Date(System.currentTimeMillis());
String jwt = Jwts.builder()
// 设置自定义数据
.setClaims(map)
// 设置签发时间
.setIssuedAt(now)
// 设置过期时间
.setExpiration(new Date(now.getTime() + TIME))
.signWith(SIGNATURE_ALGORITHM, SECRET)
.compact();
return TOKEN_PREFIX + jwt;
}
/**
* 验证JWT token并返回数据当验证失败时抛出异常
*
* @param token token
* @return
*/
public static Map unSign(String token) {
try {
return Jwts.parser()
.setSigningKey(SECRET)
.parseClaimsJws(token.replace(TOKEN_PREFIX, ""))
.getBody();
} catch (Exception e) {
throw new IllegalStateException("Token验证失败:" + e.getMessage());
}
}
public static void main(String[] args) {
/* Map<String, Object> map = new HashMap<>();
map.put("userName", "admin");
map.put("userId", "001");
String token = JwtUtils.sign(map, 3600_000);
System.out.println(JwtUtils.unSign(token));*/
Map<String, Object> map = new HashMap<>();
map.put("userSid", "123456788");
map.put("userName", "你好");
// sign(map);
// System.out.println(sign(map));
Map<String,Object> map1 = unSign("Bearer eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyU2lkIjoiMTIzNDU2Nzg4IiwidXNlck5hbWUiOiLkvaDlpb0iLCJleHAiOjE2MzYyOTk0NTgsImlhdCI6MTYzNjIxMzA1OH0.iuyZznSCm0QYneqfck_zc3fpg57YsAdG8k2aLrDY_4NZJwJdVxE7supqLtfEvTC5O0EhG590ShhRsVoU-rbSrA");
System.out.println(map1);
}
}

4
demo-gateway/src/main/java/com/yxt/demo/gateway/AuthFilter.java

@ -1,10 +1,10 @@
package com.yxt.demo.gateway;
import com.alibaba.fastjson.JSON;
import com.yxt.demo.common.core.constant.StatusEnum;
import com.yxt.demo.system.utils.constant.StatusEnum;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.redis.service.RedisService;
import com.yxt.demo.common.utils.convert.StringUtil;
import com.yxt.demo.system.utils.convert.StringUtil;
import com.yxt.demo.gateway.config.CacheConstants;
import com.yxt.demo.gateway.config.IgnoreWhiteProperties;
import lombok.extern.slf4j.Slf4j;

21
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_forum/SysForumFeign.java

@ -1,21 +0,0 @@
package com.yxt.demo.system.api.sys_forum;
import com.yxt.demo.system.api.dict_type.DictTypeFeignFallback;
import io.swagger.annotations.Api;
import org.springframework.cloud.openfeign.FeignClient;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:21
* @Description
*/
@Api(tags = "论坛")
@FeignClient(
contextId = "demo-system-SysForum",
name = "demo-system",
path = "v1/sysforum",
fallback = SysForumFeignFallback.class)
public interface SysForumFeign {
}

19
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_forum_comment/SysForumCommentFeign.java

@ -1,19 +0,0 @@
package com.yxt.demo.system.api.sys_forum_comment;
import com.yxt.demo.system.api.sys_forum.SysForumFeignFallback;
import io.swagger.annotations.Api;
import org.springframework.cloud.openfeign.FeignClient;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:22
* @Description
*/
@Api(tags = "论坛评论")
@FeignClient(
contextId = "demo-system-SysForumComment",
name = "demo-system",
path = "v1/SysForumComment",
fallback = SysForumCommentFeignFallback.class)
public interface SysForumCommentFeign {
}

19
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_info/SysInfoFeign.java

@ -1,19 +0,0 @@
package com.yxt.demo.system.api.sys_info;
import com.yxt.demo.system.api.sys_user.SysUserFeignFallback;
import io.swagger.annotations.Api;
import org.springframework.cloud.openfeign.FeignClient;
/**
* @Author dimengzhe
* @Date 2023/4/24 11:50
* @Description
*/
@Api(tags = "基础信息")
@FeignClient(
contextId = "demo-system-SysInfo",
name = "demo-system",
path = "v1/sysinfo",
fallback = SysInfoFeignFallback.class)
public interface SysInfoFeign {
}

19
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_notice/SysNoticeFeign.java

@ -1,19 +0,0 @@
package com.yxt.demo.system.api.sys_notice;
import com.yxt.demo.system.api.dict_type.DictTypeFeignFallback;
import io.swagger.annotations.Api;
import org.springframework.cloud.openfeign.FeignClient;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:23
* @Description
*/
@Api(tags = "公告")
@FeignClient(
contextId = "demo-system-SysNotice",
name = "demo-system",
path = "v1/SysNotice",
fallback = SysNoticeFeignFallback.class)
public interface SysNoticeFeign {
}

28
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_role/SysRoleFeign.java

@ -1,28 +0,0 @@
package com.yxt.demo.system.api.sys_role;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.system.api.sys_user.SysUserDto;
import com.yxt.demo.system.api.sys_user.SysUserFeignFallback;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:27
* @Description
*/
@Api(tags = "角色表")
@FeignClient(
contextId = "demo-system-SysRole",
name = "demo-system",
path = "v1/sysrole",
fallback = SysRoleFeignFallback.class)
public interface SysRoleFeign {
@ApiOperation(value = "添加角色")
@PostMapping("/addRole")
ResultBean addRole(@RequestBody SysRole sysRole);
}

59
demo-system/demo-system-biz/pom.xml

@ -4,9 +4,10 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>com.yxt.demo</groupId>
<artifactId>demo-system</artifactId>
<version>0.0.1</version>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.5</version>
<relativePath/>
</parent>
<modelVersion>4.0.0</modelVersion>
@ -15,41 +16,57 @@
<dependencies>
<dependency>
<artifactId>demo-system-api</artifactId>
<groupId>com.yxt.demo</groupId>
<version>0.0.1</version>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
<version>1.6.2</version>
</dependency>
<dependency>
<groupId>com.yxt.demo</groupId>
<artifactId>demo-common-config</artifactId>
<version>0.0.1</version>
<groupId>jakarta.validation</groupId>
<artifactId>jakarta.validation-api</artifactId>
<version>2.0.2</version>
</dependency>
<dependency>
<groupId>com.yxt.demo</groupId>
<artifactId>demo-common-base</artifactId>
<version>0.0.1</version>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>com.yxt.demo</groupId>
<artifactId>demo-common-redis</artifactId>
<artifactId>demo-common-core</artifactId>
<version>0.0.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.yxt.demo</groupId>
<artifactId>demo-common-jdbc</artifactId>
<version>0.0.1</version>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>
<!-- mysql驱动 -->
<dependency>
<groupId>com.yxt.demo</groupId>
<artifactId>demo-common-utils</artifactId>
<version>0.0.1</version>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.26</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.auth0</groupId>
<artifactId>java-jwt</artifactId>
<version>3.10.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.security.oauth.boot</groupId>
<artifactId>spring-security-oauth2-autoconfigure</artifactId>
<version>2.0.0.RELEASE</version>
</dependency>
</dependencies>
<build>

11
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/SystemApplication.java

@ -1,20 +1,15 @@
package com.yxt.demo.system;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
/**
* @author dimengzhe
*/
@SpringBootApplication(scanBasePackages = {
"com.yxt.demo.common",
"com.yxt.demo.system"
})
@EnableDiscoveryClient
@EnableFeignClients(basePackages = {})
@SpringBootApplication
@MapperScan("com.yxt.demo.system.biz.*")
public class SystemApplication {
public static void main(String[] args) {

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_common/DictCommon.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommon.java

@ -1,7 +1,7 @@
package com.yxt.demo.system.api.dict_common;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

3
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonDto.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonDto.java

@ -1,6 +1,5 @@
package com.yxt.demo.system.api.dict_common;
import com.yxt.demo.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -12,7 +11,7 @@ import javax.validation.constraints.NotBlank;
* @Description
*/
@Data
public class DictCommonDto implements Dto {
public class DictCommonDto{
private String sid;

8
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonFeign.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonFeign.java

@ -1,12 +1,11 @@
package com.yxt.demo.system.api.dict_common;
import com.yxt.demo.common.core.query.PagerQuery;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.core.vo.PagerVo;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
@ -18,11 +17,6 @@ import java.util.List;
* @Description
*/
@Api(tags = "数据字典数据项")
@FeignClient(
contextId = "demo-system-DictCommon",
name = "demo-system",
path = "v1/DictCommon",
fallback = DictCommonFeignFallback.class)
public interface DictCommonFeign {
@PostMapping(value = "/save")

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonFeignFallback.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonFeignFallback.java

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonQuery.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonQuery.java

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonTypeQuery.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonTypeQuery.java

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonVo.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_common/DictCommonVo.java

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_type/DictType.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictType.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.dict_type;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeDto.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeDto.java

9
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeFeign.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeFeign.java

@ -1,13 +1,11 @@
package com.yxt.demo.system.api.dict_type;
import com.yxt.demo.common.core.query.PagerQuery;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.core.vo.PagerVo;
import com.yxt.demo.system.api.dict_common.DictCommonFeignFallback;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
@ -18,11 +16,6 @@ import javax.validation.Valid;
* @Description
*/
@Api(tags = "数据字典数据项")
@FeignClient(
contextId = "demo-system-DictType",
name = "demo-system",
path = "v1/DictType",
fallback = DictTypeFeignFallback.class)
public interface DictTypeFeign {
@PostMapping(value = "/save")

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeFeignFallback.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeFeignFallback.java

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeQuery.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeQuery.java

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeVo.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/dict_type/DictTypeVo.java

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_forum/SysForum.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum/SysForum.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_forum;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

14
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum/SysForumFeign.java

@ -0,0 +1,14 @@
package com.yxt.demo.system.api.sys_forum;
import io.swagger.annotations.Api;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:21
* @Description
*/
@Api(tags = "论坛")
public interface SysForumFeign {
}

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_forum/SysForumFeignFallback.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum/SysForumFeignFallback.java

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_forum_comment/SysForumComment.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum_comment/SysForumComment.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_forum_comment;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

12
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum_comment/SysForumCommentFeign.java

@ -0,0 +1,12 @@
package com.yxt.demo.system.api.sys_forum_comment;
import io.swagger.annotations.Api;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:22
* @Description
*/
@Api(tags = "论坛评论")
public interface SysForumCommentFeign {
}

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_forum_comment/SysForumCommentFeignFallback.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_forum_comment/SysForumCommentFeignFallback.java

7
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_info/SysInfo.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_info/SysInfo.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_info;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -31,4 +31,9 @@ public class SysInfo extends BaseEntity {
private String speciality;
@ApiModelProperty("班级")
private String calss;
@ApiModelProperty("用户名")
private String userName;
@ApiModelProperty("密码")
private String password;
}

40
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_info/SysInfoFeign.java

@ -0,0 +1,40 @@
package com.yxt.demo.system.api.sys_info;
import com.yxt.demo.common.core.query.PagerQuery;
import com.yxt.demo.common.core.vo.PagerVo;
import com.yxt.demo.system.api.dict_type.DictTypeQuery;
import com.yxt.demo.system.api.dict_type.DictTypeVo;
import com.yxt.demo.system.api.sys_user.SysUserDto;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @Author dimengzhe
* @Date 2023/4/24 11:50
* @Description
*/
@Api(tags = "基础信息表")
public interface SysInfoFeign {
@ApiOperation(value = "修改基础信息")
@PostMapping("/alterInfo")
ResultBean alterInfo(@RequestBody SysInfo sysInfo);
@ApiOperation(value = "查询基本信息")
@RequestMapping("/selectInfo")
ResultBean selectInfoOne(@RequestBody SysInfoPageCount sysInfoPageCount);
@ApiOperation(value = "删除基本信息")
@RequestMapping("/deleteInfo")
ResultBean deleteInfo(@ApiParam(value = "sid", required = true) @PathVariable("sid") String sid);
@ApiOperation(value = "添加基本信息")
@RequestMapping("/saveInfo")
ResultBean saveInfo(@RequestBody SysInfo sysInfo);
}

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_info/SysInfoFeignFallback.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_info/SysInfoFeignFallback.java

18
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_info/SysInfoPageCount.java

@ -0,0 +1,18 @@
package com.yxt.demo.system.api.sys_info;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author shkstart
* @create 2023-04-26-15:54
*/
@Data
public class SysInfoPageCount {
@ApiModelProperty(value = "基础信息sid")
private String sid;
@ApiModelProperty(value = "开始条数")
private Integer from;
@ApiModelProperty(value = "显示条数")
private Integer to;
}

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_info_ship/SysInfoShip.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_info_ship/SysInfoShip.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_info_ship;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenu.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenu.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_menu;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuDto.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuDto.java

10
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuFeign.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuFeign.java

@ -1,13 +1,10 @@
package com.yxt.demo.system.api.sys_menu;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.system.api.sys_info.SysInfoFeignFallback;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody;
/**
* @Author dimengzhe
@ -15,11 +12,6 @@ import org.springframework.web.bind.annotation.ResponseBody;
* @Description
*/
@Api(tags = "菜单表")
@FeignClient(
contextId = "demo-system-SysMenu",
name = "demo-system",
path = "v1/SysMenu",
fallback = SysMenuFeignFallback.class)
public interface SysMenuFeign {
@PostMapping(value = "/save")

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuFeignFallback.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuFeignFallback.java

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuQuery.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuQuery.java

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuVo.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu/SysMenuVo.java

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_menu_role/SysMenuRole.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_menu_role/SysMenuRole.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_menu_role;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_notice/SysNotice.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_notice/SysNotice.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_notice;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

12
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_notice/SysNoticeFeign.java

@ -0,0 +1,12 @@
package com.yxt.demo.system.api.sys_notice;
import io.swagger.annotations.Api;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:23
* @Description
*/
@Api(tags = "公告")
public interface SysNoticeFeign {
}

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_notice/SysNoticeFeignFallback.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_notice/SysNoticeFeignFallback.java

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_plan/SysPlan.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_plan/SysPlan.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_plan;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_plan/SysPlanFeign.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_plan/SysPlanFeign.java

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_plan_schedule/SysPlanSchedule.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_plan_schedule/SysPlanSchedule.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_plan_schedule;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_plan_schedule/SysPlanScheduleFeign.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_plan_schedule/SysPlanScheduleFeign.java

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_resources/SysResources.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_resources/SysResources.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_resources;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import lombok.Data;
/**

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_resources/SysResourcesFeign.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_resources/SysResourcesFeign.java

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_role/SysRole.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_role/SysRole.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_role;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_role/SysRoleDto.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_role/SysRoleDto.java

38
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_role/SysRoleFeign.java

@ -0,0 +1,38 @@
package com.yxt.demo.system.api.sys_role;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:27
* @Description
*/
@Api(tags = "角色表")
public interface SysRoleFeign {
@ApiOperation(value = "添加角色")
@PostMapping("/addRole")
ResultBean addRole(@RequestBody SysRole sysRole);
@ApiOperation(value = "删除角色")
@PostMapping("/deleteRole/{sid}")
ResultBean deleteRole(@ApiParam(value = "sid", required = true) @PathVariable("sid") String sid);
@ApiOperation(value = "查询角色")
@PostMapping("/RoleOne/{sid}")
ResultBean RoleOne(@ApiParam(value = "sid", required = true) @PathVariable("sid") String sid);
@ApiOperation(value = "查询多角色")
@PostMapping("/RoleOne")
ResultBean RoleList();
@ApiOperation(value = "修改角色")
@RequestMapping("/alterRole")
ResultBean alterRole(@RequestBody SysRole sysRole);
}

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_role/SysRoleFeignFallback.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_role/SysRoleFeignFallback.java

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_score/SysScore.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_score/SysScore.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_score;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_score/SysScoreDto.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_score/SysScoreDto.java

13
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_score/SysScoreFeign.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_score/SysScoreFeign.java

@ -1,11 +1,8 @@
package com.yxt.demo.system.api.sys_score;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.system.api.sys_user.SysUserDto;
import com.yxt.demo.system.api.sys_user.SysUserFeignFallback;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@ -14,12 +11,7 @@ import org.springframework.web.bind.annotation.RequestBody;
* @Date 2023/4/24 14:28
* @Description
*/
@Api(tags = "用户表")
@FeignClient(
contextId = "demo-system-SysScore",
name = "demo-system",
path = "v1/sysscore",
fallback = SysScoreFeignFallback.class)
@Api(tags = "成绩表")
public interface SysScoreFeign {
@ApiOperation(value = "查询成绩")
@ -29,4 +21,5 @@ public interface SysScoreFeign {
@ApiOperation(value = "成绩修改")
@PostMapping("/update")
ResultBean alterById(@RequestBody SysScore sysScore);
}

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_score/SysScoreFeignFallback.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_score/SysScoreFeignFallback.java

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_student_score/SysStudentScore.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_student_score/SysStudentScore.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_student_score;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_student_score/SysStudentScoreFeign.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_student_score/SysStudentScoreFeign.java

3
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_user/SysUser.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user/SysUser.java

@ -1,6 +1,7 @@
package com.yxt.demo.system.api.sys_user;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

10
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_user/SysUserDto.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user/SysUserDto.java

@ -1,6 +1,5 @@
package com.yxt.demo.system.api.sys_user;
import com.yxt.demo.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -12,7 +11,7 @@ import javax.validation.constraints.NotBlank;
* @Description
*/
@Data
public class SysUserDto implements Dto {
public class SysUserDto{
private static final long serialVersionUID = 2068661415449582838L;
@ApiModelProperty("学号")
@ -27,9 +26,6 @@ public class SysUserDto implements Dto {
@ApiModelProperty("确认密码")
@NotBlank(message = "确认密码不能为空")
private String confirmPassword;
@ApiModelProperty("手机号")
@NotBlank(message = "手机号不能为空")
private String mobile;
@ApiModelProperty("昵称")
private String nickName;
}

16
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_user/SysUserFeign.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user/SysUserFeign.java

@ -1,12 +1,11 @@
package com.yxt.demo.system.api.sys_user;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @Author dimengzhe
@ -14,11 +13,6 @@ import org.springframework.web.bind.annotation.ResponseBody;
* @Description
*/
@Api(tags = "用户表")
@FeignClient(
contextId = "demo-system-SysUser",
name = "demo-system",
path = "v1/sysuser",
fallback = SysUserFeignFallback.class)
public interface SysUserFeign {
@ApiOperation(value = "学生注册")
@ -27,8 +21,10 @@ public interface SysUserFeign {
@ApiOperation(value = "登录")
@PostMapping("/login")
@RequestMapping("/login")
ResultBean login(@RequestBody SysUserLoginQuery query);
@ApiOperation(value = "修改密码")
@RequestMapping("/alterPassword")
ResultBean alterPassword(@RequestBody SysUser sysUser);
}

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_user/SysUserFeignFallback.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user/SysUserFeignFallback.java

0
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_user/SysUserLoginQuery.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user/SysUserLoginQuery.java

2
demo-system/demo-system-api/src/main/java/com/yxt/demo/system/api/sys_user_role/SysUserRole.java → demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user_role/SysUserRole.java

@ -1,6 +1,6 @@
package com.yxt.demo.system.api.sys_user_role;
import com.yxt.demo.common.core.domain.BaseEntity;
import com.yxt.demo.system.utils.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

29
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/api/sys_user_role/SysUserRoleFeign.java

@ -0,0 +1,29 @@
package com.yxt.demo.system.api.sys_user_role;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @author shkstart
* @create 2023-04-26-14:31
*/
@Api(tags = "用户角色关联表")
public interface SysUserRoleFeign {
@ApiOperation(value = "给用户分配角色")
@RequestMapping("/addUserRole")
ResultBean addUserRole(@RequestBody SysUserRole sysUserRole);
@ApiOperation(value = "修改用户角色")
@RequestMapping("/alterUserRole")
ResultBean alterUserRole(@RequestBody SysUserRole sysUserRole);
@ApiOperation(value = "删除该用户角色")
@RequestMapping("/deleteUserRoleById")
ResultBean deleteUserRoleById(@ApiParam(value = "sid", required = true) @PathVariable("sid") String sid);
}

2
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/dict_common/DictCommonMapper.java

@ -6,8 +6,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.demo.system.api.dict_common.DictCommon;
import com.yxt.demo.system.api.dict_common.DictCommonVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.mapstruct.Mapper;
import java.util.List;

2
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/dict_common/DictCommonRest.java

@ -1,9 +1,9 @@
package com.yxt.demo.system.biz.dict_common;
import com.yxt.demo.common.core.query.PagerQuery;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.core.vo.PagerVo;
import com.yxt.demo.system.api.dict_common.*;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;

12
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/dict_common/DictCommonService.java

@ -3,19 +3,15 @@ package com.yxt.demo.system.biz.dict_common;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.yxt.demo.common.core.query.PagerQuery;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.core.vo.PagerVo;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.common.jdbc.service.PagerUtil;
import com.yxt.demo.common.utils.convert.StringUtil;
import com.yxt.demo.system.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.jdbc.service.PagerUtil;
import com.yxt.demo.system.api.dict_common.*;
import com.yxt.demo.system.api.sys_user.SysUser;
import com.yxt.demo.system.biz.dict_type.DictTypeService;
import com.yxt.demo.system.biz.sys_user.SysUserMapper;
import org.apache.commons.lang.StringUtils;
import com.yxt.demo.system.utils.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
import java.util.List;

3
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/dict_type/DictTypeRest.java

@ -1,12 +1,11 @@
package com.yxt.demo.system.biz.dict_type;
import com.yxt.demo.common.core.query.PagerQuery;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.core.vo.PagerVo;
import com.yxt.demo.system.api.dict_common.DictCommon;
import com.yxt.demo.system.api.dict_common.DictCommonVo;
import com.yxt.demo.system.api.dict_type.*;
import com.yxt.demo.system.biz.dict_common.DictCommonService;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;

11
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/dict_type/DictTypeService.java

@ -3,19 +3,16 @@ package com.yxt.demo.system.biz.dict_type;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.yxt.demo.common.core.query.PagerQuery;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.core.vo.PagerVo;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.common.jdbc.service.PagerUtil;
import com.yxt.demo.system.api.dict_common.DictCommon;
import com.yxt.demo.system.api.dict_common.DictCommonQuery;
import com.yxt.demo.system.api.dict_common.DictCommonVo;
import com.yxt.demo.system.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.jdbc.service.PagerUtil;
import com.yxt.demo.system.api.dict_type.DictType;
import com.yxt.demo.system.api.dict_type.DictTypeDto;
import com.yxt.demo.system.api.dict_type.DictTypeQuery;
import com.yxt.demo.system.api.dict_type.DictTypeVo;
import org.apache.commons.lang.StringUtils;
import com.yxt.demo.system.utils.ResultBean;
import org.springframework.stereotype.Service;
/**

3
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_forum/SysForumMapper.java

@ -1,9 +1,12 @@
package com.yxt.demo.system.biz.sys_forum;
import org.apache.ibatis.annotations.Mapper;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:21
* @Description
*/
@Mapper
public interface SysForumMapper {
}

2
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_forum/SysForumMapper.xml

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="">
<mapper namespace="com.yxt.demo.system.biz.sys_forum.SysForumMapper">
</mapper>

12
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_info/SysInfoMapper.java

@ -2,9 +2,13 @@ package com.yxt.demo.system.biz.sys_info;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.demo.system.api.sys_info.SysInfo;
import com.yxt.demo.system.api.sys_info.SysInfoPageCount;
import com.yxt.demo.system.api.sys_user.SysUser;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/4/24 11:51
@ -14,4 +18,12 @@ import org.apache.ibatis.annotations.Param;
public interface SysInfoMapper extends BaseMapper<SysInfo> {
SysInfo selectByNoAndName(@Param("userName") String userName, @Param("name") String name);
SysInfo selectStudentBySid(SysInfoPageCount sysInfoPageCount);
List<SysInfo> selectInfoList(SysInfoPageCount sysInfoPageCount);
SysInfo selectBySid(@Param("sid") String sid);
void deleteInfoBySid(@Param("sid") String sid);
}

23
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_info/SysInfoMapper.xml

@ -7,4 +7,27 @@
where infoId = #{userName}
and name = #{name}
</select>
<select id="selectStudentBySid" resultType="com.yxt.demo.system.api.sys_info.SysInfo" parameterType="com.yxt.demo.system.api.sys_info.SysInfoPageCount">
select i.id,i.userSid,i.infoId,u.userName,u.password,i.name,i.sex,i.studyYear,i.department,i.speciality,i.calss
from sys_info i
left join sys_user u
on i.userSid = u.sid
where i.userSid = #{sid} limit #{from},#{to}
</select>
<select id="selectInfoList" resultType="com.yxt.demo.system.api.sys_info.SysInfo" parameterType="com.yxt.demo.system.api.sys_info.SysInfoPageCount">
select i.id,i.userSid,i.infoId,u.userName,u.password,i.name,i.sex,i.studyYear,i.department,i.speciality,i.calss
from sys_info i
left join sys_user u
on i.userSid = u.sid limit #{from},#{to}
</select>
<select id="selectBySid" resultType="com.yxt.demo.system.api.sys_info.SysInfo">
select * from sys_info where sid = #{sid}
</select>
<delete id="deleteInfoBySid">
delete from sys_info where sid = #{sid}
</delete>
</mapper>

30
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_info/SysInfoRest.java

@ -1,6 +1,11 @@
package com.yxt.demo.system.biz.sys_info;
import com.yxt.demo.system.api.sys_info.SysInfo;
import com.yxt.demo.system.api.sys_info.SysInfoFeign;
import com.yxt.demo.system.api.sys_info.SysInfoPageCount;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@ -12,5 +17,28 @@ import org.springframework.web.bind.annotation.RestController;
@Api(tags = "基础信息表")
@RestController
@RequestMapping("v1/sysinfo")
public class SysInfoRest {
public class SysInfoRest implements SysInfoFeign {
@Autowired
private SysInfoService sysInfoService;
@Override
public ResultBean alterInfo(SysInfo sysInfo) {
return sysInfoService.alterInfo(sysInfo);
}
@Override
public ResultBean selectInfoOne(SysInfoPageCount sysInfoPageCount) {
return sysInfoService.selectInfoOne(sysInfoPageCount);
}
@Override
public ResultBean deleteInfo(String sid) {
return sysInfoService.deleteInfoBySid(sid);
}
@Override
public ResultBean saveInfo(SysInfo sysInfo) {
return sysInfoService.saveInfo(sysInfo);
}
}

73
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_info/SysInfoService.java

@ -1,9 +1,19 @@
package com.yxt.demo.system.biz.sys_info;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.api.sys_info.SysInfoPageCount;
import com.yxt.demo.system.api.sys_user.SysUser;
import com.yxt.demo.system.biz.sys_user.SysUserMapper;
import com.yxt.demo.system.biz.sys_user.SysUserService;
import com.yxt.demo.system.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.api.sys_info.SysInfo;
import com.yxt.demo.system.utils.Const;
import com.yxt.demo.system.utils.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/4/24 11:51
@ -12,7 +22,68 @@ import org.springframework.stereotype.Service;
@Service
public class SysInfoService extends MybatisBaseService<SysInfoMapper, SysInfo> {
@Autowired
private SysUserMapper sysUserMapper;
public SysInfo selectByNoAndName(String userName, String name) {
return baseMapper.selectByNoAndName(userName, name);
}
public ResultBean alterInfo(SysInfo sysInfo){
SysUser user = Const.getUser();
ResultBean rb = ResultBean.fireFail();
sysInfo.setUpdateBySid(user.getSid());
sysInfo.setModifyTime(new Date());
int i = baseMapper.updateById(sysInfo);
if (i == 0){
return rb.setMsg("修改失败");
}
return rb.setMsg("修改成功");
}
public ResultBean selectInfoOne(SysInfoPageCount sysInfoPageCount){
SysUser user = Const.getUser();
ResultBean rb = ResultBean.fireFail();
int type = user.getType();
if (type == 0 || type == 1){
SysInfo sysInfo = baseMapper.selectStudentBySid(sysInfoPageCount);
return rb.setData(sysInfo);
}else if (type == 2){
List<SysInfo> sysInfos = baseMapper.selectInfoList(sysInfoPageCount);
return rb.setData(sysInfos);
}
return rb;
}
public ResultBean deleteInfoBySid(String sid){
SysUser user = Const.getUser();
ResultBean rb = ResultBean.fireFail();
if (user.getType() == 2){
SysInfo sysInfo = baseMapper.selectBySid(sid);
baseMapper.deleteInfoBySid(sid);
sysUserMapper.deleteUserBySid(sysInfo.getUserSid());
return rb.setMsg("删除成功");
}else {
return rb.setMsg("无权操作");
}
}
public ResultBean saveInfo(SysInfo sysInfo){
SysUser user = Const.getUser();
ResultBean rb = ResultBean.fireFail();
SysUser sysUser = sysUserMapper.selectByNameAndUserName(sysInfo.getInfoId(), sysInfo.getName());
if (sysUser != null){
sysInfo.setUserSid(sysUser.getSid());
baseMapper.insert(sysInfo);
sysUser.setInfoSid(sysInfo.getSid());
sysUser.setModifyTime(new Date());
sysUser.setUpdateBySid(user.getSid());
sysUserMapper.updateById(sysUser);
return rb.success();
}else {
baseMapper.insert(sysInfo);
return rb.success();
}
}
}

2
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_menu/SysMenuRest.java

@ -1,10 +1,10 @@
package com.yxt.demo.system.biz.sys_menu;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.system.api.sys_menu.SysMenuDto;
import com.yxt.demo.system.api.sys_menu.SysMenuFeign;
import com.yxt.demo.system.api.sys_menu.SysMenuQuery;
import com.yxt.demo.system.api.sys_menu.SysMenuVo;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;

9
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_menu/SysMenuService.java

@ -1,16 +1,13 @@
package com.yxt.demo.system.biz.sys_menu;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.common.utils.convert.StringUtil;
import com.yxt.demo.system.api.sys_info.SysInfo;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.yxt.demo.system.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.api.sys_menu.SysMenu;
import com.yxt.demo.system.api.sys_menu.SysMenuDto;
import com.yxt.demo.system.api.sys_menu.SysMenuQuery;
import com.yxt.demo.system.api.sys_menu.SysMenuVo;
import com.yxt.demo.system.biz.sys_info.SysInfoMapper;
import org.apache.commons.lang.StringUtils;
import com.yxt.demo.system.utils.ResultBean;
import org.springframework.stereotype.Service;
/**

2
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_plan/SysPlanMapper.xml

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="">
<mapper namespace="com.yxt.demo.system.biz.sys_plan.SysPlanMapper">
</mapper>

9
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_role/SysRoleMapper.java

@ -2,13 +2,18 @@ package com.yxt.demo.system.biz.sys_role;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.demo.system.api.sys_role.SysRole;
import org.springframework.data.repository.query.Param;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:27
* @Description
*/
@Mapper
public interface SysRoleMapper extends BaseMapper<SysRole> {
SysRole selectRole(@Param("name") String name);
SysRole selectRole(String name);
List<SysRole> selectRoleList();
}

8
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_role/SysRoleMapper.xml

@ -1,7 +1,11 @@
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.yxt.demo.system.biz.sys_role.SysRoleMapper">
<select id="selectRole" resultType="com.yxt.demo.system.biz.sys_role.SysRoleMapper">
select count(*) from sys_role where name == #{name}
<select id="selectRole" resultType="com.yxt.demo.system.api.sys_role.SysRoleDto">
select * from sys_role where name == #{name}
</select>
<select id="selectRoleList" resultType="com.yxt.demo.system.api.sys_role.SysRoleDto">
select * from sys_role
</select>
</mapper>

61
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_role/SysRoleRest.java

@ -1,28 +1,83 @@
package com.yxt.demo.system.biz.sys_role;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.system.api.sys_role.SysRole;
import com.yxt.demo.system.api.sys_role.SysRoleFeign;
import com.yxt.demo.system.api.sys_user.SysUser;
import com.yxt.demo.system.api.sys_user_role.SysUserRole;
import com.yxt.demo.system.biz.sys_user_role.SysUserRoleSerrvice;
import com.yxt.demo.system.utils.Const;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:27
* @Description
*/
@Api(tags = "成绩表")
@Api(tags = "角色表")
@RestController
@RequestMapping("v1/sysrole")
public class SysRoleRest implements SysRoleFeign {
@Autowired
private SysRoleService sysRoleService;
@Autowired
private SysUserRoleSerrvice sysUserRoleSerrvice;
//
@Override
public ResultBean addRole(SysRole sysRole) {
return sysRoleService.addRole(sysRole);
}
@Override
public ResultBean deleteRole(String sid){
SysUser user = Const.getUser();
ResultBean rb = ResultBean.fireFail();
if (user.getType() == 2){
SysRole sysRole = sysRoleService.fetchBySid(sid);
if (sysRole == null){
return rb.setMsg("该角色不存在");
}
List<SysUserRole> sysUserRoles = sysUserRoleSerrvice.selectSysUserRole(sid);
if (sysUserRoles.size() != 0){
return rb.setMsg("该角色已有用户使用,不可删除");
}
if (0 == sysRoleService.deleteBySid(sid)){
return rb.setMsg("删除失败");
}
return rb.success().setMsg("删除成功");
}else {
return rb.setMsg("无权操作");
}
}
@Override
public ResultBean RoleOne(String sid){
ResultBean rb = ResultBean.fireFail();
SysRole sysRole = sysRoleService.fetchBySid(sid);
if (sysRole != null){
return rb.setData(sysRole);
}else {
return rb.setData("查询角色失败");
}
}
@Override
public ResultBean RoleList(){
ResultBean rb = ResultBean.fireFail();
sysRoleService.selectRoleList();
return rb.setMsg("查询角色失败");
}
@Override
public ResultBean alterRole(SysRole sysRole) {
return sysRoleService.alterRole(sysRole);
}
}

49
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_role/SysRoleService.java

@ -1,15 +1,16 @@
package com.yxt.demo.system.biz.sys_role;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.api.sys_role.SysRole;
import com.yxt.demo.system.api.sys_score.SysScore;
import com.yxt.demo.system.api.sys_score.SysScoreDto;
import com.yxt.demo.system.api.sys_user.SysUser;
import com.yxt.demo.system.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.api.sys_role.SysRole;
import com.yxt.demo.system.utils.Const;
import com.yxt.demo.system.utils.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:27
@ -21,17 +22,45 @@ public class SysRoleService extends MybatisBaseService<SysRoleMapper, SysRole> {
@Autowired
private SysRoleMapper sysRoleMapper;
public ResultBean addRole(SysRole sysRole) {
public ResultBean addRole(SysRole sysRole){
SysUser user = Const.getUser();
ResultBean rb = ResultBean.fireFail();
SysRole sysRole1 = sysRoleMapper.selectRole(sysRole.getName());
if (sysRole1 != null){
if (sysRole1 == null){
sysRole.setCreateBySid(user.getSid());
sysRole.setCreateTime(new Date());
int insert = baseMapper.insert(sysRole);
if (insert == 1){
return rb.success().setMsg("添加成功");
}else{
return rb;
return rb.setMsg("添加失败");
}
}
return rb.setMsg("已有该角色名称请重新添加");
}
public ResultBean selectRoleList(){
ResultBean rb = ResultBean.fireFail();
List<SysRole> sysRoles = sysRoleMapper.selectRoleList();
if (sysRoles.size() != 0){
return rb.setData(sysRoles);
}else {
return rb.setMsg("查询多角色失败");
}
}
public ResultBean alterRole(SysRole sysRole){
SysUser user = Const.getUser();
ResultBean rb = ResultBean.fireFail();
if (user.getType() == 2){
int i = sysRoleMapper.updateById(sysRole);
if (i == 0){
return rb.setMsg("修改失败,请重试!!!");
}else {
return rb.setMsg("修改成功!");
}
}else {
return rb.setMsg("无权操作");
}
return rb;
}
}

2
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_score/SysScoreMapper.java

@ -3,11 +3,13 @@ package com.yxt.demo.system.biz.sys_score;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.demo.system.api.sys_score.SysScore;
import com.yxt.demo.system.api.sys_user.SysUser;
import org.apache.ibatis.annotations.Mapper;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:28
* @Description
*/
@Mapper
public interface SysScoreMapper extends BaseMapper<SysScore> {
}

2
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_score/SysScoreRest.java

@ -1,9 +1,9 @@
package com.yxt.demo.system.biz.sys_score;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.system.api.sys_score.SysScore;
import com.yxt.demo.system.api.sys_score.SysScoreDto;
import com.yxt.demo.system.api.sys_score.SysScoreFeign;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;

4
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_score/SysScoreService.java

@ -1,10 +1,10 @@
package com.yxt.demo.system.biz.sys_score;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.api.sys_score.SysScore;
import com.yxt.demo.system.api.sys_score.SysScoreDto;
import com.yxt.demo.system.utils.ResultBean;
import org.springframework.stereotype.Service;
/**

7
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user/SysUserMapper.java

@ -3,6 +3,7 @@ package com.yxt.demo.system.biz.sys_user;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.demo.system.api.sys_user.SysUser;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* @Author dimengzhe
@ -11,5 +12,9 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface SysUserMapper extends BaseMapper<SysUser> {
SysUser selectByNo(String userName);
SysUser selectByNo(@Param("userName") String userName);
void deleteUserBySid(@Param("sid") String sid);
SysUser selectByNameAndUserName(@Param("userName") String userName, @Param("name") String name);
}

8
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user/SysUserMapper.xml

@ -6,4 +6,12 @@
from sys_user
where userName = #{userName}
</select>
<delete id="deleteUserBySid">
delete from sys_user where sid = #{sid}
</delete>
<select id="selectByNameAndUserName" resultType="com.yxt.demo.system.api.sys_user.SysUser">
select * from sys_user where userName = #{userName} and name = #{name}
</select>
</mapper>

8
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user/SysUserRest.java

@ -1,9 +1,10 @@
package com.yxt.demo.system.biz.sys_user;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.system.api.sys_user.SysUser;
import com.yxt.demo.system.api.sys_user.SysUserDto;
import com.yxt.demo.system.api.sys_user.SysUserFeign;
import com.yxt.demo.system.api.sys_user.SysUserLoginQuery;
import com.yxt.demo.system.utils.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
@ -31,4 +32,9 @@ public class SysUserRest implements SysUserFeign {
public ResultBean login(SysUserLoginQuery query) {
return sysUserService.login(query);
}
@Override
public ResultBean alterPassword(SysUser sysUser){
return sysUserService.alterPassword(sysUser);
}
}

72
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user/SysUserService.java

@ -1,16 +1,15 @@
package com.yxt.demo.system.biz.sys_user;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.demo.common.core.result.ResultBean;
import com.yxt.demo.common.jdbc.service.MybatisBaseService;
import com.yxt.demo.common.redis.service.RedisService;
import com.yxt.demo.common.utils.allutils.Encodes;
import com.yxt.demo.common.utils.jwt.JWTUtil;
import com.yxt.demo.system.jdbc.service.MybatisBaseService;
import com.yxt.demo.system.utils.ResultBean;
import com.yxt.demo.system.utils.jwt.JWTUtil;
import com.yxt.demo.system.api.sys_info.SysInfo;
import com.yxt.demo.system.api.sys_user.SysUser;
import com.yxt.demo.system.api.sys_user.SysUserDto;
import com.yxt.demo.system.api.sys_user.SysUserLoginQuery;
import com.yxt.demo.system.biz.sys_info.SysInfoService;
import jdk.nashorn.internal.ir.IfNode;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -26,7 +25,7 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
@Autowired
private SysInfoService sysInfoService;
@Autowired
private RedisService redisService;
private SysUserMapper sysUserMapper;
public ResultBean register(SysUserDto dto) {
ResultBean rb = ResultBean.fireFail();
@ -38,24 +37,36 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
String userName = dto.getUserName();
String name = dto.getName();
SysInfo sysInfo = sysInfoService.selectByNoAndName(userName, name);
if (sysInfo == null) {
return rb.setMsg("学号或姓名错误");
}
//查看该账号是否已激活
SysUser sysUser = baseMapper.selectByNo(userName);
if (sysUser != null) {
if (sysUser.getHasActivated() == 1) {
return rb.setMsg("该账号已注册");
if (sysInfo != null) {
// return rb.setMsg("学号或姓名错误");
//查看该账号是否已激活
SysUser sysUser = baseMapper.selectByNo(userName);
if (sysUser != null) {
if (sysUser.getHasActivated() == 1) {
return rb.setMsg("该账号已注册");
}
}
sysUser = new SysUser();
BeanUtil.copyProperties(dto, sysUser);
sysUser.setPassword(dto.getPassword());
sysUser.setInfoSid(sysInfo.getSid());
baseMapper.insert(sysUser);
sysInfo.setUserSid(sysUser.getSid());
sysInfoService.updateById(sysInfo);
return rb.success();
}else {
SysUser sysUser = baseMapper.selectByNo(userName);
if (sysUser != null) {
if (sysUser.getHasActivated() == 1) {
return rb.setMsg("该账号已注册");
}
}
sysUser = new SysUser();
BeanUtil.copyProperties(dto, sysUser);
sysUser.setPassword(dto.getPassword());
baseMapper.insert(sysUser);
return rb.success();
}
sysUser = new SysUser();
BeanUtil.copyProperties(dto, sysUser);
String md5Password = Encodes.md5(dto.getPassword());
sysUser.setPassword(md5Password);
baseMapper.insert(sysUser);
sysInfo.setUserSid(sysUser.getSid());
sysInfoService.updateById(sysInfo);
return rb.success();
}
public ResultBean login(SysUserLoginQuery query) {
@ -65,8 +76,7 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
if (sysUser == null) {
return rb.setMsg("账号密码错误");
} else {
String md5Password = Encodes.md5(query.getPassword());
if (!query.getPassword().equals(md5Password)) {
if (!query.getPassword().equals(query.getPassword())) {
return rb.setMsg("账号密码错误");
}
//验证是否激活状态
@ -74,11 +84,15 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> {
return rb.setMsg("该账号已失效");
}
}
// 生成token
String uniqueToken = JWTUtil.create(sysUser.getSid() + "");
// redis中缓存token
redisService.set(uniqueToken, sysUser.getUserName(),
USERS_REDIS_SESSION_TL_PC);
return rb.success().setData(sysUser);
}
public ResultBean alterPassword(SysUser sysUser){
ResultBean rb = ResultBean.fireFail();
int i = sysUserMapper.updateById(sysUser);
if (i != 0){
return rb.setMsg("修改账号或密码成功");
}
return rb.setMsg("修改失败,请重试!!!");
}
}

11
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user_role/SysUserRoleMapper.java

@ -1,9 +1,18 @@
package com.yxt.demo.system.biz.sys_user_role;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.demo.system.api.sys_user_role.SysUserRole;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2023/4/24 14:31
* @Description
*/
public interface SysUserRoleMapper {
@Mapper
public interface SysUserRoleMapper extends BaseMapper<SysUserRole> {
List<SysUserRole> selectSysUserRole(String sid);
}

3
demo-system/demo-system-biz/src/main/java/com/yxt/demo/system/biz/sys_user_role/SysUserRoleMapper.xml

@ -1,4 +1,7 @@
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.yxt.demo.system.biz.sys_user_role.SysUserRoleMapper">
<select id="selectSysUserRole" resultType="com.yxt.demo.system.api.sys_user_role.SysUserRole">
select * from sys_user_role
</select>
</mapper>

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save