feat:依赖修复,完善core和mybatis还有log模块,log模块待完成

This commit is contained in:
lirui
2025-11-25 17:06:50 +08:00
parent d89960f51c
commit 6f7963a73b
36 changed files with 873 additions and 107 deletions

View File

@@ -17,4 +17,16 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>cn.meowrain</groupId>
<artifactId>aioj-backend-common-mybatis</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>cn.meowrain</groupId>
<artifactId>aioj-backend-upms-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,11 @@
package cn.meowrain.aioj.backend.upms.biz;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class AIOJAdminApplication {
public static void main(String[] args) {
SpringApplication.run(AIOJAdminApplication.class, args);
}
}

View File

@@ -0,0 +1,78 @@
package cn.meowrain.aioj.backend.upms.biz.controller;
import cn.hutool.core.collection.CollUtil;
import cn.meowrain.aioj.backend.framework.core.web.Result;
import cn.meowrain.aioj.backend.framework.core.web.Results;
import cn.meowrain.aioj.backend.upms.api.dto.SysLogDTO;
import cn.meowrain.aioj.backend.upms.api.entity.SysLog;
import cn.meowrain.aioj.backend.upms.biz.service.SysLogService;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import org.springdoc.core.annotations.ParameterObject;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/log")
@Tag(description = "log", name = "日志管理模块")
@RequiredArgsConstructor
public class SysLogController {
private final SysLogService sysLogService;
/**
* 分页查询系统日志
*
* @param page 分页参数对象
* @param sysLog 系统日志查询条件
* @return 包含分页结果的响应对象
*/
@GetMapping("/page")
@Operation(summary = "分页查询系统日志", description = "分页查询系统日志")
public Result<Page> getLogPage(@ParameterObject Page page, @ParameterObject SysLogDTO sysLog) {
return Results.success(sysLogService.getLogPage(page, sysLog));
}
/**
* 批量删除日志
*
* @param ids 要删除的日志ID数组
* @return 操作结果成功返回success失败返回false
*/
@DeleteMapping
// @HasPermission("sys_log_del")
@Operation(summary = "批量删除日志", description = "批量删除日志")
public Result<Boolean> removeByIds(@RequestBody Long[] ids) {
return Results.success(sysLogService.removeBatchByIds(CollUtil.toList(ids)));
}
/**
* 保存日志
*
* @param sysLog 日志实体
* @return 操作结果成功返回success失败返回false
*/
@PostMapping("/save")
@Operation(summary = "保存日志", description = "保存日志")
public Result<Boolean> saveLog(@Valid @RequestBody SysLog sysLog) {
return Results.success(sysLogService.saveLog(sysLog));
}
/**
* 导出系统日志到Excel表格
* @param sysLog 系统日志查询条件DTO
* @return 符合查询条件的系统日志列表
*/
// @ResponseExcel
// @GetMapping("/export")
// @HasPermission("sys_log_export")
// @Operation(summary = "导出系统日志到Excel表格", description = "导出系统日志到Excel表格")
// public List<SysLog> exportLogs(SysLogDTO sysLog) {
// return sysLogService.listLogs(sysLog);
// }
}

View File

@@ -0,0 +1,12 @@
package cn.meowrain.aioj.backend.upms.biz.mapper;
import cn.meowrain.aioj.backend.upms.api.entity.SysLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
/**
* 系统日志表 Mapper 接口
*/
@Mapper
public interface SysLogMapper extends BaseMapper<SysLog> {
}

View File

@@ -0,0 +1,35 @@
package cn.meowrain.aioj.backend.upms.biz.service;
import cn.meowrain.aioj.backend.upms.api.dto.SysLogDTO;
import cn.meowrain.aioj.backend.upms.api.entity.SysLog;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
public interface SysLogService extends IService<SysLog> {
/**
* 分页查询系统日志
*
* @param page 分页对象
* @param sysLog 系统日志
* @return 系统日志分页数据
*/
Page getLogPage(Page page, SysLogDTO sysLog);
/**
* 保存日志
*
* @param sysLog 日志实体
* @return Boolean
*/
Boolean saveLog(SysLog sysLog);
/**
* 查询日志列表
*
* @param sysLog 查询条件
* @return 日志列表
*/
List<SysLog> listLogs(SysLogDTO sysLog);
}

View File

@@ -0,0 +1,75 @@
package cn.meowrain.aioj.backend.upms.biz.service.impl;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.StrUtil;
import cn.meowrain.aioj.backend.upms.api.dto.SysLogDTO;
import cn.meowrain.aioj.backend.upms.api.entity.SysLog;
import cn.meowrain.aioj.backend.upms.biz.mapper.SysLogMapper;
import cn.meowrain.aioj.backend.upms.biz.service.SysLogService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Service
public class SysLogServiceImpl extends ServiceImpl<SysLogMapper, SysLog> implements SysLogService {
/**
* 分页查询系统日志
*
* @param page 分页参数
* @param sysLog 日志查询条件
* @return 分页结果
*/
@Override
public Page getLogPage(Page page, SysLogDTO sysLog) {
return baseMapper.selectPage(page, buildQuery(sysLog));
}
/**
* 保存日志
*
* @param sysLog 日志对象
* @return 保存成功返回true
*/
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean saveLog(SysLog sysLog) {
baseMapper.insert(sysLog);
return Boolean.TRUE;
}
/**
* 查询日志列表
*
* @param sysLog 查询条件DTO对象
* @return 日志列表
*/
@Override
public List<SysLog> listLogs(SysLogDTO sysLog) {
return baseMapper.selectList(buildQuery(sysLog));
}
/**
* 构建查询条件
*
* @param sysLog 前端查询条件DTO
* @return 构建好的LambdaQueryWrapper对象
*/
private LambdaQueryWrapper buildQuery(SysLogDTO sysLog) {
LambdaQueryWrapper<SysLog> wrapper = Wrappers.lambdaQuery();
if (StrUtil.isNotBlank(sysLog.getLogType())) {
wrapper.eq(SysLog::getLogType, sysLog.getLogType());
}
if (ArrayUtil.isNotEmpty(sysLog.getCreateTime())) {
wrapper.ge(SysLog::getCreateTime, sysLog.getCreateTime()[0])
.le(SysLog::getCreateTime, sysLog.getCreateTime()[1]);
}
return wrapper;
}
}