package com.ym.mec.biz.dal.entity;

import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;

public class OperatingReportNew {

    private Integer id;

    @ApiModelProperty(value="负责人")
    private String principal;

    @ApiModelProperty(value="城市")
    private String organName;

    @ApiModelProperty(value="城市")
    private Integer organId;

    @ApiModelProperty(value="销售收入（当月实收）")
    //实物销售收入（已收货商品）
    private BigDecimal saleAmount = BigDecimal.ZERO;

    //当月课费（每个学员当月已消耗课程费用总和） + 个体云教练当月费用（总金额/月数） + 当月云教练课程消耗费用（课次*每节课单价）
    @ApiModelProperty(value="服务收入（当月实收）")
    private BigDecimal serviceAmount = BigDecimal.ZERO;

    @ApiModelProperty(value="课程收入")
    private BigDecimal courseAmount = BigDecimal.ZERO;

    @ApiModelProperty(value="云教练收入")
    private BigDecimal cloudAmount = BigDecimal.ZERO;

    @ApiModelProperty(value="乐保收入")
    private BigDecimal maintenanceAmount = BigDecimal.ZERO;

    //当月退费列表总金额（当月退费列表已退费总金额）
    @ApiModelProperty(value="业务退费")
    private BigDecimal businessRefund = BigDecimal.ZERO;

    //销售收入 + 服务收入 - 业务退费
    @ApiModelProperty(value="收入合计")
    private BigDecimal totalIncome = BigDecimal.ZERO;

    //当月已发货商品销售成本价
    @ApiModelProperty(value="销售成本")
    private BigDecimal saleCost = BigDecimal.ZERO;

    //OA审批固定费用总和
    @ApiModelProperty(value="固定费用")
    private BigDecimal fixedCosts = BigDecimal.ZERO;

    //OA审批变动费用总和
    @ApiModelProperty(value="变动费用")
    private BigDecimal variableCosts = BigDecimal.ZERO;

    //OA审批内部结算费用总和
    @ApiModelProperty(value="内部结算")
    private BigDecimal internalSettlement = BigDecimal.ZERO;

    //固定 + 变动 + 内部结算
    @ApiModelProperty(value="成本费用合计")
    private BigDecimal totalCost = BigDecimal.ZERO;

    //收入合计 - 成本合计
    @ApiModelProperty(value="准可自由支配利润")
    private BigDecimal quasiDiscretionaryProfit = BigDecimal.ZERO;

    //个体云教练（订单总额 / 购买天数 * 剩余生效天数） + 已排课云教练课程预收款（乐团在读人数 * 2980 - 课程单价 * 未开始课程数） + 未排课云教练预收款（订单总额 / 购买天数 * 剩余生效天数）+
    //未发货商品
    @ApiModelProperty(value="预收账款")
    private BigDecimal prepaidFee = BigDecimal.ZERO;

    @ApiModelProperty(value="云教练预收")
    private BigDecimal cloudPrepaidFee = BigDecimal.ZERO;

    @ApiModelProperty(value="课程预收")
    private BigDecimal coursePrepaidFee = BigDecimal.ZERO;

    @ApiModelProperty(value="商品预收")
    private BigDecimal salePrepaidFee = BigDecimal.ZERO;

    @ApiModelProperty(value="其他预收")
    private BigDecimal otherPrepaidFee = BigDecimal.ZERO;

    @ApiModelProperty(value="预付账款")
    private BigDecimal prepayments = BigDecimal.ZERO;

    @ApiModelProperty(value="应收账款")
    private BigDecimal receivables = BigDecimal.ZERO;

    @ApiModelProperty(value="应付账款")
    private BigDecimal payable = BigDecimal.ZERO;

    @ApiModelProperty(value="月份")
    private String month;

    public BigDecimal getMaintenanceAmount() {
        return maintenanceAmount;
    }

    public void setMaintenanceAmount(BigDecimal maintenanceAmount) {
        this.maintenanceAmount = maintenanceAmount;
    }

    public BigDecimal getCloudPrepaidFee() {
        return cloudPrepaidFee;
    }

    public void setCloudPrepaidFee(BigDecimal cloudPrepaidFee) {
        this.cloudPrepaidFee = cloudPrepaidFee;
    }

    public BigDecimal getCoursePrepaidFee() {
        return coursePrepaidFee;
    }

    public void setCoursePrepaidFee(BigDecimal coursePrepaidFee) {
        this.coursePrepaidFee = coursePrepaidFee;
    }

    public BigDecimal getSalePrepaidFee() {
        return salePrepaidFee;
    }

    public void setSalePrepaidFee(BigDecimal salePrepaidFee) {
        this.salePrepaidFee = salePrepaidFee;
    }

    public BigDecimal getOtherPrepaidFee() {
        return otherPrepaidFee;
    }

    public void setOtherPrepaidFee(BigDecimal otherPrepaidFee) {
        this.otherPrepaidFee = otherPrepaidFee;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getPrincipal() {
        return principal;
    }

    public void setPrincipal(String principal) {
        this.principal = principal;
    }

    public String getOrganName() {
        return organName;
    }

    public void setOrganName(String organName) {
        this.organName = organName;
    }

    public Integer getOrganId() {
        return organId;
    }

    public void setOrganId(Integer organId) {
        this.organId = organId;
    }

    public BigDecimal getSaleAmount() {
        return saleAmount;
    }

    public void setSaleAmount(BigDecimal saleAmount) {
        this.saleAmount = saleAmount;
    }

    public BigDecimal getServiceAmount() {
        return serviceAmount;
    }

    public void setServiceAmount(BigDecimal serviceAmount) {
        this.serviceAmount = serviceAmount;
    }

    public BigDecimal getCourseAmount() {
        return courseAmount;
    }

    public void setCourseAmount(BigDecimal courseAmount) {
        this.courseAmount = courseAmount;
    }

    public BigDecimal getCloudAmount() {
        return cloudAmount;
    }

    public void setCloudAmount(BigDecimal cloudAmount) {
        this.cloudAmount = cloudAmount;
    }

    public BigDecimal getBusinessRefund() {
        return businessRefund;
    }

    public void setBusinessRefund(BigDecimal businessRefund) {
        this.businessRefund = businessRefund;
    }

    public BigDecimal getTotalIncome() {
        return totalIncome;
    }

    public void setTotalIncome(BigDecimal totalIncome) {
        this.totalIncome = totalIncome;
    }

    public BigDecimal getSaleCost() {
        return saleCost;
    }

    public void setSaleCost(BigDecimal saleCost) {
        this.saleCost = saleCost;
    }

    public BigDecimal getFixedCosts() {
        return fixedCosts;
    }

    public void setFixedCosts(BigDecimal fixedCosts) {
        this.fixedCosts = fixedCosts;
    }

    public BigDecimal getVariableCosts() {
        return variableCosts;
    }

    public void setVariableCosts(BigDecimal variableCosts) {
        this.variableCosts = variableCosts;
    }

    public BigDecimal getInternalSettlement() {
        return internalSettlement;
    }

    public void setInternalSettlement(BigDecimal internalSettlement) {
        this.internalSettlement = internalSettlement;
    }

    public BigDecimal getTotalCost() {
        return totalCost;
    }

    public void setTotalCost(BigDecimal totalCost) {
        this.totalCost = totalCost;
    }

    public BigDecimal getQuasiDiscretionaryProfit() {
        return quasiDiscretionaryProfit;
    }

    public void setQuasiDiscretionaryProfit(BigDecimal quasiDiscretionaryProfit) {
        this.quasiDiscretionaryProfit = quasiDiscretionaryProfit;
    }

    public BigDecimal getPrepaidFee() {
        return prepaidFee;
    }

    public void setPrepaidFee(BigDecimal prepaidFee) {
        this.prepaidFee = prepaidFee;
    }

    public BigDecimal getPrepayments() {
        return prepayments;
    }

    public void setPrepayments(BigDecimal prepayments) {
        this.prepayments = prepayments;
    }

    public BigDecimal getReceivables() {
        return receivables;
    }

    public void setReceivables(BigDecimal receivables) {
        this.receivables = receivables;
    }

    public BigDecimal getPayable() {
        return payable;
    }

    public void setPayable(BigDecimal payable) {
        this.payable = payable;
    }

    public String getMonth() {
        return month;
    }

    public void setMonth(String month) {
        this.month = month;
    }
}