package com.hxzk.gps.controller.Company.Results; import lombok.Data; import java.util.List; /** * 公司删除检查结果 * @author YuZhiTong * @since 2025-01-XX */ @Data public class CompanyDeleteCheckResult { /** * 是否可以删除 */ private Boolean canDelete; /** * 检查结果消息 */ private String message; /** * 绑定数据统计 */ private BindingDataSummary bindingData; /** * 构造函数 */ public CompanyDeleteCheckResult() {} public CompanyDeleteCheckResult(Boolean canDelete, String message, BindingDataSummary bindingData) { this.canDelete = canDelete; this.message = message; this.bindingData = bindingData; } /** * 绑定数据汇总 */ @Data public static class BindingDataSummary { /** * 部门数量 */ private Long departmentCount; /** * 人员数量 */ private Long personCount; /** * 用户数量 */ private Long userCount; /** * 角色数量 */ private Long roleCount; /** * 部门图标数量 */ private Long iconCount; /** * 车辆数量 */ private Long carCount; /** * 物资数量 */ private Long materialCount; /** * 地图数量 */ private Long mapCount; /** * 警告统计数量 */ private Long warningCount; /** * 是否有任何绑定数据 */ public Boolean hasAnyBindingData() { return (departmentCount != null && departmentCount > 0) || (personCount != null && personCount > 0) || (userCount != null && userCount > 0) || (roleCount != null && roleCount > 0) || (iconCount != null && iconCount > 0) || (carCount != null && carCount > 0) || (materialCount != null && materialCount > 0) || (mapCount != null && mapCount > 0) || (warningCount != null && warningCount > 0); } /** * 获取绑定数据总数 */ public Long getTotalCount() { long total = 0; if (departmentCount != null) total += departmentCount; if (personCount != null) total += personCount; if (userCount != null) total += userCount; if (roleCount != null) total += roleCount; if (iconCount != null) total += iconCount; if (carCount != null) total += carCount; if (materialCount != null) total += materialCount; if (mapCount != null) total += mapCount; if (warningCount != null) total += warningCount; return total; } } }