package thyyxxk.webserver.entity.transferInOfExpenses.data;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotNull;
import java.util.List;

@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class CorrectInvoice {

    @NotNull(message = "患者门诊号不能为空")
    private String patientId;

    @NotNull(message = "就诊次数不能为空")
    private Integer times;

    /**
     * 在 mz_receipt_serial 里面的 receipt_no 这个字段
     */
    private Integer receiptNo;

    /**
     * 部分开票 = 5
     * 部分冲红 = 6
     * chargeItemCodes 空传 5
     */
    private Integer typeFlag = 5;

    /**
     * 操作人
     */
    private String opId;

    /**
     * 不需要冲正的项目编码，也就是需要录入的项目编码
     * 如果传的是 6 的话，就是需要冲正的编码
     */
    private List<String> chargeItemCodes;

    @Data
    public static class CorrectInvoiceReq {

        /**
         * 机制号
         */
        private Integer serialNo;

        /**
         * 需要冲正的项目编码
         */
        private List<String> codes;
    }

    @Data
    public static class DzcfVo {
        private String qrCode;
        private String name;
        private String chargeCode;
        private String patientId;

        /**
         * 打印日期
         */
        private String printDate;

        /**
         * 总金额
         */
        private String total;

        private String opName;
    }
}
