From 0aa332c75556fdd4378ffdfdc75acc1611ffac52 Mon Sep 17 00:00:00 2001 From: linhw <5331581+linhw11@user.noreply.gitee.com> Date: Thu, 9 May 2024 13:48:02 +0800 Subject: [PATCH] ~ --- .../common/core/constant/HttpStatus.java | 2 + .../common/core/web/domain/AjaxResult.java | 5 + gan-modules/ruoyi-gan/pom.xml | 12 +++ .../app/controller/AppUserFansController.java | 2 +- .../controller/AppUserFriendController.java | 2 +- .../app/service/IAppUserFansService.java | 3 +- .../app/service/IAppUserFriendService.java | 3 +- .../impl/AppUserCollectServiceImpl.java | 6 +- .../impl/AppUserDynamicServiceImpl.java | 8 +- .../service/impl/AppUserFansServiceImpl.java | 15 ++- .../impl/AppUserFriendServiceImpl.java | 13 ++- .../com/ruoyi/app/utils/TextAutoRoute.java | 97 +++++++++++++++++++ 12 files changed, 153 insertions(+), 15 deletions(-) create mode 100644 gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/utils/TextAutoRoute.java diff --git a/gan-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/HttpStatus.java b/gan-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/HttpStatus.java index 44144f7..4663889 100644 --- a/gan-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/HttpStatus.java +++ b/gan-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/HttpStatus.java @@ -82,6 +82,8 @@ public class HttpStatus */ public static final int ERROR = 500; + public static final int ERROR_CODE = 2001; + /** * 接口未实现 */ diff --git a/gan-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/AjaxResult.java b/gan-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/AjaxResult.java index 26a90f5..1c7a696 100644 --- a/gan-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/AjaxResult.java +++ b/gan-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/AjaxResult.java @@ -158,6 +158,11 @@ public class AjaxResult extends HashMap return new AjaxResult(HttpStatus.ERROR, msg, data); } + public static AjaxResult errorMsg(String msg, Object data) + { + return new AjaxResult(HttpStatus.ERROR_CODE, msg, data); + } + /** * 返回错误消息 * diff --git a/gan-modules/ruoyi-gan/pom.xml b/gan-modules/ruoyi-gan/pom.xml index e41df7e..7d6f8fa 100644 --- a/gan-modules/ruoyi-gan/pom.xml +++ b/gan-modules/ruoyi-gan/pom.xml @@ -132,6 +132,18 @@ alipay-sdk-java 4.39.60.ALL + + + com.aliyun + imageaudit20191230 + 2.0.6 + + + + com.aliyun + green20220302 + 1.0.3 + diff --git a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/controller/AppUserFansController.java b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/controller/AppUserFansController.java index 12b3b7e..26ac428 100644 --- a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/controller/AppUserFansController.java +++ b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/controller/AppUserFansController.java @@ -86,7 +86,7 @@ public class AppUserFansController extends BaseController @PostMapping("/add") public AjaxResult add(@RequestBody AppUserFans appUserFans) { - return toAjax(appUserFansService.insertAppUserFans(appUserFans)); + return appUserFansService.insertAppUserFans(appUserFans); } /** diff --git a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/controller/AppUserFriendController.java b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/controller/AppUserFriendController.java index dadd866..2682cae 100644 --- a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/controller/AppUserFriendController.java +++ b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/controller/AppUserFriendController.java @@ -87,7 +87,7 @@ public class AppUserFriendController extends BaseController @ApiOperation(value = "新增用户好友", notes = "新增用户好友", httpMethod = "POST") public AjaxResult add(@RequestBody AppUserFriend appUserFriend) { - return toAjax(appUserFriendService.insertAppUserFriend(appUserFriend)); + return appUserFriendService.insertAppUserFriend(appUserFriend); } /** diff --git a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/IAppUserFansService.java b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/IAppUserFansService.java index 4c23900..013dbd0 100644 --- a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/IAppUserFansService.java +++ b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/IAppUserFansService.java @@ -2,6 +2,7 @@ package com.ruoyi.app.service; import java.util.List; import com.ruoyi.app.domain.AppUserFans; +import com.ruoyi.common.core.web.domain.AjaxResult; /** * 用户关注Service接口 @@ -33,7 +34,7 @@ public interface IAppUserFansService * @param appUserFans 用户关注 * @return 结果 */ - public int insertAppUserFans(AppUserFans appUserFans); + public AjaxResult insertAppUserFans(AppUserFans appUserFans); /** * 修改用户关注 diff --git a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/IAppUserFriendService.java b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/IAppUserFriendService.java index 39eb686..bdcd412 100644 --- a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/IAppUserFriendService.java +++ b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/IAppUserFriendService.java @@ -3,6 +3,7 @@ package com.ruoyi.app.service; import java.util.List; import com.ruoyi.app.domain.AppUserFriend; import com.ruoyi.app.domain.vo.AppUserFriendVo; +import com.ruoyi.common.core.web.domain.AjaxResult; /** * 用户好友Service接口 @@ -34,7 +35,7 @@ public interface IAppUserFriendService * @param appUserFriend 用户好友 * @return 结果 */ - public int insertAppUserFriend(AppUserFriend appUserFriend); + public AjaxResult insertAppUserFriend(AppUserFriend appUserFriend); /** * 修改用户好友 diff --git a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserCollectServiceImpl.java b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserCollectServiceImpl.java index 84ae2be..bac88ad 100644 --- a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserCollectServiceImpl.java +++ b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserCollectServiceImpl.java @@ -60,14 +60,14 @@ public class AppUserCollectServiceImpl implements IAppUserCollectService @Override public AjaxResult insertAppUserCollect(AppUserCollect appUserCollect) { if (appUserCollect.getUserId() == null || appUserCollect.getDynamicId() == null) { - return AjaxResult.error("用户id不能为空和动态id不能为空"); + return AjaxResult.error(2001,"用户id不能为空和动态id不能为空"); } AppUserDynamic appUserDynamic = appUserDynamicMapper.selectAppUserDynamicById(appUserCollect.getDynamicId()); if (appUserDynamic == null) { - return AjaxResult.error("该动态不存在"); + return AjaxResult.error(2001,"该动态不存在"); } if (appUserDynamic.getUserId() == appUserCollect.getUserId()) { - return AjaxResult.error("不能收藏自己的动态!"); + return AjaxResult.error(2001,"不能收藏自己的动态!"); } appUserCollect.setCreateTime(DateUtils.getNowDate()); return AjaxResult.success(appUserCollectMapper.insertAppUserCollect(appUserCollect)); diff --git a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserDynamicServiceImpl.java b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserDynamicServiceImpl.java index 3f2876a..c155489 100644 --- a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserDynamicServiceImpl.java +++ b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserDynamicServiceImpl.java @@ -171,10 +171,10 @@ public class AppUserDynamicServiceImpl implements IAppUserDynamicService AppUserCollect appUserCollect = new AppUserCollect(); appUserCollect.setDynamicId(id); - List appUserCollects = appUserCollectMapper.selectAppUserCollectList(appUserCollect); - if (CollectionUtils.isNotEmpty(appUserCollects)){ - appUserDynamicVo.setIsCollect(1); - } + List appUserCollects = appUserCollectMapper.selectAppUserCollectList(appUserCollect); + if (CollectionUtils.isNotEmpty(appUserCollects)){ + appUserDynamicVo.setIsCollect(1); + } // 评论数 AppDynamicComment appDynamicComment = new AppDynamicComment(); diff --git a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserFansServiceImpl.java b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserFansServiceImpl.java index cdd7da3..c1a90cd 100644 --- a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserFansServiceImpl.java +++ b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserFansServiceImpl.java @@ -1,7 +1,11 @@ package com.ruoyi.app.service.impl; import java.util.List; + +import com.ruoyi.app.domain.AppUser; +import com.ruoyi.app.domain.AppUserFriend; import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.common.core.web.domain.AjaxResult; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ruoyi.app.mapper.AppUserFansMapper; @@ -51,10 +55,17 @@ public class AppUserFansServiceImpl implements IAppUserFansService * @return 结果 */ @Override - public int insertAppUserFans(AppUserFans appUserFans) + public AjaxResult insertAppUserFans(AppUserFans appUserFans) { + AppUserFans entity = new AppUserFans(); + entity.setUserId(appUserFans.getUserId()); + entity.setFriendId(appUserFans.getFriendId()); + List list = appUserFansMapper.selectAppUserFansList(appUserFans); + if (list != null && list.size() > 0) { + return AjaxResult.error(2001,"已关注该用户!"); + } appUserFans.setCreateTime(DateUtils.getNowDate()); - return appUserFansMapper.insertAppUserFans(appUserFans); + return AjaxResult.success(appUserFansMapper.insertAppUserFans(appUserFans)); } /** diff --git a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserFriendServiceImpl.java b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserFriendServiceImpl.java index bd3f4d2..f2cc8ea 100644 --- a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserFriendServiceImpl.java +++ b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/service/impl/AppUserFriendServiceImpl.java @@ -4,6 +4,7 @@ import java.util.List; import com.ruoyi.app.domain.vo.AppUserFriendVo; import com.ruoyi.common.core.utils.DateUtils; +import com.ruoyi.common.core.web.domain.AjaxResult; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.ruoyi.app.mapper.AppUserFriendMapper; @@ -53,10 +54,18 @@ public class AppUserFriendServiceImpl implements IAppUserFriendService * @return 结果 */ @Override - public int insertAppUserFriend(AppUserFriend appUserFriend) + public AjaxResult insertAppUserFriend(AppUserFriend appUserFriend) { appUserFriend.setCreateTime(DateUtils.getNowDate()); - return appUserFriendMapper.insertAppUserFriend(appUserFriend); + + AppUserFriend entity = new AppUserFriend(); + entity.setUserId(appUserFriend.getUserId()); + entity.setFriendId(appUserFriend.getFriendId()); + List list = appUserFriendMapper.selectAppUserFriendList(appUserFriend); + if (list != null && list.size() > 0) { + return AjaxResult.error(2001,"已添加过好友!"); + } + return AjaxResult.success(appUserFriendMapper.insertAppUserFriend(appUserFriend)); } /** diff --git a/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/utils/TextAutoRoute.java b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/utils/TextAutoRoute.java new file mode 100644 index 0000000..474526d --- /dev/null +++ b/gan-modules/ruoyi-gan/src/main/java/com/ruoyi/app/utils/TextAutoRoute.java @@ -0,0 +1,97 @@ +package com.ruoyi.app.utils; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONObject; +import com.aliyun.green20220302.Client; +import com.aliyun.green20220302.models.TextModerationRequest; +import com.aliyun.green20220302.models.TextModerationResponse; +import com.aliyun.green20220302.models.TextModerationResponseBody; +import com.aliyun.imageaudit20191230.models.ScanTextRequest; +import com.aliyun.teaopenapi.models.Config; +import com.aliyun.teautil.models.RuntimeOptions; +import com.ruoyi.common.core.web.domain.AjaxResult; +import org.apache.commons.lang3.StringUtils; + +public class TextAutoRoute { + public static AjaxResult check(String content){ + Config config = new Config(); + config.setAccessKeyId("LTAI5tM1LeE2pkiS3qEFQkfb"); + config.setAccessKeySecret("fEZZyFvWkETS8Clm73f7qmY9ohcTpc"); + //接入区域和地址请根据实际情况修改 + config.setRegionId("cn-shanghai"); + config.setEndpoint("green-cip.cn-shanghai.aliyuncs.com"); + //连接时超时时间,单位毫秒(ms)。 + config.setReadTimeout(6000); + //读取时超时时间,单位毫秒(ms)。 + config.setConnectTimeout(3000); + //设置http代理。 + //config.setHttpProxy("http://10.10.xx.xx:xxxx"); + //设置https代理。 + //config.setHttpsProxy("https://10.10.xx.xx:xxxx"); + // 注意,此处实例化的client请尽可能重复使用,避免重复建立连接,提升检测性能 + Client client = null; + try { + client = new Client(config); + } catch (Exception e) { + e.printStackTrace(); + } + // 创建RuntimeObject实例并设置运行参数。 + RuntimeOptions runtime = new RuntimeOptions(); + runtime.readTimeout = 10000; + runtime.connectTimeout = 10000; + + //检测参数构造 + JSONObject serviceParameters = new JSONObject(); + serviceParameters.put("content", content); + + if (serviceParameters.get("content") == null || serviceParameters.getString("content").trim().length() == 0) { + return AjaxResult.error("参数不能为空!"); + } + TextModerationRequest textModerationRequest = new TextModerationRequest(); + /* + 文本检测service:内容安全控制台文本增强版规则配置的serviceCode,示例:chat_detection + */ + textModerationRequest.setService("nickname_detection"); + textModerationRequest.setServiceParameters(serviceParameters.toJSONString()); + try { + // 调用方法获取检测结果。 + TextModerationResponse response = client.textModerationWithOptions(textModerationRequest, runtime); + + // 自动路由。 + if (response != null) { + // 服务端错误,区域切换到cn-beijing。 + if (500 == response.getStatusCode() || (response.getBody() != null && 500 == (response.getBody().getCode()))) { + // 接入区域和地址请根据实际情况修改。 + config.setRegionId("cn-beijing"); + config.setEndpoint("green-cip.cn-beijing.aliyuncs.com"); + client = new Client(config); + response = client.textModerationWithOptions(textModerationRequest, runtime); + } + + } + // 打印检测结果。 + if (response != null) { + if (response.getStatusCode() == 200) { + TextModerationResponseBody result = response.getBody(); + Integer code = result.getCode(); + if (code != null && code == 200) { + TextModerationResponseBody.TextModerationResponseBodyData data = result.getData(); + /*System.out.println("labels = [" + data.getLabels() + "]"); + System.out.println("reason = [" + data.getReason() + "]");*/ + return AjaxResult.success(data.getLabels()); + } + } + } + } catch (Exception e) { + e.printStackTrace(); + } + return AjaxResult.error("请稍后重试!"); + } + + public static void main(String[] args) { + AjaxResult ajaxResult = check("吃饭好"); + if (Integer.valueOf(ajaxResult.get("code").toString()) == 200 && StringUtils.isNotBlank(ajaxResult.get("msg").toString())){ + System.out.println(1); + } + System.out.println(ajaxResult); + } +}