Compare commits

...

17 Commits

Author SHA1 Message Date
shi 01178478e0 refactor(ff-game): 重构游戏模块代码
- 更新了多个类中的服务接口引用
- 重命名了部分接口和类,如 IPlatformService 改为 IPlatformBiz
- 调整了部分代码结构,提高了代码的可读性和可维护性
2025-04-12 15:06:38 +08:00
shi d1be064c7b Merge remote-tracking branch 'origin/upgrade_s1' into main-pp
# Conflicts:
#	ff-bean/ff-domain/src/main/java/com/ff/agent/domain/TenantAgentCommission.java
#	ff-bean/ff-domain/src/main/java/com/ff/game/service/impl/GameExchangeMoneyServiceImpl.java
#	ff-game/src/main/java/com/ff/api/controller/ApiGameController.java
#	ff-game/src/main/java/com/ff/base/enums/TimeOutType.java
#	ff-game/src/main/java/com/ff/base/enums/TriggerType.java
#	ff-game/src/main/java/com/ff/base/manager/AsyncManager.java
#	ff-game/src/main/java/com/ff/game/api/fc/impl/GamesFCServiceImpl.java
#	ff-game/src/main/java/com/ff/game/api/ng/service/impl/GamesPGServiceImpl.java
#	ff-game/src/main/java/com/ff/game/api/pgt/impl/GamesPGTServiceImpl.java
#	ff-game/src/main/java/com/ff/game/api/pgx/impl/GamesPGXServiceImpl.java
#	ff-game/src/main/java/com/ff/quartz/task/GameTask.java
#	ff-game/src/main/java/com/ff/tenant/service/impl/TenantGameQuotaBizImpl.java
#	ff-game/src/main/resources/mapper/game/GameMapper.xml
2025-04-12 14:50:20 +08:00
liaoyong 180d454907 refactor(ff-game): 重构游戏相关服务和接口
- 修改了多个控制器和实现类中的方法调用,使用新的Biz接口替代旧的Service接口
- 删除了IGameService接口及其实现类GameServiceImpl
- 新增了ITenantAgentInviteBiz接口
- 优化了多个类的依赖注入,使用更具体的Biz接口替代泛型Service接口
2025-04-12 14:35:41 +08:00
liaoyong 9e6cfe177b feat(ff-exception): 添加异常处理模块的pom文件
- 新增ff-exception模块的pom文件,定义了模块的基本信息、依赖和构建配置
- 引入了Lombok、Apache Commons、
2025-04-12 14:11:00 +08:00
liaoyong 974800f5b6 refactor(ff-game): 重构游戏相关服务和 mapper
- 重命名 GameBettingDetailsServiceImpl 为 GameBettingDetailsBizImpl
- 新增 GameBettingDetailsBizMapper 接口和对应的 XML 文件- 重命名 GameExchangeMoneyServiceImpl 为 GameExchangeMoneyBizImpl- 新增 GameExchangeMoneyBizMapper 接口和对应的 XML 文件- 删除 GameFreeRecordServiceImpl 类- 更新 GameMapper.xml,简化查询语句
- 重命名 GameServiceImpl 中的 memberService 和 gamesService 字段
2025-04-12 14:10:35 +08:00
shi ff7ddea13e feat(game): 添加 PP 平台支持
- 在 GamePlatforms 枚举中添加 PP 平台- 实现 PP 平台的 GamesPPServiceImpl 类
- 添加 PP 平台的地址源 MyPPAddressSource
- 优化游戏数据处理逻辑,支持 PP 平台
2025-04-12 13:28:28 +08:00
liaoyong 4894bd7784 refactor(exception): 新增自定义异常类并重构异常处理
- 新增 ApiException 类用于处理 API相关的异常
- 新增 BaseException 类作为基础异常类- 重构 CurrencyMapper 接口,调整包结构
- 新增 CurrencyServiceImpl 类实现币种相关服务
- 更新原有的 CurrencyServiceImpl 类,调整导入顺序
2025-04-12 13:15:53 +08:00
shi a8e2fab566 Merge branch 'main' into main-pp
# Conflicts:
#	ff-base/src/main/java/com/ff/base/constant/Constants.java
2025-04-12 13:13:31 +08:00
liaoyong e566053cb7 refactor(xk-dbsports): 重构项目依赖和目录结构- 新增 ff-util 模块,包含通用工具类
-将 GamePlatforms 枚举移动到新模块中
- 更新项目依赖关系
- 调整包名和类名以适应新结构
2025-04-12 10:57:14 +08:00
liaoyong af1253e96a feat(platform): 新增 DBSports体育平台支持
- 添加 DBSports 体育平台的接口和实现类
- 新增相关 DTO 类和枚举类
- 实现会员创建、资金转账、获取会员信息等功能
- 添加投注记录获取和处理相关方法
2025-04-12 10:31:09 +08:00
liaoyong 32f68276fb feat(redis): 新增 Redis 缓存工具类并替换现有缓存实现
- 新增 GRedisCache 类,提供丰富的 Redis 操作方法
- 在 PlatformServiceImpl 中替换原有 RedisCache 为 GRedisCache- 添加 comp-redis 模块的 Maven 依赖
- 更新父项目 pom.xml,包含新的模块依赖
2025-04-11 20:42:39 +08:00
liaoyong c08dab29f3 refactor(ff-bean): 重构领域模型模块
- 删除了多个冗余的实体类文件
- 重命名 ff-mysql 为 ff-domain
- 更新了相关的依赖和模块名称
2025-04-11 20:09:56 +08:00
liaoyong 106c76f008 refactor(ff-bean): 重构领域模型模块
- 删除了多个冗余的实体类文件
- 重命名 ff-mysql 为 ff-domain
- 更新了相关的依赖和模块名称
2025-04-11 20:09:28 +08:00
liaoyong 69f634a948 build(ff-mysql): 移除 Redis 相关依赖
- 删除了 spring-boot-starter-data-redis 依赖
- 删除了 commons-pool2 依赖
2025-04-11 19:47:41 +08:00
liaoyong de27d191c2 refactor(工程): 调整工程代码结构 2025-04-11 19:22:49 +08:00
shi 8744ad3589 refactor(game): 优化游戏列表接口参数传递方式
- 在 GamesPPServiceImpl 中,将 JSONUtils.toJSONString(params) 替换为直接使用 params
- 在 PPClient 中,修改 getGameList 方法参数类型从 String 改为 Map<String, Object>
2025-03-28 18:46:38 +08:00
shi 5ccad3dcc5 feat(game): 添加 PP 游戏接口相关类和方法
- 新增 PP 游戏相关的常量和配置
- 添加 PP 游戏用户信息、登录、游戏列表等接口的请求和响应类- 实现 PP 游戏服务的基本功能,包括创建用户、获取游戏列表等
- 添加地址源和客户端接口,用于与 PP游戏服务器通信
2025-03-27 16:50:32 +08:00
669 changed files with 12642 additions and 15101 deletions

View File

@ -1,207 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>ff</artifactId>
<groupId>com.ff</groupId>
<version>0.0.1</version>
</parent>
<groupId>com.ff</groupId>
<artifactId>ff-base</artifactId>
<version>0.0.1</version>
<name>ff-base</name>
<description>ff-base</description>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.dtflys.forest</groupId>
<artifactId>forest-spring-boot-starter</artifactId>
<version>1.6.3</version>
</dependency>
<!-- SpringBoot的依赖配置-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.5.15</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- SpringBoot Web容器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- SpringBoot 拦截器 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
</dependency>
<!-- 阿里数据库连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
</dependency>
<!-- 验证码 -->
<dependency>
<groupId>pro.fessional</groupId>
<artifactId>kaptcha</artifactId>
</dependency>
<!-- 获取系统信息 -->
<dependency>
<groupId>com.github.oshi</groupId>
<artifactId>oshi-core</artifactId>
</dependency>
<!-- Spring框架基本的核心工具 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
</dependency>
<!-- SpringWeb模块 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</dependency>
<!-- spring security 安全认证 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<!-- pagehelper 分页插件 -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
</dependency>
<!-- 自定义验证注解 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<!--常用工具类 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
<!-- JSON工具类 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<!-- 阿里JSON解析器 -->
<dependency>
<groupId>com.alibaba.fastjson2</groupId>
<artifactId>fastjson2</artifactId>
</dependency>
<!-- io常用工具类 -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</dependency>
<!-- excel工具 -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
</dependency>
<!--http-->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
</dependency>
<!-- yml解析器 -->
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</dependency>
<!-- Token生成与解析-->
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
</dependency>
<!-- Jaxb -->
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
</dependency>
<!-- redis 缓存操作 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- pool 对象池 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
</dependency>
<!-- 解析客户端操作系统、浏览器等 -->
<dependency>
<groupId>eu.bitwalker</groupId>
<artifactId>UserAgentUtils</artifactId>
</dependency>
<!-- servlet包 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
</dependency>
<!-- 二维码生成 -->
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>core</artifactId>
</dependency>
<dependency>
<groupId>com.google.zxing</groupId>
<artifactId>javase</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>

View File

@ -1,146 +0,0 @@
package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.annotation.Excel.ColumnType;
import com.ff.base.core.domain.BaseEntity;
/**
* 访 sys_logininfor
*
* @author ff
*/
public class SysLogininfor extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** ID */
@Excel(name = "序号", cellType = ColumnType.NUMERIC)
@JsonSerialize(using = ToStringSerializer.class)
private Long infoId;
/** 用户账号 */
@Excel(name = "用户账号")
private String userName;
/** 登录状态 0成功 1失败 */
@Excel(name = "登录状态", readConverterExp = "0=成功,1=失败")
private String status;
/** 登录IP地址 */
@Excel(name = "登录地址")
private String ipaddr;
/** 登录地点 */
@Excel(name = "登录地点")
private String loginLocation;
/** 浏览器类型 */
@Excel(name = "浏览器")
private String browser;
/** 操作系统 */
@Excel(name = "操作系统")
private String os;
/** 提示消息 */
@Excel(name = "提示消息")
private String msg;
/** 访问时间 */
@JsonSerialize(using = ToStringSerializer.class)
@Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Long loginTime;
public Long getInfoId()
{
return infoId;
}
public void setInfoId(Long infoId)
{
this.infoId = infoId;
}
public String getUserName()
{
return userName;
}
public void setUserName(String userName)
{
this.userName = userName;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
public String getIpaddr()
{
return ipaddr;
}
public void setIpaddr(String ipaddr)
{
this.ipaddr = ipaddr;
}
public String getLoginLocation()
{
return loginLocation;
}
public void setLoginLocation(String loginLocation)
{
this.loginLocation = loginLocation;
}
public String getBrowser()
{
return browser;
}
public void setBrowser(String browser)
{
this.browser = browser;
}
public String getOs()
{
return os;
}
public void setOs(String os)
{
this.os = os;
}
public String getMsg()
{
return msg;
}
public void setMsg(String msg)
{
this.msg = msg;
}
public Long getLoginTime()
{
return loginTime;
}
public void setLoginTime(Long loginTime)
{
this.loginTime = loginTime;
}
}

View File

@ -1,279 +0,0 @@
package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.ArrayList;
import java.util.List;
/**
* sys_menu
*
* @author ff
*/
public class SysMenu extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 菜单ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long menuId;
/** 菜单名称 */
private String menuName;
/** 父菜单名称 */
private String parentName;
/** 父菜单ID */
@JsonSerialize(using = ToStringSerializer.class)
private Long parentId;
/** 显示顺序 */
private Integer orderNum;
/** 路由地址 */
private String path;
/** 组件路径 */
private String component;
/** 路由参数 */
private String query;
/** 路由名称默认和路由地址相同的驼峰格式注意因为vue3版本的router会删除名称相同路由为避免名字的冲突特殊情况可以自定义 */
private String routeName;
/** 是否为外链0是 1否 */
private String isFrame;
/** 是否缓存0缓存 1不缓存 */
private String isCache;
/** 类型M目录 C菜单 F按钮 */
private String menuType;
/** 显示状态0显示 1隐藏 */
private String visible;
/** 菜单状态0正常 1停用 */
private String status;
/** 权限字符串 */
private String perms;
/** 菜单图标 */
private String icon;
/** 子菜单 */
private List<SysMenu> children = new ArrayList<SysMenu>();
@JsonSerialize(using = ToStringSerializer.class)
public Long getMenuId()
{
return menuId;
}
public void setMenuId(Long menuId)
{
this.menuId = menuId;
}
@NotBlank(message = "菜单名称不能为空")
@Size(min = 0, max = 50, message = "菜单名称长度不能超过50个字符")
public String getMenuName()
{
return menuName;
}
public void setMenuName(String menuName)
{
this.menuName = menuName;
}
public String getParentName()
{
return parentName;
}
public void setParentName(String parentName)
{
this.parentName = parentName;
}
public Long getParentId()
{
return parentId;
}
public void setParentId(Long parentId)
{
this.parentId = parentId;
}
@NotNull(message = "显示顺序不能为空")
public Integer getOrderNum()
{
return orderNum;
}
public void setOrderNum(Integer orderNum)
{
this.orderNum = orderNum;
}
@Size(min = 0, max = 200, message = "路由地址不能超过200个字符")
public String getPath()
{
return path;
}
public void setPath(String path)
{
this.path = path;
}
@Size(min = 0, max = 200, message = "组件路径不能超过255个字符")
public String getComponent()
{
return component;
}
public void setComponent(String component)
{
this.component = component;
}
public String getQuery()
{
return query;
}
public void setQuery(String query)
{
this.query = query;
}
public String getRouteName()
{
return routeName;
}
public void setRouteName(String routeName)
{
this.routeName = routeName;
}
public String getIsFrame()
{
return isFrame;
}
public void setIsFrame(String isFrame)
{
this.isFrame = isFrame;
}
public String getIsCache()
{
return isCache;
}
public void setIsCache(String isCache)
{
this.isCache = isCache;
}
@NotBlank(message = "菜单类型不能为空")
public String getMenuType()
{
return menuType;
}
public void setMenuType(String menuType)
{
this.menuType = menuType;
}
public String getVisible()
{
return visible;
}
public void setVisible(String visible)
{
this.visible = visible;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
@Size(min = 0, max = 100, message = "权限标识长度不能超过100个字符")
public String getPerms()
{
return perms;
}
public void setPerms(String perms)
{
this.perms = perms;
}
public String getIcon()
{
return icon;
}
public void setIcon(String icon)
{
this.icon = icon;
}
public List<SysMenu> getChildren()
{
return children;
}
public void setChildren(List<SysMenu> children)
{
this.children = children;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("menuId", getMenuId())
.append("menuName", getMenuName())
.append("parentId", getParentId())
.append("orderNum", getOrderNum())
.append("path", getPath())
.append("component", getComponent())
.append("query", getQuery())
.append("routeName", getRouteName())
.append("isFrame", getIsFrame())
.append("IsCache", getIsCache())
.append("menuType", getMenuType())
.append("visible", getVisible())
.append("status ", getStatus())
.append("perms", getPerms())
.append("icon", getIcon())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}

View File

@ -1,270 +0,0 @@
package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.annotation.Excel.ColumnType;
import com.ff.base.core.domain.BaseEntity;
/**
* oper_log
*
* @author ff
*/
public class SysOperLog extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 日志主键 */
@Excel(name = "操作序号", cellType = ColumnType.NUMERIC)
@JsonSerialize(using = ToStringSerializer.class)
private Long operId;
/** 操作模块 */
@Excel(name = "操作模块")
private String title;
/** 业务类型0其它 1新增 2修改 3删除 */
@Excel(name = "业务类型", readConverterExp = "0=其它,1=新增,2=修改,3=删除,4=授权,5=导出,6=导入,7=强退,8=生成代码,9=清空数据")
private Integer businessType;
/** 业务类型数组 */
private Integer[] businessTypes;
/** 请求方法 */
@Excel(name = "请求方法")
private String method;
/** 请求方式 */
@Excel(name = "请求方式")
private String requestMethod;
/** 操作类别0其它 1后台用户 2手机端用户 */
@Excel(name = "操作类别", readConverterExp = "0=其它,1=后台用户,2=手机端用户")
private Integer operatorType;
/** 操作人员 */
@Excel(name = "操作人员")
private String operName;
/** 部门名称 */
@Excel(name = "部门名称")
private String deptName;
/** 请求url */
@Excel(name = "请求地址")
private String operUrl;
/** 操作地址 */
@Excel(name = "操作地址")
private String operIp;
/** 操作地点 */
@Excel(name = "操作地点")
private String operLocation;
/** 请求参数 */
@Excel(name = "请求参数")
private String operParam;
/** 返回参数 */
@Excel(name = "返回参数")
private String jsonResult;
/** 操作状态0正常 1异常 */
@Excel(name = "状态", readConverterExp = "0=正常,1=异常")
private Integer status;
/** 错误消息 */
@Excel(name = "错误消息")
private String errorMsg;
/** 操作时间 */
@JsonSerialize(using = ToStringSerializer.class)
@Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Long operTime;
/** 消耗时间 */
@Excel(name = "消耗时间", suffix = "毫秒")
private Long costTime;
public Long getOperId()
{
return operId;
}
public void setOperId(Long operId)
{
this.operId = operId;
}
public String getTitle()
{
return title;
}
public void setTitle(String title)
{
this.title = title;
}
public Integer getBusinessType()
{
return businessType;
}
public void setBusinessType(Integer businessType)
{
this.businessType = businessType;
}
public Integer[] getBusinessTypes()
{
return businessTypes;
}
public void setBusinessTypes(Integer[] businessTypes)
{
this.businessTypes = businessTypes;
}
public String getMethod()
{
return method;
}
public void setMethod(String method)
{
this.method = method;
}
public String getRequestMethod()
{
return requestMethod;
}
public void setRequestMethod(String requestMethod)
{
this.requestMethod = requestMethod;
}
public Integer getOperatorType()
{
return operatorType;
}
public void setOperatorType(Integer operatorType)
{
this.operatorType = operatorType;
}
public String getOperName()
{
return operName;
}
public void setOperName(String operName)
{
this.operName = operName;
}
public String getDeptName()
{
return deptName;
}
public void setDeptName(String deptName)
{
this.deptName = deptName;
}
public String getOperUrl()
{
return operUrl;
}
public void setOperUrl(String operUrl)
{
this.operUrl = operUrl;
}
public String getOperIp()
{
return operIp;
}
public void setOperIp(String operIp)
{
this.operIp = operIp;
}
public String getOperLocation()
{
return operLocation;
}
public void setOperLocation(String operLocation)
{
this.operLocation = operLocation;
}
public String getOperParam()
{
return operParam;
}
public void setOperParam(String operParam)
{
this.operParam = operParam;
}
public String getJsonResult()
{
return jsonResult;
}
public void setJsonResult(String jsonResult)
{
this.jsonResult = jsonResult;
}
public Integer getStatus()
{
return status;
}
public void setStatus(Integer status)
{
this.status = status;
}
public String getErrorMsg()
{
return errorMsg;
}
public void setErrorMsg(String errorMsg)
{
this.errorMsg = errorMsg;
}
public Long getOperTime()
{
return operTime;
}
public void setOperTime(Long operTime)
{
this.operTime = operTime;
}
public Long getCostTime()
{
return costTime;
}
public void setCostTime(Long costTime)
{
this.costTime = costTime;
}
}

View File

@ -1,245 +0,0 @@
package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.annotation.Excel.ColumnType;
import com.ff.base.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.Set;
/**
* sys_role
*
* @author ff
*/
public class SysRole extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 角色ID */
@Excel(name = "角色序号", cellType = ColumnType.NUMERIC)
@JsonSerialize(using = ToStringSerializer.class)
private Long roleId;
/** 角色名称 */
@Excel(name = "角色名称")
private String roleName;
/** 角色权限 */
@Excel(name = "角色权限")
private String roleKey;
/** 角色排序 */
@Excel(name = "角色排序")
private Integer roleSort;
/** 数据范围1所有数据权限2自定义数据权限3本部门数据权限4本部门及以下数据权限5仅本人数据权限 */
@Excel(name = "数据范围", readConverterExp = "1=所有数据权限,2=自定义数据权限,3=本部门数据权限,4=本部门及以下数据权限,5=仅本人数据权限")
private String dataScope;
/** 菜单树选择项是否关联显示( 0父子不互相关联显示 1父子互相关联显示 */
private boolean menuCheckStrictly;
/** 部门树选择项是否关联显示0父子不互相关联显示 1父子互相关联显示 */
private boolean deptCheckStrictly;
/** 角色状态0正常 1停用 */
@Excel(name = "角色状态", readConverterExp = "0=正常,1=停用")
private String status;
/** 删除标志0代表存在 2代表删除 */
private String delFlag;
/** 用户是否存在此角色标识 默认不存在 */
private boolean flag = false;
/** 菜单组 */
private Long[] menuIds;
/** 部门组(数据权限) */
private Long[] deptIds;
/** 角色菜单权限 */
private Set<String> permissions;
public SysRole()
{
}
public SysRole(Long roleId)
{
this.roleId = roleId;
}
@JsonSerialize(using = ToStringSerializer.class)
public Long getRoleId()
{
return roleId;
}
public void setRoleId(Long roleId)
{
this.roleId = roleId;
}
public boolean isAdmin()
{
return isAdmin(this.roleId);
}
public static boolean isAdmin(Long roleId)
{
return roleId != null && 1L == roleId;
}
@NotBlank(message = "角色名称不能为空")
@Size(min = 0, max = 30, message = "角色名称长度不能超过30个字符")
public String getRoleName()
{
return roleName;
}
public void setRoleName(String roleName)
{
this.roleName = roleName;
}
@NotBlank(message = "权限字符不能为空")
@Size(min = 0, max = 100, message = "权限字符长度不能超过100个字符")
public String getRoleKey()
{
return roleKey;
}
public void setRoleKey(String roleKey)
{
this.roleKey = roleKey;
}
@NotNull(message = "显示顺序不能为空")
public Integer getRoleSort()
{
return roleSort;
}
public void setRoleSort(Integer roleSort)
{
this.roleSort = roleSort;
}
public String getDataScope()
{
return dataScope;
}
public void setDataScope(String dataScope)
{
this.dataScope = dataScope;
}
public boolean isMenuCheckStrictly()
{
return menuCheckStrictly;
}
public void setMenuCheckStrictly(boolean menuCheckStrictly)
{
this.menuCheckStrictly = menuCheckStrictly;
}
public boolean isDeptCheckStrictly()
{
return deptCheckStrictly;
}
public void setDeptCheckStrictly(boolean deptCheckStrictly)
{
this.deptCheckStrictly = deptCheckStrictly;
}
public String getStatus()
{
return status;
}
public void setStatus(String status)
{
this.status = status;
}
public String getDelFlag()
{
return delFlag;
}
public void setDelFlag(String delFlag)
{
this.delFlag = delFlag;
}
public boolean isFlag()
{
return flag;
}
public void setFlag(boolean flag)
{
this.flag = flag;
}
public Long[] getMenuIds()
{
return menuIds;
}
public void setMenuIds(Long[] menuIds)
{
this.menuIds = menuIds;
}
public Long[] getDeptIds()
{
return deptIds;
}
public void setDeptIds(Long[] deptIds)
{
this.deptIds = deptIds;
}
public Set<String> getPermissions()
{
return permissions;
}
public void setPermissions(Set<String> permissions)
{
this.permissions = permissions;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("roleId", getRoleId())
.append("roleName", getRoleName())
.append("roleKey", getRoleKey())
.append("roleSort", getRoleSort())
.append("dataScope", getDataScope())
.append("menuCheckStrictly", isMenuCheckStrictly())
.append("deptCheckStrictly", isDeptCheckStrictly())
.append("status", getStatus())
.append("delFlag", getDelFlag())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}

View File

@ -1,113 +0,0 @@
package com.ff.base.system.domain;
/**
* 线
*
* @author ff
*/
public class SysUserOnline
{
/** 会话编号 */
private String tokenId;
/** 部门名称 */
private String deptName;
/** 用户名称 */
private String userName;
/** 登录IP地址 */
private String ipaddr;
/** 登录地址 */
private String loginLocation;
/** 浏览器类型 */
private String browser;
/** 操作系统 */
private String os;
/** 登录时间 */
private Long loginTime;
public String getTokenId()
{
return tokenId;
}
public void setTokenId(String tokenId)
{
this.tokenId = tokenId;
}
public String getDeptName()
{
return deptName;
}
public void setDeptName(String deptName)
{
this.deptName = deptName;
}
public String getUserName()
{
return userName;
}
public void setUserName(String userName)
{
this.userName = userName;
}
public String getIpaddr()
{
return ipaddr;
}
public void setIpaddr(String ipaddr)
{
this.ipaddr = ipaddr;
}
public String getLoginLocation()
{
return loginLocation;
}
public void setLoginLocation(String loginLocation)
{
this.loginLocation = loginLocation;
}
public String getBrowser()
{
return browser;
}
public void setBrowser(String browser)
{
this.browser = browser;
}
public String getOs()
{
return os;
}
public void setOs(String os)
{
this.os = os;
}
public Long getLoginTime()
{
return loginTime;
}
public void setLoginTime(Long loginTime)
{
this.loginTime = loginTime;
}
}

View File

@ -0,0 +1,81 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>ff</artifactId>
<groupId>com.ff</groupId>
<version>0.0.1</version>
</parent>
<artifactId>comp-redis</artifactId>
<version>0.0.1</version>
<name>comp-redis</name>
<packaging>jar</packaging>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 自定义验证注解 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<!--常用工具类 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
<!-- 阿里JSON解析器 -->
<dependency>
<groupId>com.alibaba.fastjson2</groupId>
<artifactId>fastjson2</artifactId>
</dependency>
<!-- io常用工具类 -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.5.15</version>
<configuration>
<fork>true</fork> <!-- 如果没有该配置devtools不会生效 -->
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<finalName>comp-redis</finalName>
</build>
</project>

View File

@ -0,0 +1,243 @@
package com.ff.redis;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.BoundSetOperations;
import org.springframework.data.redis.core.HashOperations;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.stereotype.Component;
import java.util.*;
import java.util.concurrent.TimeUnit;
/**
* spring redis
*
* @author ff
**/
@SuppressWarnings(value = {"unchecked", "rawtypes"})
@Component
public class GRedisCache {
@Autowired
public RedisTemplate redisTemplate;
/**
* IntegerString
*
* @param key
* @param value
*/
public <T> void setCacheObject(final String key, final T value) {
redisTemplate.opsForValue().set(key, value);
}
/**
* IntegerString
*
* @param key
* @param value
* @param timeout
* @param timeUnit
*/
public <T> void setCacheObject(final String key, final T value, final Integer timeout, final TimeUnit timeUnit) {
redisTemplate.opsForValue().set(key, value, timeout, timeUnit);
}
/**
*
*
* @param key Redis
* @param timeout
* @return true=false=
*/
public boolean expire(final String key, final long timeout) {
return expire(key, timeout, TimeUnit.SECONDS);
}
/**
*
*
* @param key Redis
* @param timeout
* @param unit
* @return true=false=
*/
public boolean expire(final String key, final long timeout, final TimeUnit unit) {
return redisTemplate.expire(key, timeout, unit);
}
/**
*
*
* @param key Redis
* @return
*/
public long getExpire(final String key) {
return redisTemplate.getExpire(key);
}
/**
* key
*
* @param key
* @return true false
*/
public Boolean hasKey(String key) {
return redisTemplate.hasKey(key);
}
/**
*
*
* @param key
* @return
*/
public <T> T getCacheObject(final String key) {
ValueOperations<String, T> operation = redisTemplate.opsForValue();
return operation.get(key);
}
/**
*
*
* @param key
*/
public boolean deleteObject(final String key) {
return redisTemplate.delete(key);
}
/**
*
*
* @param collection
* @return
*/
public boolean deleteObject(final Collection collection) {
return redisTemplate.delete(collection) > 0;
}
/**
* List
*
* @param key
* @param dataList List
* @return
*/
public <T> long setCacheList(final String key, final List<T> dataList) {
Long count = redisTemplate.opsForList().rightPushAll(key, dataList);
return count == null ? 0 : count;
}
/**
* list
*
* @param key
* @return
*/
public <T> List<T> getCacheList(final String key) {
return redisTemplate.opsForList().range(key, 0, -1);
}
/**
* Set
*
* @param key
* @param dataSet
* @return
*/
public <T> BoundSetOperations<String, T> setCacheSet(final String key, final Set<T> dataSet) {
BoundSetOperations<String, T> setOperation = redisTemplate.boundSetOps(key);
Iterator<T> it = dataSet.iterator();
while (it.hasNext()) {
setOperation.add(it.next());
}
return setOperation;
}
/**
* set
*
* @param key
* @return
*/
public <T> Set<T> getCacheSet(final String key) {
return redisTemplate.opsForSet().members(key);
}
/**
* Map
*
* @param key
* @param dataMap
*/
public <T> void setCacheMap(final String key, final Map<String, T> dataMap) {
if (dataMap != null) {
redisTemplate.opsForHash().putAll(key, dataMap);
}
}
/**
* Map
*
* @param key
* @return
*/
public <T> Map<String, T> getCacheMap(final String key) {
return redisTemplate.opsForHash().entries(key);
}
/**
* Hash
*
* @param key Redis
* @param hKey Hash
* @param value
*/
public <T> void setCacheMapValue(final String key, final String hKey, final T value) {
redisTemplate.opsForHash().put(key, hKey, value);
}
/**
* Hash
*
* @param key Redis
* @param hKey Hash
* @return Hash
*/
public <T> T getCacheMapValue(final String key, final String hKey) {
HashOperations<String, String, T> opsForHash = redisTemplate.opsForHash();
return opsForHash.get(key, hKey);
}
/**
* Hash
*
* @param key Redis
* @param hKeys Hash
* @return Hash
*/
public <T> List<T> getMultiCacheMapValue(final String key, final Collection<Object> hKeys) {
return redisTemplate.opsForHash().multiGet(key, hKeys);
}
/**
* Hash
*
* @param key Redis
* @param hKey Hash
* @return
*/
public boolean deleteCacheMapValue(final String key, final String hKey) {
return redisTemplate.opsForHash().delete(key, hKey) > 0;
}
/**
*
*
* @param pattern
* @return
*/
public Collection<String> keys(final String pattern) {
return redisTemplate.keys(pattern);
}
}

View File

@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>ff</artifactId>
<groupId>com.ff</groupId>
<version>0.0.1</version>
</parent>
<artifactId>ff-domain</artifactId>
<version>0.0.1</version>
<name>ff-domain</name>
<packaging>jar</packaging>
<dependencies>
<dependency>
<groupId>com.ff</groupId>
<artifactId>ff-util</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 自定义验证注解 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<!--常用工具类 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
<!-- 阿里JSON解析器 -->
<dependency>
<groupId>com.alibaba.fastjson2</groupId>
<artifactId>fastjson2</artifactId>
</dependency>
<!-- io常用工具类 -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.5.15</version>
<configuration>
<fork>true</fork> <!-- 如果没有该配置devtools不会生效 -->
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<finalName>ff-domain</finalName>
</build>
</project>

View File

@ -1,14 +1,15 @@
package com.ff.agent.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.*;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_tenant_agent_commission
*
@ -19,11 +20,12 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantAgentCommission extends BaseEntity
{
public class TenantAgentCommission extends BaseEntity {
private static final long serialVersionUID = 1L;
/** $column.columnComment */
/**
* $column.columnComment
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
@ -33,49 +35,60 @@ public class TenantAgentCommission extends BaseEntity
@JsonSerialize(using = ToStringSerializer.class)
private Long agentId;
/** 来源id */
@Excel(name = "来源id")
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long sourceId;
/** 来源类型 CommissionSourceType */
@Excel(name = "来源类型 CommissionSourceType")
/**
* CommissionSourceType
*/
private Integer sourceType;
/** 佣金类型 ff_tenant_agent_commission_type commissionType */
@Excel(name = "佣金类型 commissionType")
/**
* ff_tenant_agent_commission_type commissionType
*/
private Integer commissionType;
/** 币种 */
@Excel(name = "币种")
/**
*
*/
private String currencyCode;
/** 平台代码 */
@Excel(name = "平台代码")
/**
*
*/
private String platformCode;
/** 成本比例 */
@Excel(name = "成本比例")
/**
*
*/
private BigDecimal costBalance;
/** 商户比例 */
@Excel(name = "商户比例")
/**
*
*/
private BigDecimal merchantBalance;
/** 充值金额 */
@Excel(name = "充值金额")
/**
*
*/
private BigDecimal balance;
/** 佣金金额 */
@Excel(name = "佣金金额")
/**
*
*/
private BigDecimal commissionBalance;
/** USDT金额 */
@Excel(name = "USDT金额")
/**
* USDT
*/
private BigDecimal usdtBalance;
/** 佣金审批状态 ff_tenant_agent_approval_status 0 未提现 1 提现中 1 已提现 */
@Excel(name = "佣金审批状态 0 未提现 1 提现中 1 已提现")
/**
* ff_tenant_agent_approval_status 0 1 1
*/
private Integer approvalStatus;

View File

@ -1,17 +1,15 @@
package com.ff.agent.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_tenant_agent_invite
*
@ -22,53 +20,64 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantAgentInvite extends BaseEntity
{
public class TenantAgentInvite extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 代理id */
@Excel(name = "代理id")
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long agentId;
/** 缴费金额 */
@Excel(name = "缴费金额")
/**
*
*/
private BigDecimal balance;
/** 邀请类型 1 租户 2代理 ff_agent_invite_type */
@Excel(name = "邀请类型 1 租户 2代理 ")
/**
* 1 2 ff_agent_invite_type
*/
private Integer inviteType;
/** 额度类型 TenantQuotaType 枚举 */
@Excel(name = "额度类型 TenantQuotaType 枚举")
/**
* TenantQuotaType
*/
private Integer quotaType;
/** 买分比例 */
@Excel(name = "买分比例")
/**
*
*/
private BigDecimal scoreRatio;
/** 租户类型 TenantType 枚举 */
@Excel(name = "租户类型 TenantType 枚举")
/**
* TenantType
*/
private Integer tenantType;
/** 透支比例 */
@Excel(name = "透支比例")
/**
*
*/
private BigDecimal depositRatio;
/** 信誉额度 */
@Excel(name = "信誉额度")
/**
*
*/
private BigDecimal realBalance;
/** 邀请码 */
@Excel(name = "邀请码")
/**
*
*/
private String inviteCode;
/** 邀请链接 */
@Excel(name = "邀请链接")
/**
*
*/
private String inviteUrl;
}

View File

@ -1,17 +1,15 @@
package com.ff.agent.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_tenant_agent_invite_platform
*
@ -22,32 +20,38 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantAgentInvitePlatform extends BaseEntity
{
public class TenantAgentInvitePlatform extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
private Long id;
/** 邀请码id */
@JsonSerialize(using = ToStringSerializer.class)
@Excel(name = "邀请码id", width = 30, dateFormat = "yyyy-MM-dd")
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long inviteId;
/** 平台编码 */
@Excel(name = "平台编码")
/**
*
*/
private String platformCode;
/** 币种编码 */
@Excel(name = "币种编码")
/**
*
*/
private String currencyCode;
/** 成本 */
@Excel(name = "成本")
/**
*
*/
private BigDecimal cost;
/** 使用成本 */
@Excel(name = "使用成本")
/**
* 使
*/
private BigDecimal useCost;

View File

@ -1,17 +1,15 @@
package com.ff.agent.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_tenant_agent_invite_register
*
@ -22,50 +20,60 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantAgentInviteRegister extends BaseEntity
{
public class TenantAgentInviteRegister extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 代理id */
@Excel(name = "代理id")
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long agentId;
/** 邀请码 */
@Excel(name = "邀请码")
/**
*
*/
private String inviteCode;
/** 账号 */
@Excel(name = "账号")
/**
*
*/
private String account;
/** 密码 */
@Excel(name = "密码")
/**
*
*/
private String password;
/** 缴费金额 */
@Excel(name = "缴费金额")
/**
*
*/
private BigDecimal balance;
/** 注册时间 */
@Excel(name = "注册时间")
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long registerTime;
/** 注册IP */
@Excel(name = "注册IP")
/**
* IP
*/
private String registerIp;
/** 注册ip的城市 */
@Excel(name = "注册ip的城市")
/**
* ip
*/
private String registerIpCity;
/** 状态 1 待激活 2已激活 InviterRegisterStatus 枚举*/
@Excel(name = "状态 1 待激活 2已激活")
/**
* 1 2 InviterRegisterStatus
*/
private Integer status;
/**

View File

@ -1,17 +1,15 @@
package com.ff.agent.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_tenant_agent_withdrawal
*
@ -22,11 +20,12 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantAgentWithdrawal extends BaseEntity
{
public class TenantAgentWithdrawal extends BaseEntity {
private static final long serialVersionUID = 1L;
/** $column.columnComment */
/**
* $column.columnComment
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
@ -35,20 +34,24 @@ public class TenantAgentWithdrawal extends BaseEntity
@JsonSerialize(using = ToStringSerializer.class)
private Long agentId;
/** 佣金余额 */
@Excel(name = "佣金余额")
/**
*
*/
private BigDecimal commissionBalance;
/** 币种协议 */
@Excel(name = "币种协议")
/**
*
*/
private String currencyAgreement;
/** 钱包地址 */
@Excel(name = "钱包地址")
/**
*
*/
private String walletAddress;
/** 0 未提现 1 提现中 1 已提现 3 已拒绝 */
@Excel(name = " 0 未提现 1 提现中 1 已提现 3 已拒绝")
/**
* 0 1 1 3
*/
private Integer approvalStatus;

View File

@ -0,0 +1,72 @@
package com.ff.agent.mapper;
import com.ff.agent.domain.TenantAgentCommission;
import java.math.BigDecimal;
import java.util.List;
/**
* Mapper
*
* @author shi
* @date 2025-02-26
*/
public interface TenantAgentCommissionMapper {
/**
*
*
* @param id
* @return
*/
TenantAgentCommission selectTenantAgentCommissionById(Long id);
/**
*
*
* @param tenantAgentCommission
* @return
*/
List<TenantAgentCommission> selectTenantAgentCommissionList(TenantAgentCommission tenantAgentCommission);
/**
*
*
* @param tenantAgentCommission
* @return
*/
int insertTenantAgentCommission(TenantAgentCommission tenantAgentCommission);
/**
*
*
* @param tenantAgentCommission
* @return
*/
int updateTenantAgentCommission(TenantAgentCommission tenantAgentCommission);
/**
*
*
* @param id
* @return
*/
int deleteTenantAgentCommissionById(Long id);
/**
*
*
* @param ids
* @return
*/
int deleteTenantAgentCommissionByIds(Long[] ids);
/**
*
*
* @param tenantAgentCommission
* @return {@link BigDecimal }
*/
BigDecimal getAgentCommissionSum(TenantAgentCommission tenantAgentCommission);
}

View File

@ -1,23 +1,23 @@
package com.ff.agent.mapper;
import java.util.List;
import com.ff.agent.domain.TenantAgentInvite;
import java.util.List;
/**
* Mapper
*
*
* @author shi
* @date 2025-02-25
*/
public interface TenantAgentInviteMapper
{
public interface TenantAgentInviteMapper {
/**
*
*
*
* @param id
* @return
*/
TenantAgentInvite selectTenantAgentInviteById(Long id);
TenantAgentInvite selectTenantAgentInviteById(Long id);
/**
@ -30,41 +30,41 @@ public interface TenantAgentInviteMapper
/**
*
*
*
* @param tenantAgentInvite
* @return
*/
List<TenantAgentInvite> selectTenantAgentInviteList(TenantAgentInvite tenantAgentInvite);
List<TenantAgentInvite> selectTenantAgentInviteList(TenantAgentInvite tenantAgentInvite);
/**
*
*
*
* @param tenantAgentInvite
* @return
*/
int insertTenantAgentInvite(TenantAgentInvite tenantAgentInvite);
int insertTenantAgentInvite(TenantAgentInvite tenantAgentInvite);
/**
*
*
*
* @param tenantAgentInvite
* @return
*/
int updateTenantAgentInvite(TenantAgentInvite tenantAgentInvite);
int updateTenantAgentInvite(TenantAgentInvite tenantAgentInvite);
/**
*
*
*
* @param id
* @return
*/
int deleteTenantAgentInviteById(Long id);
int deleteTenantAgentInviteById(Long id);
/**
*
*
*
* @param ids
* @return
*/
int deleteTenantAgentInviteByIds(Long[] ids);
int deleteTenantAgentInviteByIds(Long[] ids);
}

View File

@ -1,61 +1,61 @@
package com.ff.agent.mapper;
import java.util.List;
import com.ff.agent.domain.TenantAgentInvitePlatform;
import java.util.List;
/**
* Mapper
*
*
* @author shi
* @date 2025-02-27
*/
public interface TenantAgentInvitePlatformMapper
{
public interface TenantAgentInvitePlatformMapper {
/**
*
*
*
* @param id
* @return
*/
TenantAgentInvitePlatform selectTenantAgentInvitePlatformById(Long id);
TenantAgentInvitePlatform selectTenantAgentInvitePlatformById(Long id);
/**
*
*
*
* @param tenantAgentInvitePlatform
* @return
*/
List<TenantAgentInvitePlatform> selectTenantAgentInvitePlatformList(TenantAgentInvitePlatform tenantAgentInvitePlatform);
List<TenantAgentInvitePlatform> selectTenantAgentInvitePlatformList(TenantAgentInvitePlatform tenantAgentInvitePlatform);
/**
*
*
*
* @param tenantAgentInvitePlatform
* @return
*/
int insertTenantAgentInvitePlatform(TenantAgentInvitePlatform tenantAgentInvitePlatform);
int insertTenantAgentInvitePlatform(TenantAgentInvitePlatform tenantAgentInvitePlatform);
/**
*
*
*
* @param tenantAgentInvitePlatform
* @return
*/
int updateTenantAgentInvitePlatform(TenantAgentInvitePlatform tenantAgentInvitePlatform);
int updateTenantAgentInvitePlatform(TenantAgentInvitePlatform tenantAgentInvitePlatform);
/**
*
*
*
* @param id
* @return
*/
int deleteTenantAgentInvitePlatformById(Long id);
int deleteTenantAgentInvitePlatformById(Long id);
/**
*
*
*
* @param ids
* @return
*/
int deleteTenantAgentInvitePlatformByIds(Long[] ids);
int deleteTenantAgentInvitePlatformByIds(Long[] ids);
}

View File

@ -0,0 +1,62 @@
package com.ff.agent.mapper;
import com.ff.agent.domain.TenantAgentInviteRegister;
import java.util.List;
/**
* Mapper
*
* @author shi
* @date 2025-02-25
*/
public interface TenantAgentInviteRegisterMapper {
/**
*
*
* @param id
* @return
*/
TenantAgentInviteRegister selectTenantAgentInviteRegisterById(Long id);
/**
*
*
* @param tenantAgentInviteRegister
* @return
*/
List<TenantAgentInviteRegister> selectTenantAgentInviteRegisterList(TenantAgentInviteRegister tenantAgentInviteRegister);
/**
*
*
* @param tenantAgentInviteRegister
* @return
*/
int insertTenantAgentInviteRegister(TenantAgentInviteRegister tenantAgentInviteRegister);
/**
*
*
* @param tenantAgentInviteRegister
* @return
*/
int updateTenantAgentInviteRegister(TenantAgentInviteRegister tenantAgentInviteRegister);
/**
*
*
* @param id
* @return
*/
int deleteTenantAgentInviteRegisterById(Long id);
/**
*
*
* @param ids
* @return
*/
int deleteTenantAgentInviteRegisterByIds(Long[] ids);
}

View File

@ -1,61 +1,61 @@
package com.ff.agent.mapper;
import java.util.List;
import com.ff.agent.domain.TenantAgentWithdrawal;
import java.util.List;
/**
* Mapper
*
*
* @author shi
* @date 2025-02-26
*/
public interface TenantAgentWithdrawalMapper
{
public interface TenantAgentWithdrawalMapper {
/**
*
*
*
* @param id
* @return
*/
TenantAgentWithdrawal selectTenantAgentWithdrawalById(Long id);
TenantAgentWithdrawal selectTenantAgentWithdrawalById(Long id);
/**
*
*
*
* @param tenantAgentWithdrawal
* @return
*/
List<TenantAgentWithdrawal> selectTenantAgentWithdrawalList(TenantAgentWithdrawal tenantAgentWithdrawal);
List<TenantAgentWithdrawal> selectTenantAgentWithdrawalList(TenantAgentWithdrawal tenantAgentWithdrawal);
/**
*
*
*
* @param tenantAgentWithdrawal
* @return
*/
int insertTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal);
int insertTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal);
/**
*
*
*
* @param tenantAgentWithdrawal
* @return
*/
int updateTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal);
int updateTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal);
/**
*
*
*
* @param id
* @return
*/
int deleteTenantAgentWithdrawalById(Long id);
int deleteTenantAgentWithdrawalById(Long id);
/**
*
*
*
* @param ids
* @return
*/
int deleteTenantAgentWithdrawalByIds(Long[] ids);
int deleteTenantAgentWithdrawalByIds(Long[] ids);
}

View File

@ -1,32 +1,32 @@
package com.ff.agent.service;
import com.ff.agent.domain.TenantAgentCommission;
import java.math.BigDecimal;
import java.util.List;
import com.ff.agent.domain.TenantAgentCommission;
/**
* Service
*
*
* @author shi
* @date 2025-02-26
*/
public interface ITenantAgentCommissionService
{
public interface ITenantAgentCommissionService {
/**
*
*
*
*
* @param id
* @return
* @return
*/
TenantAgentCommission selectTenantAgentCommissionById(Long id);
TenantAgentCommission selectTenantAgentCommissionById(Long id);
/**
*
*
* @param tenantAgentCommission
*
* @param tenantAgentCommission
* @return
*/
List<TenantAgentCommission> selectTenantAgentCommissionList(TenantAgentCommission tenantAgentCommission);
List<TenantAgentCommission> selectTenantAgentCommissionList(TenantAgentCommission tenantAgentCommission);
/**
@ -38,34 +38,34 @@ public interface ITenantAgentCommissionService
BigDecimal getAgentCommissionSum(TenantAgentCommission tenantAgentCommission);
/**
*
*
* @param tenantAgentCommission
*
*
* @param tenantAgentCommission
* @return
*/
int insertTenantAgentCommission(TenantAgentCommission tenantAgentCommission);
int insertTenantAgentCommission(TenantAgentCommission tenantAgentCommission);
/**
*
*
* @param tenantAgentCommission
*
*
* @param tenantAgentCommission
* @return
*/
int updateTenantAgentCommission(TenantAgentCommission tenantAgentCommission);
int updateTenantAgentCommission(TenantAgentCommission tenantAgentCommission);
/**
*
*
*
*
* @param ids
* @return
*/
int deleteTenantAgentCommissionByIds(Long[] ids);
int deleteTenantAgentCommissionByIds(Long[] ids);
/**
*
*
*
* @param id
* @return
*/
int deleteTenantAgentCommissionById(Long id);
int deleteTenantAgentCommissionById(Long id);
}

View File

@ -1,61 +1,61 @@
package com.ff.agent.service;
import java.util.List;
import com.ff.agent.domain.TenantAgentInvitePlatform;
import java.util.List;
/**
* Service
*
*
* @author shi
* @date 2025-02-27
*/
public interface ITenantAgentInvitePlatformService
{
public interface ITenantAgentInvitePlatformService {
/**
*
*
*
* @param id
* @return
*/
TenantAgentInvitePlatform selectTenantAgentInvitePlatformById(Long id);
TenantAgentInvitePlatform selectTenantAgentInvitePlatformById(Long id);
/**
*
*
*
* @param tenantAgentInvitePlatform
* @return
*/
List<TenantAgentInvitePlatform> selectTenantAgentInvitePlatformList(TenantAgentInvitePlatform tenantAgentInvitePlatform);
List<TenantAgentInvitePlatform> selectTenantAgentInvitePlatformList(TenantAgentInvitePlatform tenantAgentInvitePlatform);
/**
*
*
*
* @param tenantAgentInvitePlatform
* @return
*/
int insertTenantAgentInvitePlatform(TenantAgentInvitePlatform tenantAgentInvitePlatform);
int insertTenantAgentInvitePlatform(TenantAgentInvitePlatform tenantAgentInvitePlatform);
/**
*
*
*
* @param tenantAgentInvitePlatform
* @return
*/
int updateTenantAgentInvitePlatform(TenantAgentInvitePlatform tenantAgentInvitePlatform);
int updateTenantAgentInvitePlatform(TenantAgentInvitePlatform tenantAgentInvitePlatform);
/**
*
*
*
* @param ids
* @return
*/
int deleteTenantAgentInvitePlatformByIds(Long[] ids);
int deleteTenantAgentInvitePlatformByIds(Long[] ids);
/**
*
*
*
* @param id
* @return
*/
int deleteTenantAgentInvitePlatformById(Long id);
int deleteTenantAgentInvitePlatformById(Long id);
}

View File

@ -0,0 +1,62 @@
package com.ff.agent.service;
import com.ff.agent.domain.TenantAgentInviteRegister;
import java.util.List;
/**
* Service
*
* @author shi
* @date 2025-02-25
*/
public interface ITenantAgentInviteRegisterService {
/**
*
*
* @param id
* @return
*/
TenantAgentInviteRegister selectTenantAgentInviteRegisterById(Long id);
/**
*
*
* @param tenantAgentInviteRegister
* @return
*/
List<TenantAgentInviteRegister> selectTenantAgentInviteRegisterList(TenantAgentInviteRegister tenantAgentInviteRegister);
/**
*
*
* @param tenantAgentInviteRegister
* @return
*/
int insertTenantAgentInviteRegister(TenantAgentInviteRegister tenantAgentInviteRegister);
/**
*
*
* @param tenantAgentInviteRegister
* @return
*/
int updateTenantAgentInviteRegister(TenantAgentInviteRegister tenantAgentInviteRegister);
/**
*
*
* @param ids
* @return
*/
int deleteTenantAgentInviteRegisterByIds(Long[] ids);
/**
*
*
* @param id
* @return
*/
int deleteTenantAgentInviteRegisterById(Long id);
}

View File

@ -1,23 +1,23 @@
package com.ff.agent.service;
import java.util.List;
import com.ff.agent.domain.TenantAgentInvite;
import java.util.List;
/**
* Service
*
*
* @author shi
* @date 2025-02-25
*/
public interface ITenantAgentInviteService
{
public interface ITenantAgentInviteService {
/**
*
*
*
* @param id
* @return
*/
TenantAgentInvite selectTenantAgentInviteById(Long id);
TenantAgentInvite selectTenantAgentInviteById(Long id);
/**
@ -30,48 +30,41 @@ public interface ITenantAgentInviteService
/**
*
*
*
* @param tenantAgentInvite
* @return
*/
List<TenantAgentInvite> selectTenantAgentInviteList(TenantAgentInvite tenantAgentInvite);
List<TenantAgentInvite> selectTenantAgentInviteList(TenantAgentInvite tenantAgentInvite);
/**
*
*
*
* @param tenantAgentInvite
* @return
*/
int insertTenantAgentInvite(TenantAgentInvite tenantAgentInvite);
/**
*
*
* @return {@link String }
*/
String getInviteCode();
int insertTenantAgentInvite(TenantAgentInvite tenantAgentInvite);
/**
*
*
*
* @param tenantAgentInvite
* @return
*/
int updateTenantAgentInvite(TenantAgentInvite tenantAgentInvite);
int updateTenantAgentInvite(TenantAgentInvite tenantAgentInvite);
/**
*
*
*
* @param ids
* @return
*/
int deleteTenantAgentInviteByIds(Long[] ids);
int deleteTenantAgentInviteByIds(Long[] ids);
/**
*
*
*
* @param id
* @return
*/
int deleteTenantAgentInviteById(Long id);
int deleteTenantAgentInviteById(Long id);
}

View File

@ -1,61 +1,61 @@
package com.ff.agent.service;
import java.util.List;
import com.ff.agent.domain.TenantAgentWithdrawal;
import java.util.List;
/**
* Service
*
*
* @author shi
* @date 2025-02-26
*/
public interface ITenantAgentWithdrawalService
{
public interface ITenantAgentWithdrawalService {
/**
*
*
*
* @param id
* @return
*/
TenantAgentWithdrawal selectTenantAgentWithdrawalById(Long id);
TenantAgentWithdrawal selectTenantAgentWithdrawalById(Long id);
/**
*
*
*
* @param tenantAgentWithdrawal
* @return
*/
List<TenantAgentWithdrawal> selectTenantAgentWithdrawalList(TenantAgentWithdrawal tenantAgentWithdrawal);
List<TenantAgentWithdrawal> selectTenantAgentWithdrawalList(TenantAgentWithdrawal tenantAgentWithdrawal);
/**
*
*
*
* @param tenantAgentWithdrawal
* @return
*/
int insertTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal);
int insertTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal);
/**
*
*
*
* @param tenantAgentWithdrawal
* @return
*/
int updateTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal);
int updateTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal);
/**
*
*
*
* @param ids
* @return
*/
int deleteTenantAgentWithdrawalByIds(Long[] ids);
int deleteTenantAgentWithdrawalByIds(Long[] ids);
/**
*
*
*
* @param id
* @return
*/
int deleteTenantAgentWithdrawalById(Long id);
int deleteTenantAgentWithdrawalById(Long id);
}

View File

@ -1,16 +1,16 @@
package com.ff.agent.service.impl;
import cn.hutool.core.util.IdUtil;
import com.ff.agent.domain.TenantAgentCommission;
import com.ff.agent.mapper.TenantAgentCommissionMapper;
import com.ff.agent.service.ITenantAgentCommissionService;
import com.ff.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.List;
import cn.hutool.core.util.IdUtil;
import com.ff.base.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ff.agent.mapper.TenantAgentCommissionMapper;
import com.ff.agent.domain.TenantAgentCommission;
import com.ff.agent.service.ITenantAgentCommissionService;
/**
* Service
*

View File

@ -1,13 +1,14 @@
package com.ff.agent.service.impl;
import java.util.List;
import com.ff.base.utils.DateUtils;
import cn.hutool.core.util.IdUtil;
import com.ff.agent.domain.TenantAgentInvitePlatform;
import com.ff.agent.mapper.TenantAgentInvitePlatformMapper;
import com.ff.agent.service.ITenantAgentInvitePlatformService;
import com.ff.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ff.agent.mapper.TenantAgentInvitePlatformMapper;
import com.ff.agent.domain.TenantAgentInvitePlatform;
import com.ff.agent.service.ITenantAgentInvitePlatformService;
import cn.hutool.core.util.IdUtil;
import java.util.List;
/**

View File

@ -1,18 +1,15 @@
package com.ff.agent.service.impl;
import java.util.Collections;
import java.util.List;
import cn.hutool.core.util.IdUtil;
import com.ff.agent.domain.TenantAgentInviteRegister;
import com.ff.agent.dto.TenantAgentInviteRegisterDTO;
import com.ff.agent.mapper.TenantAgentInviteRegisterMapper;
import com.ff.agent.service.ITenantAgentInviteRegisterService;
import com.ff.base.utils.DateUtils;
import com.ff.base.utils.uuid.IdUtils;
import com.ff.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Service
*
@ -20,8 +17,7 @@ import org.springframework.stereotype.Service;
* @date 2025-02-25
*/
@Service
public class TenantAgentInviteRegisterServiceImpl implements ITenantAgentInviteRegisterService
{
public class TenantAgentInviteRegisterServiceImpl implements ITenantAgentInviteRegisterService {
@Autowired
private TenantAgentInviteRegisterMapper tenantAgentInviteRegisterMapper;
@ -32,8 +28,7 @@ public class TenantAgentInviteRegisterServiceImpl implements ITenantAgentInviteR
* @return
*/
@Override
public TenantAgentInviteRegister selectTenantAgentInviteRegisterById(Long id)
{
public TenantAgentInviteRegister selectTenantAgentInviteRegisterById(Long id) {
return tenantAgentInviteRegisterMapper.selectTenantAgentInviteRegisterById(id);
}
@ -44,21 +39,10 @@ public class TenantAgentInviteRegisterServiceImpl implements ITenantAgentInviteR
* @return
*/
@Override
public List<TenantAgentInviteRegister> selectTenantAgentInviteRegisterList(TenantAgentInviteRegister tenantAgentInviteRegister)
{
public List<TenantAgentInviteRegister> selectTenantAgentInviteRegisterList(TenantAgentInviteRegister tenantAgentInviteRegister) {
return tenantAgentInviteRegisterMapper.selectTenantAgentInviteRegisterList(tenantAgentInviteRegister);
}
/**
* dto
*
* @param tenantAgentInviteRegisterDTO dto
* @return {@link List }<{@link TenantAgentInviteRegisterDTO }>
*/
@Override
public List<TenantAgentInviteRegisterDTO> selectTenantAgentInviteRegisterListDTO(TenantAgentInviteRegisterDTO tenantAgentInviteRegisterDTO) {
return tenantAgentInviteRegisterMapper.selectTenantAgentInviteRegisterListDTO(tenantAgentInviteRegisterDTO);
}
/**
*
@ -67,8 +51,7 @@ public class TenantAgentInviteRegisterServiceImpl implements ITenantAgentInviteR
* @return
*/
@Override
public int insertTenantAgentInviteRegister(TenantAgentInviteRegister tenantAgentInviteRegister)
{
public int insertTenantAgentInviteRegister(TenantAgentInviteRegister tenantAgentInviteRegister) {
tenantAgentInviteRegister.setId(IdUtil.getSnowflakeNextId());
tenantAgentInviteRegister.setCreateTime(DateUtils.getNowDate());
return tenantAgentInviteRegisterMapper.insertTenantAgentInviteRegister(tenantAgentInviteRegister);
@ -81,8 +64,7 @@ public class TenantAgentInviteRegisterServiceImpl implements ITenantAgentInviteR
* @return
*/
@Override
public int updateTenantAgentInviteRegister(TenantAgentInviteRegister tenantAgentInviteRegister)
{
public int updateTenantAgentInviteRegister(TenantAgentInviteRegister tenantAgentInviteRegister) {
tenantAgentInviteRegister.setUpdateTime(DateUtils.getNowDate());
return tenantAgentInviteRegisterMapper.updateTenantAgentInviteRegister(tenantAgentInviteRegister);
}
@ -94,8 +76,7 @@ public class TenantAgentInviteRegisterServiceImpl implements ITenantAgentInviteR
* @return
*/
@Override
public int deleteTenantAgentInviteRegisterByIds(Long[] ids)
{
public int deleteTenantAgentInviteRegisterByIds(Long[] ids) {
return tenantAgentInviteRegisterMapper.deleteTenantAgentInviteRegisterByIds(ids);
}
@ -106,8 +87,7 @@ public class TenantAgentInviteRegisterServiceImpl implements ITenantAgentInviteR
* @return
*/
@Override
public int deleteTenantAgentInviteRegisterById(Long id)
{
public int deleteTenantAgentInviteRegisterById(Long id) {
return tenantAgentInviteRegisterMapper.deleteTenantAgentInviteRegisterById(id);
}
}

View File

@ -1,16 +1,14 @@
package com.ff.agent.service.impl;
import java.util.List;
import cn.hutool.core.util.IdUtil;
import com.ff.base.utils.DateUtils;
import com.ff.base.utils.NumberUtils;
import com.ff.agent.domain.TenantAgentInvite;
import com.ff.agent.mapper.TenantAgentInviteMapper;
import com.ff.agent.service.ITenantAgentInviteService;
import com.ff.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ff.agent.mapper.TenantAgentInviteMapper;
import com.ff.agent.domain.TenantAgentInvite;
import com.ff.agent.service.ITenantAgentInviteService;
import org.springframework.util.CollectionUtils;
import java.util.List;
/**
* Service
@ -19,8 +17,7 @@ import org.springframework.util.CollectionUtils;
* @date 2025-02-25
*/
@Service
public class TenantAgentInviteServiceImpl implements ITenantAgentInviteService
{
public class TenantAgentInviteServiceImpl implements ITenantAgentInviteService {
@Autowired
private TenantAgentInviteMapper tenantAgentInviteMapper;
@ -31,8 +28,7 @@ public class TenantAgentInviteServiceImpl implements ITenantAgentInviteService
* @return
*/
@Override
public TenantAgentInvite selectTenantAgentInviteById(Long id)
{
public TenantAgentInvite selectTenantAgentInviteById(Long id) {
return tenantAgentInviteMapper.selectTenantAgentInviteById(id);
}
@ -44,7 +40,7 @@ public class TenantAgentInviteServiceImpl implements ITenantAgentInviteService
*/
@Override
public TenantAgentInvite selectTenantAgentInviteByInviteCode(String inviteCode) {
return tenantAgentInviteMapper.selectTenantAgentInviteByInviteCode( inviteCode);
return tenantAgentInviteMapper.selectTenantAgentInviteByInviteCode(inviteCode);
}
/**
@ -54,8 +50,7 @@ public class TenantAgentInviteServiceImpl implements ITenantAgentInviteService
* @return
*/
@Override
public List<TenantAgentInvite> selectTenantAgentInviteList(TenantAgentInvite tenantAgentInvite)
{
public List<TenantAgentInvite> selectTenantAgentInviteList(TenantAgentInvite tenantAgentInvite) {
return tenantAgentInviteMapper.selectTenantAgentInviteList(tenantAgentInvite);
}
@ -66,38 +61,20 @@ public class TenantAgentInviteServiceImpl implements ITenantAgentInviteService
* @return
*/
@Override
public int insertTenantAgentInvite(TenantAgentInvite tenantAgentInvite)
{
public int insertTenantAgentInvite(TenantAgentInvite tenantAgentInvite) {
tenantAgentInvite.setId(IdUtil.getSnowflakeNextId());
tenantAgentInvite.setCreateTime(DateUtils.getNowDate());
return tenantAgentInviteMapper.insertTenantAgentInvite(tenantAgentInvite);
}
/**
*
*
* @return {@link String }
*/
@Override
public synchronized String getInviteCode() {
String inviteCode = NumberUtils.generateRandomCode(12);
while (!CollectionUtils.isEmpty(tenantAgentInviteMapper.selectTenantAgentInviteList(TenantAgentInvite.builder()
.inviteCode(inviteCode)
.build()))) {
inviteCode = NumberUtils.generateRandomCode(12);
}
return inviteCode;
}
/**3
*
*
* @param tenantAgentInvite
* @return
*/
@Override
public int updateTenantAgentInvite(TenantAgentInvite tenantAgentInvite)
{
public int updateTenantAgentInvite(TenantAgentInvite tenantAgentInvite) {
tenantAgentInvite.setUpdateTime(DateUtils.getNowDate());
return tenantAgentInviteMapper.updateTenantAgentInvite(tenantAgentInvite);
}
@ -109,8 +86,7 @@ public class TenantAgentInviteServiceImpl implements ITenantAgentInviteService
* @return
*/
@Override
public int deleteTenantAgentInviteByIds(Long[] ids)
{
public int deleteTenantAgentInviteByIds(Long[] ids) {
return tenantAgentInviteMapper.deleteTenantAgentInviteByIds(ids);
}
@ -121,8 +97,7 @@ public class TenantAgentInviteServiceImpl implements ITenantAgentInviteService
* @return
*/
@Override
public int deleteTenantAgentInviteById(Long id)
{
public int deleteTenantAgentInviteById(Long id) {
return tenantAgentInviteMapper.deleteTenantAgentInviteById(id);
}
}

View File

@ -1,13 +1,14 @@
package com.ff.agent.service.impl;
import java.util.List;
import com.ff.base.utils.DateUtils;
import cn.hutool.core.util.IdUtil;
import com.ff.agent.domain.TenantAgentWithdrawal;
import com.ff.agent.mapper.TenantAgentWithdrawalMapper;
import com.ff.agent.service.ITenantAgentWithdrawalService;
import com.ff.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ff.agent.mapper.TenantAgentWithdrawalMapper;
import com.ff.agent.domain.TenantAgentWithdrawal;
import com.ff.agent.service.ITenantAgentWithdrawalService;
import cn.hutool.core.util.IdUtil;
import java.util.List;
/**
@ -17,8 +18,7 @@ import cn.hutool.core.util.IdUtil;
* @date 2025-02-26
*/
@Service
public class TenantAgentWithdrawalServiceImpl implements ITenantAgentWithdrawalService
{
public class TenantAgentWithdrawalServiceImpl implements ITenantAgentWithdrawalService {
@Autowired
private TenantAgentWithdrawalMapper tenantAgentWithdrawalMapper;
@ -29,8 +29,7 @@ public class TenantAgentWithdrawalServiceImpl implements ITenantAgentWithdrawalS
* @return
*/
@Override
public TenantAgentWithdrawal selectTenantAgentWithdrawalById(Long id)
{
public TenantAgentWithdrawal selectTenantAgentWithdrawalById(Long id) {
return tenantAgentWithdrawalMapper.selectTenantAgentWithdrawalById(id);
}
@ -41,8 +40,7 @@ public class TenantAgentWithdrawalServiceImpl implements ITenantAgentWithdrawalS
* @return
*/
@Override
public List<TenantAgentWithdrawal> selectTenantAgentWithdrawalList(TenantAgentWithdrawal tenantAgentWithdrawal)
{
public List<TenantAgentWithdrawal> selectTenantAgentWithdrawalList(TenantAgentWithdrawal tenantAgentWithdrawal) {
return tenantAgentWithdrawalMapper.selectTenantAgentWithdrawalList(tenantAgentWithdrawal);
}
@ -53,8 +51,7 @@ public class TenantAgentWithdrawalServiceImpl implements ITenantAgentWithdrawalS
* @return
*/
@Override
public int insertTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal)
{
public int insertTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal) {
tenantAgentWithdrawal.setId(IdUtil.getSnowflakeNextId());
tenantAgentWithdrawal.setCreateTime(DateUtils.getNowDate());
return tenantAgentWithdrawalMapper.insertTenantAgentWithdrawal(tenantAgentWithdrawal);
@ -67,8 +64,7 @@ public class TenantAgentWithdrawalServiceImpl implements ITenantAgentWithdrawalS
* @return
*/
@Override
public int updateTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal)
{
public int updateTenantAgentWithdrawal(TenantAgentWithdrawal tenantAgentWithdrawal) {
tenantAgentWithdrawal.setUpdateTime(DateUtils.getNowDate());
return tenantAgentWithdrawalMapper.updateTenantAgentWithdrawal(tenantAgentWithdrawal);
}
@ -80,8 +76,7 @@ public class TenantAgentWithdrawalServiceImpl implements ITenantAgentWithdrawalS
* @return
*/
@Override
public int deleteTenantAgentWithdrawalByIds(Long[] ids)
{
public int deleteTenantAgentWithdrawalByIds(Long[] ids) {
return tenantAgentWithdrawalMapper.deleteTenantAgentWithdrawalByIds(ids);
}
@ -92,8 +87,7 @@ public class TenantAgentWithdrawalServiceImpl implements ITenantAgentWithdrawalS
* @return
*/
@Override
public int deleteTenantAgentWithdrawalById(Long id)
{
public int deleteTenantAgentWithdrawalById(Long id) {
return tenantAgentWithdrawalMapper.deleteTenantAgentWithdrawalById(id);
}
}

View File

@ -5,7 +5,6 @@ import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
@ -23,8 +22,7 @@ import java.util.Map;
@SuperBuilder
@AllArgsConstructor
@NoArgsConstructor
public class BaseEntity implements Serializable
{
public class BaseEntity implements Serializable {
private static final long serialVersionUID = 1L;
/**
@ -32,37 +30,48 @@ public class BaseEntity implements Serializable
*/
private Long id;
/** 搜索值 */
/**
*
*/
@JsonIgnore
private String searchValue;
/** 创建者 */
/**
*
*/
private String createBy;
/** 创建时间 */
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long createTime;
/** 更新者 */
/**
*
*/
private String updateBy;
/** 更新时间 */
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long updateTime;
/** 备注 */
/**
*
*/
private String remark;
/** 请求参数 */
/**
*
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
private Map<String, Object> params;
public Map<String, Object> getParams()
{
if (params == null)
{
public Map<String, Object> getParams() {
if (params == null) {
params = new HashMap<>();
}
return params;

View File

@ -2,8 +2,6 @@ package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.annotation.Excel.ColumnType;
import com.ff.base.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
@ -16,100 +14,95 @@ import javax.validation.constraints.Size;
*
* @author ff
*/
public class SysConfig extends BaseEntity
{
public class SysConfig extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 参数主键 */
@Excel(name = "参数主键", cellType = ColumnType.NUMERIC)
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long configId;
/** 参数名称 */
@Excel(name = "参数名称")
/**
*
*/
private String configName;
/** 参数键名 */
@Excel(name = "参数键名")
/**
*
*/
private String configKey;
/** 参数键值 */
@Excel(name = "参数键值")
/**
*
*/
private String configValue;
/** 系统内置Y是 N否 */
@Excel(name = "系统内置", readConverterExp = "Y=是,N=否")
/**
* Y N
*/
private String configType;
@JsonSerialize(using = ToStringSerializer.class)
public Long getConfigId()
{
public Long getConfigId() {
return configId;
}
public void setConfigId(Long configId)
{
public void setConfigId(Long configId) {
this.configId = configId;
}
@NotBlank(message = "参数名称不能为空")
@Size(min = 0, max = 100, message = "参数名称不能超过100个字符")
public String getConfigName()
{
public String getConfigName() {
return configName;
}
public void setConfigName(String configName)
{
public void setConfigName(String configName) {
this.configName = configName;
}
@NotBlank(message = "参数键名长度不能为空")
@Size(min = 0, max = 100, message = "参数键名长度不能超过100个字符")
public String getConfigKey()
{
public String getConfigKey() {
return configKey;
}
public void setConfigKey(String configKey)
{
public void setConfigKey(String configKey) {
this.configKey = configKey;
}
@NotBlank(message = "参数键值不能为空")
@Size(min = 0, max = 500, message = "参数键值长度不能超过500个字符")
public String getConfigValue()
{
public String getConfigValue() {
return configValue;
}
public void setConfigValue(String configValue)
{
public void setConfigValue(String configValue) {
this.configValue = configValue;
}
public String getConfigType()
{
public String getConfigType() {
return configType;
}
public void setConfigType(String configType)
{
public void setConfigType(String configType) {
this.configType = configType;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("configId", getConfigId())
.append("configName", getConfigName())
.append("configKey", getConfigKey())
.append("configValue", getConfigValue())
.append("configType", getConfigType())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("configId", getConfigId())
.append("configName", getConfigName())
.append("configKey", getConfigKey())
.append("configValue", getConfigValue())
.append("configType", getConfigType())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}

View File

@ -2,7 +2,6 @@ package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.Data;
/**
@ -21,31 +20,24 @@ public class SysDatasource extends BaseEntity
private Long id;
/** 租户id */
@Excel(name = "租户id")
private String tenantId;
/** 连接地址 */
@Excel(name = "连接地址")
private String url;
/** 用户名 */
@Excel(name = "用户名")
private String username;
/** 密码 */
@Excel(name = "密码")
private String password;
/** 数据库驱动 */
@Excel(name = "数据库驱动")
private String driverClassName;
/** 时区 */
@Excel(name = "时区")
private String timeZone;
/** 状态0 停用 1 启用) */
@Excel(name = "状态", readConverterExp = "0=,停=用,1=,启=用")
private String status;
/** 时区名称 */

View File

@ -3,9 +3,6 @@ package com.ff.base.system.domain;
import com.fasterxml.jackson.annotation.JsonView;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.annotation.Excel.ColumnType;
import com.ff.base.constant.UserConstants;
import com.ff.base.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
@ -18,53 +15,66 @@ import javax.validation.constraints.Size;
*
* @author ff
*/
public class SysDictData extends BaseEntity
{
public class SysDictData extends BaseEntity {
private static final long serialVersionUID = 1L;
public interface DictDataSimpleView {};
/** 字典编码 */
@Excel(name = "字典编码", cellType = ColumnType.NUMERIC)
public interface DictDataSimpleView {
}
;
/**
*
*/
@JsonView(DictDataSimpleView.class)
@JsonSerialize(using = ToStringSerializer.class)
private Long dictCode;
/** 字典排序 */
@Excel(name = "字典排序", cellType = ColumnType.NUMERIC)
/**
*
*/
@JsonView(DictDataSimpleView.class)
@JsonSerialize(using = ToStringSerializer.class)
private Long dictSort;
/** 字典标签 */
@Excel(name = "字典标签")
/**
*
*/
@JsonView(DictDataSimpleView.class)
private String dictLabel;
/** 字典键值 */
@Excel(name = "字典键值")
/**
*
*/
@JsonView(DictDataSimpleView.class)
private String dictValue;
/** 字典类型 */
@Excel(name = "字典类型")
/**
*
*/
@JsonView(DictDataSimpleView.class)
private String dictType;
/** 样式属性(其他样式扩展) */
/**
*
*/
@JsonView(DictDataSimpleView.class)
private String cssClass;
/** 表格字典样式 */
/**
*
*/
@JsonView(DictDataSimpleView.class)
private String listClass;
/** 是否默认Y是 N否 */
@Excel(name = "是否默认", readConverterExp = "Y=是,N=否")
/**
* Y N
*/
@JsonView(DictDataSimpleView.class)
private String isDefault;
/** 状态0正常 1停用 */
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
/**
* 0 1
*/
private String status;
@Override
@ -76,128 +86,112 @@ public class SysDictData extends BaseEntity
public void setRemark(String remark) {
this.remark = remark;
}
@JsonView(DictDataSimpleView.class)
private String remark;
@JsonSerialize(using = ToStringSerializer.class)
public Long getDictCode()
{
public Long getDictCode() {
return dictCode;
}
public void setDictCode(Long dictCode)
{
public void setDictCode(Long dictCode) {
this.dictCode = dictCode;
}
@JsonSerialize(using = ToStringSerializer.class)
public Long getDictSort()
{
public Long getDictSort() {
return dictSort;
}
public void setDictSort(Long dictSort)
{
public void setDictSort(Long dictSort) {
this.dictSort = dictSort;
}
@NotBlank(message = "字典标签不能为空")
@Size(min = 0, max = 200, message = "字典标签长度不能超过200个字符")
public String getDictLabel()
{
public String getDictLabel() {
return dictLabel;
}
public void setDictLabel(String dictLabel)
{
public void setDictLabel(String dictLabel) {
this.dictLabel = dictLabel;
}
@NotBlank(message = "字典键值不能为空")
@Size(min = 0, max = 200, message = "字典键值长度不能超过200个字符")
public String getDictValue()
{
public String getDictValue() {
return dictValue;
}
public void setDictValue(String dictValue)
{
public void setDictValue(String dictValue) {
this.dictValue = dictValue;
}
@NotBlank(message = "字典类型不能为空")
@Size(min = 0, max = 100, message = "字典类型长度不能超过100个字符")
public String getDictType()
{
public String getDictType() {
return dictType;
}
public void setDictType(String dictType)
{
public void setDictType(String dictType) {
this.dictType = dictType;
}
@Size(min = 0, max = 100, message = "样式属性长度不能超过100个字符")
public String getCssClass()
{
public String getCssClass() {
return cssClass;
}
public void setCssClass(String cssClass)
{
public void setCssClass(String cssClass) {
this.cssClass = cssClass;
}
public String getListClass()
{
public String getListClass() {
return listClass;
}
public void setListClass(String listClass)
{
public void setListClass(String listClass) {
this.listClass = listClass;
}
public boolean getDefault()
{
return UserConstants.YES.equals(this.isDefault);
public boolean getDefault() {
return "Y".equals(this.isDefault);
}
public String getIsDefault()
{
public String getIsDefault() {
return isDefault;
}
public void setIsDefault(String isDefault)
{
public void setIsDefault(String isDefault) {
this.isDefault = isDefault;
}
public String getStatus()
{
public String getStatus() {
return status;
}
public void setStatus(String status)
{
public void setStatus(String status) {
this.status = status;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("dictCode", getDictCode())
.append("dictSort", getDictSort())
.append("dictLabel", getDictLabel())
.append("dictValue", getDictValue())
.append("dictType", getDictType())
.append("cssClass", getCssClass())
.append("listClass", getListClass())
.append("isDefault", getIsDefault())
.append("status", getStatus())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("dictCode", getDictCode())
.append("dictSort", getDictSort())
.append("dictLabel", getDictLabel())
.append("dictValue", getDictValue())
.append("dictType", getDictType())
.append("cssClass", getCssClass())
.append("listClass", getListClass())
.append("isDefault", getIsDefault())
.append("status", getStatus())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}

View File

@ -2,8 +2,6 @@ package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.annotation.Excel.ColumnType;
import com.ff.base.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
@ -17,84 +15,80 @@ import javax.validation.constraints.Size;
*
* @author ff
*/
public class SysDictType extends BaseEntity
{
public class SysDictType extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 字典主键 */
@Excel(name = "字典主键", cellType = ColumnType.NUMERIC)
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long dictId;
/** 字典名称 */
@Excel(name = "字典名称")
/**
*
*/
private String dictName;
/** 字典类型 */
@Excel(name = "字典类型")
/**
*
*/
private String dictType;
/** 状态0正常 1停用 */
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
/**
* 0 1
*/
private String status;
@JsonSerialize(using = ToStringSerializer.class)
public Long getDictId()
{
public Long getDictId() {
return dictId;
}
public void setDictId(Long dictId)
{
public void setDictId(Long dictId) {
this.dictId = dictId;
}
@NotBlank(message = "字典名称不能为空")
@Size(min = 0, max = 100, message = "字典类型名称长度不能超过100个字符")
public String getDictName()
{
public String getDictName() {
return dictName;
}
public void setDictName(String dictName)
{
public void setDictName(String dictName) {
this.dictName = dictName;
}
@NotBlank(message = "字典类型不能为空")
@Size(min = 0, max = 100, message = "字典类型类型长度不能超过100个字符")
@Pattern(regexp = "^[a-z][a-z0-9_]*$", message = "字典类型必须以字母开头,且只能为(小写字母,数字,下滑线)")
public String getDictType()
{
public String getDictType() {
return dictType;
}
public void setDictType(String dictType)
{
public void setDictType(String dictType) {
this.dictType = dictType;
}
public String getStatus()
{
public String getStatus() {
return status;
}
public void setStatus(String status)
{
public void setStatus(String status) {
this.status = status;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("dictId", getDictId())
.append("dictName", getDictName())
.append("dictType", getDictType())
.append("status", getStatus())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("dictId", getDictId())
.append("dictName", getDictName())
.append("dictType", getDictType())
.append("status", getStatus())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}

View File

@ -0,0 +1,134 @@
package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.core.domain.BaseEntity;
/**
* 访 sys_logininfor
*
* @author ff
*/
public class SysLogininfor extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long infoId;
/**
*
*/
private String userName;
/**
* 0 1
*/
private String status;
/**
* IP
*/
private String ipaddr;
/**
*
*/
private String loginLocation;
/**
*
*/
private String browser;
/**
*
*/
private String os;
/**
*
*/
private String msg;
/**
* 访
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long loginTime;
public Long getInfoId() {
return infoId;
}
public void setInfoId(Long infoId) {
this.infoId = infoId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getIpaddr() {
return ipaddr;
}
public void setIpaddr(String ipaddr) {
this.ipaddr = ipaddr;
}
public String getLoginLocation() {
return loginLocation;
}
public void setLoginLocation(String loginLocation) {
this.loginLocation = loginLocation;
}
public String getBrowser() {
return browser;
}
public void setBrowser(String browser) {
this.browser = browser;
}
public String getOs() {
return os;
}
public void setOs(String os) {
this.os = os;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public Long getLoginTime() {
return loginTime;
}
public void setLoginTime(Long loginTime) {
this.loginTime = loginTime;
}
}

View File

@ -0,0 +1,279 @@
package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.ArrayList;
import java.util.List;
/**
* sys_menu
*
* @author ff
*/
public class SysMenu extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long menuId;
/**
*
*/
private String menuName;
/**
*
*/
private String parentName;
/**
* ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long parentId;
/**
*
*/
private Integer orderNum;
/**
*
*/
private String path;
/**
*
*/
private String component;
/**
*
*/
private String query;
/**
* vue3router
*/
private String routeName;
/**
* 0 1
*/
private String isFrame;
/**
* 0 1
*/
private String isCache;
/**
* M C F
*/
private String menuType;
/**
* 0 1
*/
private String visible;
/**
* 0 1
*/
private String status;
/**
*
*/
private String perms;
/**
*
*/
private String icon;
/**
*
*/
private List<SysMenu> children = new ArrayList<SysMenu>();
@JsonSerialize(using = ToStringSerializer.class)
public Long getMenuId() {
return menuId;
}
public void setMenuId(Long menuId) {
this.menuId = menuId;
}
@NotBlank(message = "菜单名称不能为空")
@Size(min = 0, max = 50, message = "菜单名称长度不能超过50个字符")
public String getMenuName() {
return menuName;
}
public void setMenuName(String menuName) {
this.menuName = menuName;
}
public String getParentName() {
return parentName;
}
public void setParentName(String parentName) {
this.parentName = parentName;
}
public Long getParentId() {
return parentId;
}
public void setParentId(Long parentId) {
this.parentId = parentId;
}
@NotNull(message = "显示顺序不能为空")
public Integer getOrderNum() {
return orderNum;
}
public void setOrderNum(Integer orderNum) {
this.orderNum = orderNum;
}
@Size(min = 0, max = 200, message = "路由地址不能超过200个字符")
public String getPath() {
return path;
}
public void setPath(String path) {
this.path = path;
}
@Size(min = 0, max = 200, message = "组件路径不能超过255个字符")
public String getComponent() {
return component;
}
public void setComponent(String component) {
this.component = component;
}
public String getQuery() {
return query;
}
public void setQuery(String query) {
this.query = query;
}
public String getRouteName() {
return routeName;
}
public void setRouteName(String routeName) {
this.routeName = routeName;
}
public String getIsFrame() {
return isFrame;
}
public void setIsFrame(String isFrame) {
this.isFrame = isFrame;
}
public String getIsCache() {
return isCache;
}
public void setIsCache(String isCache) {
this.isCache = isCache;
}
@NotBlank(message = "菜单类型不能为空")
public String getMenuType() {
return menuType;
}
public void setMenuType(String menuType) {
this.menuType = menuType;
}
public String getVisible() {
return visible;
}
public void setVisible(String visible) {
this.visible = visible;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
@Size(min = 0, max = 100, message = "权限标识长度不能超过100个字符")
public String getPerms() {
return perms;
}
public void setPerms(String perms) {
this.perms = perms;
}
public String getIcon() {
return icon;
}
public void setIcon(String icon) {
this.icon = icon;
}
public List<SysMenu> getChildren() {
return children;
}
public void setChildren(List<SysMenu> children) {
this.children = children;
}
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("menuId", getMenuId())
.append("menuName", getMenuName())
.append("parentId", getParentId())
.append("orderNum", getOrderNum())
.append("path", getPath())
.append("component", getComponent())
.append("query", getQuery())
.append("routeName", getRouteName())
.append("isFrame", getIsFrame())
.append("IsCache", getIsCache())
.append("menuType", getMenuType())
.append("visible", getVisible())
.append("status ", getStatus())
.append("perms", getPerms())
.append("icon", getIcon())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}

View File

@ -0,0 +1,110 @@
package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.core.domain.BaseEntity;
import lombok.Data;
/**
* oper_log
*
* @author ff
*/
@Data
public class SysOperLog extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long operId;
/**
*
*/
private String title;
/**
* 0 1 2 3
*/
private Integer businessType;
/**
*
*/
private Integer[] businessTypes;
/**
*
*/
private String method;
/**
*
*/
private String requestMethod;
/**
* 0 1 2
*/
private Integer operatorType;
/**
*
*/
private String operName;
/**
*
*/
private String deptName;
/**
* url
*/
private String operUrl;
/**
*
*/
private String operIp;
/**
*
*/
private String operLocation;
/**
*
*/
private String operParam;
/**
*
*/
private String jsonResult;
/**
* 0 1
*/
private Integer status;
/**
*
*/
private String errorMsg;
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long operTime;
/**
*
*/
private Long costTime;
}

View File

@ -2,8 +2,6 @@ package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.annotation.Excel.ColumnType;
import com.ff.base.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
@ -17,112 +15,107 @@ import javax.validation.constraints.Size;
*
* @author ff
*/
public class SysPost extends BaseEntity
{
public class SysPost extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 岗位序号 */
@Excel(name = "岗位序号", cellType = ColumnType.NUMERIC)
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long postId;
/** 岗位编码 */
@Excel(name = "岗位编码")
/**
*
*/
private String postCode;
/** 岗位名称 */
@Excel(name = "岗位名称")
/**
*
*/
private String postName;
/** 岗位排序 */
@Excel(name = "岗位排序")
/**
*
*/
private Integer postSort;
/** 状态0正常 1停用 */
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
/**
* 0 1
*/
private String status;
/** 用户是否存在此岗位标识 默认不存在 */
/**
*
*/
private boolean flag = false;
@JsonSerialize(using = ToStringSerializer.class)
public Long getPostId()
{
public Long getPostId() {
return postId;
}
public void setPostId(Long postId)
{
public void setPostId(Long postId) {
this.postId = postId;
}
@NotBlank(message = "岗位编码不能为空")
@Size(min = 0, max = 64, message = "岗位编码长度不能超过64个字符")
public String getPostCode()
{
public String getPostCode() {
return postCode;
}
public void setPostCode(String postCode)
{
public void setPostCode(String postCode) {
this.postCode = postCode;
}
@NotBlank(message = "岗位名称不能为空")
@Size(min = 0, max = 50, message = "岗位名称长度不能超过50个字符")
public String getPostName()
{
public String getPostName() {
return postName;
}
public void setPostName(String postName)
{
public void setPostName(String postName) {
this.postName = postName;
}
@NotNull(message = "显示顺序不能为空")
public Integer getPostSort()
{
public Integer getPostSort() {
return postSort;
}
public void setPostSort(Integer postSort)
{
public void setPostSort(Integer postSort) {
this.postSort = postSort;
}
public String getStatus()
{
public String getStatus() {
return status;
}
public void setStatus(String status)
{
public void setStatus(String status) {
this.status = status;
}
public boolean isFlag()
{
public boolean isFlag() {
return flag;
}
public void setFlag(boolean flag)
{
public void setFlag(boolean flag) {
this.flag = flag;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("postId", getPostId())
.append("postCode", getPostCode())
.append("postName", getPostName())
.append("postSort", getPostSort())
.append("status", getStatus())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("postId", getPostId())
.append("postCode", getPostCode())
.append("postName", getPostName())
.append("postSort", getPostSort())
.append("status", getStatus())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}

View File

@ -0,0 +1,233 @@
package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.Set;
/**
* sys_role
*
* @author ff
*/
public class SysRole extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long roleId;
/**
*
*/
private String roleName;
/**
*
*/
private String roleKey;
/**
*
*/
private Integer roleSort;
/**
* 12345
*/
private String dataScope;
/**
* 0 1
*/
private boolean menuCheckStrictly;
/**
* 0 1
*/
private boolean deptCheckStrictly;
/**
* 0 1
*/
private String status;
/**
* 0 2
*/
private String delFlag;
/**
*
*/
private boolean flag = false;
/**
*
*/
private Long[] menuIds;
/**
*
*/
private Long[] deptIds;
/**
*
*/
private Set<String> permissions;
public SysRole() {
}
public SysRole(Long roleId) {
this.roleId = roleId;
}
@JsonSerialize(using = ToStringSerializer.class)
public Long getRoleId() {
return roleId;
}
public void setRoleId(Long roleId) {
this.roleId = roleId;
}
public boolean isAdmin() {
return isAdmin(this.roleId);
}
public static boolean isAdmin(Long roleId) {
return roleId != null && 1L == roleId;
}
@NotBlank(message = "角色名称不能为空")
@Size(min = 0, max = 30, message = "角色名称长度不能超过30个字符")
public String getRoleName() {
return roleName;
}
public void setRoleName(String roleName) {
this.roleName = roleName;
}
@NotBlank(message = "权限字符不能为空")
@Size(min = 0, max = 100, message = "权限字符长度不能超过100个字符")
public String getRoleKey() {
return roleKey;
}
public void setRoleKey(String roleKey) {
this.roleKey = roleKey;
}
@NotNull(message = "显示顺序不能为空")
public Integer getRoleSort() {
return roleSort;
}
public void setRoleSort(Integer roleSort) {
this.roleSort = roleSort;
}
public String getDataScope() {
return dataScope;
}
public void setDataScope(String dataScope) {
this.dataScope = dataScope;
}
public boolean isMenuCheckStrictly() {
return menuCheckStrictly;
}
public void setMenuCheckStrictly(boolean menuCheckStrictly) {
this.menuCheckStrictly = menuCheckStrictly;
}
public boolean isDeptCheckStrictly() {
return deptCheckStrictly;
}
public void setDeptCheckStrictly(boolean deptCheckStrictly) {
this.deptCheckStrictly = deptCheckStrictly;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getDelFlag() {
return delFlag;
}
public void setDelFlag(String delFlag) {
this.delFlag = delFlag;
}
public boolean isFlag() {
return flag;
}
public void setFlag(boolean flag) {
this.flag = flag;
}
public Long[] getMenuIds() {
return menuIds;
}
public void setMenuIds(Long[] menuIds) {
this.menuIds = menuIds;
}
public Long[] getDeptIds() {
return deptIds;
}
public void setDeptIds(Long[] deptIds) {
this.deptIds = deptIds;
}
public Set<String> getPermissions() {
return permissions;
}
public void setPermissions(Set<String> permissions) {
this.permissions = permissions;
}
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("roleId", getRoleId())
.append("roleName", getRoleName())
.append("roleKey", getRoleKey())
.append("roleSort", getRoleSort())
.append("dataScope", getDataScope())
.append("menuCheckStrictly", isMenuCheckStrictly())
.append("deptCheckStrictly", isDeptCheckStrictly())
.append("status", getStatus())
.append("delFlag", getDelFlag())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.append("remark", getRemark())
.toString();
}
}

View File

@ -10,41 +10,42 @@ import org.apache.commons.lang3.builder.ToStringStyle;
*
* @author ff
*/
public class SysRoleDept
{
/** 角色ID */
public class SysRoleDept {
/**
* ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long roleId;
/** 部门ID */
/**
* ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long deptId;
@JsonSerialize(using = ToStringSerializer.class)
public Long getRoleId()
{
public Long getRoleId() {
return roleId;
}
public void setRoleId(Long roleId)
{
public void setRoleId(Long roleId) {
this.roleId = roleId;
}
@JsonSerialize(using = ToStringSerializer.class)
public Long getDeptId()
{
public Long getDeptId() {
return deptId;
}
public void setDeptId(Long deptId)
{
public void setDeptId(Long deptId) {
this.deptId = deptId;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("roleId", getRoleId())
.append("deptId", getDeptId())
.toString();
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("roleId", getRoleId())
.append("deptId", getDeptId())
.toString();
}
}

View File

@ -10,41 +10,42 @@ import org.apache.commons.lang3.builder.ToStringStyle;
*
* @author ff
*/
public class SysRoleMenu
{
/** 角色ID */
public class SysRoleMenu {
/**
* ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long roleId;
/** 菜单ID */
/**
* ID
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long menuId;
@JsonSerialize(using = ToStringSerializer.class)
public Long getRoleId()
{
public Long getRoleId() {
return roleId;
}
public void setRoleId(Long roleId)
{
public void setRoleId(Long roleId) {
this.roleId = roleId;
}
@JsonSerialize(using = ToStringSerializer.class)
public Long getMenuId()
{
public Long getMenuId() {
return menuId;
}
public void setMenuId(Long menuId)
{
public void setMenuId(Long menuId) {
this.menuId = menuId;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("roleId", getRoleId())
.append("menuId", getMenuId())
.toString();
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("roleId", getRoleId())
.append("menuId", getMenuId())
.toString();
}
}

View File

@ -2,15 +2,8 @@ package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.annotation.Excel.ColumnType;
import com.ff.base.annotation.Excel.Type;
import com.ff.base.annotation.Excels;
import com.ff.base.core.domain.BaseEntity;
import com.ff.base.xss.Xss;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import javax.validation.constraints.Email;
import javax.validation.constraints.NotBlank;
@ -30,21 +23,17 @@ public class SysUser extends BaseEntity {
* ID
*/
@JsonSerialize(using = ToStringSerializer.class)
@Excel(name = "用户序号", type = Type.EXPORT, cellType = ColumnType.NUMERIC, prompt = "用户编号")
private Long userId;
/**
* ID
*/
@Excel(name = "部门编号", type = Type.IMPORT)
@JsonSerialize(using = ToStringSerializer.class)
private Long deptId;
/**
*
*/
@Excel(name = "登录名称")
@Xss(message = "用户账号不能包含脚本字符")
@NotBlank(message = "用户账号不能为空")
@Size(min = 0, max = 30, message = "用户账号长度不能超过30个字符")
private String userName;
@ -52,15 +41,12 @@ public class SysUser extends BaseEntity {
/**
*
*/
@Excel(name = "用户名称")
@Xss(message = "用户昵称不能包含脚本字符")
@Size(min = 0, max = 30, message = "用户昵称长度不能超过30个字符")
private String nickName;
/**
*
*/
@Excel(name = "用户邮箱")
@Email(message = "邮箱格式不正确")
@Size(min = 0, max = 50, message = "邮箱长度不能超过50个字符")
private String email;
@ -68,14 +54,12 @@ public class SysUser extends BaseEntity {
/**
*
*/
@Excel(name = "手机号码", cellType = ColumnType.TEXT)
@Size(min = 0, max = 11, message = "手机号码长度不能超过11个字符")
private String phonenumber;
/**
*
*/
@Excel(name = "用户性别", readConverterExp = "0=男,1=女,2=未知")
private String sex;
/**
@ -91,7 +75,6 @@ public class SysUser extends BaseEntity {
/**
* 0 1
*/
@Excel(name = "帐号状态", readConverterExp = "0=正常,1=停用")
private String status;
/**
@ -102,23 +85,17 @@ public class SysUser extends BaseEntity {
/**
* IP
*/
@Excel(name = "最后登录IP", type = Type.EXPORT)
private String loginIp;
/**
*
*/
@Excel(name = "最后登录时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
@JsonSerialize(using = ToStringSerializer.class)
private Long loginDate;
/**
*
*/
@Excels({
@Excel(name = "部门名称", targetAttr = "deptName", type = Type.EXPORT),
@Excel(name = "部门负责人", targetAttr = "leader", type = Type.EXPORT)
})
private SysDept dept;
/**
@ -148,18 +125,12 @@ public class SysUser extends BaseEntity {
private Integer loginType;
/**
*
*/
private String realName;
public SysUser() {
}

View File

@ -0,0 +1,112 @@
package com.ff.base.system.domain;
/**
* 线
*
* @author ff
*/
public class SysUserOnline {
/**
*
*/
private String tokenId;
/**
*
*/
private String deptName;
/**
*
*/
private String userName;
/**
* IP
*/
private String ipaddr;
/**
*
*/
private String loginLocation;
/**
*
*/
private String browser;
/**
*
*/
private String os;
/**
*
*/
private Long loginTime;
public String getTokenId() {
return tokenId;
}
public void setTokenId(String tokenId) {
this.tokenId = tokenId;
}
public String getDeptName() {
return deptName;
}
public void setDeptName(String deptName) {
this.deptName = deptName;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getIpaddr() {
return ipaddr;
}
public void setIpaddr(String ipaddr) {
this.ipaddr = ipaddr;
}
public String getLoginLocation() {
return loginLocation;
}
public void setLoginLocation(String loginLocation) {
this.loginLocation = loginLocation;
}
public String getBrowser() {
return browser;
}
public void setBrowser(String browser) {
this.browser = browser;
}
public String getOs() {
return os;
}
public void setOs(String os) {
this.os = os;
}
public Long getLoginTime() {
return loginTime;
}
public void setLoginTime(Long loginTime) {
this.loginTime = loginTime;
}
}

View File

@ -8,39 +8,38 @@ import org.apache.commons.lang3.builder.ToStringStyle;
*
* @author ff
*/
public class SysUserPost
{
/** 用户ID */
public class SysUserPost {
/**
* ID
*/
private Long userId;
/** 岗位ID */
/**
* ID
*/
private Long postId;
public Long getUserId()
{
public Long getUserId() {
return userId;
}
public void setUserId(Long userId)
{
public void setUserId(Long userId) {
this.userId = userId;
}
public Long getPostId()
{
public Long getPostId() {
return postId;
}
public void setPostId(Long postId)
{
public void setPostId(Long postId) {
this.postId = postId;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("userId", getUserId())
.append("postId", getPostId())
.toString();
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("userId", getUserId())
.append("postId", getPostId())
.toString();
}
}

View File

@ -8,39 +8,38 @@ import org.apache.commons.lang3.builder.ToStringStyle;
*
* @author ff
*/
public class SysUserRole
{
/** 用户ID */
public class SysUserRole {
/**
* ID
*/
private Long userId;
/** 角色ID */
/**
* ID
*/
private Long roleId;
public Long getUserId()
{
public Long getUserId() {
return userId;
}
public void setUserId(Long userId)
{
public void setUserId(Long userId) {
this.userId = userId;
}
public Long getRoleId()
{
public Long getRoleId() {
return roleId;
}
public void setRoleId(Long roleId)
{
public void setRoleId(Long roleId) {
this.roleId = roleId;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("userId", getUserId())
.append("roleId", getRoleId())
.toString();
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("userId", getUserId())
.append("roleId", getRoleId())
.toString();
}
}

View File

@ -2,10 +2,8 @@ package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
@ -20,50 +18,58 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantAgent extends BaseEntity
{
public class TenantAgent extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 账号 */
@Excel(name = "账号")
/**
*
*/
private String account;
/** 密码 */
@Excel(name = "密码")
/**
*
*/
private String password;
/** 注册时间 */
@Excel(name = "注册时间")
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long registerTime;
/** 注册IP */
@Excel(name = "注册IP")
/**
* IP
*/
private String registerIp;
/** 注册ip的城市 */
@Excel(name = "注册ip的城市")
/**
* ip
*/
private String registerIpCity;
/** 最后登录ip */
@Excel(name = "最后登录ip")
/**
* ip
*/
private String loginIp;
/** 最后登录时间 */
@Excel(name = "最后登录时间")
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long loginData;
/** 租户状态 1正常 0停用 */
@Excel(name = "租户状态 1正常 0停用")
/**
* 1 0
*/
private Boolean tenantStatus;
/**
*
*/

View File

@ -1,17 +1,15 @@
package com.ff.base.system.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_tenant_platform
*
@ -22,32 +20,38 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantPlatform extends BaseEntity
{
public class TenantPlatform extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
private Long id;
/** 租户id */
@JsonSerialize(using = ToStringSerializer.class)
@Excel(name = "租户id", width = 30, dateFormat = "yyyy-MM-dd")
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long tenantId;
/** 平台编码 */
@Excel(name = "平台编码")
/**
*
*/
private String platformCode;
/** 币种编码 */
@Excel(name = "币种编码")
/**
*
*/
private String currencyCode;
/** 成本 */
@Excel(name = "成本")
/**
*
*/
private BigDecimal cost;
/** 使用成本 */
@Excel(name = "使用成本")
/**
* 使
*/
private BigDecimal useCost;

View File

@ -1,18 +1,16 @@
package com.ff.base.system.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_tenant_secret_key
*
@ -23,76 +21,92 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantSecretKey extends BaseEntity
{
public class TenantSecretKey extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 租户key */
@Excel(name = "租户key")
/**
* key
*/
private String tenantKey;
/** 密码 */
@Excel(name = "密码")
/**
*
*/
@JsonIgnore
private String password;
/** 注册时间 */
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
@Excel(name = "注册时间")
private Long registerTime;
/** 注册ip */
@Excel(name = "注册ip")
/**
* ip
*/
private String registerIp;
/** 注册ip的城市 */
@Excel(name = "注册ip的城市")
/**
* ip
*/
private String registerIpCity;
/** 最后登录ip */
@Excel(name = "最后登录ip")
/**
* ip
*/
private String loginIp;
/** 最后登录时间 */
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
@Excel(name = "最后登录时间")
private Long loginData;
/** 上级代理id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
@Excel(name = "上级代理id")
private Long agentId;
/** 商户后缀 */
@Excel(name = "商户后缀")
/**
*
*/
private String tenantSn;
/** 租户密钥 */
@Excel(name = "租户密钥")
/**
*
*/
private String tenantSecret;
/** 租户状态 1正常 0停用 */
@Excel(name = "租户状态 1正常 0停用")
/**
* 1 0
*/
private Boolean tenantStatus;
/** 额度类型 TenantQuotaType 枚举 */
@Excel(name = "额度类型 TenantQuotaType 枚举")
/**
* TenantQuotaType
*/
private Integer quotaType;
/** 买分比例 */
@Excel(name = "买分比例")
/**
*
*/
private BigDecimal scoreRatio;
/** 租户类型 TenantType 枚举 */
@Excel(name = "租户类型 TenantType 枚举")
/**
* TenantType
*/
private Integer tenantType;
/** 透支比例 */
@Excel(name = "透支比例")
/**
*
*/
private BigDecimal depositRatio;

View File

@ -2,10 +2,8 @@ package com.ff.base.system.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
@ -20,20 +18,23 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantWhite extends BaseEntity
{
public class TenantWhite extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
private Long id;
/** 租户id */
@JsonSerialize(using = ToStringSerializer.class)
@Excel(name = "租户id", width = 30, dateFormat = "yyyy-MM-dd")
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long tenantId;
/** 白名单ip地址 */
@Excel(name = "白名单ip地址")
/**
* ip
*/
private String whiteIp;

View File

@ -1,12 +1,12 @@
package com.ff.common.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.Data;
import java.math.BigDecimal;
/**
* ff_currency
*
@ -14,44 +14,53 @@ import lombok.Data;
* @date 2025-02-10
*/
@Data
public class Currency extends BaseEntity
{
public class Currency extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 币种状态0正常 1停用 */
@Excel(name = "币种状态", readConverterExp = "0=正常,1=停用")
/**
* 0 1
*/
private String status;
/** 币种国家 */
@Excel(name = "币种国家")
/**
*
*/
private String country;
/** 币种编码 */
@Excel(name = "币种编码")
/**
*
*/
private String currencyCode;
/** 币种符号 */
@Excel(name = "币种符号")
/**
*
*/
private String currencySign;
/** 汇率 */
@Excel(name = "汇率")
/**
*
*/
private BigDecimal gameRate;
/** 币种展示内容 */
@Excel(name = "币种展示内容")
/**
*
*/
private String currencyDisplay;
/** 币种名称 */
@Excel(name = "币种名称")
/**
*
*/
private String currencyName;
/** 币种全称 */
@Excel(name = "币种全称")
/**
*
*/
private String fullName;

View File

@ -2,9 +2,9 @@ package com.ff.common.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.Data;
/**
* ff_lang
*
@ -12,28 +12,33 @@ import lombok.Data;
* @date 2025-02-10
*/
@Data
public class Lang extends BaseEntity
{
public class Lang extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 语言名称 */
@Excel(name = "语言名称")
/**
*
*/
private String name;
/** 国家代码 */
@Excel(name = "国家代码")
/**
*
*/
private String country;
/** 语种 */
@Excel(name = "语种")
/**
*
*/
private String langCode;
/** 语种开关 0 关闭 1 开启 */
@Excel(name = "语种开关 0 关闭 1 开启")
/**
* 0 1
*/
private Boolean langStatus;

View File

@ -1,14 +1,13 @@
package com.ff.common.domain;
import java.math.BigDecimal;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_tenant_agent_platform
*
@ -19,27 +18,32 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantAgentPlatform extends BaseEntity
{
public class TenantAgentPlatform extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
private Long id;
/** 平台编码 */
@Excel(name = "平台编码")
/**
*
*/
private String platformCode;
/** 币种编码 */
@Excel(name = "币种编码")
/**
*
*/
private String currencyCode;
/** 成本 */
@Excel(name = "成本")
/**
*
*/
private BigDecimal cost;
/** 使用成本 */
@Excel(name = "使用成本")
/**
* 使
*/
private BigDecimal useCost;

View File

@ -1,18 +1,15 @@
package com.ff.common.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_tenant_game_quota
*
@ -23,28 +20,33 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantGameQuota extends BaseEntity
{
public class TenantGameQuota extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 租户key */
@Excel(name = "租户key")
/**
* key
*/
private String tenantKey;
/** 游戏额度 */
@Excel(name = "游戏额度")
/**
*
*/
private BigDecimal balance;
/** 额度类型 TenantQuotaType 枚举或者平台_币种或者平台_币种_FALSE 假额度 */
@Excel(name = "额度类型 TenantQuotaType 枚举或者平台_币种或者平台_币种_FALSE 假额度")
/**
* TenantQuotaType ___FALSE
*/
private String quotaType;
/** 版本号 */
@Excel(name = "版本号")
/**
*
*/
private Integer version;

View File

@ -1,17 +1,15 @@
package com.ff.common.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_tenant_game_quota_flow
*
@ -22,65 +20,77 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantGameQuotaFlow extends BaseEntity
{
public class TenantGameQuotaFlow extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 租户key */
@Excel(name = "租户key")
/**
* key
*/
private String tenantKey;
/** 额度类型 */
@Excel(name = "额度类型")
/**
*
*/
private String quotaType;
/** 用户账号id */
@Excel(name = "用户账号id")
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long memberId;
/** 平台 */
@Excel(name = "平台")
/**
*
*/
private String platformCode;
/** 币种代码 */
@Excel(name = "币种代码")
/**
*
*/
private String currencyCode;
/** 充值类型 false 扣除 true 充值 */
@Excel(name = "充值类型 false 扣除 true 充值")
/**
* false true
*/
private Boolean isOut;
/** 操作类型 operationType枚举 */
@Excel(name = "操作类型 operationType枚举")
/**
* operationType
*/
private Integer operationType;
/** 游戏额度之前 */
@Excel(name = "游戏额度之前")
/**
*
*/
private BigDecimal balanceBefore;
/** 游戏额度 */
@Excel(name = "游戏额度")
/**
*
*/
private BigDecimal balance;
/** 兑换比例 */
@Excel(name = "兑换比例")
/**
*
*/
private BigDecimal exchangeRatio;
/** 兑换金额 */
@Excel(name = "兑换金额")
/**
*
*/
private BigDecimal exchangeMoney;
/** 游戏额度之后 */
@Excel(name = "游戏额度之后")
/**
*
*/
private BigDecimal balanceAfter;
/**

View File

@ -1,17 +1,15 @@
package com.ff.common.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_tenant_quota_exchange
*
@ -22,36 +20,43 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class TenantQuotaExchange extends BaseEntity
{
public class TenantQuotaExchange extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 币种编码 */
@Excel(name = "币种编码")
/**
*
*/
private String currencyCode;
/** 兑换币种编码 */
@Excel(name = "兑换币种编码")
/**
*
*/
private String exchangeCurrencyCode;
/** 市场兑换金额 */
@Excel(name = "市场兑换金额")
/**
*
*/
private BigDecimal exchangeRate;
/** 汇率差 1百分比 2 固定值 */
@Excel(name = "汇率差 1百分比 2 固定值")
/**
* 1 2
*/
private Integer differenceType;
/** 汇率差值 */
@Excel(name = "汇率差值")
/**
*
*/
private BigDecimal differenceValue;
/** 实际兑换金额 */
@Excel(name = "实际兑换金额")
/**
*
*/
private BigDecimal actualBalance;

View File

@ -1,8 +1,9 @@
package com.ff.common.mapper;
import java.util.List;
import com.ff.common.domain.Currency;
import java.util.List;
/**
* Mapper
*

View File

@ -1,8 +1,9 @@
package com.ff.common.mapper;
import java.util.List;
import com.ff.common.domain.Lang;
import java.util.List;
/**
* Mapper
*

View File

@ -0,0 +1,62 @@
package com.ff.common.service;
import com.ff.common.domain.Currency;
import java.util.List;
/**
* Service
*
* @author shi
* @date 2025-02-10
*/
public interface ICurrencyService
{
/**
*
*
* @param id
* @return
*/
Currency selectCurrencyById(Long id);
/**
*
*
* @param currency
* @return
*/
List<Currency> selectCurrencyList(Currency currency);
/**
*
*
* @param currency
* @return
*/
int insertCurrency(Currency currency);
/**
*
*
* @param currency
* @return
*/
int updateCurrency(Currency currency);
/**
*
*
* @param ids
* @return
*/
int deleteCurrencyByIds(Long[] ids);
/**
*
*
* @param id
* @return
*/
int deleteCurrencyById(Long id);
}

View File

@ -0,0 +1,62 @@
package com.ff.common.service;
import com.ff.common.domain.Lang;
import java.util.List;
/**
* Service
*
* @author shi
* @date 2025-02-10
*/
public interface ILangService
{
/**
*
*
* @param id
* @return
*/
Lang selectLangById(Long id);
/**
*
*
* @param lang
* @return
*/
List<Lang> selectLangList(Lang lang);
/**
*
*
* @param lang
* @return
*/
int insertLang(Lang lang);
/**
*
*
* @param lang
* @return
*/
int updateLang(Lang lang);
/**
*
*
* @param ids
* @return
*/
int deleteLangByIds(Long[] ids);
/**
*
*
* @param id
* @return
*/
int deleteLangById(Long id);
}

View File

@ -0,0 +1,99 @@
package com.ff.common.service.impl;
import cn.hutool.core.util.IdUtil;
import com.ff.common.domain.Currency;
import com.ff.common.mapper.CurrencyMapper;
import com.ff.common.service.ICurrencyService;
import com.ff.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Service
*
* @author shi
* @date 2025-02-10
*/
@Service
public class CurrencyServiceImpl implements ICurrencyService
{
@Autowired
private CurrencyMapper currencyMapper;
/**
*
*
* @param id
* @return
*/
@Override
public Currency selectCurrencyById(Long id)
{
return currencyMapper.selectCurrencyById(id);
}
/**
*
*
* @param currency
* @return
*/
@Override
public List<Currency> selectCurrencyList(Currency currency)
{
return currencyMapper.selectCurrencyList(currency);
}
/**
*
*
* @param currency
* @return
*/
@Override
public int insertCurrency(Currency currency)
{
currency.setId(IdUtil.getSnowflakeNextId());
currency.setCreateTime(DateUtils.getNowDate());
return currencyMapper.insertCurrency(currency);
}
/**
*
*
* @param currency
* @return
*/
@Override
public int updateCurrency(Currency currency)
{
currency.setUpdateTime(DateUtils.getNowDate());
return currencyMapper.updateCurrency(currency);
}
/**
*
*
* @param ids
* @return
*/
@Override
public int deleteCurrencyByIds(Long[] ids)
{
return currencyMapper.deleteCurrencyByIds(ids);
}
/**
*
*
* @param id
* @return
*/
@Override
public int deleteCurrencyById(Long id)
{
return currencyMapper.deleteCurrencyById(id);
}
}

View File

@ -0,0 +1,92 @@
package com.ff.common.service.impl;
import cn.hutool.core.util.IdUtil;
import com.ff.common.domain.Lang;
import com.ff.common.mapper.LangMapper;
import com.ff.common.service.ILangService;
import com.ff.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Service
*
* @author shi
* @date 2025-02-10
*/
@Service
public class LangServiceImpl implements ILangService {
@Autowired
private LangMapper langMapper;
/**
*
*
* @param id
* @return
*/
@Override
public Lang selectLangById(Long id) {
return langMapper.selectLangById(id);
}
/**
*
*
* @param lang
* @return
*/
@Override
public List<Lang> selectLangList(Lang lang) {
return langMapper.selectLangList(lang);
}
/**
*
*
* @param lang
* @return
*/
@Override
public int insertLang(Lang lang) {
lang.setId(IdUtil.getSnowflakeNextId());
lang.setCreateTime(DateUtils.getNowDate());
return langMapper.insertLang(lang);
}
/**
*
*
* @param lang
* @return
*/
@Override
public int updateLang(Lang lang) {
lang.setUpdateTime(DateUtils.getNowDate());
return langMapper.updateLang(lang);
}
/**
*
*
* @param ids
* @return
*/
@Override
public int deleteLangByIds(Long[] ids) {
return langMapper.deleteLangByIds(ids);
}
/**
*
*
* @param id
* @return
*/
@Override
public int deleteLangById(Long id) {
return langMapper.deleteLangById(id);
}
}

View File

@ -2,7 +2,6 @@ package com.ff.game.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
@ -33,20 +32,17 @@ public class Game extends BaseEntity {
/**
*
*/
@Excel(name = "排序")
private Integer sortNo;
/**
* id
*/
@Excel(name = "游戏平台id")
@JsonSerialize(using = ToStringSerializer.class)
private Long platformId;
/**
* id
*/
@Excel(name = "游戏第三方id")
private String gameCode;
/**
@ -57,31 +53,26 @@ public class Game extends BaseEntity {
/**
*
*/
@Excel(name = "第三方来源分类")
private String gameSourceType;
/**
*
*/
@Excel(name = "游戏名称")
private String gameName;
/**
* 1 0
*/
@Excel(name = "是否支持免费游戏 1 支持 0 不支持")
private Boolean freespin;
/**
* 0 1
*/
@Excel(name = "是否支持试玩 0关闭 1开启")
private Boolean demoStatus;
/**
*
*/
@Excel(name = "维护开关 ")
private Boolean stopStatus;
/**
@ -102,5 +93,5 @@ public class Game extends BaseEntity {
/**
* id
*/
private String gameId;
private String gameId;
}

View File

@ -0,0 +1,183 @@
package com.ff.game.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_game_betting_details
*
* @author shi
* @date 2025-02-10
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class GameBettingDetails extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/**
* key
*/
private String tenantKey;
/**
*
*/
private String currencyCode;
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long memberId;
/**
* id
*/
private String gameCode;
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private String gameId;
/**
* ff_game_type
*/
private Integer gameType;
/**
*
*/
private String platformCode;
/**
*
*/
private String gameName;
/**
* 1: 2: 3: 4
*/
private Integer gameStatus;
/**
*
* 1
* 9
* 11
* 12
* 17 ()
* 18 ()
* 19
* 28
* DG
* 1:2:
* AE
*
* 0
*
* Resettle / Unsettle / Voidsettle / Unvoidsettle: 1
* Voidbet: -1
*/
private Integer gameStatusType;
/**
*
*/
private String gameCurrencyCode;
/**
*
*/
private String account;
/**
*
*/
private String round;
/**
*
*/
private String table;
/**
*
*/
private String seat;
/**
* text
*/
private String betContent;
/**
*
*/
private String wagersId;
/**
* (Unix )
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long wagersTime;
/**
*
*/
private BigDecimal betAmount;
/**
* (Unix )
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long payoffTime;
/**
*
*/
private BigDecimal payoffAmount;
/**
* (Unix )
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long settlementTime;
/**
* 1
*/
private BigDecimal turnover;
/**
* id
*/
private String orderNo;
/**
* 1 2 3 4
*/
private Integer settlementStatus;
}

View File

@ -1,17 +1,15 @@
package com.ff.game.domain;
import java.math.BigDecimal;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
import java.math.BigDecimal;
/**
* ff_game_exchange_money
*
@ -22,24 +20,28 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class GameExchangeMoney extends BaseEntity
{
public class GameExchangeMoney extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 租户key */
@Excel(name = "租户key")
/**
* key
*/
private String tenantKey;
/** 币种编码 */
@Excel(name = "币种编码")
/**
*
*/
private String currencyCode;
/** 第三方交易id */
@Excel(name = "第三方交易id")
/**
* id
*/
private String transactionId;
/**
@ -47,47 +49,56 @@ public class GameExchangeMoney extends BaseEntity
*/
private String orderId;
/** 会员id */
@Excel(name = "会员id")
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long memberId;
/** 游戏平台 */
@Excel(name = "游戏平台 ")
/**
*
*/
private String platformCode;
/** 操作金额 */
@Excel(name = "操作金额")
/**
*
*/
private BigDecimal balance;
/** 租户操作额度 */
@Excel(name = "租户操作额度")
/**
*
*/
private BigDecimal quota;
/** 转账前金额(游戏币) */
@Excel(name = " 转账前金额(游戏币)")
/**
* ()
*/
private BigDecimal coinBefore;
/** 转账后金额(游戏币) */
@Excel(name = "转账后金额(游戏币)")
/**
* ()
*/
private BigDecimal coinAfter;
/** 转账前金额(指定货币) */
@Excel(name = "转账前金额(指定货币)")
/**
* ()
*/
private BigDecimal currencyBefore;
/** 转账后金额(指定货币) */
@Excel(name = "转账后金额(指定货币)")
/**
* ()
*/
private BigDecimal currencyAfter;
/** 转出类型 1游戏商转入到用户全部转出 2 用户转移到游戏商 3 游戏商转移额度到平台商 */
@Excel(name = "转出类型 1游戏商转入到用户全部转出 2 用户转移到游戏商 3 游戏商转移额度到平台商")
/**
* 1 2 3
*/
private Integer exchangeType;
/** 状态0:进行中、1:成功、2:失败 */
@Excel(name = "状态 1 成功 2失败")
/**
* 0:1:2:
*/
private Integer status;
/**

View File

@ -2,10 +2,8 @@ package com.ff.game.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
@ -20,73 +18,88 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@SuperBuilder
@NoArgsConstructor
public class GameFreeRecord extends BaseEntity
{
public class GameFreeRecord extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 币种编码 */
@Excel(name = "币种编码")
/**
*
*/
private String currencyCode;
/** 平台代码 */
@Excel(name = "平台代码")
/**
*
*/
private String platformCode;
/** 免费局数序号(唯一标识符) */
@Excel(name = "免费局数序号", readConverterExp = "唯=一标识符")
/**
*
*/
private String referenceId;
/** 会员id */
@Excel(name = "会员id")
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long memberId;
/** 用户账号 */
@Excel(name = "用户账号")
/**
*
*/
private String memberAccount;
/** 游戏id */
@Excel(name = "游戏id ")
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long gameId;
/** 免费游戏局数可使用的开始时间 */
@Excel(name = "免费游戏局数可使用的开始时间")
/**
* 使
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long sendTime;
/** 免费局数过期时间 */
@Excel(name = "免费局数过期时间")
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long expiredTime;
/** 免费局数记录更新时间 */
@Excel(name = "免费局数记录更新时间")
/**
*
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long freeUpdateTime;
/** 免费局数赠送的游戏名称 */
@Excel(name = "免费局数赠送的游戏名称")
/**
*
*/
private String sendGame;
/** 免费局数赠送的数量 */
@Excel(name = "免费局数赠送的数量")
/**
*
*/
private Integer sendAmount;
/** 已使用的免费局数数量 */
@Excel(name = "已使用的免费局数数量")
/**
* 使
*/
private Integer usedAmount;
/** 未使用的免费局数数量 */
@Excel(name = "未使用的免费局数数量")
/**
* 使
*/
private Integer unusedAmount;
/** 免费状态 1正常 0 取消 */
@Excel(name = "免费状态 1正常 0 取消 ")
/**
* 1 0
*/
private Integer freeStatus;

View File

@ -1,26 +1,24 @@
package com.ff.game.mapper;
import java.util.List;
import com.ff.game.domain.GameBettingDetails;
import com.ff.game.dto.GameBettingDetailsDTO;
import org.apache.ibatis.annotations.Param;
import org.springframework.security.core.parameters.P;
import java.util.List;
/**
* Mapper
*
*
* @author shi
* @date 2025-02-10
*/
public interface GameBettingDetailsMapper
{
public interface GameBettingDetailsMapper {
/**
*
*
*
* @param id
* @return
*/
GameBettingDetails selectGameBettingDetailsById(Long id);
GameBettingDetails selectGameBettingDetailsById(Long id);
/**
@ -30,48 +28,40 @@ public interface GameBettingDetailsMapper
* @param platformCode
* @return {@link List }<{@link Long }>
*/
List<String> selectGameBettingDetailsByWagersId(@Param("wagersIds") List<String> wagersIds, @Param("platformCode") String platformCode);
List<String> selectGameBettingDetailsByWagersId(@Param("wagersIds") List<String> wagersIds, @Param("platformCode") String platformCode);
/**
*
*
* @param gameBettingDetailsDTO
* @return
*/
List<GameBettingDetails> selectGameBettingDetailsList(GameBettingDetailsDTO gameBettingDetailsDTO);
/**
*
*
*
* @param gameBettingDetails
* @return
*/
int insertGameBettingDetails(GameBettingDetails gameBettingDetails);
int insertGameBettingDetails(GameBettingDetails gameBettingDetails);
/**
*
*
*
* @param gameBettingDetails
* @return
*/
int updateGameBettingDetails(GameBettingDetails gameBettingDetails);
int updateGameBettingDetails(GameBettingDetails gameBettingDetails);
/**
*
*
*
* @param id
* @return
*/
int deleteGameBettingDetailsById(Long id);
int deleteGameBettingDetailsById(Long id);
/**
*
*
*
* @param ids
* @return
*/
int deleteGameBettingDetailsByIds(Long[] ids);
int deleteGameBettingDetailsByIds(Long[] ids);
/**
*

View File

@ -1,70 +1,62 @@
package com.ff.game.mapper;
import java.util.List;
import com.ff.game.domain.GameExchangeMoney;
import com.ff.game.dto.GameExchangeMoneyDTO;
import java.util.List;
/**
* Mapper
*
*
* @author shi
* @date 2025-02-10
*/
public interface GameExchangeMoneyMapper
{
public interface GameExchangeMoneyMapper {
/**
*
*
*
* @param id
* @return
*/
GameExchangeMoney selectGameExchangeMoneyById(Long id);
GameExchangeMoney selectGameExchangeMoneyById(Long id);
/**
*
*
*
* @param gameExchangeMoney
* @return
*/
List<GameExchangeMoney> selectGameExchangeMoneyList(GameExchangeMoney gameExchangeMoney);
List<GameExchangeMoney> selectGameExchangeMoneyList(GameExchangeMoney gameExchangeMoney);
/**
*
*
* @param gameExchangeMoneyDTO dto
* @return {@link List }<{@link GameExchangeMoneyDTO }>
*/
List<GameExchangeMoneyDTO> selectGameExchangeMoneyDTOList(GameExchangeMoneyDTO gameExchangeMoneyDTO);
/**
*
*
*
* @param gameExchangeMoney
* @return
*/
int insertGameExchangeMoney(GameExchangeMoney gameExchangeMoney);
int insertGameExchangeMoney(GameExchangeMoney gameExchangeMoney);
/**
*
*
*
* @param gameExchangeMoney
* @return
*/
int updateGameExchangeMoney(GameExchangeMoney gameExchangeMoney);
int updateGameExchangeMoney(GameExchangeMoney gameExchangeMoney);
/**
*
*
*
* @param id
* @return
*/
int deleteGameExchangeMoneyById(Long id);
int deleteGameExchangeMoneyById(Long id);
/**
*
*
*
* @param ids
* @return
*/
int deleteGameExchangeMoneyByIds(Long[] ids);
int deleteGameExchangeMoneyByIds(Long[] ids);
}

View File

@ -1,8 +1,9 @@
package com.ff.game.mapper;
import java.util.List;
import com.ff.game.domain.GameFreeRecord;
import java.util.List;
/**
* Mapper
*

View File

@ -1,9 +1,6 @@
package com.ff.game.mapper;
import com.ff.api.response.GameResponse;
import com.ff.game.api.request.GameUniqueDTO;
import com.ff.game.domain.Game;
import com.ff.game.dto.GameDTO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -82,28 +79,5 @@ public interface GameMapper {
*/
Integer selectMaxSortNoBy(@Param("platformType") Integer platformType, @Param("platformCode") String platformCode);
/**
*
*
* @param gameUniqueDTO dto
* @return {@link List }<{@link Game }>
*/
List<Game> selectGameUniqueList(GameUniqueDTO gameUniqueDTO);
/**
*
*
* @return {@link List }<{@link GameResponse }>
*/
List<GameResponse> selectGameResponseList();
/**
*
*
* @param gameDTO dto
* @return {@link List }<{@link Game }>
*/
List<Game> selectGameDTOList(GameDTO gameDTO);
}

View File

@ -9,7 +9,6 @@ import java.util.List;
*/
public interface PlatformMapper {
List<Platform> selectList(Platform platform);
Platform selectByPlatformCode(String platformCode);

View File

@ -0,0 +1,79 @@
package com.ff.game.service;
import com.ff.game.domain.GameBettingDetails;
import java.util.List;
/**
* Service
*
* @author shi
* @date 2025-02-10
*/
public interface IGameBettingDetailsService {
/**
*
*
* @param id
* @return
*/
GameBettingDetails selectGameBettingDetailsById(Long id);
/**
* id
*
* @param wagersIds ID
* @return {@link List }<{@link Long }>
*/
List<String> selectGameBettingDetailsByWagersId(List<String> wagersIds, String platformCode);
/**
*
*
* @param gameBettingDetails
* @return
*/
int insertGameBettingDetails(GameBettingDetails gameBettingDetails);
/**
*
*
* @param bettingDetails
* @return int
*/
int batchInsert(List<GameBettingDetails> bettingDetails);
/**
*
*
* @param gameBettingDetails
* @return
*/
int updateGameBettingDetails(GameBettingDetails gameBettingDetails);
/**
*
*
* @param ids
* @return
*/
int deleteGameBettingDetailsByIds(Long[] ids);
/**
*
*
* @param id
* @return
*/
int deleteGameBettingDetailsById(Long id);
/**
* id
*
* @param wagersId id
* @return int
*/
int deleteGameBettingDetailsByWagersId(List<String> wagersId);
}

View File

@ -1,82 +1,61 @@
package com.ff.game.service;
import com.ff.game.domain.GameExchangeMoney;
import java.util.List;
import com.ff.game.domain.GameBettingDetails;
import com.ff.game.domain.GameExchangeMoney;
import com.ff.game.dto.GameExchangeMoneyDTO;
/**
* Service
*
*
* @author shi
* @date 2025-02-10
*/
public interface IGameExchangeMoneyService
{
public interface IGameExchangeMoneyService {
/**
*
*
*
* @param id
* @return
*/
GameExchangeMoney selectGameExchangeMoneyById(Long id);
GameExchangeMoney selectGameExchangeMoneyById(Long id);
/**
*
*
*
* @param gameExchangeMoney
* @return
*/
List<GameExchangeMoney> selectGameExchangeMoneyList(GameExchangeMoney gameExchangeMoney);
/**
*
*
* @param gameExchangeMoneyDTO dto
* @return {@link List }<{@link GameExchangeMoneyDTO }>
*/
List<GameExchangeMoneyDTO> selectGameExchangeMoneyDTOList(GameExchangeMoneyDTO gameExchangeMoneyDTO);
List<GameExchangeMoney> selectGameExchangeMoneyList(GameExchangeMoney gameExchangeMoney);
/**
*
*
*
* @param gameExchangeMoney
* @return
*/
int insertGameExchangeMoney(GameExchangeMoney gameExchangeMoney);
/**
* id
*
* @param prefix
* @param length
* @return {@link String }
*/
String getTransactionId(String prefix, int length );
int insertGameExchangeMoney(GameExchangeMoney gameExchangeMoney);
/**
*
*
*
* @param gameExchangeMoney
* @return
*/
int updateGameExchangeMoney(GameExchangeMoney gameExchangeMoney);
int updateGameExchangeMoney(GameExchangeMoney gameExchangeMoney);
/**
*
*
*
* @param ids
* @return
*/
int deleteGameExchangeMoneyByIds(Long[] ids);
int deleteGameExchangeMoneyByIds(Long[] ids);
/**
*
*
*
* @param id
* @return
*/
int deleteGameExchangeMoneyById(Long id);
int deleteGameExchangeMoneyById(Long id);
}

View File

@ -0,0 +1,62 @@
package com.ff.game.service;
import com.ff.game.domain.GameFreeRecord;
import java.util.List;
/**
* Service
*
* @author shi
* @date 2025-02-10
*/
public interface IGameFreeRecordService
{
/**
*
*
* @param id
* @return
*/
GameFreeRecord selectGameFreeRecordById(Long id);
/**
*
*
* @param gameFreeRecord
* @return
*/
List<GameFreeRecord> selectGameFreeRecordList(GameFreeRecord gameFreeRecord);
/**
*
*
* @param gameFreeRecord
* @return
*/
int insertGameFreeRecord(GameFreeRecord gameFreeRecord);
/**
*
*
* @param gameFreeRecord
* @return
*/
int updateGameFreeRecord(GameFreeRecord gameFreeRecord);
/**
*
*
* @param ids
* @return
*/
int deleteGameFreeRecordByIds(Long[] ids);
/**
*
*
* @param id
* @return
*/
int deleteGameFreeRecordById(Long id);
}

View File

@ -1,9 +1,6 @@
package com.ff.game.service;
import com.ff.api.response.GameResponse;
import com.ff.game.api.request.GameUniqueDTO;
import com.ff.game.domain.Game;
import com.ff.game.dto.GameDTO;
import java.util.List;
@ -40,14 +37,6 @@ public interface IGameService {
List<Game> selectGameList(Game game);
/**
*
*
* @param gameDTO dto
* @return {@link List }<{@link Game }>
*/
List<Game> selectGameDTOList(GameDTO gameDTO);
/**
*
*
@ -87,20 +76,5 @@ public interface IGameService {
*/
Integer selectMaxSortNo(Integer platformType, String platformCode);
/**
*
*
* @param gameUniqueDTO dto
* @return {@link List }<{@link Game }>
*/
List<Game> selectGameUniqueList(GameUniqueDTO gameUniqueDTO);
/**
*
*
* @return {@link List }<{@link GameResponse }>
*/
List<GameResponse> selectGameResponseList();
}

View File

@ -21,7 +21,4 @@ public interface IPlatformService {
int deleteByIds(String ids);
void loadToCache();
Platform get(String platformCode);
}

View File

@ -1,16 +1,13 @@
package com.ff.game.service.impl;
import java.util.Collections;
import java.util.List;
import cn.hutool.core.util.IdUtil;
import com.ff.base.utils.DateUtils;
import com.ff.game.dto.GameBettingDetailsDTO;
import com.ff.game.domain.GameBettingDetails;
import com.ff.game.mapper.GameBettingDetailsMapper;
import com.ff.game.service.IGameBettingDetailsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ff.game.mapper.GameBettingDetailsMapper;
import com.ff.game.domain.GameBettingDetails;
import com.ff.game.service.IGameBettingDetailsService;
import java.util.List;
/**
* Service
@ -19,8 +16,7 @@ import com.ff.game.service.IGameBettingDetailsService;
* @date 2025-02-10
*/
@Service
public class GameBettingDetailsServiceImpl implements IGameBettingDetailsService
{
public class GameBettingDetailsServiceImpl implements IGameBettingDetailsService {
@Autowired
private GameBettingDetailsMapper gameBettingDetailsMapper;
@ -31,8 +27,7 @@ public class GameBettingDetailsServiceImpl implements IGameBettingDetailsService
* @return
*/
@Override
public GameBettingDetails selectGameBettingDetailsById(Long id)
{
public GameBettingDetails selectGameBettingDetailsById(Long id) {
return gameBettingDetailsMapper.selectGameBettingDetailsById(id);
}
@ -44,20 +39,9 @@ public class GameBettingDetailsServiceImpl implements IGameBettingDetailsService
*/
@Override
public List<String> selectGameBettingDetailsByWagersId(List<String> wagersIds, String platformCode) {
return gameBettingDetailsMapper.selectGameBettingDetailsByWagersId(wagersIds,platformCode);
return gameBettingDetailsMapper.selectGameBettingDetailsByWagersId(wagersIds, platformCode);
}
/**
*
*
* @param gameBettingDetailsDTO
* @return
*/
@Override
public List<GameBettingDetails> selectGameBettingDetailsList(GameBettingDetailsDTO gameBettingDetailsDTO)
{
return gameBettingDetailsMapper.selectGameBettingDetailsList(gameBettingDetailsDTO);
}
/**
*
@ -66,10 +50,9 @@ public class GameBettingDetailsServiceImpl implements IGameBettingDetailsService
* @return
*/
@Override
public int insertGameBettingDetails(GameBettingDetails gameBettingDetails)
{
public int insertGameBettingDetails(GameBettingDetails gameBettingDetails) {
gameBettingDetails.setId(IdUtil.getSnowflakeNextId());
gameBettingDetails.setCreateTime(DateUtils.getNowDate());
gameBettingDetails.setCreateTime(System.currentTimeMillis());
return gameBettingDetailsMapper.insertGameBettingDetails(gameBettingDetails);
}
@ -91,9 +74,8 @@ public class GameBettingDetailsServiceImpl implements IGameBettingDetailsService
* @return
*/
@Override
public int updateGameBettingDetails(GameBettingDetails gameBettingDetails)
{
gameBettingDetails.setUpdateTime(DateUtils.getNowDate());
public int updateGameBettingDetails(GameBettingDetails gameBettingDetails) {
gameBettingDetails.setUpdateTime(System.currentTimeMillis());
return gameBettingDetailsMapper.updateGameBettingDetails(gameBettingDetails);
}
@ -104,8 +86,7 @@ public class GameBettingDetailsServiceImpl implements IGameBettingDetailsService
* @return
*/
@Override
public int deleteGameBettingDetailsByIds(Long[] ids)
{
public int deleteGameBettingDetailsByIds(Long[] ids) {
return gameBettingDetailsMapper.deleteGameBettingDetailsByIds(ids);
}
@ -116,8 +97,7 @@ public class GameBettingDetailsServiceImpl implements IGameBettingDetailsService
* @return
*/
@Override
public int deleteGameBettingDetailsById(Long id)
{
public int deleteGameBettingDetailsById(Long id) {
return gameBettingDetailsMapper.deleteGameBettingDetailsById(id);
}

View File

@ -1,20 +1,16 @@
package com.ff.game.service.impl;
import java.util.Collections;
import java.util.List;
import cn.hutool.core.util.IdUtil;
import com.ff.base.enums.GamePlatforms;
import com.ff.base.utils.DateUtils;
import com.ff.base.utils.StringUtils;
import com.ff.game.dto.GameExchangeMoneyDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ff.game.mapper.GameExchangeMoneyMapper;
import com.ff.game.domain.GameExchangeMoney;
import com.ff.game.mapper.GameExchangeMoneyMapper;
import com.ff.game.service.IGameExchangeMoneyService;
import com.ff.utils.DateUtils;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* Service
@ -23,8 +19,7 @@ import org.springframework.util.ObjectUtils;
* @date 2025-02-10
*/
@Service
public class GameExchangeMoneyServiceImpl implements IGameExchangeMoneyService
{
public class GameExchangeMoneyServiceImpl implements IGameExchangeMoneyService {
@Autowired
private GameExchangeMoneyMapper gameExchangeMoneyMapper;
@ -35,8 +30,7 @@ public class GameExchangeMoneyServiceImpl implements IGameExchangeMoneyService
* @return
*/
@Override
public GameExchangeMoney selectGameExchangeMoneyById(Long id)
{
public GameExchangeMoney selectGameExchangeMoneyById(Long id) {
return gameExchangeMoneyMapper.selectGameExchangeMoneyById(id);
}
@ -47,16 +41,10 @@ public class GameExchangeMoneyServiceImpl implements IGameExchangeMoneyService
* @return
*/
@Override
public List<GameExchangeMoney> selectGameExchangeMoneyList(GameExchangeMoney gameExchangeMoney)
{
public List<GameExchangeMoney> selectGameExchangeMoneyList(GameExchangeMoney gameExchangeMoney) {
return gameExchangeMoneyMapper.selectGameExchangeMoneyList(gameExchangeMoney);
}
@Override
public List<GameExchangeMoneyDTO> selectGameExchangeMoneyDTOList(GameExchangeMoneyDTO gameExchangeMoneyDTO) {
return gameExchangeMoneyMapper.selectGameExchangeMoneyDTOList(gameExchangeMoneyDTO);
}
/**
*
*
@ -73,32 +61,6 @@ public class GameExchangeMoneyServiceImpl implements IGameExchangeMoneyService
return gameExchangeMoneyMapper.insertGameExchangeMoney(gameExchangeMoney);
}
/**
* id
*
* @param prefix
* @param length
* @return {@link String }
*/
@Override
public synchronized String getTransactionId(String prefix, int length) {
String transactionId = StringUtils.generateOrderId(prefix,length);
List<GameExchangeMoney> gameExchangeMonies = this.selectGameExchangeMoneyList(
GameExchangeMoney.builder()
.transactionId(transactionId)
.build()
);
while (!CollectionUtils.isEmpty(gameExchangeMonies)){
transactionId = StringUtils.generateOrderId(prefix,length);
gameExchangeMonies = this.selectGameExchangeMoneyList(
GameExchangeMoney.builder()
.transactionId(transactionId)
.build()
);
}
return transactionId;
}
/**
*
@ -107,9 +69,8 @@ public class GameExchangeMoneyServiceImpl implements IGameExchangeMoneyService
* @return
*/
@Override
public int updateGameExchangeMoney(GameExchangeMoney gameExchangeMoney)
{
gameExchangeMoney.setUpdateTime(DateUtils.getNowDate());
public int updateGameExchangeMoney(GameExchangeMoney gameExchangeMoney) {
gameExchangeMoney.setUpdateTime(System.currentTimeMillis());
return gameExchangeMoneyMapper.updateGameExchangeMoney(gameExchangeMoney);
}
@ -120,8 +81,7 @@ public class GameExchangeMoneyServiceImpl implements IGameExchangeMoneyService
* @return
*/
@Override
public int deleteGameExchangeMoneyByIds(Long[] ids)
{
public int deleteGameExchangeMoneyByIds(Long[] ids) {
return gameExchangeMoneyMapper.deleteGameExchangeMoneyByIds(ids);
}
@ -132,8 +92,7 @@ public class GameExchangeMoneyServiceImpl implements IGameExchangeMoneyService
* @return
*/
@Override
public int deleteGameExchangeMoneyById(Long id)
{
public int deleteGameExchangeMoneyById(Long id) {
return gameExchangeMoneyMapper.deleteGameExchangeMoneyById(id);
}
}

View File

@ -1,14 +1,13 @@
package com.ff.game.service.impl;
import java.util.List;
import cn.hutool.core.util.IdUtil;
import com.ff.base.utils.DateUtils;
import com.ff.game.domain.GameFreeRecord;
import com.ff.game.mapper.GameFreeRecordMapper;
import com.ff.game.service.IGameFreeRecordService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ff.game.mapper.GameFreeRecordMapper;
import com.ff.game.domain.GameFreeRecord;
import com.ff.game.service.IGameFreeRecordService;
import java.util.List;
/**
* Service
@ -17,8 +16,7 @@ import com.ff.game.service.IGameFreeRecordService;
* @date 2025-02-10
*/
@Service
public class GameFreeRecordServiceImpl implements IGameFreeRecordService
{
public class GameFreeRecordServiceImpl implements IGameFreeRecordService {
@Autowired
private GameFreeRecordMapper gameFreeRecordMapper;
@ -29,8 +27,7 @@ public class GameFreeRecordServiceImpl implements IGameFreeRecordService
* @return
*/
@Override
public GameFreeRecord selectGameFreeRecordById(Long id)
{
public GameFreeRecord selectGameFreeRecordById(Long id) {
return gameFreeRecordMapper.selectGameFreeRecordById(id);
}
@ -41,8 +38,7 @@ public class GameFreeRecordServiceImpl implements IGameFreeRecordService
* @return
*/
@Override
public List<GameFreeRecord> selectGameFreeRecordList(GameFreeRecord gameFreeRecord)
{
public List<GameFreeRecord> selectGameFreeRecordList(GameFreeRecord gameFreeRecord) {
return gameFreeRecordMapper.selectGameFreeRecordList(gameFreeRecord);
}
@ -53,10 +49,9 @@ public class GameFreeRecordServiceImpl implements IGameFreeRecordService
* @return
*/
@Override
public int insertGameFreeRecord(GameFreeRecord gameFreeRecord)
{
public int insertGameFreeRecord(GameFreeRecord gameFreeRecord) {
gameFreeRecord.setId(IdUtil.getSnowflakeNextId());
gameFreeRecord.setCreateTime(DateUtils.getNowDate());
gameFreeRecord.setCreateTime(System.currentTimeMillis());
return gameFreeRecordMapper.insertGameFreeRecord(gameFreeRecord);
}
@ -67,9 +62,8 @@ public class GameFreeRecordServiceImpl implements IGameFreeRecordService
* @return
*/
@Override
public int updateGameFreeRecord(GameFreeRecord gameFreeRecord)
{
gameFreeRecord.setUpdateTime(DateUtils.getNowDate());
public int updateGameFreeRecord(GameFreeRecord gameFreeRecord) {
gameFreeRecord.setUpdateTime(System.currentTimeMillis());
return gameFreeRecordMapper.updateGameFreeRecord(gameFreeRecord);
}
@ -80,8 +74,7 @@ public class GameFreeRecordServiceImpl implements IGameFreeRecordService
* @return
*/
@Override
public int deleteGameFreeRecordByIds(Long[] ids)
{
public int deleteGameFreeRecordByIds(Long[] ids) {
return gameFreeRecordMapper.deleteGameFreeRecordByIds(ids);
}
@ -92,8 +85,7 @@ public class GameFreeRecordServiceImpl implements IGameFreeRecordService
* @return
*/
@Override
public int deleteGameFreeRecordById(Long id)
{
public int deleteGameFreeRecordById(Long id) {
return gameFreeRecordMapper.deleteGameFreeRecordById(id);
}
}

View File

@ -1,22 +1,14 @@
package com.ff.game.service.impl;
import cn.hutool.core.util.IdUtil;
import com.ff.api.response.GameResponse;
import com.ff.base.utils.DateUtils;
import com.ff.game.api.IGamesService;
import com.ff.game.api.request.GameUniqueDTO;
import com.ff.game.domain.Game;
import com.ff.game.dto.GameDTO;
import com.ff.game.mapper.GameMapper;
import com.ff.game.service.IGameService;
import com.ff.member.service.IMemberService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.Map;
/**
* Service
@ -31,12 +23,6 @@ public class GameServiceImpl implements IGameService {
@Autowired
private GameMapper gameMapper;
@Resource
private IMemberService memberService;
@Autowired
private Map<String, IGamesService> gamesService;
/**
*
*
@ -70,16 +56,6 @@ public class GameServiceImpl implements IGameService {
return gameMapper.selectGameList(game);
}
/**
*
*
* @param gameDTO dto
* @return {@link List }<{@link Game }>
*/
@Override
public List<Game> selectGameDTOList(GameDTO gameDTO) {
return gameMapper.selectGameDTOList(gameDTO);
}
/**
*
@ -92,7 +68,7 @@ public class GameServiceImpl implements IGameService {
if (game.getId() == null) {
game.setId(IdUtil.getSnowflakeNextId());
}
game.setCreateTime(DateUtils.getNowDate());
game.setCreateTime(System.currentTimeMillis());
return gameMapper.insertGame(game);
}
@ -104,7 +80,7 @@ public class GameServiceImpl implements IGameService {
*/
@Override
public int updateGame(Game game) {
game.setUpdateTime(DateUtils.getNowDate());
game.setUpdateTime(System.currentTimeMillis());
return gameMapper.updateGame(game);
}
@ -130,31 +106,9 @@ public class GameServiceImpl implements IGameService {
return gameMapper.deleteGameById(id);
}
/**
*
*
* @param gameUniqueDTO dto
* @return {@link List }<{@link Game }>
*/
@Override
public List<Game> selectGameUniqueList(GameUniqueDTO gameUniqueDTO) {
return gameMapper.selectGameUniqueList(gameUniqueDTO);
}
/**
*
*
* @return {@link List }<{@link GameResponse }>
*/
@Override
public List<GameResponse> selectGameResponseList() {
return gameMapper.selectGameResponseList();
}
@Override
public Integer selectMaxSortNo(Integer platformType, String platformCode) {
return gameMapper.selectMaxSortNoBy(platformType, platformCode);
}
}

View File

@ -0,0 +1,50 @@
package com.ff.game.service.impl;
import com.ff.game.domain.Platform;
import com.ff.game.mapper.PlatformMapper;
import com.ff.game.service.IPlatformService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* @author cengy
*/
@Service
public class PlatformServiceImpl implements IPlatformService {
@Autowired
PlatformMapper platformMapper;
@Override
public List<Platform> selectList(Platform platform) {
return platformMapper.selectList(platform);
}
@Override
public Platform selectByPlatformCode(String platformCode) {
return platformMapper.selectByPlatformCode(platformCode);
}
@Override
public int updatePlatform(Platform platform) {
return platformMapper.updatePlatform(platform);
}
@Override
public int insertPlatform(Platform platform) {
return platformMapper.insertPlatform(platform);
}
@Override
public int deleteById(Long id) {
return platformMapper.deleteById(id);
}
@Override
public int deleteByIds(String ids) {
return platformMapper.deleteByIds(ids);
}
}

View File

@ -2,10 +2,8 @@ package com.ff.member.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.SuperBuilder;
@ -20,32 +18,38 @@ import lombok.experimental.SuperBuilder;
@AllArgsConstructor
@NoArgsConstructor
@SuperBuilder
public class Member extends BaseEntity
{
public class Member extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键id */
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
/** 租户key */
@Excel(name = "租户key")
/**
* key
*/
private String tenantKey;
/** 会员账号 */
@Excel(name = "会员账号")
/**
*
*/
private String memberAccount;
/** 游戏账号 */
@Excel(name = "游戏账号")
/**
*
*/
private String gameAccount;
/** 平台编码 */
@Excel(name = "平台编码")
/**
*
*/
private String platformCode;
/** 币种编码 */
@Excel(name = "币种编码")
/**
*
*/
private String currencyCode;

View File

@ -1,9 +1,10 @@
package com.ff.member.mapper;
import java.util.List;
import com.ff.member.domain.Member;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* Mapper
*

View File

@ -1,72 +1,63 @@
package com.ff.member.service;
import java.util.List;
import com.ff.member.domain.Member;
import java.util.List;
/**
* Service
*
*
* @author shi
* @date 2025-02-10
*/
public interface IMemberService
{
public interface IMemberService {
/**
*
*
*
* @param id
* @return
*/
Member selectMemberById(Long id);
Member selectMemberById(Long id);
/**
*
*
*
* @param member
* @return
*/
List<Member> selectMemberList(Member member);
/**
*
*
* @param platformCode
* @param tenantSn sn
* @return {@link String }
*/
String getMemberGameAccount(String platformCode,String tenantSn);
List<Member> selectMemberList(Member member);
/**
*
*
*
* @param member
* @return
*/
int insertMember(Member member);
int insertMember(Member member);
/**
*
*
*
* @param member
* @return
*/
int updateMember(Member member);
int updateMember(Member member);
/**
*
*
*
* @param ids
* @return
*/
int deleteMemberByIds(Long[] ids);
int deleteMemberByIds(Long[] ids);
/**
*
*
*
* @param id
* @return
*/
int deleteMemberById(Long id);
int deleteMemberById(Long id);
/**
@ -85,5 +76,5 @@ public interface IMemberService
* @param platformCode
* @return {@link Member }
*/
Member selectMemberByAccount(String account,String currencyCode,String platformCode);
Member selectMemberByAccount(String account, String currencyCode, String platformCode);
}

View File

@ -1,18 +1,14 @@
package com.ff.member.service.impl;
import java.util.List;
import cn.hutool.core.util.IdUtil;
import com.ff.base.enums.GamePlatforms;
import com.ff.base.enums.PlatformType;
import com.ff.base.utils.DateUtils;
import com.ff.base.utils.RandomGeneratorUtils;
import com.ff.member.domain.Member;
import com.ff.member.mapper.MemberMapper;
import com.ff.member.service.IMemberService;
import com.ff.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ff.member.mapper.MemberMapper;
import com.ff.member.domain.Member;
import com.ff.member.service.IMemberService;
import org.springframework.util.ObjectUtils;
import java.util.List;
/**
* Service
@ -47,33 +43,6 @@ public class MemberServiceImpl implements IMemberService {
return memberMapper.selectMemberList(member);
}
/**
*
*
* @return {@link String }
*/
@Override
public synchronized String getMemberGameAccount(String platformCode,String tenantSn) {
String gameAccount = null;
if (GamePlatforms.DG.getInfo().equals(platformCode) || GamePlatforms.KM.getInfo().equals(platformCode)) {
tenantSn=tenantSn.toUpperCase();
do {
gameAccount = RandomGeneratorUtils.generateRandomAccountUpper()+tenantSn;
} while (!ObjectUtils.isEmpty(memberMapper.selectMemberByGameAccount(gameAccount)));
} else if (GamePlatforms.PG.getInfo().equals(platformCode) || GamePlatforms.PGX.getInfo().equals(platformCode) || GamePlatforms.PGT.getInfo().equals(platformCode)) {
tenantSn=tenantSn.toLowerCase();
do {
gameAccount = RandomGeneratorUtils.generateRandomAccountLower()+tenantSn;
} while (!ObjectUtils.isEmpty(memberMapper.selectMemberByGameAccount(gameAccount)));
} else {
do {
gameAccount = RandomGeneratorUtils.generateRandomAccount()+tenantSn;
} while (!ObjectUtils.isEmpty(memberMapper.selectMemberByGameAccount(gameAccount)));
}
return gameAccount;
}
/**
*

View File

@ -0,0 +1,60 @@
package com.ff.sys.domain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ff.base.core.domain.BaseEntity;
import lombok.Data;
/**
* ff_sys_feedback
*
* @author shi
* @date 2025-02-27
*/
@Data
public class SysFeedback extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* $column.columnComment
*/
private Long id;
/**
* 1 2
*/
private Integer userType;
/**
* id
*/
@JsonSerialize(using = ToStringSerializer.class)
private Long userId;
/**
*
*/
private String title;
/**
*
*/
private String phone;
/**
*
*/
private String content;
/**
* 1 2
*/
private Integer status;
/**
*
*/
private String replyContent;
}

View File

@ -1,8 +1,8 @@
package com.ff.sys.domain;
import com.ff.base.annotation.Excel;
import com.ff.base.core.domain.BaseEntity;
import lombok.Data;
/**
* ff_sys_notice
*
@ -10,19 +10,22 @@ import lombok.Data;
* @date 2025-02-28
*/
@Data
public class SysNotice extends BaseEntity
{
public class SysNotice extends BaseEntity {
private static final long serialVersionUID = 1L;
/** $column.columnComment */
/**
* $column.columnComment
*/
private Long id;
/** 标题 */
@Excel(name = "标题")
/**
*
*/
private String title;
/** 内容 */
@Excel(name = "内容")
/**
*
*/
private String content;

View File

@ -1,8 +1,9 @@
package com.ff.sys.mapper;
import java.util.List;
import com.ff.sys.domain.SysFeedback;
import java.util.List;
/**
* Mapper
*

View File

@ -1,8 +1,9 @@
package com.ff.sys.mapper;
import java.util.List;
import com.ff.sys.domain.SysNotice;
import java.util.List;
/**
* Mapper
*

View File

@ -1,61 +1,61 @@
package com.ff.sys.service;
import java.util.List;
import com.ff.sys.domain.SysFeedback;
import java.util.List;
/**
* Service
*
*
* @author shi
* @date 2025-02-27
*/
public interface ISysFeedbackService
{
public interface ISysFeedbackService {
/**
*
*
*
* @param id
* @return
*/
SysFeedback selectSysFeedbackById(Long id);
SysFeedback selectSysFeedbackById(Long id);
/**
*
*
*
* @param sysFeedback
* @return
*/
List<SysFeedback> selectSysFeedbackList(SysFeedback sysFeedback);
List<SysFeedback> selectSysFeedbackList(SysFeedback sysFeedback);
/**
*
*
*
* @param sysFeedback
* @return
*/
int insertSysFeedback(SysFeedback sysFeedback);
int insertSysFeedback(SysFeedback sysFeedback);
/**
*
*
*
* @param sysFeedback
* @return
*/
int updateSysFeedback(SysFeedback sysFeedback);
int updateSysFeedback(SysFeedback sysFeedback);
/**
*
*
*
* @param ids
* @return
*/
int deleteSysFeedbackByIds(Long[] ids);
int deleteSysFeedbackByIds(Long[] ids);
/**
*
*
*
* @param id
* @return
*/
int deleteSysFeedbackById(Long id);
int deleteSysFeedbackById(Long id);
}

View File

@ -1,61 +1,61 @@
package com.ff.sys.service;
import java.util.List;
import com.ff.sys.domain.SysNotice;
import java.util.List;
/**
* Service
*
*
* @author shi
* @date 2025-02-28
*/
public interface ISysNoticeService
{
public interface ISysNoticeService {
/**
*
*
*
* @param id
* @return
*/
SysNotice selectSysNoticeById(Long id);
SysNotice selectSysNoticeById(Long id);
/**
*
*
*
* @param sysNotice
* @return
*/
List<SysNotice> selectSysNoticeList(SysNotice sysNotice);
List<SysNotice> selectSysNoticeList(SysNotice sysNotice);
/**
*
*
*
* @param sysNotice
* @return
*/
int insertSysNotice(SysNotice sysNotice);
int insertSysNotice(SysNotice sysNotice);
/**
*
*
*
* @param sysNotice
* @return
*/
int updateSysNotice(SysNotice sysNotice);
int updateSysNotice(SysNotice sysNotice);
/**
*
*
*
* @param ids
* @return
*/
int deleteSysNoticeByIds(Long[] ids);
int deleteSysNoticeByIds(Long[] ids);
/**
*
*
*
* @param id
* @return
*/
int deleteSysNoticeById(Long id);
int deleteSysNoticeById(Long id);
}

View File

@ -1,13 +1,14 @@
package com.ff.sys.service.impl;
import java.util.List;
import com.ff.base.utils.DateUtils;
import cn.hutool.core.util.IdUtil;
import com.ff.sys.domain.SysFeedback;
import com.ff.sys.mapper.SysFeedbackMapper;
import com.ff.sys.service.ISysFeedbackService;
import com.ff.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ff.sys.mapper.SysFeedbackMapper;
import com.ff.sys.domain.SysFeedback;
import com.ff.sys.service.ISysFeedbackService;
import cn.hutool.core.util.IdUtil;
import java.util.List;
/**
@ -17,8 +18,7 @@ import cn.hutool.core.util.IdUtil;
* @date 2025-02-27
*/
@Service
public class SysFeedbackServiceImpl implements ISysFeedbackService
{
public class SysFeedbackServiceImpl implements ISysFeedbackService {
@Autowired
private SysFeedbackMapper sysFeedbackMapper;
@ -29,8 +29,7 @@ public class SysFeedbackServiceImpl implements ISysFeedbackService
* @return
*/
@Override
public SysFeedback selectSysFeedbackById(Long id)
{
public SysFeedback selectSysFeedbackById(Long id) {
return sysFeedbackMapper.selectSysFeedbackById(id);
}
@ -41,8 +40,7 @@ public class SysFeedbackServiceImpl implements ISysFeedbackService
* @return
*/
@Override
public List<SysFeedback> selectSysFeedbackList(SysFeedback sysFeedback)
{
public List<SysFeedback> selectSysFeedbackList(SysFeedback sysFeedback) {
return sysFeedbackMapper.selectSysFeedbackList(sysFeedback);
}
@ -53,8 +51,7 @@ public class SysFeedbackServiceImpl implements ISysFeedbackService
* @return
*/
@Override
public int insertSysFeedback(SysFeedback sysFeedback)
{
public int insertSysFeedback(SysFeedback sysFeedback) {
sysFeedback.setId(IdUtil.getSnowflakeNextId());
sysFeedback.setCreateTime(DateUtils.getNowDate());
return sysFeedbackMapper.insertSysFeedback(sysFeedback);
@ -67,8 +64,7 @@ public class SysFeedbackServiceImpl implements ISysFeedbackService
* @return
*/
@Override
public int updateSysFeedback(SysFeedback sysFeedback)
{
public int updateSysFeedback(SysFeedback sysFeedback) {
sysFeedback.setUpdateTime(DateUtils.getNowDate());
return sysFeedbackMapper.updateSysFeedback(sysFeedback);
}
@ -80,8 +76,7 @@ public class SysFeedbackServiceImpl implements ISysFeedbackService
* @return
*/
@Override
public int deleteSysFeedbackByIds(Long[] ids)
{
public int deleteSysFeedbackByIds(Long[] ids) {
return sysFeedbackMapper.deleteSysFeedbackByIds(ids);
}
@ -92,8 +87,7 @@ public class SysFeedbackServiceImpl implements ISysFeedbackService
* @return
*/
@Override
public int deleteSysFeedbackById(Long id)
{
public int deleteSysFeedbackById(Long id) {
return sysFeedbackMapper.deleteSysFeedbackById(id);
}
}

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