From cd8cd7b6cff67f1de494e822074888a6ed7c3426 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期二, 21 一月 2025 14:36:39 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/RegionController.java | 27 +++++++++ ruoyi-api/ruoyi-api-company/src/main/java/com/ruoyi/company/api/model/UserDetail.java | 12 ++++ ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java | 1 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/Region.java | 21 +++++++ ruoyi-gateway/src/main/resources/bootstrap.yml | 1 ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml | 1 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/RegionService.java | 10 +++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RegionMapper.java | 7 ++ ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RegionServiceImpl.java | 57 +++++++++++++++++++ 9 files changed, 137 insertions(+), 0 deletions(-) diff --git a/ruoyi-api/ruoyi-api-company/src/main/java/com/ruoyi/company/api/model/UserDetail.java b/ruoyi-api/ruoyi-api-company/src/main/java/com/ruoyi/company/api/model/UserDetail.java index 3e38675..b2bcf33 100644 --- a/ruoyi-api/ruoyi-api-company/src/main/java/com/ruoyi/company/api/model/UserDetail.java +++ b/ruoyi-api/ruoyi-api-company/src/main/java/com/ruoyi/company/api/model/UserDetail.java @@ -6,41 +6,53 @@ import java.time.LocalDateTime; @Data +@Schema(description = "用户详情") public class UserDetail { + @Schema(description = "用户id") private Long userId; @Schema(description = "公司名称") private String companyName; /** 统一社会信用代码 */ + @Schema(description = "统一社会信用代码") private String socialCode; /** 联系人姓名 */ + @Schema(description = "联系人姓名") private String contactName; /** 联系人手机号 */ + @Schema(description = "联系人手机号") private String contactPhone; /** 联系人邮箱 */ + @Schema(description = "联系人邮箱") private String email; /** 账号 */ + @Schema(description = "账号") private String accountName; /** 用户名称 */ + @Schema(description = "用户名称") private String userName; /** 注册时间 */ + @Schema(description = "注册时间") private LocalDateTime registerTime; /** 绑定手机号 */ + @Schema(description = "绑定手机号") private String phone; /** 账号ID */ + @Schema(description = "账号ID") private Long accountId; /** 登录密码 */ + @Schema(description = "登录密码") private String password; } diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/Region.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/Region.java new file mode 100644 index 0000000..6b77db3 --- /dev/null +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/Region.java @@ -0,0 +1,21 @@ +package com.ruoyi.system.api.domain; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.List; + +@Data +@TableName("sys_region") +public class Region { + private Integer id; + private String name; + private String code; + private String citycode; + private Integer parentId; + private String english; + + @TableField(exist = false) // 表示该字段不在数据库表中 + private List<Region> children; // 子节点 +} diff --git a/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java b/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java index d60dbe4..57bd2d7 100644 --- a/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java +++ b/ruoyi-auth/src/main/java/com/ruoyi/auth/controller/TokenController.java @@ -157,6 +157,7 @@ appUser.setAccountName(user.getAccountName()); appUser.setPhone(user.getPhone()); appUser.setLoginTime(System.currentTimeMillis()); + appUser.setExpireTime(appUser.getLoginTime() + CacheConstants.EXPIRATION * 60 * 1000L); appUser.setToken(token); // 根据uuid将loginUser缓存 diff --git a/ruoyi-gateway/src/main/resources/bootstrap.yml b/ruoyi-gateway/src/main/resources/bootstrap.yml index ed0993a..9bb360b 100644 --- a/ruoyi-gateway/src/main/resources/bootstrap.yml +++ b/ruoyi-gateway/src/main/resources/bootstrap.yml @@ -15,6 +15,7 @@ discovery: # 服务注册地址 server-addr: 192.168.110.111:8848 + ip: 192.168.110.111 config: # 配置中心地址 server-addr: 192.168.110.111:8848 diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/RegionController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/RegionController.java new file mode 100644 index 0000000..8267142 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/RegionController.java @@ -0,0 +1,27 @@ +package com.ruoyi.system.controller; + +import com.ruoyi.common.core.domain.R; +import com.ruoyi.system.api.domain.Region; +import com.ruoyi.system.service.RegionService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import java.util.List; + +@RestController +@RequestMapping("/region") +@Tag(name = "区域管理") +public class RegionController { + + @Autowired + private RegionService regionService; + + @GetMapping("/tree") + @Operation(summary = "获取区域树") + public R<List<Region>> getRegionTree() { + return R.ok(regionService.getRegionTree()); + } +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RegionMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RegionMapper.java new file mode 100644 index 0000000..385abc0 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/RegionMapper.java @@ -0,0 +1,7 @@ +package com.ruoyi.system.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ruoyi.system.api.domain.Region; + +public interface RegionMapper extends BaseMapper<Region> { +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/RegionService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/RegionService.java new file mode 100644 index 0000000..b1cd1fa --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/RegionService.java @@ -0,0 +1,10 @@ +package com.ruoyi.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.system.api.domain.Region; + +import java.util.List; + +public interface RegionService extends IService<Region> { + List<Region> getRegionTree(); +} diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RegionServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RegionServiceImpl.java new file mode 100644 index 0000000..2fc7c79 --- /dev/null +++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/RegionServiceImpl.java @@ -0,0 +1,57 @@ +package com.ruoyi.system.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.system.api.domain.Region; +import com.ruoyi.system.mapper.RegionMapper; +import com.ruoyi.system.service.RegionService; +import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + +@Service +public class RegionServiceImpl extends ServiceImpl<RegionMapper, Region> implements RegionService { + + @Override + public List<Region> getRegionTree() { + // 查询所有数据 + List<Region> allRegions = list(); + + // 构建树形结构 + return buildTree(allRegions); + } + + /** + * 构建树形结构 + * + * @param allRegions 所有地区数据 + * @return 树形结构数据 + */ + private List<Region> buildTree(List<Region> allRegions) { + // 1. 找到所有省份(parentId为null或0) + List<Region> provinces = allRegions.stream() + .filter(region -> region.getParentId() == null || region.getParentId() == 0) + .collect(Collectors.toList()); + + // 2. 递归设置子节点 + provinces.forEach(province -> { + province.setChildren(getChildren(province, allRegions)); + }); + + return provinces; + } + + /** + * 递归获取子节点 + * + * @param parent 父节点 + * @param allRegions 所有地区数据 + * @return 子节点列表 + */ + private List<Region> getChildren(Region parent, List<Region> allRegions) { + return allRegions.stream() + .filter(region -> parent.getId().equals(region.getParentId())) + .peek(region -> region.setChildren(getChildren(region, allRegions))) + .collect(Collectors.toList()); + } +} diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml index b170917..59ba4cc 100644 --- a/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml +++ b/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml @@ -15,6 +15,7 @@ discovery: # 服务注册地址 server-addr: 192.168.110.111:8848 + ip: 192.168.110.111 config: # 配置中心地址 server-addr: 192.168.110.111:8848 -- Gitblit v1.7.1