Forráskód Böngészése

feat:“账号增加海外地区选择功能"

soobin 8 hónapja
szülő
commit
c5b45d5503

+ 1 - 1
src/main/java/com/szwl/aspect/MyWebMvcConfigurer.java

@@ -51,7 +51,7 @@ public class MyWebMvcConfigurer extends WebMvcConfigurationSupport {
                 "/syncOldProportion/**",
                 "/syncOldJoinpayMch/**",
                 "/tLocationCheck/**",
-                "/tTest/**",
+                "/test/**",
                 "/tHotUpdate/**",
                 "/tAlarmClean/**",
                 "/mqtt/**"

+ 83 - 9
src/main/java/com/szwl/controller/TAdminController.java

@@ -71,6 +71,15 @@ public class TAdminController {
 
     @Autowired
     TWechatService wechatService;
+    
+    @Autowired
+    TAreaService areaService;
+    
+    @Autowired
+    CitiesService citiesService;
+
+    @Autowired
+    private CountriesService countriesService;
 
     public TAdminController(SysRoleService sysRoleService, SysUserRoleService sysUserRoleService, TokenManager tokenManager, TAdminService tAdminService, TAdminEquipmentService tAdminEquipmentService, TMessageCodeService tMessageCodeService, TAirwallexWalletService airwallexWalletService, PayFeign payFeign) {
         this.sysRoleService = sysRoleService;
@@ -225,11 +234,6 @@ public class TAdminController {
     @Transactional
     @Audit(type = AuditEnum.UPDATE, content = "#loginUser.name + '修改账号'")
     public ResponseModel<?> updateLoginUser(@RequestBody @Valid UpdateLoginUserParam param) {
-//    public ResponseModel<?> addLoginUser(@RequestBody  AddLoginUserParam param) {
-        //获取当前操作人员
-//        UserDetailBO loginUser = tokenManager.getLoginUserDetails();
-        // 保存用户实体
-//        Date now = new Date();
         Long parentId = param.getAdminId();
         if (parentId == null) {
             return R.fail(ResponseCodesEnum.A0001);
@@ -471,6 +475,28 @@ public class TAdminController {
                 return R.fail(ResponseCodesEnum.R0003);
             }
         }
+        
+        // 增加地区
+        Long areaId = null;
+        if (StringUtils.isNotEmpty(registerParam.getCities())) {
+            if (registerParam.getIfForeign().equals("0")) {
+                // 国内
+                LambdaQueryWrapper<TArea> query = Wrappers.lambdaQuery();
+                query.eq(TArea::getFullName, registerParam.getCities());
+                TArea area = areaService.getOne(query);
+                if (area != null) {
+                    areaId = area.getId();
+                }
+            } else {
+                // 国外
+                LambdaQueryWrapper<Cities> query = Wrappers.lambdaQuery();
+                query.eq(Cities::getCode, registerParam.getCities());
+                Cities cities = citiesService.getOne(query);
+                if (cities != null) {
+                    areaId = cities.getId();
+                }
+            }
+        }
 
         if (StringUtils.isEmpty(registerParam.getCode())) {
             return R.fail(ResponseCodesEnum.R0005);
@@ -536,6 +562,8 @@ public class TAdminController {
             admin.setUsername(registerParam.getUsername());
             admin.setName(registerParam.getName());
             admin.setIfForeign(registerParam.getIfForeign());
+            // 地区ID
+            admin.setAreaId(areaId);
             if (registerParam.getIfForeign().equals("1")) {
                 admin.setPromoCodeOpen("0");
             }
@@ -589,10 +617,6 @@ public class TAdminController {
                         if ("1".equals(registerParam.getIfForeign())) {
                             TAirwallexWallet wallet = new TAirwallexWallet();
                             wallet.setAdminId(admin.getId());
-//                            wallet.setAccountCurrency("USD");
-//                            wallet.setAccountAmount(new BigDecimal("0.00"));
-//                            airwallexWalletService.save(wallet);
-//                            System.out.println("wallet >>> " + wallet);
                             payFeign.saveAirwallexWallet(wallet);
                         }
                     } catch (Exception e) {
@@ -1197,5 +1221,55 @@ public class TAdminController {
         }
         return R.ok();
     }
+
+    @ApiOperation("修改地区")
+    @GetMapping("/updateArea")
+    public ResponseModel<?> updateArea(String adminId, String areaValue) {
+        TAdmin admin = tAdminService.getById(adminId);
+        if (admin != null) {
+            if (StringUtils.isNotEmpty(admin.getIfForeign()) && admin.getIfForeign().equals("1")) {
+                // 国外
+                LambdaQueryWrapper<Cities> query = Wrappers.lambdaQuery();
+                query.eq(Cities::getCode, areaValue);
+                Cities cities = citiesService.getOne(query);
+                if (cities != null) {
+                    admin.setAreaId(cities.getId());
+                }
+            } else {
+                // 国内
+                LambdaQueryWrapper<TArea> query = Wrappers.lambdaQuery();
+                query.eq(TArea::getFullName, areaValue);
+                TArea area = areaService.getOne(query);
+                if (area != null) {
+                    admin.setAreaId(area.getId());
+                }
+            }
+            tAdminService.updateById(admin);
+        }
+        return R.ok();
+    }
+
+    @ApiOperation("国内账号获取所属地区")
+    @GetMapping("/getAreaById")
+    public ResponseModel<?> getAreaById(Long areaId) {
+        TArea area = areaService.getById(areaId);
+        return R.ok(area);
+    }
+
+
+    @ApiOperation("海外账号获取所属地区")
+    @GetMapping("/getCitiesById")
+    public ResponseModel<?> getCitiesById(Long areaId) {
+        String areaName = "";
+        Cities cities = citiesService.getById(areaId);
+        if (cities != null) {
+            Long countryId = cities.getCountryId();
+            String cityCode = cities.getCode();
+            Countries countries = countriesService.getById(countryId);
+            String countryCode = countries.getCode();
+            areaName = cityCode + "/"+ countryCode;
+        }
+        return R.ok(areaName);
+    }
 }
 

+ 0 - 5
src/main/java/com/szwl/controller/TAreaController.java

@@ -3,20 +3,15 @@ package com.szwl.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.szwl.constant.ResponseCodesEnum;
 import com.szwl.model.bean.AreaDTO;
 import com.szwl.model.bo.R;
 import com.szwl.model.bo.ResponseModel;
-import com.szwl.model.entity.TAd;
-import com.szwl.model.entity.TAdmin;
 import com.szwl.model.entity.TArea;
-import com.szwl.service.TAdminService;
 import com.szwl.service.TAreaService;
 import io.swagger.annotations.ApiOperation;
 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.ArrayList;

+ 16 - 0
src/main/java/com/szwl/mapper/CitiesMapper.java

@@ -0,0 +1,16 @@
+package com.szwl.mapper;
+
+import com.szwl.model.entity.Cities;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author wuhs
+ * @since 2024-12-03
+ */
+public interface CitiesMapper extends BaseMapper<Cities> {
+
+}

+ 16 - 0
src/main/java/com/szwl/mapper/CountriesMapper.java

@@ -0,0 +1,16 @@
+package com.szwl.mapper;
+
+import com.szwl.model.entity.Countries;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ *  Mapper 接口
+ * </p>
+ *
+ * @author wuhs
+ * @since 2024-12-03
+ */
+public interface CountriesMapper extends BaseMapper<Countries> {
+
+}

+ 18 - 0
src/main/java/com/szwl/mapper/xml/CitiesMapper.xml

@@ -0,0 +1,18 @@
+<?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.szwl.mapper.CitiesMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.szwl.model.entity.Cities">
+        <id column="id" property="id" />
+        <result column="country_id" property="countryId" />
+        <result column="name" property="name" />
+        <result column="code" property="code" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, country_id, name, code
+    </sql>
+
+</mapper>

+ 17 - 0
src/main/java/com/szwl/mapper/xml/CountriesMapper.xml

@@ -0,0 +1,17 @@
+<?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.szwl.mapper.CountriesMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.szwl.model.entity.Countries">
+        <id column="id" property="id" />
+        <result column="code" property="code" />
+        <result column="name" property="name" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, code, name
+    </sql>
+
+</mapper>

+ 3 - 0
src/main/java/com/szwl/model/dto/RegisterParamDTO.java

@@ -39,6 +39,9 @@ public class RegisterParamDTO {
     @ApiModelProperty("邀请码")
     private String inviteCode;
 
+    @ApiModelProperty("地区/国家城市")
+    private String cities;
+
 //    private Date createDate;
 //
 //    private Date modifyDate;

+ 39 - 0
src/main/java/com/szwl/model/entity/Cities.java

@@ -0,0 +1,39 @@
+package com.szwl.model.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author wuhs
+ * @since 2024-12-03
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="Cities对象", description="")
+public class Cities implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    @ApiModelProperty(value = "国家ID")
+    private Long countryId;
+
+    @ApiModelProperty(value = "城市名称")
+    private String name;
+
+    @ApiModelProperty(value = "城市代码")
+    private String code;
+
+
+}

+ 36 - 0
src/main/java/com/szwl/model/entity/Countries.java

@@ -0,0 +1,36 @@
+package com.szwl.model.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author wuhs
+ * @since 2024-12-03
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="Countries对象", description="")
+public class Countries implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Long id;
+
+    @ApiModelProperty(value = "国家代码")
+    private String code;
+
+    @ApiModelProperty(value = "国家名称")
+    private String name;
+
+
+}

+ 16 - 0
src/main/java/com/szwl/service/CitiesService.java

@@ -0,0 +1,16 @@
+package com.szwl.service;
+
+import com.szwl.model.entity.Cities;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author wuhs
+ * @since 2024-12-03
+ */
+public interface CitiesService extends IService<Cities> {
+
+}

+ 16 - 0
src/main/java/com/szwl/service/CountriesService.java

@@ -0,0 +1,16 @@
+package com.szwl.service;
+
+import com.szwl.model.entity.Countries;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author wuhs
+ * @since 2024-12-03
+ */
+public interface CountriesService extends IService<Countries> {
+
+}

+ 20 - 0
src/main/java/com/szwl/service/impl/CitiesServiceImpl.java

@@ -0,0 +1,20 @@
+package com.szwl.service.impl;
+
+import com.szwl.model.entity.Cities;
+import com.szwl.mapper.CitiesMapper;
+import com.szwl.service.CitiesService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author wuhs
+ * @since 2024-12-03
+ */
+@Service
+public class CitiesServiceImpl extends ServiceImpl<CitiesMapper, Cities> implements CitiesService {
+
+}

+ 20 - 0
src/main/java/com/szwl/service/impl/CountriesServiceImpl.java

@@ -0,0 +1,20 @@
+package com.szwl.service.impl;
+
+import com.szwl.model.entity.Countries;
+import com.szwl.mapper.CountriesMapper;
+import com.szwl.service.CountriesService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ *  服务实现类
+ * </p>
+ *
+ * @author wuhs
+ * @since 2024-12-03
+ */
+@Service
+public class CountriesServiceImpl extends ServiceImpl<CountriesMapper, Countries> implements CountriesService {
+
+}