//package com.engine.salary.entity.salaryacct.bo;
//
//import com.weaver.excel.formula.api.entity.ExpressFormula;
//import com.weaver.hrm.salary.entity.salaryacct.po.SalaryAcctEmployeePO;
//import com.weaver.hrm.salary.entity.salaryacct.po.SalaryAcctRecordPO;
//import com.weaver.hrm.salary.entity.salaryitem.po.SalaryItemPO;
//import com.weaver.hrm.salary.entity.salarysob.po.SalarySobCheckRulePO;
//import lombok.AllArgsConstructor;
//import lombok.Data;
//import lombok.experimental.Accessors;
//
//import java.util.List;
//import java.util.concurrent.BlockingDeque;
//import java.util.concurrent.CountDownLatch;
//
///**
// * @description: 薪资核算-校验
// * @author: xiajun
// * @modified By: xiajun
// * @date: Created in 2/7/22 11:06 AM
// * @version:v1.0
// */
//@Data
//@Accessors(chain = true)
//public class SalaryAcctCheckBO {
//
//    /**
//     * 当前薪资核算记录
//     */
//    private SalaryAcctRecordPO salaryAcctRecordPO;
//
//    /**
//     * 本次运算所用的薪资账套下的校验规则
//     */
//    private List<SalarySobCheckRulePO> salarySobCheckRulePOS;
//
//    /**
//     * 本次运算涉及的所有公式
//     */
//    private List<ExpressFormula> expressFormulas;
//
//    /**
//     * 租户下所有的薪资项目
//     */
//    private List<SalaryItemPO> salaryItemPOS;
//
//    /**
//     * 本次运算的薪资核算人员
//     */
//    private List<SalaryAcctEmployeePO> salaryAcctEmployeePOS;
//
//    /**
//     * 核算结果临时表中的key
//     */
//    private String calculateKey;
//
//    /**
//     * 监视子线程运算结果
//     */
//    private CountDownLatch childMonitor;
//
//    /**
//     * 所有子线程的运算结果
//     */
//    private BlockingDeque<Result> results;
//
//    @Data
//    @AllArgsConstructor
//    public static class Result {
//
//        /**
//         * 子线程是否运算成功
//         */
//        private boolean status;
//
//        /**
//         * 子线程元算失败的错误信息
//         */
//        private String errMsg;
//    }
//}
