Sfoglia il codice sorgente

feat(category): 添加客户ID字段并集成地区信息查询功能

- 在CategoryDto中新增customerId字段用于标识客户
- 在CustomerInfoDTO中添加省份、城市、区县编码字段
- 在DkhCategoryMainServiceImpl中为各级分类设置客户ID
- 在SysUserController中查询客户信息时获取地区编码信息
- 在UserInfoVo中添加地区编码字段以返回完整用户信息
hurx 12 ore fa
parent
commit
6204d180b4

+ 13 - 0
ruoyi-api/ruoyi-api-customer/src/main/java/org/dromara/customer/api/domain/dto/CustomerInfoDTO.java

@@ -36,7 +36,20 @@ public class CustomerInfoDTO implements Serializable {
      */
     private String status;
 
+    /**
+     * 省份编码
+     */
+    private String regProvincialNo;
 
+    /**
+     * 城市编码
+     */
+    private String regCityNo;
+
+    /**
+     * 区县编码
+     */
+    private String regCountyNo;
 
 
 }

+ 5 - 0
ruoyi-api/ruoyi-api-product/src/main/java/org/dromara/product/api/domain/CategoryDto.java

@@ -134,6 +134,11 @@ public class CategoryDto implements Serializable {
      */
     private Long reviewerId;
 
+    /**
+     * 客户id
+     * */
+    private Long customerId;
+
     /**
      * 子分类列表(用于树形结构)
      */

+ 3 - 0
ruoyi-modules/ruoyi-mall/src/main/java/org/dromara/mall/service/impl/DkhCategoryMainServiceImpl.java

@@ -162,6 +162,7 @@ public class DkhCategoryMainServiceImpl extends ServiceImpl<DkhCategoryMainMappe
                     level1Dto.setDataSource("youyi");
                     level1Dto.setPlatform(4L);
                     level1Dto.setAncestors("0");
+                    level1Dto.setCustomerId(bo.getCustomerId());
 
                     List<CategoryDto> level1List = new ArrayList<>();
                     level1List.add(level1Dto);
@@ -184,6 +185,7 @@ public class DkhCategoryMainServiceImpl extends ServiceImpl<DkhCategoryMainMappe
                                 level2Dto.setSort(level2Node.has("sortOrder") ? level2Node.get("sortOrder").asLong() : 0L);
                                 level2Dto.setDataSource("youyi");
                                 level2Dto.setPlatform(4L);
+                                level2Dto.setCustomerId(bo.getCustomerId());
                                 level2Dto.setAncestors(level1Ancestors);
 
                                 List<CategoryDto> level2List = new ArrayList<>();
@@ -217,6 +219,7 @@ public class DkhCategoryMainServiceImpl extends ServiceImpl<DkhCategoryMainMappe
                                         level3Dto.setSort(level3Node.has("sortOrder") ? level3Node.get("sortOrder").asLong() : 0L);
                                         level3Dto.setDataSource("youyi");
                                         level3Dto.setPlatform(4L);
+                                        level3Dto.setCustomerId(bo.getCustomerId());
                                         level3Dto.setAncestors(level2Ancestors);
 
                                         List<CategoryDto> level3List = new ArrayList<>();

+ 6 - 1
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/system/SysUserController.java

@@ -24,6 +24,7 @@ import org.dromara.common.satoken.utils.LoginHelper;
 import org.dromara.common.tenant.helper.TenantHelper;
 import org.dromara.common.web.core.BaseController;
 import org.dromara.customer.api.RemoteCustomerService;
+import org.dromara.customer.api.domain.dto.CustomerInfoDTO;
 import org.dromara.system.api.model.LoginUser;
 import org.dromara.system.domain.bo.SysDeptBo;
 import org.dromara.system.domain.bo.SysPostBo;
@@ -126,8 +127,12 @@ public class SysUserController extends BaseController {
         userInfoVo.setSupplierId(loginUser.getSupplierId());
         userInfoVo.setPartnerId(loginUser.getPartnerId());
         if (ObjectUtil.isNotEmpty(loginUser.getCustomerId())) {
+            CustomerInfoDTO customerInfoDTO = remoteCustomerService.selectCustomerInfoById(loginUser.getCustomerId());
             userInfoVo.setCompanyName(remoteCustomerService.selectCompanyNameByCustomerId(loginUser.getCustomerId()));
-            userInfoVo.setCustomerName(remoteCustomerService.selectCustomerInfoById(loginUser.getCustomerId()).getCustomerName());
+            userInfoVo.setCustomerName(customerInfoDTO.getCustomerName());
+            userInfoVo.setRegProvincialNo(customerInfoDTO.getRegProvincialNo());
+            userInfoVo.setRegCityNo(customerInfoDTO.getRegCityNo());
+            userInfoVo.setRegCountyNo(customerInfoDTO.getRegCountyNo());
         }
 
         return R.ok(userInfoVo);

+ 15 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/UserInfoVo.java

@@ -58,4 +58,19 @@ public class UserInfoVo implements Serializable {
      */
     private Set<String> roles;
 
+    /**
+     * 省份编码
+     */
+    private String regProvincialNo;
+
+    /**
+     * 城市编码
+     */
+    private String regCityNo;
+
+    /**
+     * 区县编码
+     */
+    private String regCountyNo;
+
 }