package com.sxyz.rfid.presenter.model;

import java.io.Serializable;
import java.util.List;

/**
 * 主要功能: 出库明细模型
 *
 * @Description:
 * @Project: rfid-app
 * @Package: com.sxyz.rfid.presenter.model
 * @author: chunyuanwu
 * @date: 2025年12月30日 13:45
 * @version: 1.0.0
 */
public class OutBoundDetailModel implements Serializable {

    /**
     * total : 1
     * rows : [{"createBy":null,"createTime":null,"updateBy":null,"updateTime":null,"remark":null,"itemId":1,"orderId":1,"materialId":1,"planQuantity":100,"actualQuantity":11,"unit":"吨","unitPrice":2000,"amount":200000,"batchNo":null,"pickingLocation":null,"pickingQuantity":null,"pickingStatus":"1","checkQuantity":null,"checkStatus":"0","deliveryQuantity":null,"deliveryStatus":"0","delFlag":null,"material":{"createBy":null,"createTime":null,"updateBy":null,"updateTime":null,"remark":null,"materialId":null,"materialCode":"010-2025-12-16","materialName":"战略物资","categoryId":null,"specification":"规格型号111","unit":null,"materialType":null,"manufacturer":null,"supplierId":null,"safetyStock":null,"maxStock":null,"minStock":null,"shelfLifeDays":null,"storageCondition":null,"weight":null,"volume":null,"imageUrl":null,"documentUrl":null,"status":null,"isRfidManaged":null,"rfidStandard":null,"rfidPosition":null,"category":null,"supplier":null}}]
     * code : 200
     * msg : 查询成功
     */

    private int total;
    private int code;
    private String msg;
    private List<RowsBean> rows;

    public int getTotal() {
        return total;
    }

    public void setTotal(int total) {
        this.total = total;
    }

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public List<RowsBean> getRows() {
        return rows;
    }

    public void setRows(List<RowsBean> rows) {
        this.rows = rows;
    }

    public static class RowsBean implements Serializable {
        /**
         * createBy : null
         * createTime : null
         * updateBy : null
         * updateTime : null
         * remark : null
         * itemId : 1
         * orderId : 1
         * materialId : 1
         * planQuantity : 100
         * actualQuantity : 11
         * unit : 吨
         * unitPrice : 2000
         * amount : 200000
         * batchNo : null
         * pickingLocation : null
         * pickingQuantity : null
         * pickingStatus : 1
         * checkQuantity : null
         * checkStatus : 0
         * deliveryQuantity : null
         * deliveryStatus : 0
         * delFlag : null
         * material : {"createBy":null,"createTime":null,"updateBy":null,"updateTime":null,"remark":null,"materialId":null,"materialCode":"010-2025-12-16","materialName":"战略物资","categoryId":null,"specification":"规格型号111","unit":null,"materialType":null,"manufacturer":null,"supplierId":null,"safetyStock":null,"maxStock":null,"minStock":null,"shelfLifeDays":null,"storageCondition":null,"weight":null,"volume":null,"imageUrl":null,"documentUrl":null,"status":null,"isRfidManaged":null,"rfidStandard":null,"rfidPosition":null,"category":null,"supplier":null}
         */

        private Object createBy;
        private Object createTime;
        private Object updateBy;
        private Object updateTime;
        private String remark;
        private int itemId;
        private int orderId;
        private int materialId;
        private int planQuantity;
        private int actualQuantity;
        private String unit;
        private int unitPrice;
        private int amount;
        private Object batchNo;
        private Object pickingLocation;
        private Object pickingQuantity;
        private String pickingStatus;
        private Object checkQuantity;
        private String checkStatus;
        private Object deliveryQuantity;
        private String deliveryStatus;
        private Object delFlag;
        private MaterialBean material;
        // 展开收起状态
        private boolean expanded = false;

        // 子项数据
        private List<OutboundFlowingWaterModel.RowsBean> detailList;

        public List<OutboundFlowingWaterModel.RowsBean> getDetailList() {
            return detailList;
        }

        public void setDetailList(List<OutboundFlowingWaterModel.RowsBean> detailList) {
            this.detailList = detailList;
        }

        public boolean isExpanded() {
            return expanded;
        }

        public void setExpanded(boolean expanded) {
            this.expanded = expanded;
        }


        public Object getCreateBy() {
            return createBy;
        }

        public void setCreateBy(Object createBy) {
            this.createBy = createBy;
        }

        public Object getCreateTime() {
            return createTime;
        }

        public void setCreateTime(Object createTime) {
            this.createTime = createTime;
        }

        public Object getUpdateBy() {
            return updateBy;
        }

        public void setUpdateBy(Object updateBy) {
            this.updateBy = updateBy;
        }

        public Object getUpdateTime() {
            return updateTime;
        }

        public void setUpdateTime(Object updateTime) {
            this.updateTime = updateTime;
        }

        public String getRemark() {
            return remark;
        }

        public void setRemark(String remark) {
            this.remark = remark;
        }

        public int getItemId() {
            return itemId;
        }

        public void setItemId(int itemId) {
            this.itemId = itemId;
        }

        public int getOrderId() {
            return orderId;
        }

        public void setOrderId(int orderId) {
            this.orderId = orderId;
        }

        public int getMaterialId() {
            return materialId;
        }

        public void setMaterialId(int materialId) {
            this.materialId = materialId;
        }

        public int getPlanQuantity() {
            return planQuantity;
        }

        public void setPlanQuantity(int planQuantity) {
            this.planQuantity = planQuantity;
        }

        public int getActualQuantity() {
            return actualQuantity;
        }

        public void setActualQuantity(int actualQuantity) {
            this.actualQuantity = actualQuantity;
        }

        public String getUnit() {
            return unit;
        }

        public void setUnit(String unit) {
            this.unit = unit;
        }

        public int getUnitPrice() {
            return unitPrice;
        }

        public void setUnitPrice(int unitPrice) {
            this.unitPrice = unitPrice;
        }

        public int getAmount() {
            return amount;
        }

        public void setAmount(int amount) {
            this.amount = amount;
        }

        public Object getBatchNo() {
            return batchNo;
        }

        public void setBatchNo(Object batchNo) {
            this.batchNo = batchNo;
        }

        public Object getPickingLocation() {
            return pickingLocation;
        }

        public void setPickingLocation(Object pickingLocation) {
            this.pickingLocation = pickingLocation;
        }

        public Object getPickingQuantity() {
            return pickingQuantity;
        }

        public void setPickingQuantity(Object pickingQuantity) {
            this.pickingQuantity = pickingQuantity;
        }

        public String getPickingStatus() {
            return pickingStatus;
        }

        public void setPickingStatus(String pickingStatus) {
            this.pickingStatus = pickingStatus;
        }

        public Object getCheckQuantity() {
            return checkQuantity;
        }

        public void setCheckQuantity(Object checkQuantity) {
            this.checkQuantity = checkQuantity;
        }

        public String getCheckStatus() {
            return checkStatus;
        }

        public void setCheckStatus(String checkStatus) {
            this.checkStatus = checkStatus;
        }

        public Object getDeliveryQuantity() {
            return deliveryQuantity;
        }

        public void setDeliveryQuantity(Object deliveryQuantity) {
            this.deliveryQuantity = deliveryQuantity;
        }

        public String getDeliveryStatus() {
            return deliveryStatus;
        }

        public void setDeliveryStatus(String deliveryStatus) {
            this.deliveryStatus = deliveryStatus;
        }

        public Object getDelFlag() {
            return delFlag;
        }

        public void setDelFlag(Object delFlag) {
            this.delFlag = delFlag;
        }

        public MaterialBean getMaterial() {
            return material;
        }

        public void setMaterial(MaterialBean material) {
            this.material = material;
        }

        public static class MaterialBean implements Serializable {
            /**
             * createBy : null
             * createTime : null
             * updateBy : null
             * updateTime : null
             * remark : null
             * materialId : null
             * materialCode : 010-2025-12-16
             * materialName : 战略物资
             * categoryId : null
             * specification : 规格型号111
             * unit : null
             * materialType : null
             * manufacturer : null
             * supplierId : null
             * safetyStock : null
             * maxStock : null
             * minStock : null
             * shelfLifeDays : null
             * storageCondition : null
             * weight : null
             * volume : null
             * imageUrl : null
             * documentUrl : null
             * status : null
             * isRfidManaged : null
             * rfidStandard : null
             * rfidPosition : null
             * category : null
             * supplier : null
             */

            private Object createBy;
            private Object createTime;
            private Object updateBy;
            private Object updateTime;
            private Object remark;
            private Object materialId;
            private String materialCode;
            private String materialName;
            private Object categoryId;
            private String specification;
            private Object unit;
            private Object materialType;
            private Object manufacturer;
            private Object supplierId;
            private Object safetyStock;
            private Object maxStock;
            private Object minStock;
            private Object shelfLifeDays;
            private Object storageCondition;
            private Object weight;
            private Object volume;
            private Object imageUrl;
            private Object documentUrl;
            private Object status;
            private Object isRfidManaged;
            private Object rfidStandard;
            private Object rfidPosition;
            private Object category;
            private Object supplier;

            public Object getCreateBy() {
                return createBy;
            }

            public void setCreateBy(Object createBy) {
                this.createBy = createBy;
            }

            public Object getCreateTime() {
                return createTime;
            }

            public void setCreateTime(Object createTime) {
                this.createTime = createTime;
            }

            public Object getUpdateBy() {
                return updateBy;
            }

            public void setUpdateBy(Object updateBy) {
                this.updateBy = updateBy;
            }

            public Object getUpdateTime() {
                return updateTime;
            }

            public void setUpdateTime(Object updateTime) {
                this.updateTime = updateTime;
            }

            public Object getRemark() {
                return remark;
            }

            public void setRemark(Object remark) {
                this.remark = remark;
            }

            public Object getMaterialId() {
                return materialId;
            }

            public void setMaterialId(Object materialId) {
                this.materialId = materialId;
            }

            public String getMaterialCode() {
                return materialCode;
            }

            public void setMaterialCode(String materialCode) {
                this.materialCode = materialCode;
            }

            public String getMaterialName() {
                return materialName;
            }

            public void setMaterialName(String materialName) {
                this.materialName = materialName;
            }

            public Object getCategoryId() {
                return categoryId;
            }

            public void setCategoryId(Object categoryId) {
                this.categoryId = categoryId;
            }

            public String getSpecification() {
                return specification;
            }

            public void setSpecification(String specification) {
                this.specification = specification;
            }

            public Object getUnit() {
                return unit;
            }

            public void setUnit(Object unit) {
                this.unit = unit;
            }

            public Object getMaterialType() {
                return materialType;
            }

            public void setMaterialType(Object materialType) {
                this.materialType = materialType;
            }

            public Object getManufacturer() {
                return manufacturer;
            }

            public void setManufacturer(Object manufacturer) {
                this.manufacturer = manufacturer;
            }

            public Object getSupplierId() {
                return supplierId;
            }

            public void setSupplierId(Object supplierId) {
                this.supplierId = supplierId;
            }

            public Object getSafetyStock() {
                return safetyStock;
            }

            public void setSafetyStock(Object safetyStock) {
                this.safetyStock = safetyStock;
            }

            public Object getMaxStock() {
                return maxStock;
            }

            public void setMaxStock(Object maxStock) {
                this.maxStock = maxStock;
            }

            public Object getMinStock() {
                return minStock;
            }

            public void setMinStock(Object minStock) {
                this.minStock = minStock;
            }

            public Object getShelfLifeDays() {
                return shelfLifeDays;
            }

            public void setShelfLifeDays(Object shelfLifeDays) {
                this.shelfLifeDays = shelfLifeDays;
            }

            public Object getStorageCondition() {
                return storageCondition;
            }

            public void setStorageCondition(Object storageCondition) {
                this.storageCondition = storageCondition;
            }

            public Object getWeight() {
                return weight;
            }

            public void setWeight(Object weight) {
                this.weight = weight;
            }

            public Object getVolume() {
                return volume;
            }

            public void setVolume(Object volume) {
                this.volume = volume;
            }

            public Object getImageUrl() {
                return imageUrl;
            }

            public void setImageUrl(Object imageUrl) {
                this.imageUrl = imageUrl;
            }

            public Object getDocumentUrl() {
                return documentUrl;
            }

            public void setDocumentUrl(Object documentUrl) {
                this.documentUrl = documentUrl;
            }

            public Object getStatus() {
                return status;
            }

            public void setStatus(Object status) {
                this.status = status;
            }

            public Object getIsRfidManaged() {
                return isRfidManaged;
            }

            public void setIsRfidManaged(Object isRfidManaged) {
                this.isRfidManaged = isRfidManaged;
            }

            public Object getRfidStandard() {
                return rfidStandard;
            }

            public void setRfidStandard(Object rfidStandard) {
                this.rfidStandard = rfidStandard;
            }

            public Object getRfidPosition() {
                return rfidPosition;
            }

            public void setRfidPosition(Object rfidPosition) {
                this.rfidPosition = rfidPosition;
            }

            public Object getCategory() {
                return category;
            }

            public void setCategory(Object category) {
                this.category = category;
            }

            public Object getSupplier() {
                return supplier;
            }

            public void setSupplier(Object supplier) {
                this.supplier = supplier;
            }
        }
    }
}
