diff --git a/sql/mysql/recent/member_recent.sql b/sql/mysql/recent/member_recent.sql index 2d82965..f601a13 100644 --- a/sql/mysql/recent/member_recent.sql +++ b/sql/mysql/recent/member_recent.sql @@ -144,10 +144,10 @@ CREATE TABLE `member_location` ) ENGINE = InnoDB AUTO_INCREMENT = 32 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '用户位置记录'; -- ---------------------------- --- Table structure for member_tag +-- Table structure for member_recent_tag -- ---------------------------- -DROP TABLE IF EXISTS `member_tag`; -CREATE TABLE `member_tag` +DROP TABLE IF EXISTS `member_recent_tag`; +CREATE TABLE `member_recent_tag` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户tagid', `member_id` bigint NOT NULL COMMENT '人员id', @@ -160,7 +160,7 @@ CREATE TABLE `member_tag` `deleted` bit(1) NOT NULL DEFAULT b'0' COMMENT '是否删除', `tenant_id` bigint NOT NULL DEFAULT 0 COMMENT '租户编号', PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB AUTO_INCREMENT = 32 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '用户tag'; +) ENGINE = InnoDB AUTO_INCREMENT = 32 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = '朋友圈用户tag'; -- ---------------------------- -- Table structure for member_open_type diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApi.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApi.java index 75c0ddf..51d6752 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApi.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApi.java @@ -1,13 +1,13 @@ package cn.iocoder.yudao.module.member.client.service; -import cn.iocoder.yudao.module.member.client.vo.ChatTableRespVO; -import cn.iocoder.yudao.module.member.client.vo.friend.ChatAddFriendReqVo; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageCountReqVO; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageInfoReqVO; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageReqVO; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageRespVO; -import cn.iocoder.yudao.module.member.client.vo.sensitive.*; -import cn.iocoder.yudao.module.member.client.vo.user.*; +import cn.iocoder.yudao.module.member.client.vo.chat.ChatTableRespVO; +import cn.iocoder.yudao.module.member.client.vo.chat.friend.ChatAddFriendReqVo; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageCountReqVO; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageInfoReqVO; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageReqVO; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageRespVO; +import cn.iocoder.yudao.module.member.client.vo.chat.sensitive.*; +import cn.iocoder.yudao.module.member.client.vo.chat.user.*; import javax.validation.Valid; import java.util.List; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApiImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApiImpl.java index 81e7ce4..eb805c1 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApiImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/ChatApiImpl.java @@ -5,15 +5,15 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.http.HttpRequest; import cn.hutool.json.JSONUtil; import cn.iocoder.yudao.module.member.client.tool.ChatApiTool; -import cn.iocoder.yudao.module.member.client.vo.ChatBaseRespVo; -import cn.iocoder.yudao.module.member.client.vo.ChatTableRespVO; -import cn.iocoder.yudao.module.member.client.vo.friend.ChatAddFriendReqVo; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageCountReqVO; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageInfoReqVO; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageReqVO; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageRespVO; -import cn.iocoder.yudao.module.member.client.vo.sensitive.*; -import cn.iocoder.yudao.module.member.client.vo.user.*; +import cn.iocoder.yudao.module.member.client.vo.chat.ChatBaseRespVo; +import cn.iocoder.yudao.module.member.client.vo.chat.ChatTableRespVO; +import cn.iocoder.yudao.module.member.client.vo.chat.friend.ChatAddFriendReqVo; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageCountReqVO; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageInfoReqVO; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageReqVO; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageRespVO; +import cn.iocoder.yudao.module.member.client.vo.chat.sensitive.*; +import cn.iocoder.yudao.module.member.client.vo.chat.user.*; import cn.iocoder.yudao.module.member.framework.web.config.ChatProperties; import lombok.extern.slf4j.Slf4j; import org.apache.commons.codec.digest.DigestUtils; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/TxMapApi.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/TxMapApi.java new file mode 100644 index 0000000..0c314fb --- /dev/null +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/TxMapApi.java @@ -0,0 +1,14 @@ +package cn.iocoder.yudao.module.member.client.service; + + +import cn.iocoder.yudao.module.member.client.vo.txmap.geocoder.TxMapGeocoderReqVo; +import cn.iocoder.yudao.module.member.client.vo.txmap.geocoder.TxMapGeocoderRespVo; + +public interface TxMapApi { + + /** + * 地址逆向解析 + */ + TxMapGeocoderRespVo geocoder(TxMapGeocoderReqVo dto); + +} diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/TxMapApiImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/TxMapApiImpl.java new file mode 100644 index 0000000..aa2687c --- /dev/null +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/service/TxMapApiImpl.java @@ -0,0 +1,99 @@ +package cn.iocoder.yudao.module.member.client.service; + + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.URLUtil; +import cn.hutool.http.HttpRequest; +import cn.hutool.json.JSONUtil; +import cn.iocoder.yudao.module.member.client.tool.TxMapApiTool; +import cn.iocoder.yudao.module.member.client.vo.chat.ChatBaseRespVo; +import cn.iocoder.yudao.module.member.client.vo.txmap.TxMapRespVo; +import cn.iocoder.yudao.module.member.client.vo.txmap.geocoder.TxMapGeocoderReqVo; +import cn.iocoder.yudao.module.member.client.vo.txmap.geocoder.TxMapGeocoderRespVo; +import cn.iocoder.yudao.module.member.framework.web.config.TxMapProperties; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.codec.digest.DigestUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.*; + +@Slf4j +@Service +public class TxMapApiImpl implements TxMapApi { + + @Resource + private TxMapProperties txMapProperties; + + /** + * 地址逆向解析 + */ + @Override + public TxMapGeocoderRespVo geocoder(TxMapGeocoderReqVo dto) { + dto.setKey(txMapProperties.getAppKey()); + TxMapApiTool.API api = setApiConfig(TxMapApiTool.GEOCODER); + try { + String res = HttpRequest.get(api.getFullPath() + apiCountersignParams(api, BeanUtil.beanToMap(dto))).execute().body(); + log.debug("地址逆向解析,res:{}", res); + if (ObjectUtil.isEmpty(res)) { + log.error("地址逆向解析,res为空"); + return null; + } + TxMapRespVo baseRes = JSONUtil.toBean(res, TxMapRespVo.class); + if (ObjectUtil.isEmpty(baseRes) || !baseRes.isSuccess()) { + log.error("地址逆向解析,返回错误"); + return null; + } + if (ObjectUtil.isEmpty(baseRes.getResult())) { + log.error("地址逆向解析,res.result为空"); + return null; + } + return JSONUtil.toBean(baseRes.getResult(), TxMapGeocoderRespVo.class); + } catch (Exception e) { + e.printStackTrace(); + log.error("地址逆向解析,意外的错误", e); + return null; + } + } + + private TxMapApiTool.API setApiConfig(TxMapApiTool.API api) { + if (ObjectUtil.isNotEmpty(api)) { + api.setHost(txMapProperties.getBaseUrl()); + } + api.init(); + return api; + } + + /** + * 接口加签 + */ + private String apiCountersignParams(TxMapApiTool.API api, Map params) { + try { + TreeMap treeMap = new TreeMap<>(params); + + api.setParamsMap(treeMap); + String paramsMap = api.getParamsString(); + + String signStr = String.format("%s%s%s", api.getUrl(), paramsMap, txMapProperties.getAppSecret()); + + params.put("sig", DigestUtils.md5Hex(URLUtil.decode(signStr)).toLowerCase()); + + StringBuilder query = new StringBuilder(); + for (Map.Entry entry : params.entrySet()) { + if (ObjectUtil.isNotEmpty(entry.getValue())) { + if (ObjectUtil.isNotEmpty(query)) query.append("&"); + query.append(URLEncoder.encode(entry.getKey(), StandardCharsets.UTF_8.name())).append("=").append(URLEncoder.encode(String.valueOf(entry.getValue()), StandardCharsets.UTF_8.name())); + } + } + return "?" + query; + } catch (Exception e) { + e.printStackTrace(); + log.error("|接口加签|,意外的错误", e); + return ""; + } + } + +} diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/tool/TxMapApiTool.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/tool/TxMapApiTool.java new file mode 100644 index 0000000..d9b2163 --- /dev/null +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/tool/TxMapApiTool.java @@ -0,0 +1,65 @@ +package cn.iocoder.yudao.module.member.client.tool; + +import cn.hutool.core.util.ObjectUtil; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.http.HttpMethod; + +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.Map; + +/** + * 腾讯地图工具类 + */ +public class TxMapApiTool { + + + public static final TxMapApiTool.API GEOCODER = TxMapApiTool.API.builder().summary("逆地址解析(坐标位置描述)").url("/ws/geocoder/v1").method(HttpMethod.GET).build(); + + @Data + @Builder + @AllArgsConstructor + @NoArgsConstructor + static public class API { + + private String summary; + + private String host; + + private String url; + + private String fullPath; + + private HttpMethod method; + + private Map paramsMap; + + public String getParamsString() throws UnsupportedEncodingException { + if (ObjectUtil.isEmpty(this.paramsMap)) return ""; + StringBuilder query = new StringBuilder(); + for (Map.Entry entry : paramsMap.entrySet()) { + if (ObjectUtil.isNotEmpty(entry.getValue())) { + if (ObjectUtil.isNotEmpty(query)) query.append("&"); + query.append(URLEncoder.encode(entry.getKey(), StandardCharsets.UTF_8.name())).append("=").append(URLEncoder.encode(String.valueOf(entry.getValue()), StandardCharsets.UTF_8.name())); + } + } + return "?" + query; + } + + public TxMapApiTool.API setParamsMap(Map paramsMap) { + this.paramsMap = paramsMap; + return this; + } + + public String init() { + String apiPath = host + url; + fullPath = apiPath; + return apiPath; + } + } + +} diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/ChatBaseRespVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/ChatBaseRespVo.java similarity index 82% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/ChatBaseRespVo.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/ChatBaseRespVo.java index 6a90bd3..3f4e5dc 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/ChatBaseRespVo.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/ChatBaseRespVo.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo; +package cn.iocoder.yudao.module.member.client.vo.chat; import cn.hutool.core.util.ObjUtil; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/ChatTableRespVO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/ChatTableRespVO.java similarity index 97% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/ChatTableRespVO.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/ChatTableRespVO.java index 26e4dba..e9584ef 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/ChatTableRespVO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/ChatTableRespVO.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo; +package cn.iocoder.yudao.module.member.client.vo.chat; import cn.hutool.http.HttpStatus; import com.baomidou.mybatisplus.core.metadata.IPage; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/friend/ChatAddFriendReqVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/friend/ChatAddFriendReqVo.java similarity index 87% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/friend/ChatAddFriendReqVo.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/friend/ChatAddFriendReqVo.java index 7420c62..b32e496 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/friend/ChatAddFriendReqVo.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/friend/ChatAddFriendReqVo.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.friend; +package cn.iocoder.yudao.module.member.client.vo.chat.friend; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageCountReqVO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageCountReqVO.java similarity index 83% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageCountReqVO.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageCountReqVO.java index c67f40c..d3cb405 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageCountReqVO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageCountReqVO.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.privatemsg; +package cn.iocoder.yudao.module.member.client.vo.chat.privatemsg; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageInfoReqVO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageInfoReqVO.java similarity index 83% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageInfoReqVO.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageInfoReqVO.java index b05dd76..aece441 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageInfoReqVO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageInfoReqVO.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.privatemsg; +package cn.iocoder.yudao.module.member.client.vo.chat.privatemsg; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageReqVO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageReqVO.java similarity index 95% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageReqVO.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageReqVO.java index 99703f0..126daf1 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageReqVO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageReqVO.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.privatemsg; +package cn.iocoder.yudao.module.member.client.vo.chat.privatemsg; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageRespVO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageRespVO.java similarity index 92% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageRespVO.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageRespVO.java index 1d037e7..870aeb0 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/privatemsg/ChatPrivateMessageRespVO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/privatemsg/ChatPrivateMessageRespVO.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.privatemsg; +package cn.iocoder.yudao.module.member.client.vo.chat.privatemsg; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveDelReqVO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveDelReqVO.java similarity index 85% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveDelReqVO.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveDelReqVO.java index 6b48ffa..71c444d 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveDelReqVO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveDelReqVO.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.sensitive; +package cn.iocoder.yudao.module.member.client.vo.chat.sensitive; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveInfoReqVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveInfoReqVo.java similarity index 78% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveInfoReqVo.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveInfoReqVo.java index a9046a2..7f68dc9 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveInfoReqVo.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveInfoReqVo.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.sensitive; +package cn.iocoder.yudao.module.member.client.vo.chat.sensitive; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveReqVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveReqVo.java similarity index 90% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveReqVo.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveReqVo.java index c6149c3..1c2d0a5 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveReqVo.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveReqVo.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.sensitive; +package cn.iocoder.yudao.module.member.client.vo.chat.sensitive; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveRespVO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveRespVO.java similarity index 90% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveRespVO.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveRespVO.java index e6e0cbc..0028cfc 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveRespVO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveRespVO.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.sensitive; +package cn.iocoder.yudao.module.member.client.vo.chat.sensitive; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveSaveReqVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveSaveReqVo.java similarity index 87% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveSaveReqVo.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveSaveReqVo.java index deb61f0..97d2033 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/sensitive/ChatSensitiveSaveReqVo.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/sensitive/ChatSensitiveSaveReqVo.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.sensitive; +package cn.iocoder.yudao.module.member.client.vo.chat.sensitive; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatCreateOrUpdateUserReqVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatCreateOrUpdateUserReqVo.java similarity index 93% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatCreateOrUpdateUserReqVo.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatCreateOrUpdateUserReqVo.java index 677bac3..d500f2a 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatCreateOrUpdateUserReqVo.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatCreateOrUpdateUserReqVo.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.user; +package cn.iocoder.yudao.module.member.client.vo.chat.user; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatGetUserByUserIdReqVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatGetUserByUserIdReqVo.java similarity index 84% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatGetUserByUserIdReqVo.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatGetUserByUserIdReqVo.java index 3e4280e..493169a 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatGetUserByUserIdReqVo.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatGetUserByUserIdReqVo.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.user; +package cn.iocoder.yudao.module.member.client.vo.chat.user; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatGetUserByUserIdRespVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatGetUserByUserIdRespVo.java similarity index 96% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatGetUserByUserIdRespVo.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatGetUserByUserIdRespVo.java index 9e82850..36b16ac 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatGetUserByUserIdRespVo.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatGetUserByUserIdRespVo.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.user; +package cn.iocoder.yudao.module.member.client.vo.chat.user; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatLoginReqVO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatLoginReqVO.java similarity index 92% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatLoginReqVO.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatLoginReqVO.java index a4a0c47..e13812e 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatLoginReqVO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatLoginReqVO.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.user; +package cn.iocoder.yudao.module.member.client.vo.chat.user; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatLoginRespVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatLoginRespVo.java similarity index 90% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatLoginRespVo.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatLoginRespVo.java index b1701b5..3ab4f3b 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/user/ChatLoginRespVo.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/chat/user/ChatLoginRespVo.java @@ -1,4 +1,4 @@ -package cn.iocoder.yudao.module.member.client.vo.user; +package cn.iocoder.yudao.module.member.client.vo.chat.user; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/txmap/geocoder/TxMapGeocoderReqVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/txmap/geocoder/TxMapGeocoderReqVo.java new file mode 100644 index 0000000..4539672 --- /dev/null +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/txmap/geocoder/TxMapGeocoderReqVo.java @@ -0,0 +1,26 @@ +package cn.iocoder.yudao.module.member.client.vo.txmap.geocoder; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class TxMapGeocoderReqVo { + + /** + * 开发密钥(Key) + */ + private String key; + + /** + * 经纬度(GCJ02坐标系),格式:location=lat<纬度>,lng<经度>location=39.984154,116.307490 + */ + private String location; + + private String radius; + +} diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/txmap/geocoder/TxMapGeocoderRespVo.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/txmap/geocoder/TxMapGeocoderRespVo.java new file mode 100644 index 0000000..f3c7be4 --- /dev/null +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/client/vo/txmap/geocoder/TxMapGeocoderRespVo.java @@ -0,0 +1,85 @@ +package cn.iocoder.yudao.module.member.client.vo.txmap.geocoder; + +import lombok.Data; + +@Data +public class TxMapGeocoderRespVo { + + /** + * 以行政区划+道路+门牌号等信息组成的标准格式化地址 + */ + private String address; + + /** + * 结合知名地点形成的描述性地址,更具人性化特点 + */ + private FormattedAddresses formatted_addresses; + + /** + * 地址部件,address不满足需求时可自行拼接 + */ + private AddressComponent address_component; + + /** + * 结合知名地点形成的描述性地址,更具人性化特点 + */ + @Data + static public class FormattedAddresses { + + /** + * 推荐使用的地址描述,描述精确性较高 + */ + private String recommend; + + /** + * 粗略位置描述 + */ + private String rough; + + /** + * 基于附近关键地点(POI)的精确地址 + */ + private String standard_address; + + } + + /** + * 地址部件,address不满足需求时可自行拼接 + */ + @Data + static public class AddressComponent { + + /** + * 国家 + */ + private String nation; + + /** + * 省 + */ + private String province; + + /** + * 市,如果当前城市为省直辖县级区划,city与district字段均会返回此城市 + * 注:省直辖县级区划adcode第3和第4位分别为9、0,如济源市adcode为419001 + */ + private String city; + + /** + * 区,可能为空字串 + */ + private String district; + + /** + * 道路,可能为空字串 + */ + private String street; + + /** + * 门牌,可能为空字串 + */ + private String street_number; + + } + +} diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatPrivateMsgController.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatPrivateMsgController.java index d1768b9..bd3d7fc 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatPrivateMsgController.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatPrivateMsgController.java @@ -4,12 +4,12 @@ import cn.hutool.core.util.ObjectUtil; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.module.member.client.service.ChatApi; -import cn.iocoder.yudao.module.member.client.vo.ChatTableRespVO; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageCountReqVO; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageInfoReqVO; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageReqVO; -import cn.iocoder.yudao.module.member.client.vo.privatemsg.ChatPrivateMessageRespVO; -import cn.iocoder.yudao.module.member.client.vo.sensitive.ChatSensitiveRespVO; +import cn.iocoder.yudao.module.member.client.vo.chat.ChatTableRespVO; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageCountReqVO; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageInfoReqVO; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageReqVO; +import cn.iocoder.yudao.module.member.client.vo.chat.privatemsg.ChatPrivateMessageRespVO; +import cn.iocoder.yudao.module.member.client.vo.chat.sensitive.ChatSensitiveRespVO; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.validation.annotation.Validated; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatSensitiveController.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatSensitiveController.java index e5c0860..39e699b 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatSensitiveController.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/admin/chat/ChatSensitiveController.java @@ -4,9 +4,8 @@ import cn.hutool.core.util.ObjectUtil; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.module.member.client.service.ChatApi; -import cn.iocoder.yudao.module.member.client.vo.ChatTableRespVO; -import cn.iocoder.yudao.module.member.client.vo.sensitive.*; -import cn.iocoder.yudao.module.member.client.vo.user.ChatCreateOrUpdateUserReqVo; +import cn.iocoder.yudao.module.member.client.vo.chat.ChatTableRespVO; +import cn.iocoder.yudao.module.member.client.vo.chat.sensitive.*; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.validation.annotation.Validated; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/chat/AppChatController.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/chat/AppChatController.java index b92fed6..c62f9fc 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/chat/AppChatController.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/controller/app/chat/AppChatController.java @@ -2,7 +2,7 @@ package cn.iocoder.yudao.module.member.controller.app.chat; import cn.iocoder.yudao.framework.common.pojo.CommonResult; import cn.iocoder.yudao.module.member.client.service.ChatApi; -import cn.iocoder.yudao.module.member.client.vo.friend.ChatAddFriendReqVo; +import cn.iocoder.yudao.module.member.client.vo.chat.friend.ChatAddFriendReqVo; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import org.springframework.validation.annotation.Validated; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/tag/MemberTagDO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/tag/MemberTagDO.java index b984064..5d8a7c7 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/tag/MemberTagDO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/tag/MemberTagDO.java @@ -26,6 +26,7 @@ public class MemberTagDO extends BaseDO { */ @TableId private Long id; + /** * 标签名称 */ diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/user/MemberTagDO.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/user/MemberRecentTagDO.java similarity index 71% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/user/MemberTagDO.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/user/MemberRecentTagDO.java index 6abcec3..abcbbd6 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/user/MemberTagDO.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/dataobject/user/MemberRecentTagDO.java @@ -5,17 +5,17 @@ import com.baomidou.mybatisplus.annotation.*; import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; /** - * 用户tag DO + * 朋友圈用户tag DO */ -@TableName("member_tag") -@KeySequence("member_tag_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@TableName("member_recent_tag") +@KeySequence("member_recent_tag_seq") @Data @EqualsAndHashCode(callSuper = true) @ToString(callSuper = true) @Builder @NoArgsConstructor @AllArgsConstructor -public class MemberTagDO extends BaseDO { +public class MemberRecentTagDO extends BaseDO { /** * 用户tagid diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/user/MemberTagMapper.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/user/MemberRecentTagMapper.java similarity index 66% rename from yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/user/MemberTagMapper.java rename to yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/user/MemberRecentTagMapper.java index 1b7de78..3496cef 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/user/MemberTagMapper.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/dal/mysql/user/MemberRecentTagMapper.java @@ -1,13 +1,14 @@ package cn.iocoder.yudao.module.member.dal.mysql.user; import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; -import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberTagDO; +import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberRecentTagDO; import org.apache.ibatis.annotations.Mapper; /** - * 用户tag Mapper + * 朋友圈用户tag Mapper */ @Mapper -public interface MemberTagMapper extends BaseMapperX { +public interface MemberRecentTagMapper extends BaseMapperX { + } \ No newline at end of file diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/framework/web/config/TxMapProperties.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/framework/web/config/TxMapProperties.java new file mode 100644 index 0000000..803bbaa --- /dev/null +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/framework/web/config/TxMapProperties.java @@ -0,0 +1,18 @@ +package cn.iocoder.yudao.module.member.framework.web.config; + +import lombok.Data; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +@Component +@ConfigurationProperties("tx-map") +@Data +public class TxMapProperties { + + private String baseUrl; + + private String appKey; + + private String appSecret; + +} diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceImpl.java index a841eba..b71863e 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/auth/MemberAuthServiceImpl.java @@ -9,8 +9,8 @@ import cn.iocoder.yudao.framework.common.util.monitor.TracerUtils; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.framework.common.util.servlet.ServletUtils; import cn.iocoder.yudao.module.member.client.service.ChatApi; -import cn.iocoder.yudao.module.member.client.vo.user.ChatLoginReqVO; -import cn.iocoder.yudao.module.member.client.vo.user.ChatLoginRespVo; +import cn.iocoder.yudao.module.member.client.vo.chat.user.ChatLoginReqVO; +import cn.iocoder.yudao.module.member.client.vo.chat.user.ChatLoginRespVo; import cn.iocoder.yudao.module.member.controller.app.auth.vo.*; import cn.iocoder.yudao.module.member.convert.auth.AuthConvert; import cn.iocoder.yudao.module.member.dal.dataobject.user.MemberUserDO; diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/location/LocationServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/location/LocationServiceImpl.java index d8fca89..1feda06 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/location/LocationServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/location/LocationServiceImpl.java @@ -1,6 +1,10 @@ package cn.iocoder.yudao.module.member.service.location; +import cn.hutool.core.util.ObjectUtil; import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.module.member.client.service.TxMapApi; +import cn.iocoder.yudao.module.member.client.vo.txmap.geocoder.TxMapGeocoderReqVo; +import cn.iocoder.yudao.module.member.client.vo.txmap.geocoder.TxMapGeocoderRespVo; import cn.iocoder.yudao.module.member.enums.MemberErrorCode; import org.springframework.stereotype.Service; @@ -15,7 +19,6 @@ import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.module.member.dal.mysql.location.LocationMapper; -import java.util.Collections; import java.util.List; import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; @@ -31,10 +34,23 @@ public class LocationServiceImpl implements LocationService { @Resource private LocationMapper locationMapper; + @Resource + private TxMapApi txMapApi; + @Override - public Long createLocation(LocationSaveReqVO createReqVO) { + public Long createLocation(LocationSaveReqVO dto) { + if (!ObjectUtil.isAllEmpty(dto.getProvince(), dto.getCity(), dto.getDistrict())) { + TxMapGeocoderRespVo geocoder = txMapApi.geocoder(TxMapGeocoderReqVo.builder().location(dto.getLat() + "," + dto.getLon()).build()); + if (ObjectUtil.isNotEmpty(geocoder) && ObjectUtil.isNotEmpty(geocoder.getAddress_component())) { + TxMapGeocoderRespVo.AddressComponent addressComponent = geocoder.getAddress_component(); + dto.setProvince(addressComponent.getProvince()); + dto.setCity(addressComponent.getCity()); + dto.setDistrict(addressComponent.getDistrict()); + dto.setAddress(addressComponent.getStreet()); + } + } // 插入 - LocationDO location = BeanUtils.toBean(createReqVO, LocationDO.class); + LocationDO location = BeanUtils.toBean(dto, LocationDO.class); locationMapper.insert(location); // 返回 return location.getId(); diff --git a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserServiceImpl.java b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserServiceImpl.java index 043184f..040c2cd 100644 --- a/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserServiceImpl.java +++ b/yudao-module-member/yudao-module-member-biz/src/main/java/cn/iocoder/yudao/module/member/service/user/MemberUserServiceImpl.java @@ -9,7 +9,7 @@ import cn.iocoder.yudao.framework.common.enums.UserTypeEnum; import cn.iocoder.yudao.framework.common.pojo.PageResult; import cn.iocoder.yudao.framework.common.util.object.BeanUtils; import cn.iocoder.yudao.module.member.client.service.ChatApi; -import cn.iocoder.yudao.module.member.client.vo.user.ChatCreateOrUpdateUserReqVo; +import cn.iocoder.yudao.module.member.client.vo.chat.user.ChatCreateOrUpdateUserReqVo; import cn.iocoder.yudao.module.member.controller.admin.user.vo.MemberUserPageReqVO; import cn.iocoder.yudao.module.member.controller.admin.user.vo.MemberUserUpdateReqVO; import cn.iocoder.yudao.module.member.controller.app.user.vo.*; diff --git a/yudao-server/src/main/resources/application-dev.yaml b/yudao-server/src/main/resources/application-dev.yaml index cce9255..68d7666 100644 --- a/yudao-server/src/main/resources/application-dev.yaml +++ b/yudao-server/src/main/resources/application-dev.yaml @@ -230,4 +230,9 @@ pf4j: chat: base-url: http://127.0.0.1:8888 app-key: 4H2HkBLygMsxaQKO - app-secret: JIizm84av3TK5xaQdsng7X5mqLPjbeQ0 \ No newline at end of file + app-secret: JIizm84av3TK5xaQdsng7X5mqLPjbeQ0 + +tx-map: + base-url: https://apis.map.qq.com + app-key: GGCBZ-SVPWT-IO6XL-LHZ3I-YPMBS-O6B6D + app-secret: uYWt4DalxHgFnk6d9ul2KLdPVM1ABD9m \ No newline at end of file diff --git a/yudao-server/src/main/resources/application-local.yaml b/yudao-server/src/main/resources/application-local.yaml index 55f7fd4..80396ce 100644 --- a/yudao-server/src/main/resources/application-local.yaml +++ b/yudao-server/src/main/resources/application-local.yaml @@ -252,4 +252,9 @@ pf4j: chat: base-url: http://127.0.0.1:8888 app-key: 4H2HkBLygMsxaQKO - app-secret: JIizm84av3TK5xaQdsng7X5mqLPjbeQ0 \ No newline at end of file + app-secret: JIizm84av3TK5xaQdsng7X5mqLPjbeQ0 + +tx-map: + base-url: https://apis.map.qq.com + app-key: GGCBZ-SVPWT-IO6XL-LHZ3I-YPMBS-O6B6D + app-secret: uYWt4DalxHgFnk6d9ul2KLdPVM1ABD9m \ No newline at end of file diff --git a/yudao-server/src/main/resources/application-prod.yaml b/yudao-server/src/main/resources/application-prod.yaml index d646c0f..c5e533d 100644 --- a/yudao-server/src/main/resources/application-prod.yaml +++ b/yudao-server/src/main/resources/application-prod.yaml @@ -167,12 +167,12 @@ debug: false --- #################### 微信公众号、小程序相关配置 #################### wx: mp: # 公众号配置(必填),参见 https://github.com/Wechat-Group/WxJava/blob/develop/spring-boot-starters/wx-java-mp-spring-boot-starter/README.md 文档 -# app-id: wx041349c6f39b268b # 测试号(牛希尧提供的) -# secret: 5abee519483bc9f8cb37ce280e814bd0 + # app-id: wx041349c6f39b268b # 测试号(牛希尧提供的) + # secret: 5abee519483bc9f8cb37ce280e814bd0 app-id: wx5fb544743d0a860f secret: 6bed0b5b798db383af35e1ec54026d85 -# app-id: wxa69ab825b163be19 # 测试号(Kongdy 提供的) -# secret: bd4f9fab889591b62aeac0d7b8d8b4a0 + # app-id: wxa69ab825b163be19 # 测试号(Kongdy 提供的) + # secret: bd4f9fab889591b62aeac0d7b8d8b4a0 # 存储配置,解决 AccessToken 的跨节点的共享 config-storage: type: RedisTemplate # 采用 RedisTemplate 操作 Redis,会自动从 Spring 中获取 @@ -181,10 +181,10 @@ wx: miniapp: # 小程序配置(必填),参见 https://github.com/Wechat-Group/WxJava/blob/develop/spring-boot-starters/wx-java-miniapp-spring-boot-starter/README.md 文档 # appid: wx62056c0d5e8db250 # 测试号(牛希尧提供的) # secret: 333ae72f41552af1e998fe1f54e1584a -# appid: wx63c280fe3248a3e7 # wenhualian的接口测试号 -# secret: 6f270509224a7ae1296bbf1c8cb97aed -# appid: wxc4598c446f8a9cb3 # 测试号(Kongdy 提供的) -# secret: 4a1a04e07f6a4a0751b39c3064a92c8b + # appid: wx63c280fe3248a3e7 # wenhualian的接口测试号 + # secret: 6f270509224a7ae1296bbf1c8cb97aed + # appid: wxc4598c446f8a9cb3 # 测试号(Kongdy 提供的) + # secret: 4a1a04e07f6a4a0751b39c3064a92c8b appid: wx48555e58acd79c3d # 测试号(puhui 提供的) secret: f0f5fd485bac7f377af6f5ca97636dd4 config-storage: @@ -239,3 +239,12 @@ justauth: prefix: 'social_auth_state:' # 缓存前缀,目前只对 Redis 缓存生效,默认 JUSTAUTH::STATE:: timeout: 24h # 超时时长,目前只对 Redis 缓存生效,默认 3 分钟 +chat: + base-url: http://127.0.0.1:8888 + app-key: 4H2HkBLygMsxaQKO + app-secret: JIizm84av3TK5xaQdsng7X5mqLPjbeQ0 + +tx-map: + base-url: https://apis.map.qq.com + app-key: GGCBZ-SVPWT-IO6XL-LHZ3I-YPMBS-O6B6D + app-secret: uYWt4DalxHgFnk6d9ul2KLdPVM1ABD9m \ No newline at end of file