项目成本分析模块后端代码完成
This commit is contained in:
68
ruoyi-oa/src/main/java/com/ruoyi/oa/domain/SysOaCost.java
Normal file
68
ruoyi-oa/src/main/java/com/ruoyi/oa/domain/SysOaCost.java
Normal file
@@ -0,0 +1,68 @@
|
||||
package com.ruoyi.oa.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
|
||||
/**
|
||||
* 项目成本分析对象 sys_oa_cost
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2025-03-04
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("sys_oa_cost")
|
||||
public class SysOaCost extends BaseEntity {
|
||||
|
||||
private static final long serialVersionUID=1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@TableId(value = "cost_id")
|
||||
private Long costId;
|
||||
/**
|
||||
* 绑定项目id
|
||||
*/
|
||||
private Long projectId;
|
||||
/**
|
||||
* 花费
|
||||
*/
|
||||
private Double cost;
|
||||
/**
|
||||
* 花费类型,字典查询
|
||||
*/
|
||||
private Integer costType;
|
||||
/**
|
||||
* 花费备注
|
||||
*/
|
||||
private String remark;
|
||||
/**
|
||||
* 删除标志
|
||||
*/
|
||||
@TableLogic
|
||||
private Long delFlag;
|
||||
/**
|
||||
* 若为物料花费需要绑定物料id
|
||||
*/
|
||||
private Long materialId;
|
||||
/**
|
||||
* 若为人工花费则绑定用户id
|
||||
*/
|
||||
private Long userId;
|
||||
/**
|
||||
* 绑定财政收支id
|
||||
*/
|
||||
private Long financeId;
|
||||
/**
|
||||
* 若为差旅报销绑定差旅id
|
||||
*/
|
||||
private Long claimId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.ruoyi.oa.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.validate.AddGroup;
|
||||
import com.ruoyi.common.core.validate.EditGroup;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import javax.validation.constraints.*;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
|
||||
/**
|
||||
* 项目成本分析业务对象 sys_oa_cost
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2025-03-04
|
||||
*/
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class SysOaCostBo extends BaseEntity {
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
private Long costId;
|
||||
|
||||
/**
|
||||
* 绑定项目id
|
||||
*/
|
||||
@NotNull(message = "绑定项目id不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Long projectId;
|
||||
|
||||
/**
|
||||
* 花费
|
||||
*/
|
||||
@NotNull(message = "花费不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Double cost;
|
||||
|
||||
/**
|
||||
* 花费类型,字典查询
|
||||
*/
|
||||
@NotNull(message = "花费类型,字典查询不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private Integer costType;
|
||||
|
||||
/**
|
||||
* 花费备注
|
||||
*/
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 若为物料花费需要绑定物料id
|
||||
*/
|
||||
private Long materialId;
|
||||
|
||||
/**
|
||||
* 若为人工花费则绑定用户id
|
||||
*/
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 绑定财政收支id
|
||||
*/
|
||||
private Long financeId;
|
||||
|
||||
/**
|
||||
* 若为差旅报销绑定差旅id
|
||||
*/
|
||||
private Long claimId;
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.ruoyi.oa.domain.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 查询所有项目成本 返回对象
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public class SysOaCostAll {
|
||||
|
||||
private Long projectId;
|
||||
|
||||
private String projectName;
|
||||
|
||||
private Double cost;
|
||||
|
||||
private Integer costType;
|
||||
|
||||
private String remark;
|
||||
|
||||
@JsonFormat(pattern = "yyyy-MM", timezone = "GMT+8")
|
||||
private Date createTime;
|
||||
|
||||
private Long materialId;
|
||||
|
||||
private Long userId;
|
||||
|
||||
private Long financeId;
|
||||
|
||||
private Long claimId;
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package com.ruoyi.oa.domain.vo;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 查询所有项目成本 返回对象
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public class SysOaCostAllVo {
|
||||
|
||||
private Long projectId;
|
||||
|
||||
private String projectName;
|
||||
|
||||
private Double cost;
|
||||
|
||||
private Integer costType;
|
||||
|
||||
private String remark;
|
||||
|
||||
@JsonFormat(pattern = "yyyy-MM", timezone = "GMT+8")
|
||||
private Date createTime;
|
||||
|
||||
private Long materialId;
|
||||
|
||||
private Object materialVo;
|
||||
|
||||
private Long userId;
|
||||
|
||||
private Object userVo;
|
||||
|
||||
private Long claimId;
|
||||
|
||||
private Object claimVo;
|
||||
|
||||
private Long financeId;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.ruoyi.oa.domain.vo;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class SysOaCostList {
|
||||
private Long costId;
|
||||
private Double cost;
|
||||
private Long userId;
|
||||
private Object userVo;
|
||||
private Long materialId;
|
||||
private Object materialVo;
|
||||
private Long claimId;
|
||||
private Object claimVo;
|
||||
private Integer costType;
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.ruoyi.oa.domain.vo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
public class SysOaCostRow {
|
||||
List<SysOaCostList> userCostList;
|
||||
List<SysOaCostList> materialList;
|
||||
List<SysOaCostList> claimList;
|
||||
List<SysOaCostList> otherList;
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
package com.ruoyi.oa.domain.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import com.ruoyi.common.annotation.ExcelDictFormat;
|
||||
import com.ruoyi.common.convert.ExcelDictConvert;
|
||||
import lombok.Data;
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 项目成本分析视图对象 sys_oa_cost
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2025-03-04
|
||||
*/
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class SysOaCostVo {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 主键id
|
||||
*/
|
||||
@ExcelProperty(value = "主键id")
|
||||
private Long costId;
|
||||
|
||||
/**
|
||||
* 绑定项目id
|
||||
*/
|
||||
@ExcelProperty(value = "绑定项目id")
|
||||
private Long projectId;
|
||||
|
||||
/**
|
||||
* 花费
|
||||
*/
|
||||
@ExcelProperty(value = "花费")
|
||||
private Double cost;
|
||||
|
||||
/**
|
||||
* 花费类型,字典查询
|
||||
*/
|
||||
@ExcelProperty(value = "花费类型,字典查询", converter = ExcelDictConvert.class)
|
||||
@ExcelDictFormat(dictType = "project_cost_type")
|
||||
private Integer costType;
|
||||
|
||||
/**
|
||||
* 花费备注
|
||||
*/
|
||||
@ExcelProperty(value = "花费备注")
|
||||
private String remark;
|
||||
|
||||
/**
|
||||
* 若为物料花费需要绑定物料id
|
||||
*/
|
||||
@ExcelProperty(value = "若为物料花费需要绑定物料id")
|
||||
private Long materialId;
|
||||
|
||||
/**
|
||||
* 若为人工花费则绑定用户id
|
||||
*/
|
||||
@ExcelProperty(value = "若为人工花费则绑定用户id")
|
||||
private Long userId;
|
||||
|
||||
/**
|
||||
* 绑定财政收支id
|
||||
*/
|
||||
@ExcelProperty(value = "绑定财政收支id")
|
||||
private Long financeId;
|
||||
|
||||
/**
|
||||
* 若为差旅报销绑定差旅id
|
||||
*/
|
||||
@ExcelProperty(value = "若为差旅报销绑定差旅id")
|
||||
private Long claimId;
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user