Phase 1-3 完成:apes-commons 内联 + 包名重构 + 编译验证

Phase 1: apes-commons 内联
- 反推并实现 7 个核心类(Res/AuthContext/Login/LoginUser/LoginCustomer/UserSession/DbEntity)
- 新增 LoginAspect AOP 切面(从 Redis 读取会话写入 AuthContext)
- 移除外部 JAR 依赖,项目自包含可独立编译

Phase 2: 包名重构
- cn.apes.cloud → cn.apes.authon 全局包名重构
- @MapperScan 路径更新
- 零 cn.apes.cloud 残留

Phase 3: 编译验证
- maven-compiler-plugin 升级至 3.13.0(兼容 Java 24)
- Lombok 升级至 1.18.40(兼容 Java 24)
- 移除 syncAllTenantsToHuoban(伙伴云同步,非账权核心)
- 新增 IpLocationService 接口 + 桩实现
- 124 个源文件编译通过(BUILD SUCCESS)
This commit is contained in:
figmar
2026-08-09 08:40:36 +08:00
parent d863fa0550
commit 93e13653ab
126 changed files with 801 additions and 559 deletions
+1 -1
View File
@@ -21,7 +21,7 @@ import org.springframework.scheduling.annotation.EnableScheduling;
@SpringBootApplication
@EnableAsync
@EnableScheduling
@MapperScan("cn.apes.cloud.mapper")
@MapperScan("cn.apes.authon.mapper")
public class AuthonApplication {
public static void main(String[] args) {
@@ -1,6 +1,6 @@
package cn.apes.cloud.config;
package cn.apes.authon.config;
import cn.apes.cloud.filter.AccessTokenFilter;
import cn.apes.authon.filter.AccessTokenFilter;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
@@ -1,4 +1,4 @@
package cn.apes.cloud.config;
package cn.apes.authon.config;
import cn.apes.commons.Res;
@@ -1,4 +1,4 @@
package cn.apes.cloud.config;
package cn.apes.authon.config;
public class HbTokenContext {
@@ -1,4 +1,4 @@
package cn.apes.cloud.config;
package cn.apes.authon.config;
import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
@@ -1,4 +1,4 @@
package cn.apes.cloud.config;
package cn.apes.authon.config;
import java.lang.annotation.*;
@@ -1,8 +1,8 @@
package cn.apes.cloud.controller;
package cn.apes.authon.controller;
import cn.apes.cloud.domain.entity.SysAccessToken;
import cn.apes.cloud.service.SysAccessTokenService;
import cn.apes.cloud.util.OperationLogUtil;
import cn.apes.authon.domain.entity.SysAccessToken;
import cn.apes.authon.service.SysAccessTokenService;
import cn.apes.authon.util.OperationLogUtil;
import cn.apes.commons.auth.AuthContext;
import cn.apes.commons.auth.Login;
import cn.apes.commons.auth.LoginCustomer;
@@ -1,19 +1,19 @@
package cn.apes.cloud.controller;
package cn.apes.authon.controller;
import cn.apes.commons.Res;
import cn.apes.commons.auth.Login;
import cn.apes.cloud.config.TenantSource;
import cn.apes.cloud.domain.dto.AppSearchDTO;
import cn.apes.cloud.domain.entity.AppInfo;
import cn.apes.cloud.domain.entity.SysMenu;
import cn.apes.cloud.domain.entity.SysPermission;
import cn.apes.cloud.domain.entity.CustomerInfo;
import cn.apes.cloud.domain.entity.CustomerApp;
import cn.apes.cloud.service.impl.AppInfoServiceImpl;
import cn.apes.cloud.service.impl.CustomerAppServiceImpl;
import cn.apes.cloud.service.impl.CustomerInfoServiceImpl;
import cn.apes.cloud.mapper.SysMenuMapper;
import cn.apes.cloud.mapper.SysPermissionMapper;
import cn.apes.authon.config.TenantSource;
import cn.apes.authon.domain.dto.AppSearchDTO;
import cn.apes.authon.domain.entity.AppInfo;
import cn.apes.authon.domain.entity.SysMenu;
import cn.apes.authon.domain.entity.SysPermission;
import cn.apes.authon.domain.entity.CustomerInfo;
import cn.apes.authon.domain.entity.CustomerApp;
import cn.apes.authon.service.impl.AppInfoServiceImpl;
import cn.apes.authon.service.impl.CustomerAppServiceImpl;
import cn.apes.authon.service.impl.CustomerInfoServiceImpl;
import cn.apes.authon.mapper.SysMenuMapper;
import cn.apes.authon.mapper.SysPermissionMapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -1,16 +1,16 @@
package cn.apes.cloud.controller;
package cn.apes.authon.controller;
import cn.apes.commons.Res;
import cn.apes.commons.auth.AuthContext;
import cn.apes.commons.auth.Login;
import cn.apes.commons.auth.LoginCustomer;
import cn.apes.cloud.config.TenantSource;
import cn.apes.cloud.domain.dto.CustomerSearchDTO;
import cn.apes.cloud.domain.entity.CustomerInfo;
import cn.apes.cloud.domain.entity.SsoConfig;
import cn.apes.cloud.service.impl.CustomerAppServiceImpl;
import cn.apes.cloud.service.impl.CustomerInfoServiceImpl;
import cn.apes.cloud.service.impl.CustomerUserServiceImpl;
import cn.apes.authon.config.TenantSource;
import cn.apes.authon.domain.dto.CustomerSearchDTO;
import cn.apes.authon.domain.entity.CustomerInfo;
import cn.apes.authon.domain.entity.SsoConfig;
import cn.apes.authon.service.impl.CustomerAppServiceImpl;
import cn.apes.authon.service.impl.CustomerInfoServiceImpl;
import cn.apes.authon.service.impl.CustomerUserServiceImpl;
import com.alibaba.fastjson.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -184,13 +184,7 @@ public class CustomerController {
return customerInfoService.auditCertification(customerId, auditStatus, auditRemark);
}
// syncTenantsToHuoban 端点已移除 伙伴云同步属业务集成非账权核心功能
/**
* 同步全部租户信息到伙伴云使用 upsetOne 接口
*/
@PostMapping("/syncTenantsToHuoban")
public Res syncTenantsToHuoban() {
return customerInfoService.syncAllTenantsToHuoban();
}
}
@@ -1,11 +1,11 @@
package cn.apes.cloud.controller;
package cn.apes.authon.controller;
import cn.apes.commons.Res;
import cn.apes.commons.auth.AuthContext;
import cn.apes.commons.auth.Login;
import cn.apes.commons.auth.LoginCustomer;
import cn.apes.cloud.domain.entity.CustomerPackage;
import cn.apes.cloud.service.CustomerPackageService;
import cn.apes.authon.domain.entity.CustomerPackage;
import cn.apes.authon.service.CustomerPackageService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -1,14 +1,14 @@
package cn.apes.cloud.controller;
package cn.apes.authon.controller;
import cn.apes.commons.Res;
import cn.apes.commons.auth.AuthContext;
import cn.apes.commons.auth.UserSession;
import cn.apes.cloud.config.TenantSource;
import cn.apes.cloud.domain.dto.RoleSearchDTO;
import cn.apes.cloud.domain.entity.SysMenu;
import cn.apes.cloud.domain.entity.SysPermission;
import cn.apes.cloud.domain.entity.SysRole;
import cn.apes.cloud.service.impl.PermissionServiceImpl;
import cn.apes.authon.config.TenantSource;
import cn.apes.authon.domain.dto.RoleSearchDTO;
import cn.apes.authon.domain.entity.SysMenu;
import cn.apes.authon.domain.entity.SysPermission;
import cn.apes.authon.domain.entity.SysRole;
import cn.apes.authon.service.impl.PermissionServiceImpl;
import cn.apes.commons.auth.Login;
import cn.apes.commons.auth.LoginCustomer;
import cn.hutool.http.server.HttpServerResponse;
@@ -1,9 +1,9 @@
package cn.apes.cloud.controller;
package cn.apes.authon.controller;
import cn.apes.commons.Res;
import cn.apes.commons.auth.Login;
import cn.apes.cloud.config.TenantSource;
import cn.apes.cloud.service.impl.SysOperationLogServiceImpl;
import cn.apes.authon.config.TenantSource;
import cn.apes.authon.service.impl.SysOperationLogServiceImpl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -1,10 +1,10 @@
package cn.apes.cloud.controller;
package cn.apes.authon.controller;
import cn.apes.commons.Res;
import cn.apes.commons.auth.Login;
import cn.apes.cloud.config.TenantSource;
import cn.apes.cloud.domain.entity.SysOrganization;
import cn.apes.cloud.service.impl.SysOrganizationServiceImpl;
import cn.apes.authon.config.TenantSource;
import cn.apes.authon.domain.entity.SysOrganization;
import cn.apes.authon.service.impl.SysOrganizationServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -1,7 +1,7 @@
package cn.apes.cloud.controller;
package cn.apes.authon.controller;
import cn.apes.cloud.domain.entity.SysPackagePlan;
import cn.apes.cloud.service.impl.SysPackagePlanServiceImpl;
import cn.apes.authon.domain.entity.SysPackagePlan;
import cn.apes.authon.service.impl.SysPackagePlanServiceImpl;
import cn.apes.commons.Res;
import cn.apes.commons.auth.Login;
import com.alibaba.fastjson.JSONObject;
@@ -20,7 +20,7 @@ public class SysPackagePlanController {
private SysPackagePlanServiceImpl sysPackagePlanService;
@Autowired
private cn.apes.cloud.service.SysPackagePlanQuotaService sysPackagePlanQuotaService;
private cn.apes.authon.service.SysPackagePlanQuotaService sysPackagePlanQuotaService;
@PostMapping("/page")
public Res pagePackagePlan(@RequestBody JSONObject data) {
@@ -1,7 +1,7 @@
package cn.apes.cloud.controller;
package cn.apes.authon.controller;
import cn.apes.cloud.domain.entity.SysQuota;
import cn.apes.cloud.service.impl.SysQuotaServiceImpl;
import cn.apes.authon.domain.entity.SysQuota;
import cn.apes.authon.service.impl.SysQuotaServiceImpl;
import cn.apes.commons.Res;
import com.alibaba.fastjson.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
@@ -1,18 +1,18 @@
package cn.apes.cloud.controller;
package cn.apes.authon.controller;
import cn.apes.commons.Res;
import cn.apes.commons.auth.AuthContext;
import cn.apes.commons.auth.Login;
import cn.apes.cloud.config.TenantSource;
import cn.apes.cloud.domain.dto.LoginDTO;
import cn.apes.cloud.domain.dto.PwdDTO;
import cn.apes.cloud.domain.dto.RegisterDTO;
import cn.apes.cloud.domain.dto.SelectCustomerDTO;
import cn.apes.cloud.domain.dto.UserSearchDTO;
import cn.apes.cloud.domain.dto.EnterpriseCertifyDTO;
import cn.apes.cloud.domain.entity.CustomerInfo;
import cn.apes.cloud.domain.entity.UserInfo;
import cn.apes.cloud.service.impl.UserInfoServiceImpl;
import cn.apes.authon.config.TenantSource;
import cn.apes.authon.domain.dto.LoginDTO;
import cn.apes.authon.domain.dto.PwdDTO;
import cn.apes.authon.domain.dto.RegisterDTO;
import cn.apes.authon.domain.dto.SelectCustomerDTO;
import cn.apes.authon.domain.dto.UserSearchDTO;
import cn.apes.authon.domain.dto.EnterpriseCertifyDTO;
import cn.apes.authon.domain.entity.CustomerInfo;
import cn.apes.authon.domain.entity.UserInfo;
import cn.apes.authon.service.impl.UserInfoServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -1,8 +1,8 @@
package cn.apes.cloud.controller;
package cn.apes.authon.controller;
import cn.apes.cloud.config.TenantSource;
import cn.apes.cloud.domain.entity.UserPreference;
import cn.apes.cloud.service.impl.UserPreferenceServiceImpl;
import cn.apes.authon.config.TenantSource;
import cn.apes.authon.domain.entity.UserPreference;
import cn.apes.authon.service.impl.UserPreferenceServiceImpl;
import cn.apes.commons.Res;
import cn.apes.commons.auth.Login;
import org.springframework.web.bind.annotation.PostMapping;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import com.alibaba.fastjson.JSONObject;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import lombok.Data;
@@ -1,6 +1,6 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import cn.apes.cloud.domain.entity.SysRole;
import cn.apes.authon.domain.entity.SysRole;
import lombok.Data;
import java.io.Serializable;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.dto;
package cn.apes.authon.domain.dto;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.baomidou.mybatisplus.annotation.IdType;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.baomidou.mybatisplus.annotation.TableField;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.baomidou.mybatisplus.annotation.TableName;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.baomidou.mybatisplus.annotation.TableField;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.baomidou.mybatisplus.annotation.TableLogic;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.alibaba.fastjson.JSONObject;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.baomidou.mybatisplus.annotation.TableField;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.baomidou.mybatisplus.annotation.IdType;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.baomidou.mybatisplus.annotation.TableField;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
@@ -44,7 +44,7 @@ public class SysRole extends DbEntity implements Serializable {
private String appName;
@TableField(exist = false)
private cn.apes.cloud.domain.entity.SysPackagePlan planInfo;
private cn.apes.authon.domain.entity.SysPackagePlan planInfo;
}
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.baomidou.mybatisplus.annotation.TableLogic;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import cn.apes.commons.domain.DbEntity;
import com.baomidou.mybatisplus.annotation.TableField;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.entity;
package cn.apes.authon.domain.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.huoban;
package cn.apes.authon.domain.huoban;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.huoban;
package cn.apes.authon.domain.huoban;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.huoban;
package cn.apes.authon.domain.huoban;
import com.alibaba.fastjson.JSONObject;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.huoban;
package cn.apes.authon.domain.huoban;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.huoban;
package cn.apes.authon.domain.huoban;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.huoban;
package cn.apes.authon.domain.huoban;
import com.alibaba.fastjson.JSONObject;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.huoban;
package cn.apes.authon.domain.huoban;
import com.alibaba.fastjson.JSONObject;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.huoban;
package cn.apes.authon.domain.huoban;
import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.huoban;
package cn.apes.authon.domain.huoban;
import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.huoban;
package cn.apes.authon.domain.huoban;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.huoban;
package cn.apes.authon.domain.huoban;
import com.alibaba.fastjson.JSONObject;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.vo;
package cn.apes.authon.domain.vo;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.vo;
package cn.apes.authon.domain.vo;
import lombok.Data;
@@ -1,4 +1,4 @@
package cn.apes.cloud.domain.vo;
package cn.apes.authon.domain.vo;
import lombok.Data;
@@ -1,14 +1,14 @@
package cn.apes.cloud.filter;
package cn.apes.authon.filter;
import cn.apes.commons.auth.AuthContext;
import cn.apes.commons.auth.LoginCustomer;
import cn.apes.commons.auth.LoginUser;
import cn.apes.commons.auth.UserSession;
import cn.apes.cloud.domain.entity.CustomerInfo;
import cn.apes.cloud.domain.entity.SysAccessToken;
import cn.apes.cloud.service.impl.CustomerInfoServiceImpl;
import cn.apes.cloud.service.SysAccessTokenService;
import cn.apes.cloud.util.OperationLogUtil;
import cn.apes.authon.domain.entity.CustomerInfo;
import cn.apes.authon.domain.entity.SysAccessToken;
import cn.apes.authon.service.impl.CustomerInfoServiceImpl;
import cn.apes.authon.service.SysAccessTokenService;
import cn.apes.authon.util.OperationLogUtil;
import cn.apes.commons.Res;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.AppInfo;
import cn.apes.authon.domain.entity.AppInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface AppInfoMapper extends BaseMapper<AppInfo> {
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.CustomerApp;
import cn.apes.authon.domain.entity.CustomerApp;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface CustomerAppMapper extends BaseMapper<CustomerApp> {
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.CustomerInfo;
import cn.apes.authon.domain.entity.CustomerInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface CustomerInfoMapper extends BaseMapper<CustomerInfo> {
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.CustomerPackageExtendApply;
import cn.apes.authon.domain.entity.CustomerPackageExtendApply;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.CustomerPackage;
import cn.apes.authon.domain.entity.CustomerPackage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.CustomerPackageQuota;
import cn.apes.authon.domain.entity.CustomerPackageQuota;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.CustomerQuotaChangeLog;
import cn.apes.authon.domain.entity.CustomerQuotaChangeLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.CustomerUser;
import cn.apes.authon.domain.entity.CustomerUser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface CustomerUserMapper extends BaseMapper<CustomerUser> {
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SsoConfig;
import cn.apes.authon.domain.entity.SsoConfig;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface SsoConfigMapper extends BaseMapper<SsoConfig> {
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysAccessToken;
import cn.apes.authon.domain.entity.SysAccessToken;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysMemberRole;
import cn.apes.authon.domain.entity.SysMemberRole;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface SysMemberRoleMapper extends BaseMapper<SysMemberRole> {
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysMenu;
import cn.apes.authon.domain.entity.SysMenu;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface SysMenuMapper extends BaseMapper<SysMenu> {
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysOperationLog;
import cn.apes.authon.domain.entity.SysOperationLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysOrganization;
import cn.apes.authon.domain.entity.SysOrganization;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysPackagePlan;
import cn.apes.authon.domain.entity.SysPackagePlan;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysPackagePlanPermission;
import cn.apes.authon.domain.entity.SysPackagePlanPermission;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysPackagePlanQuota;
import cn.apes.authon.domain.entity.SysPackagePlanQuota;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysPermission;
import cn.apes.authon.domain.entity.SysPermission;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface SysPermissionMapper extends BaseMapper<SysPermission> {
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysQuota;
import cn.apes.authon.domain.entity.SysQuota;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysRole;
import cn.apes.authon.domain.entity.SysRole;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.SysRolePermission;
import cn.apes.authon.domain.entity.SysRolePermission;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
public interface SysRolePermissionMapper extends BaseMapper<SysRolePermission> {
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.UserInfo;
import cn.apes.authon.domain.entity.UserInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
@@ -1,6 +1,6 @@
package cn.apes.cloud.mapper;
package cn.apes.authon.mapper;
import cn.apes.cloud.domain.entity.UserPreference;
import cn.apes.authon.domain.entity.UserPreference;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@@ -1,8 +1,8 @@
package cn.apes.cloud.service;
package cn.apes.authon.service;
import cn.apes.cloud.domain.entity.CustomerPackage;
import cn.apes.cloud.domain.vo.CustomerPackageVO;
import cn.apes.cloud.domain.vo.CustomerPackageExtendApplyVO;
import cn.apes.authon.domain.entity.CustomerPackage;
import cn.apes.authon.domain.vo.CustomerPackageVO;
import cn.apes.authon.domain.vo.CustomerPackageExtendApplyVO;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
@@ -0,0 +1,16 @@
package cn.apes.authon.service;
/**
* IP 地理位置服务接口
* 从 saas-service 提取,在独立服务中以桩实现替代(返回空字符串)
* 后续可接入第三方 IP 库(如 ip2region、纯真 IP 库等)
*/
public interface IpLocationService {
/**
* 根据 IP 获取地理位置信息
* @param ip IP 地址
* @return 地理位置(如 "北京市"),无法识别时返回空字符串
*/
String getLocation(String ip);
}
@@ -1,6 +1,6 @@
package cn.apes.cloud.service;
package cn.apes.authon.service;
import cn.apes.cloud.domain.entity.SysAccessToken;
import cn.apes.authon.domain.entity.SysAccessToken;
import com.baomidou.mybatisplus.extension.service.IService;
/**
@@ -1,6 +1,6 @@
package cn.apes.cloud.service;
package cn.apes.authon.service;
import cn.apes.cloud.domain.entity.SysOperationLog;
import cn.apes.authon.domain.entity.SysOperationLog;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.Date;
@@ -1,6 +1,6 @@
package cn.apes.cloud.service;
package cn.apes.authon.service;
import cn.apes.cloud.domain.entity.SysPackagePlanQuota;
import cn.apes.authon.domain.entity.SysPackagePlanQuota;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
@@ -1,6 +1,6 @@
package cn.apes.cloud.service;
package cn.apes.authon.service;
import cn.apes.cloud.domain.entity.SysPackagePlan;
import cn.apes.authon.domain.entity.SysPackagePlan;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
@@ -1,6 +1,6 @@
package cn.apes.cloud.service;
package cn.apes.authon.service;
import cn.apes.cloud.domain.entity.SysQuota;
import cn.apes.authon.domain.entity.SysQuota;
import com.baomidou.mybatisplus.extension.service.IService;
public interface SysQuotaService extends IService<SysQuota> {
@@ -1,9 +1,9 @@
package cn.apes.cloud.service.impl;
package cn.apes.authon.service.impl;
import cn.apes.commons.Res;
import cn.apes.cloud.domain.dto.AppSearchDTO;
import cn.apes.cloud.domain.entity.AppInfo;
import cn.apes.cloud.mapper.AppInfoMapper;
import cn.apes.authon.domain.dto.AppSearchDTO;
import cn.apes.authon.domain.entity.AppInfo;
import cn.apes.authon.mapper.AppInfoMapper;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -1,22 +1,22 @@
package cn.apes.cloud.service.impl;
package cn.apes.authon.service.impl;
import cn.apes.commons.Res;
import cn.apes.cloud.domain.entity.CustomerInfo;
import cn.apes.cloud.domain.entity.AppInfo;
import cn.apes.cloud.domain.entity.CustomerApp;
import cn.apes.cloud.domain.entity.CustomerPackage;
import cn.apes.cloud.domain.entity.CustomerPackageQuota;
import cn.apes.cloud.domain.entity.SysPackagePlan;
import cn.apes.cloud.domain.vo.CustomerAppVO;
import cn.apes.cloud.mapper.AppInfoMapper;
import cn.apes.cloud.mapper.CustomerAppMapper;
import cn.apes.cloud.mapper.CustomerPackageMapper;
import cn.apes.cloud.mapper.CustomerPackageQuotaMapper;
import cn.apes.cloud.mapper.SysPackagePlanMapper;
import cn.apes.authon.domain.entity.CustomerInfo;
import cn.apes.authon.domain.entity.AppInfo;
import cn.apes.authon.domain.entity.CustomerApp;
import cn.apes.authon.domain.entity.CustomerPackage;
import cn.apes.authon.domain.entity.CustomerPackageQuota;
import cn.apes.authon.domain.entity.SysPackagePlan;
import cn.apes.authon.domain.vo.CustomerAppVO;
import cn.apes.authon.mapper.AppInfoMapper;
import cn.apes.authon.mapper.CustomerAppMapper;
import cn.apes.authon.mapper.CustomerPackageMapper;
import cn.apes.authon.mapper.CustomerPackageQuotaMapper;
import cn.apes.authon.mapper.SysPackagePlanMapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import cn.apes.cloud.service.impl.CustomerInfoServiceImpl;
import cn.apes.cloud.util.OperationLogUtil;
import cn.apes.authon.service.impl.CustomerInfoServiceImpl;
import cn.apes.authon.util.OperationLogUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -1,21 +1,19 @@
package cn.apes.cloud.service.impl;
package cn.apes.authon.service.impl;
import cn.apes.commons.Res;
import cn.apes.cloud.service.impl.huoban.HuobanUtil;
import com.alibaba.fastjson.JSONObject;
import cn.apes.cloud.domain.huoban.UpsertOne;
import cn.apes.cloud.service.SysOperationLogService;
import cn.apes.cloud.util.OperationLogUtil;
import cn.apes.cloud.domain.dto.CustomerSearchDTO;
import cn.apes.cloud.domain.entity.CustomerInfo;
import cn.apes.cloud.domain.entity.CustomerPackage;
import cn.apes.cloud.domain.entity.SsoConfig;
import cn.apes.cloud.domain.entity.SysPackagePlan;
import cn.apes.cloud.domain.entity.UserInfo;
import cn.apes.cloud.mapper.CustomerInfoMapper;
import cn.apes.cloud.mapper.CustomerPackageMapper;
import cn.apes.cloud.mapper.SsoConfigMapper;
import cn.apes.cloud.service.SysPackagePlanService;
import cn.apes.authon.service.SysOperationLogService;
import cn.apes.authon.util.OperationLogUtil;
import cn.apes.authon.domain.dto.CustomerSearchDTO;
import cn.apes.authon.domain.entity.CustomerInfo;
import cn.apes.authon.domain.entity.CustomerPackage;
import cn.apes.authon.domain.entity.SsoConfig;
import cn.apes.authon.domain.entity.SysPackagePlan;
import cn.apes.authon.domain.entity.UserInfo;
import cn.apes.authon.mapper.CustomerInfoMapper;
import cn.apes.authon.mapper.CustomerPackageMapper;
import cn.apes.authon.mapper.SsoConfigMapper;
import cn.apes.authon.service.SysPackagePlanService;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -46,9 +44,6 @@ public class CustomerInfoServiceImpl extends ServiceImpl<CustomerInfoMapper, Cus
@Autowired
SysOperationLogService sysOperationLogService;
@Autowired
cn.apes.cloud.service.impl.huoban.HuobanData2ServiceImpl huobanData2Service;
public Res pageCustomer(CustomerSearchDTO searchDTO) {
LambdaQueryWrapper<CustomerInfo> lambdaQueryWrapper = new LambdaQueryWrapper<>();
IPage<CustomerInfo> pageData = page(searchDTO.getPage(), lambdaQueryWrapper);
@@ -230,77 +225,7 @@ public class CustomerInfoServiceImpl extends ServiceImpl<CustomerInfoMapper, Cus
return Res.success();
}
/**
* 同步全部租户到伙伴云
* 遍历所有非删除状态的租户通过 upsetOne 接口同步数据
*/
public Res syncAllTenantsToHuoban() {
try {
// 查询全部租户
LambdaQueryWrapper<CustomerInfo> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(CustomerInfo::getIsDel, 0);
List<CustomerInfo> allCustomers = list(wrapper);
int successCount = 0;
int failCount = 0;
StringBuilder failMsg = new StringBuilder();
for (CustomerInfo customer : allCustomers) {
try {
// 构建 upsetOne 请求参数
JSONObject fields = new JSONObject();
fields.put("customerId", customer.getId());
fields.put("customerName", customer.getCustomerName());
fields.put("shortName", customer.getShortName());
fields.put("customerType", customer.getCustomerType());
fields.put("adminName", customer.getAdminName());
fields.put("adminPhone", customer.getAdminPhone());
fields.put("customerStatus", customer.getCustomerStatus());
fields.put("industry", customer.getIndustry());
fields.put("industrySub", customer.getIndustrySub());
fields.put("salesChannel", customer.getSalesChannel());
fields.put("industryType", customer.getIndustryType());
fields.put("province", customer.getProvince());
fields.put("city", customer.getCity());
if (customer.getLogo() != null) fields.put("logo", customer.getLogo());
if (customer.getCustomerIdNumber() != null) fields.put("customerIdNumber", customer.getCustomerIdNumber());
// 通过 HuobanData2ServiceImpl.upsetOne 调用
UpsertOne upsertOne = new UpsertOne(2100000000008750L, fields);
upsertOne.setUpdateFields(java.util.Collections.singletonList("customerId"));
upsertOne.setAction("one_update");
Res res = huobanData2Service.upsetOne(upsertOne);
if (res != null && res.getCode() == 1) {
successCount++;
} else {
failCount++;
failMsg.append(customer.getCustomerName()).append("(").append(res != null ? res.getMsg() : "null").append("); ");
}
} catch (Exception e) {
failCount++;
failMsg.append(customer.getCustomerName()).append("(").append(e.getMessage()).append("); ");
}
}
String result = "同步完成:成功 " + successCount + "";
if (failCount > 0) {
result += ",失败 " + failCount + "";
if (failMsg.length() > 200) {
result += ",详情:" + failMsg.substring(0, 200) + "...";
} else {
result += ",详情:" + failMsg.toString();
}
}
if (failCount == 0) {
return Res.success(result);
} else {
return Res.fail(result);
}
} catch (Exception e) {
return Res.fail("同步异常:" + e.getMessage());
}
}
// syncAllTenantsToHuoban() 已移除 伙伴云同步属业务集成非账权核心功能
// 如需恢复请从 apes-Authdata 仓库的 service/impl/huoban/ 包引入
}

Some files were not shown because too many files have changed in this diff Show More