import { FeeBasicData } from '@/api/feecommon/feeBasicDataModel'
import { FeeItemCompute } from '@/api/feecommon/feeItemComputeModel'
import { FeeItemComputeDetails } from '@/api/feecommon/feeItemComputeDetailsModel'
import { Partition } from '@/api/feecommon/partitionModel'
import { FeeBasicDataDto, PartitionList, PartitionSpecialParametersList } from '../customerfee/CustomerFeeSetModel'

//成本费用明细设置数据类型
export interface SubmitCustomerFeeSetModel {
    id: string,                                          //编号
    feeSetName: string,                                     //费用名称
    feeId: string,                                       //费用编号
    providerId: number,                                //渠道商编号
    providerName: string,                                 //服务商名称
    feeItemId: number,                                     //费用类型编号
    feeItemSpecialFlag: number,                          //费用特殊计费标志
    shareType: number,                                   //分摊方式   
    beginDate: Date,                                     //生效起始时间
    endDate: Date,                                       //生效结束时间
    isLast: boolean,                                     //是否最新记录
    remark: string,                                      //备注
    currentEffective: string,                            //生效记录
    activeFlag: boolean,                                   //是否激活
    createUserId: number,                                //创建人员员编号
    createTime: string,                                    //创建日期
    updateUserId: number,                                  //操作员编号
    updateTime: string,                                 //操作日期
    feeBasicData: FeeBasicDataDto,                          //费用基础信息
    feeItemComputeList: FeeItemCompute[],                //费用计算信息
    feeItemComputeDetailsList: FeeItemComputeDetails[],  //费用计算明细信息
    partitionList: PartitionList[],                          //分区信息
    partitionSpecialParametersList: PartitionSpecialParametersList[]//特殊参数信息
    parentId: string                                     //生效日期费用父Id
    loadPartitionId?: string//模版加载的编号
}

// 分区加载模版返回的数据模型
export interface PartitionTemplateResult {
    createUserId: number;
    createUserName: string;
    updateUserId: number;
    updateUserName: string;
    createTime: string;
    updateTime: string;
    type: null | string;
    id: string;
    feeId: string;
    modelName: string;
    feeIdList: null | string[];
    partitionList: PartitionList[];
}
