package com.zioinfo.kintex.module.m4.dto;

import jakarta.validation.constraints.Min;

import java.util.List;

/**
 * 유틸리티 견적 요청(SCR-07 좌측 기기 목록 빌더 + 네트워크/급배수 수량).
 *
 * @param devices               사용 기기 목록(전기 용량 합산 대상)
 * @param networkWiredLines     인터넷 유선 회선 수
 * @param plumbingOutlets       급배수 구 수
 * @param compressedAirOutlets  압축공기 구 수
 */
public record UtilityQuoteRequest(
        List<Device> devices,
        @Min(0) int networkWiredLines,
        @Min(0) int plumbingOutlets,
        @Min(0) int compressedAirOutlets
) {

    /** 사용 기기 — 소비전력 합산 단위. */
    public record Device(String name, @Min(0) int count, double powerKw) {
    }
}
