/**
 * 入库信息类
 */
export interface FreshGoodsInstoreEnum {
    /** 鲜货信息 uid 数组（外层只保存 uid，明细由页面自行维护映射） */
    goodsInfoList: string[];
    /** 入库类型 */
    instoreType: string;
    /** 入库批号 */
    batchCode?: string;
    /** 库房类型 */
    storageType?: string;
    /** 库房编码 */
    storeCode?: string;
    /** 存放库房 */
    warehouses?: warehousesType[];
    /** 入库业务信息 */
    instoreBizInfo: instoreBizInfoType1;
    [property: string]: any;
}

/** 动植物（物种/基原）信息：从选择页回传，字段较多，这里只列页面用到的 */
export interface VarietyInfo {
    id?: string;
    varietyName?: string;
    latinName?: string;
    genusName?: string;
    genusLatinName?: string;
    medicineName?: string;
    [property: string]: any;
}

/** 往来单位信息：组件回传字段不固定，这里保留常用字段并允许扩展 */


/**
 * 单条鲜货入库信息（当前 info-edit 页面表单）
 * 说明：仍保留旧名 seedInfoListType 的兼容导出，避免影响已有页面。
 */
export interface FreshGoodsInstoreItemForm {
    /** 页面内部 uid（用于在父页面映射 uid -> 明细） */
    uid?: string;

    /** 动植物名称 */
    varietyId?: string;
    varietyInfo?: VarietyInfo | null;

    /** 药用部位/对象 */
    part?: string;
    partName?: string;

    /** 鲜货来源（字典：pt_medicine_source） */
    sourceType?: string;

    /** 入库量 */
    capacity?: string | number;
    /** 计量单位（字典：pt_medicine_unit） */
    unit?: string;

    /** 供应商 */
    supplierId?: string;
    supplierInfo?: any | null;
    /** 供应商是否是生产商（字典：yes_no） */
    supplierProducerFlag?: string;
    /** 生产商 */
    producer?: string;

    /** 检验报告（上传：image/file，valueType=array） */
    examinReport?: (string | AccesseryDTO)[];

    /** 鲜货产地（行政区划 code） */
    producePlace?: string;
    /** 鲜货产地全称 */
    producePlaceName?: string;

    /** 采收日期（yyyy-MM-dd） */
    productDate?: string;

    /** 鲜货图片（上传：valueType=string，通常为逗号分隔或单串） */
    imgs?: string;
    /** 鲜货视频（上传：valueType=string） */
    vedios?: string;

    [property: string]: any;
}

// 兼容旧命名（历史页面仍在使用）
export type FreshGoodsInfoType = FreshGoodsInstoreItemForm;

export interface AccesseryDTO {
    /**
     * 文件名称
     */
    fileName?: string;
    /**
     * 文件大小
     */
    fileSize?: number;
    /**
     * 文件URL
     */
    url?: string;
    [property: string]: any;
}
// 存放库房对象
export interface warehousesType {
    /** 仓库id */
    warehouseId?: string;
    /** 货架id */
    shelfId?: string;
    [property: string]: any;
}
/**
 * 入库业务传输对象
 */
export interface instoreBizInfoType {
    [property: string]: any;
}
export interface instoreBizInfoType1 {
 /** 入库日期 */
    instoreDate?: string;
    /** 入库人 */
    instoreMg?: string;
    /** 备注 */
    remark?: string;
    [property: string]: any;
}
