package cn.iocoder.yudao.module.system.controller.admin.biz.vo.materialio.inventory;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

@Schema(description = "管理后台 - 库存流水查询 Response VO")
@Data
public class MaterialInventoryFlowRespVO {

    @Schema(description = "库存信息")
    private InventoryInfo inventoryInfo;

    @Schema(description = "库存流水列表")
    private List<FlowItem> flowList;

    @Schema(description = "库存信息")
    @Data
    public static class InventoryInfo {
        @Schema(description = "仓库名称", example = "中心仓库2")
        private String storeName;

        @Schema(description = "物资名称", example = "JD OPPO 手机")
        private String materialName;

        @Schema(description = "库存数", example = "0")
        private BigDecimal inventoryQty;

        @Schema(description = "物资类别", example = "办公设备")
        private String categoryName;

        @Schema(description = "型号", example = "")
        private String specification;

        @Schema(description = "计量单位", example = "台")
        private String materialUnit;
    }

    @Schema(description = "库存流水项")
    @Data
    public static class FlowItem {

        @Schema(description = "单据id", example = "1")
        private Long orderId;

        @Schema(description = "时间", example = "2024-06-21")
        private String time;

        @Schema(description = "编号", example = "RKDH202406210001")
        private String orderNo;

        @Schema(description = "操作类型", example = "入库")
        private String operationType;

        @Schema(description = "数量", example = "1")
        private BigDecimal quantity;

        @Schema(description = "部门", example = "京东自营")
        private String deptName;
    }

}

