qiangdanxitong/backend/src/main/java/com/designhub/vo/DimensionAnalysisVO.java

216 lines
8.3 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.designhub.vo;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
import java.util.List;
/**
* 多维分析数据VO
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DimensionAnalysisVO {
/**
* 类目维度分析
*/
private List<CategoryAnalysis> categoryAnalysis;
/**
* 品牌维度分析
*/
private List<BrandAnalysis> brandAnalysis;
/**
* 接单部门维度分析
*/
private List<ReceivingDeptAnalysis> receivingDeptAnalysis;
/**
* 需求部门维度分析
*/
private List<DemandDeptAnalysis> demandDeptAnalysis;
/**
* 平台维度分析
*/
private List<PlatformAnalysis> platformAnalysis;
/**
* 任务类型维度分析(一级分类)
*/
private List<TaskTypeAnalysis> taskTypeAnalysis;
/**
* 任务类型维度分析(二级分类)
*/
private List<TaskTypeAnalysis> taskTypeLevel2Analysis;
/**
* 任务类型维度分析(三级分类)
*/
private List<TaskTypeAnalysis> taskTypeLevel3Analysis;
/**
* 类目分析数据
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public static class CategoryAnalysis {
private Long categoryId;
private String categoryName;
private Integer totalTasks; // 总任务数
private Integer completedTasks; // 已完成任务数
private Integer inProgressTasks; // 进行中任务数
private Integer pendingTasks; // 待接单任务数
private Integer totalQuantity; // 总数量
private BigDecimal totalScore; // 总积分
private BigDecimal avgScore; // 平均积分
private BigDecimal completionRate; // 完成率
private Double onTimeRate; // 准时率
private Double avgCompletionHours; // 平均完成时长(小时)
private Integer designerCount; // 参与设计师数量
}
/**
* 品牌分析数据
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public static class BrandAnalysis {
private Long brandId;
private String brandName;
private Integer totalTasks; // 总任务数
private Integer completedTasks; // 已完成任务数
private Integer inProgressTasks; // 进行中任务数
private Integer pendingTasks; // 待接单任务数
private Integer totalQuantity; // 总数量
private BigDecimal totalScore; // 总积分
private BigDecimal avgScore; // 平均积分
private BigDecimal completionRate; // 完成率
private Double onTimeRate; // 准时率
private Double avgCompletionHours; // 平均完成时长(小时)
private Integer categoryCount; // 涉及类目数量
}
/**
* 接单部门维度分析
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public static class ReceivingDeptAnalysis {
private Long deptId;
private String deptName;
private Integer memberCount; // 部门总人数
private Integer totalTasks; // 总接单数(主任务+子任务)
private BigDecimal avgTasksPerMember; // 人均任务数
private Integer completedTasks; // 已完成任务数
private Integer inProgressTasks; // 进行中任务数
private Integer pendingTasks; // 待接单任务数
private Integer totalQuantity; // 总数量
private Integer designerCount; // 设计师数量
private Integer activeDesignerCount; // 活跃设计师数量(有接单的设计师)
private BigDecimal totalScore; // 获得总积分
private BigDecimal avgScore; // 平均积分
private BigDecimal completionRate; // 完成率
private Double onTimeRate; // 准时率
private BigDecimal avgCompletionHours; // 平均完成时长(小时)
private BigDecimal totalDeductionScore; // 总扣分
private BigDecimal netScore; // 净积分
private Double workloadRate; // 工作量占比
}
/**
* 需求部门维度分析
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public static class DemandDeptAnalysis {
private Long deptId;
private String deptName;
private Integer totalTasks; // 总发布任务数
private Integer completedTasks; // 已完成任务数
private Integer inProgressTasks; // 进行中任务数
private Integer pendingTasks; // 待接单任务数
private Integer totalQuantity; // 总数量
private Integer memberCount; // 部门总人数
private Integer publisherCount; // 发布人数量(有发布任务的人)
private Integer activePublisherCount; // 活跃发布人数量
private BigDecimal avgTasksPerMember; // 人均任务数
private BigDecimal totalScore; // 消耗总积分
private BigDecimal avgScore; // 平均积分
private BigDecimal completionRate; // 完成率
private Double onTimeRate; // 准时率
private BigDecimal avgCompletionHours; // 平均完成时长(小时)
private Integer brandCount; // 涉及品牌数量
private Integer categoryCount; // 涉及类目数量
}
/**
* 平台维度分析
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public static class PlatformAnalysis {
private Long platformId;
private String platformName;
private Integer totalTasks; // 总任务数
private Integer completedTasks; // 已完成任务数
private Integer inProgressTasks; // 进行中任务数
private Integer pendingTasks; // 待接单任务数
private Integer totalQuantity; // 总数量
private BigDecimal totalScore; // 总积分
private BigDecimal avgScore; // 平均积分
private BigDecimal completionRate; // 完成率
private Double onTimeRate; // 准时率
private Double avgCompletionHours; // 平均完成时长(小时)
private Integer brandCount; // 涉及品牌数量
private Integer categoryCount; // 涉及类目数量
private Integer demandDeptCount; // 需求部门数量
private Integer receivingDeptCount; // 接单部门数量
}
/**
* 任务类型分析数据
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public static class TaskTypeAnalysis {
private Long typeId; // 类型ID
private String typeName; // 类型名称
private Long parentId; // 父级ID
private String parentName; // 父级名称
private Integer level; // 层级(1=一级,2=二级,3=三级)
private Integer totalTasks; // 总任务数
private Integer completedTasks; // 已完成任务数
private Integer inProgressTasks; // 进行中任务数
private Integer pendingTasks; // 待接单任务数
private Integer totalQuantity; // 总数量
private BigDecimal totalScore; // 总积分
private BigDecimal avgScore; // 平均积分
private BigDecimal completionRate; // 完成率
private Double onTimeRate; // 准时率
private Double avgCompletionHours; // 平均完成时长(小时)
private BigDecimal unitScore; // 单价分值
private BigDecimal estimatedHours; // 预估工时
}
}