提交 6c002cf1 作者: 张开石

1、创建表以及对应的实体类、service类、mapper类

2、添加mybatis公共字段handler
父级 0cafdd27
......@@ -346,6 +346,12 @@
<version>2.7.0</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-aop</artifactId>
<version>2.7.0</version>
</dependency>
<!--security核心包-->
<dependency>
<groupId>org.springframework.security</groupId>
......@@ -363,6 +369,11 @@
<artifactId>meetingLLM</artifactId>
<version>1.0.0</version>
</dependency>
<dependency>
<groupId>com.util</groupId>
<artifactId>llm-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
......
package com.cmeeting.config;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
import java.util.Date;
@Component
public class MyBatisMetaHandler implements MetaObjectHandler {
private final String CREATE_TIME = "createTime";
private final String UPDATE_TIME = "updateTime";
// private final String ID = "id";
@Override
public void insertFill(MetaObject metaObject) {
Date now = new Date();
// boolean hasId = metaObject.hasSetter(ID);
boolean hasCreateTime = metaObject.hasSetter(CREATE_TIME);
boolean hasUpdateTime = metaObject.hasSetter(UPDATE_TIME);
// if (hasId) {
// Object id = getFieldValByName(ID, metaObject);
// if (ObjectUtils.isEmpty(id)) {
// long nextId = IdUtil.getSnowflake(1, 1).nextId();
// strictInsertFill(metaObject, ID, String.class, String.valueOf(nextId));
//
// }
// }
if (hasCreateTime) {
Object createTime = getFieldValByName(CREATE_TIME, metaObject);
if (ObjectUtils.isEmpty(createTime)) {
strictInsertFill(metaObject, CREATE_TIME, Date.class, now);
}
}
if (hasUpdateTime) {
Object updateTime = getFieldValByName(UPDATE_TIME, metaObject);
if (ObjectUtils.isEmpty(updateTime)) {
strictInsertFill(metaObject, UPDATE_TIME, Date.class, now);
}
}
}
@Override
public void updateFill(MetaObject metaObject) {
Date now = new Date();
boolean hasUpdateTime = metaObject.hasSetter(UPDATE_TIME);
if (hasUpdateTime) {
setFieldValByName(UPDATE_TIME, now, metaObject);
}
}
}
package com.cmeeting.mapper;
import com.cmeeting.pojo.MeetEmailTemplate;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @author Administrator
* @description 针对表【meet_email_template(会议纪要邮件模板)】的数据库操作Mapper
* @createDate 2025-07-17 10:55:32
* @Entity com.cmeeting.pojo.MeetEmailTemplate
*/
public interface MeetEmailTemplateMapper extends BaseMapper<MeetEmailTemplate> {
}
package com.cmeeting.mapper;
import com.cmeeting.pojo.MeetTemplateEnable;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @author Administrator
* @description 针对表【meet_template_enable(会议模板启用表)】的数据库操作Mapper
* @createDate 2025-07-17 10:55:32
* @Entity com.cmeeting.pojo.MeetTemplateEnable
*/
public interface MeetTemplateEnableMapper extends BaseMapper<MeetTemplateEnable> {
}
package com.cmeeting.mapper;
import com.cmeeting.pojo.MeetType;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @author Administrator
* @description 针对表【meet_type(会议类型)】的数据库操作Mapper
* @createDate 2025-07-17 10:55:32
* @Entity com.cmeeting.pojo.MeetType
*/
public interface MeetTypeMapper extends BaseMapper<MeetType> {
}
package com.cmeeting.mapper;
import com.cmeeting.pojo.ModulePermission;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @author Administrator
* @description 针对表【module_permission(权限表)】的数据库操作Mapper
* @createDate 2025-07-17 10:55:32
* @Entity com.cmeeting.pojo.ModulePermission
*/
public interface ModulePermissionMapper extends BaseMapper<ModulePermission> {
}
package com.cmeeting.mapper;
import com.cmeeting.pojo.OperationLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @author Administrator
* @description 针对表【operation_log(操作日志)】的数据库操作Mapper
* @createDate 2025-07-17 10:03:44
* @Entity com.cmeeting.pojo.OperationLog
*/
public interface OperationLogMapper extends BaseMapper<OperationLog> {
}
package com.cmeeting.pojo;
import com.baomidou.mybatisplus.annotation.*;
import java.util.Date;
import lombok.Data;
/**
* 会议纪要邮件模板
* @TableName meet_email_template
*/
@TableName(value ="meet_email_template")
@Data
public class MeetEmailTemplate {
/**
*
*/
@TableId(type = IdType.AUTO)
private Long id;
/**
* 模板名称
*/
private String content;
/**
*
*/
@TableField(fill = FieldFill.INSERT)
private Date createTime;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime;
}
\ No newline at end of file
package com.cmeeting.pojo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
/**
* 会议模板启用表
* @TableName meet_template_enable
*/
@TableName(value ="meet_template_enable")
@Data
public class MeetTemplateEnable {
/**
*
*/
@TableId
private Long id;
/**
* 模板id
*/
private Long relId;
/**
* 用户id/system (管理员)
*/
private String userId;
}
\ No newline at end of file
package com.cmeeting.pojo;
import com.baomidou.mybatisplus.annotation.*;
import java.util.Date;
import lombok.Data;
/**
* 会议类型
* @TableName meet_type
*/
@TableName(value ="meet_type")
@Data
public class MeetType {
/**
* 主键ID
*/
@TableId
private Long id;
/**
* 会议类型
*/
private String name;
/**
* 逻辑删除
*/
private Integer isDel;
/**
* 0没有权限, 1自动授权
*/
private Integer autoAuth;
/**
* 0不授权 1授权给所有人 2自定义
*/
private Integer authType;
/**
* 参考模板类型id
*/
private Long relId;
/**
* 类型描述(用于让大模型筛选会议类型的提示词)
*/
private String content;
/**
* 创建时间
*/
@TableField(fill = FieldFill.INSERT)
private Date createTime;
/**
* 更新时间
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateTime;
/**
*
*/
private String createUser;
/**
*
*/
private String updateUser;
}
\ No newline at end of file
......@@ -42,7 +42,7 @@ public class MeetingRecordTemplate implements Serializable {
/**
* 会议类型
*/
private String meetingType;
private Long meetingType;
/**
* 会议类型描述
......@@ -87,12 +87,12 @@ public class MeetingRecordTemplate implements Serializable {
private String updateUserName;
/**
* 删除标识
* 删除标识,0-否,1-是
*/
private Boolean isDel;
/**
* 模板文件
* 模板docx文件
*/
private String template;
/**
......
package com.cmeeting.pojo;
import com.baomidou.mybatisplus.annotation.*;
import java.util.Date;
import lombok.Data;
/**
* 权限表
* @TableName module_permission
*/
@TableName(value ="module_permission")
@Data
public class ModulePermission {
/**
*
*/
@TableId(type = IdType.AUTO)
private Long id;
/**
* 类型,0-分类,1-用户
*/
private Integer type;
/**
* 用户类型,2-通讯录,3-超管分享
*/
private Integer userType;
/**
* 0-授权纪要功能,1-纪要类型分享,2-纪要模板分享,3-用户自己关闭纪要功能
*/
private Integer purpose;
/**
* 关联id(分类id或用户id)
*/
private String relId;
/**
* purpose为0/3时为空,为1时是纪要类型id,2时纪要模板id
*/
private Long targetId;
/**
*
*/
@TableField(fill = FieldFill.INSERT)
private Date createTime;
}
\ No newline at end of file
package com.cmeeting.pojo;
import com.baomidou.mybatisplus.annotation.*;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 操作日志
* @TableName operation_log
*/
@TableName(value ="operation_log")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class OperationLog {
/**
*
*/
@TableId(type = IdType.AUTO)
private String id;
/**
* 用户名
*/
private String userName;
/**
* 用户id
*/
private String userId;
/**
* 操作页面
*/
private String location;
/**
* 操作记录
*/
private String operation;
/**
* 创建时间
*/
@TableField(fill = FieldFill.INSERT)
private Date createTime;
}
\ No newline at end of file
package com.cmeeting.service;
import com.cmeeting.pojo.MeetEmailTemplate;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @author Administrator
* @description 针对表【meet_email_template(会议纪要邮件模板)】的数据库操作Service
* @createDate 2025-07-17 10:55:32
*/
public interface MeetEmailTemplateService extends IService<MeetEmailTemplate> {
}
package com.cmeeting.service;
import com.cmeeting.pojo.MeetTemplateEnable;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @author Administrator
* @description 针对表【meet_template_enable(会议模板启用表)】的数据库操作Service
* @createDate 2025-07-17 10:55:32
*/
public interface MeetTemplateEnableService extends IService<MeetTemplateEnable> {
}
package com.cmeeting.service;
import com.cmeeting.pojo.MeetType;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @author Administrator
* @description 针对表【meet_type(会议类型)】的数据库操作Service
* @createDate 2025-07-17 10:55:32
*/
public interface MeetTypeService extends IService<MeetType> {
}
package com.cmeeting.service;
import com.cmeeting.pojo.ModulePermission;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @author Administrator
* @description 针对表【module_permission(权限表)】的数据库操作Service
* @createDate 2025-07-17 10:55:32
*/
public interface ModulePermissionService extends IService<ModulePermission> {
}
package com.cmeeting.service;
import com.cmeeting.pojo.OperationLog;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* @author Administrator
* @description 针对表【operation_log(操作日志)】的数据库操作Service
* @createDate 2025-07-17 10:03:44
*/
public interface OperationLogService extends IService<OperationLog> {
}
package com.cmeeting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cmeeting.pojo.MeetEmailTemplate;
import com.cmeeting.service.MeetEmailTemplateService;
import com.cmeeting.mapper.MeetEmailTemplateMapper;
import org.springframework.stereotype.Service;
/**
* @author Administrator
* @description 针对表【meet_email_template(会议纪要邮件模板)】的数据库操作Service实现
* @createDate 2025-07-17 10:55:32
*/
@Service
public class MeetEmailTemplateServiceImpl extends ServiceImpl<MeetEmailTemplateMapper, MeetEmailTemplate>
implements MeetEmailTemplateService{
}
package com.cmeeting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cmeeting.pojo.MeetTemplateEnable;
import com.cmeeting.service.MeetTemplateEnableService;
import com.cmeeting.mapper.MeetTemplateEnableMapper;
import org.springframework.stereotype.Service;
/**
* @author Administrator
* @description 针对表【meet_template_enable(会议模板启用表)】的数据库操作Service实现
* @createDate 2025-07-17 10:55:32
*/
@Service
public class MeetTemplateEnableServiceImpl extends ServiceImpl<MeetTemplateEnableMapper, MeetTemplateEnable>
implements MeetTemplateEnableService{
}
package com.cmeeting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cmeeting.pojo.MeetType;
import com.cmeeting.service.MeetTypeService;
import com.cmeeting.mapper.MeetTypeMapper;
import org.springframework.stereotype.Service;
/**
* @author Administrator
* @description 针对表【meet_type(会议类型)】的数据库操作Service实现
* @createDate 2025-07-17 10:55:32
*/
@Service
public class MeetTypeServiceImpl extends ServiceImpl<MeetTypeMapper, MeetType>
implements MeetTypeService{
}
package com.cmeeting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cmeeting.pojo.ModulePermission;
import com.cmeeting.service.ModulePermissionService;
import com.cmeeting.mapper.ModulePermissionMapper;
import org.springframework.stereotype.Service;
/**
* @author Administrator
* @description 针对表【module_permission(权限表)】的数据库操作Service实现
* @createDate 2025-07-17 10:55:32
*/
@Service
public class ModulePermissionServiceImpl extends ServiceImpl<ModulePermissionMapper, ModulePermission>
implements ModulePermissionService{
}
package com.cmeeting.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cmeeting.pojo.OperationLog;
import com.cmeeting.service.OperationLogService;
import com.cmeeting.mapper.OperationLogMapper;
import org.springframework.stereotype.Service;
/**
* @author Administrator
* @description 针对表【operation_log(操作日志)】的数据库操作Service实现
* @createDate 2025-07-17 10:03:44
*/
@Service
public class OperationLogServiceImpl extends ServiceImpl<OperationLogMapper, OperationLog>
implements OperationLogService{
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cmeeting.mapper.MeetEmailTemplateMapper">
<resultMap id="BaseResultMap" type="com.cmeeting.pojo.MeetEmailTemplate">
<id property="id" column="id" />
<result property="content" column="content" />
<result property="createTime" column="create_time" />
<result property="updateTime" column="update_time" />
</resultMap>
<sql id="Base_Column_List">
id,content,create_time,update_time
</sql>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cmeeting.mapper.MeetTemplateEnableMapper">
<resultMap id="BaseResultMap" type="com.cmeeting.pojo.MeetTemplateEnable">
<id property="id" column="id" />
<result property="relId" column="rel_id" />
<result property="userId" column="user_id" />
</resultMap>
<sql id="Base_Column_List">
id,rel_id,user_id
</sql>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cmeeting.mapper.MeetTypeMapper">
<resultMap id="BaseResultMap" type="com.cmeeting.pojo.MeetType">
<id property="id" column="id" />
<result property="name" column="name" />
<result property="isDel" column="is_del" />
<result property="autoAuth" column="auto_auth" />
<result property="authType" column="auth_type" />
<result property="relId" column="rel_id" />
<result property="content" column="content" />
<result property="createTime" column="create_time" />
<result property="updateTime" column="update_time" />
<result property="createUser" column="create_user" />
<result property="updateUser" column="update_user" />
</resultMap>
<sql id="Base_Column_List">
id,name,is_del,auto_auth,auth_type,rel_id,
content,create_time,update_time,create_user,update_user
</sql>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cmeeting.mapper.ModulePermissionMapper">
<resultMap id="BaseResultMap" type="com.cmeeting.pojo.ModulePermission">
<id property="id" column="id" />
<result property="type" column="type" />
<result property="userType" column="user_type" />
<result property="purpose" column="purpose" />
<result property="relId" column="rel_id" />
<result property="targetId" column="target_id" />
<result property="createTime" column="create_time" />
</resultMap>
<sql id="Base_Column_List">
id,type,user_type,purpose,rel_id,target_id,
create_time
</sql>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cmeeting.mapper.OperationLogMapper">
<resultMap id="BaseResultMap" type="com.cmeeting.pojo.OperationLog">
<id property="id" column="id" />
<result property="userName" column="user_name" />
<result property="userId" column="user_id" />
<result property="location" column="location" />
<result property="operation" column="operation" />
<result property="createTime" column="create_time" />
</resultMap>
<sql id="Base_Column_List">
id,user_name,user_id,location,operation,create_time
</sql>
</mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论