在modules包下新建asset-management包,将代码挪过来

Signed-off-by: CCass <only_pop@qq.com>
This commit is contained in:
CCass
2025-09-28 18:02:12 +08:00
parent 2ed4e2a39a
commit 87fe29649a
31 changed files with 375 additions and 68 deletions

View File

@@ -0,0 +1,90 @@
<?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>
<artifactId>ruoyi-ai</artifactId>
<groupId>org.ruoyi</groupId>
<version>${revision}</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<artifactId>ruoyi-asset-management-api</artifactId>
<packaging>jar</packaging>
<description>
资产管理API模块
</description>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<!-- 系统核心模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-core</artifactId>
</dependency>
<!-- mybaits基础模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-mybatis</artifactId>
</dependency>
<!-- 脱敏模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-sensitive</artifactId>
</dependency>
<!-- excel模块-->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-excel</artifactId>
</dependency>
<!-- 租户基础模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-tenant</artifactId>
</dependency>
<!-- 字段翻译基础模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-translation</artifactId>
</dependency>
<!-- 日志模块 -->
<dependency>
<groupId>org.ruoyi</groupId>
<artifactId>ruoyi-common-log</artifactId>
</dependency>
<!-- 对象映射工具 -->
<dependency>
<groupId>io.github.linpeilie</groupId>
<artifactId>mapstruct-plus-spring-boot-starter</artifactId>
</dependency>
<!-- 参数校验 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<!-- Lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,44 @@
package org.ruoyi.asset.domain;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ruoyi.core.domain.BaseEntity;
import java.io.Serial;
/**
* 高等学校固定资产分类与代码对象 asset_classification
*
* @author cass
* @date 2025-09-24
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("asset_classification")
public class AssetClassification extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private Long id;
/**
* 分类代码
*/
private String classificationCode;
/**
* 分类名称
*/
private String classificationName;
/**
* 国标名称
*/
private String gbName;
}

View File

@@ -0,0 +1,51 @@
package org.ruoyi.asset.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ruoyi.core.domain.BaseEntity;
import java.io.Serial;
/**
* 最低使用年限表 min_usage_period
*
* @author cass
* @date 2025-09-24
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("min_usage_period")
public class MinUsagePeriod extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@TableId(value = "id")
private Long id;
/**
* 固定资产类别
*/
private String category;
/**
* 内容
*/
private String content;
/**
* 最低使用年限(年)
*/
private Integer minYears;
/**
* 国标代码
*/
private String gbCode;
}

View File

@@ -0,0 +1,49 @@
package org.ruoyi.asset.domain.bo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ruoyi.common.core.validate.AddGroup;
import org.ruoyi.common.core.validate.EditGroup;
import org.ruoyi.core.domain.BaseEntity;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import java.io.Serial;
/**
* 高等学校固定资产分类与代码业务对象 asset_classification
*
* @author cass
* @date 2025-09-24
*/
@Data
@EqualsAndHashCode(callSuper = true)
public class AssetClassificationBo extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@NotNull(message = "主键ID不能为空", groups = {EditGroup.class})
private Long id;
/**
* 分类代码
*/
@NotBlank(message = "分类代码不能为空", groups = {AddGroup.class, EditGroup.class})
private String classificationCode;
/**
* 分类名称
*/
@NotBlank(message = "分类名称不能为空", groups = {AddGroup.class, EditGroup.class})
private String classificationName;
/**
* 国标名称
*/
@NotBlank(message = "国标名称不能为空", groups = {AddGroup.class, EditGroup.class})
private String gbName;
}

View File

@@ -0,0 +1,56 @@
package org.ruoyi.asset.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.ruoyi.common.core.validate.AddGroup;
import org.ruoyi.common.core.validate.EditGroup;
import org.ruoyi.core.domain.BaseEntity;
import org.ruoyi.asset.domain.MinUsagePeriod;
/**
* 最低使用年限表业务对象 min_usage_period
*
* @author cass
* @date 2025-09-24
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = MinUsagePeriod.class, reverseConvertGenerate = false)
public class MinUsagePeriodBo extends BaseEntity {
/**
* 主键
*/
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
private Long id;
/**
* 固定资产类别
*/
@NotBlank(message = "固定资产类别不能为空", groups = { AddGroup.class, EditGroup.class })
@Size(min = 0, max = 100, message = "固定资产类别不能超过{max}个字符")
private String category;
/**
* 内容
*/
@Size(min = 0, max = 500, message = "内容不能超过{max}个字符")
private String content;
/**
* 最低使用年限(年)
*/
private Integer minYears;
/**
* 国标代码
*/
@NotBlank(message = "国标代码不能为空", groups = { AddGroup.class, EditGroup.class })
@Size(min = 0, max = 20, message = "国标代码不能超过{max}个字符")
private String gbCode;
}

View File

@@ -0,0 +1,38 @@
package org.ruoyi.asset.domain.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
import java.io.Serial;
import java.io.Serializable;
/**
* 高等学校固定资产分类与代码导入视图对象
*
* @author cass
* @date 2025-09-24
*/
@Data
public class AssetClassificationImportVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 分类代码
*/
@ExcelProperty(value = "分类代码")
private String classificationCode;
/**
* 分类名称
*/
@ExcelProperty(value = "分类名称")
private String classificationName;
/**
* 国标名称
*/
@ExcelProperty(value = "国标名称")
private String gbName;
}

View File

@@ -0,0 +1,79 @@
package org.ruoyi.asset.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
import org.ruoyi.common.excel.annotation.ExcelDictFormat;
import org.ruoyi.common.excel.convert.ExcelDictConvert;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 高等学校固定资产分类与代码视图对象 asset_classification
*
* @author cass
* @date 2025-09-24
*/
@Data
@ExcelIgnoreUnannotated
public class AssetClassificationVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@ExcelProperty(value = "主键ID")
private Long id;
/**
* 分类代码
*/
@ExcelProperty(value = "分类代码")
private String classificationCode;
/**
* 分类名称
*/
@ExcelProperty(value = "分类名称")
private String classificationName;
/**
* 国标名称
*/
@ExcelProperty(value = "国标名称")
private String gbName;
/**
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
/**
* 更新时间
*/
@ExcelProperty(value = "更新时间")
private Date updateTime;
/**
* 创建者
*/
@ExcelProperty(value = "创建者")
private String createBy;
/**
* 更新者
*/
@ExcelProperty(value = "更新者")
private String updateBy;
/**
* 备注
*/
@ExcelProperty(value = "备注")
private String remark;
}

View File

@@ -0,0 +1,47 @@
package org.ruoyi.asset.domain.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serial;
import java.io.Serializable;
/**
* 最低使用年限表导入VO
*
* @author cass
* @date 2025-09-24
*/
@Data
@NoArgsConstructor
public class MinUsagePeriodImportVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 固定资产类别
*/
@ExcelProperty(value = "固定资产类别")
private String category;
/**
* 内容
*/
@ExcelProperty(value = "内容")
private String content;
/**
* 最低使用年限(年)
*/
@ExcelProperty(value = "最低使用年限(年)")
private Integer minYears;
/**
* 国标代码
*/
@ExcelProperty(value = "国标代码")
private String gbCode;
}

View File

@@ -0,0 +1,63 @@
package org.ruoyi.asset.domain.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.ruoyi.asset.domain.MinUsagePeriod;
import java.io.Serial;
import java.io.Serializable;
import java.util.Date;
/**
* 最低使用年限表视图对象 min_usage_period
*
* @author cass
* @date 2025-09-24
*/
@Data
@ExcelIgnoreUnannotated
@AutoMapper(target = MinUsagePeriod.class)
public class MinUsagePeriodVo implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@ExcelProperty(value = "主键")
private Long id;
/**
* 固定资产类别
*/
@ExcelProperty(value = "固定资产类别")
private String category;
/**
* 内容
*/
@ExcelProperty(value = "内容")
private String content;
/**
* 最低使用年限(年)
*/
@ExcelProperty(value = "最低使用年限(年)")
private Integer minYears;
/**
* 国标代码
*/
@ExcelProperty(value = "国标代码")
private String gbCode;
/**
* 创建时间
*/
@ExcelProperty(value = "创建时间")
private Date createTime;
}

View File

@@ -0,0 +1,23 @@
package org.ruoyi.asset.mapper;
import org.apache.ibatis.annotations.Param;
import org.ruoyi.core.mapper.BaseMapperPlus;
import org.ruoyi.asset.domain.AssetClassification;
import org.ruoyi.asset.domain.vo.AssetClassificationVo;
/**
* 高等学校固定资产分类与代码Mapper接口
*
* @author cass
* @date 2025-09-24
*/
public interface AssetClassificationMapper extends BaseMapperPlus<AssetClassification, AssetClassificationVo> {
/**
* 根据分类代码查询
*
* @param classificationCode 分类代码
* @return 高等学校固定资产分类与代码
*/
AssetClassification queryByClassificationCode(@Param("classificationCode") String classificationCode);
}

View File

@@ -0,0 +1,17 @@
package org.ruoyi.asset.mapper;
import org.apache.ibatis.annotations.Mapper;
import org.ruoyi.core.mapper.BaseMapperPlus;
import org.ruoyi.asset.domain.MinUsagePeriod;
import org.ruoyi.asset.domain.vo.MinUsagePeriodVo;
/**
* 最低使用年限表 数据层
*
* @author cass
* @date 2025-09-24
*/
@Mapper
public interface MinUsagePeriodMapper extends BaseMapperPlus<MinUsagePeriod, MinUsagePeriodVo> {
}

View File

@@ -0,0 +1,69 @@
package org.ruoyi.asset.service;
import org.ruoyi.core.page.TableDataInfo;
import org.ruoyi.core.page.PageQuery;
import org.ruoyi.asset.domain.AssetClassification;
import org.ruoyi.asset.domain.bo.AssetClassificationBo;
import org.ruoyi.asset.domain.vo.AssetClassificationVo;
import java.util.Collection;
import java.util.List;
/**
* 高等学校固定资产分类与代码Service接口
*
* @author cass
* @date 2025-09-24
*/
public interface IAssetClassificationService {
/**
* 查询高等学校固定资产分类与代码
*/
AssetClassificationVo queryById(Long id);
/**
* 根据分类代码查询
*/
AssetClassification queryByClassificationCode(String classificationCode);
/**
* 根据分类名称查询
*/
AssetClassification queryByClassificationName(String classificationName);
/**
* 查询高等学校固定资产分类与代码列表
*/
TableDataInfo<AssetClassificationVo> queryPageList(AssetClassificationBo bo, PageQuery pageQuery);
/**
* 查询高等学校固定资产分类与代码列表
*/
List<AssetClassificationVo> queryList(AssetClassificationBo bo);
/**
* 新增高等学校固定资产分类与代码
*/
Boolean insertByBo(AssetClassificationBo bo);
/**
* 修改高等学校固定资产分类与代码
*/
Boolean updateByBo(AssetClassificationBo bo);
/**
* 校验并批量删除高等学校固定资产分类与代码信息
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
/**
* 导入数据
*
* @param dataList 数据列表
* @param isUpdateSupport 是否更新支持
* @param operName 操作用户
* @return 结果
*/
String importData(List<AssetClassificationVo> dataList, Boolean isUpdateSupport, String operName);
}

View File

@@ -0,0 +1,65 @@
package org.ruoyi.asset.service;
import org.ruoyi.core.page.TableDataInfo;
import org.ruoyi.asset.domain.MinUsagePeriod;
import org.ruoyi.asset.domain.bo.MinUsagePeriodBo;
import org.ruoyi.asset.domain.vo.MinUsagePeriodVo;
import org.ruoyi.core.page.PageQuery;
import java.util.Collection;
import java.util.List;
/**
* 最低使用年限表Service接口
*
* @author cass
* @date 2025-09-24
*/
public interface IMinUsagePeriodService {
/**
* 查询最低使用年限表
*/
MinUsagePeriodVo queryById(Long id);
/**
* 根据国标代码查询最低使用年限表
*/
MinUsagePeriod queryByGbCode(String gbCode);
/**
* 根据国标代码前缀查询最低使用年限表
*/
MinUsagePeriod queryByGbCodePrefix(String gbCodePrefix);
/**
* 查询最低使用年限表列表
*/
TableDataInfo<MinUsagePeriodVo> queryPageList(MinUsagePeriodBo bo, PageQuery pageQuery);
/**
* 查询最低使用年限表列表
*/
List<MinUsagePeriodVo> queryList(MinUsagePeriodBo bo);
/**
* 新增最低使用年限表
*/
Boolean insertByBo(MinUsagePeriodBo bo);
/**
* 修改最低使用年限表
*/
Boolean updateByBo(MinUsagePeriodBo bo);
/**
* 校验并批量删除最低使用年限表信息
*/
Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
/**
* 批量导入最低使用年限表数据
*/
String importData(List<MinUsagePeriodVo> dataList, Boolean isUpdateSupport, String operName);
}