129 lines
4.1 KiB
Java
129 lines
4.1 KiB
Java
package com.baiyue.firstleg.dto;
|
|
|
|
import io.swagger.v3.oas.annotations.media.Schema;
|
|
|
|
import java.math.BigDecimal;
|
|
import java.time.LocalDateTime;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* 入库测量详情响应,覆盖原单、实测明细、审核快照和 OCR 重量维护字段。
|
|
*/
|
|
public final class InboundMeasurementResponses {
|
|
private InboundMeasurementResponses() {
|
|
}
|
|
|
|
public record Detail(
|
|
Long inboundId,
|
|
String inboundCode,
|
|
String companyName,
|
|
String channelCode,
|
|
String channelName,
|
|
String processStatus,
|
|
String measureReviewStatus,
|
|
@Schema(description = "测量完成后的推荐托盘类型,仅为建议,不代表已分配托盘",
|
|
allowableValues = "STANDARD", example = "STANDARD")
|
|
String recommendedPalletType,
|
|
String reviewReason,
|
|
Long reviewerId,
|
|
String reviewerName,
|
|
Long measurementId,
|
|
String sourceType,
|
|
String measurementStatus,
|
|
@Schema(description = "入库主单乐观锁版本,用于测量审核、驳回和异常放行", example = "3")
|
|
Integer inboundVersion,
|
|
@Schema(description = "测量批次乐观锁版本,用于测量草稿和明细维护", example = "4")
|
|
Integer version,
|
|
String originalDocumentNo,
|
|
BigDecimal originalGrossWeightKg,
|
|
BigDecimal originalVolumeCbm,
|
|
Integer originalPackageCount,
|
|
Integer actualPackageCount,
|
|
BigDecimal actualGrossWeightKg,
|
|
BigDecimal actualNetWeightKg,
|
|
BigDecimal actualVolumeCbm,
|
|
BigDecimal volumeWeightKg,
|
|
String actualGoodsName,
|
|
List<Item> items,
|
|
List<WeightResult> weightResults
|
|
) {
|
|
}
|
|
|
|
public record Item(
|
|
Long id,
|
|
Long inboundDetailId,
|
|
String itemNo,
|
|
String boxSpecification,
|
|
Integer packageCount,
|
|
BigDecimal lengthCm,
|
|
BigDecimal widthCm,
|
|
BigDecimal heightCm,
|
|
BigDecimal girthCm,
|
|
BigDecimal unitWeightKg,
|
|
BigDecimal unitVolumeCbm,
|
|
BigDecimal totalWeightKg,
|
|
BigDecimal totalVolumeCbm,
|
|
BigDecimal volumeWeightKg,
|
|
Long intelligentImageFileId,
|
|
String overLimitWarning,
|
|
BigDecimal outerLengthCm,
|
|
BigDecimal outerWidthCm,
|
|
BigDecimal outerHeightCm,
|
|
String remark,
|
|
String boxCode,
|
|
String scannedShipmentId,
|
|
Integer confirmedPackageCount,
|
|
String machineNo,
|
|
LocalDateTime deviceMeasuredAt,
|
|
LocalDateTime updatedAt
|
|
) {
|
|
}
|
|
|
|
public record WeightResult(
|
|
Long id,
|
|
Long fileId,
|
|
Long palletId,
|
|
String palletCode,
|
|
String palletType,
|
|
BigDecimal palletCapacityCbm,
|
|
BigDecimal palletTareWeightKg,
|
|
String ocrProvider,
|
|
String ocrRawText,
|
|
BigDecimal ocrWeightValue,
|
|
String ocrWeightUnit,
|
|
BigDecimal confidence,
|
|
BigDecimal grossWeightKg,
|
|
BigDecimal adjustedWeightValue,
|
|
String adjustedWeightUnit,
|
|
BigDecimal netWeightKg,
|
|
String recognitionStatus,
|
|
String adjustmentReason,
|
|
Long adjustedBy,
|
|
LocalDateTime adjustedAt,
|
|
Long confirmedBy,
|
|
LocalDateTime confirmedAt,
|
|
Integer version
|
|
) {
|
|
}
|
|
|
|
public record PalletSnapshot(
|
|
Long palletId,
|
|
String palletCode,
|
|
String palletType,
|
|
BigDecimal capacityCbm,
|
|
BigDecimal tareWeightKg
|
|
) {
|
|
}
|
|
|
|
public record DraftSaved(Long measurementId, Integer version, String status) {
|
|
}
|
|
|
|
public record MeasurementSubmitted(Long measurementId, Integer version, String processStatus,
|
|
String measureReviewStatus,
|
|
@Schema(description = "测量完成后的推荐托盘类型,仅为建议,不代表已分配托盘",
|
|
allowableValues = "STANDARD", example = "STANDARD")
|
|
String recommendedPalletType,
|
|
Long feeId, String feeNo, String feeStatus) {
|
|
}
|
|
}
|