1. 新增用户与部门,一对多的关系;
2. 新增管理多部门用户,如果有为公司的多个部门可以进行选择登录(选择后,直到下次变更访问公司前,只能访问此次选择公的业务数据,使用 company_id 控制,后续补充此数据权限的实现);
3. sql 转化工具修复,现在可以正确的对 mysql 进行不同数据库实例的转化了;
4. 所有表格主键,修改为分布式 Id 实现;
5. 补全在初始版本中没有被纳入的其他预制功能模块
This commit is contained in:
Administrator
2025-07-01 07:30:25 +00:00
parent 84ddc8ca6e
commit 06b278563e
1254 changed files with 85893 additions and 1524 deletions

View File

@@ -0,0 +1,30 @@
<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>cn.iocoder.cloud</groupId>
<artifactId>yudao-framework</artifactId>
<version>${revision}</version>
</parent>
<artifactId>yudao-spring-boot-starter-biz-business</artifactId>
<packaging>jar</packaging>
<dependencies>
<dependency>
<groupId>cn.iocoder.cloud</groupId>
<artifactId>yudao-spring-boot-starter-biz-tenant</artifactId>
</dependency>
<dependency>
<groupId>cn.iocoder.cloud</groupId>
<artifactId>yudao-spring-boot-starter-biz-tenant</artifactId>
</dependency>
<dependency>
<groupId>cn.iocoder.cloud</groupId>
<artifactId>yudao-module-system-api</artifactId>
<version>2.6.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,50 @@
package cn.iocoder.yudao.framework.business.core.db;
import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.ibatis.type.JdbcType;
/**
* @author chenbowen
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class BusinessBaseDO extends TenantBaseDO {
/** 公司编号 */
@TableField(fill = FieldFill.INSERT)
private Long companyId;
/** 公司名称 */
@TableField(fill = FieldFill.INSERT, jdbcType = JdbcType.VARCHAR)
private String companyName;
/** 部门编号 */
@TableField(fill = FieldFill.INSERT)
private Long deptId;
/** 部门名称 */
@TableField(fill = FieldFill.INSERT, jdbcType = JdbcType.VARCHAR)
private String deptName;
/** 任务编号 */
@TableField(fill = FieldFill.INSERT_UPDATE, jdbcType = JdbcType.VARCHAR)
private Long taskId;
/** 岗位编号 */
@TableField(fill = FieldFill.INSERT, jdbcType = JdbcType.VARCHAR)
private Long postId;
/**
* 清除 creator、createTime、updateTime、updater 等字段,避免前端直接传递这些字段,导致被更新
*/
@Override
public void clean() {
super.clean();
this.companyId = null;
this.companyName = null;
this.deptId = null;
this.deptName = null;
this.taskId = null;
this.postId = null;
}
}

View File

@@ -0,0 +1,21 @@
package cn.iocoder.yudao.framework.business.core.util;
import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
/**
* 用户与部门一对多改动,此处统一处理用户与部门关系
* @author chenbowen
*/
public class DeptUtil {
/**
* 从用户信息中获取唯一 deptId (现阶段取第一个,后续如有特殊规则统一调整此处即可)
*/
public static Long getDeptId(AdminUserRespDTO adminUserRespDTO) {
List<Long> deptIds = Optional.ofNullable(adminUserRespDTO.getDeptIds()).orElse(new ArrayList<>());
return deptIds.stream().findFirst().orElse(0L);
}
}