package com.hzya.frame.plugin.lets.util;

import cn.hutool.core.lang.Assert;
import com.hzya.frame.plugin.lets.dao.IBdBusitypeDao;
import com.hzya.frame.plugin.lets.entity.BdBusitypeEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.List;

/**
 * 业务流程查询
 *
 * @Author：liuyang
 * @Package：com.hzya.frame.plugin.sowow.util
 * @Project：kangarooDataCenter
 * @name：QueryBdBusitypeUtil
 * @Date：2023/11/22 20:11
 * @Filename：QueryBdBusitypeUtil
 */
@Component
public class QueryBdBusitypeUtil {

    @Autowired
    private IBdBusitypeDao iBdBusitypeDao;

    public BdBusitypeEntity queryBdBusitype(String businame) {
        //查询业务流程
        String pkGroup = "@@@@";
        BdBusitypeEntity bdBusitypeEntity = new BdBusitypeEntity();
        bdBusitypeEntity.setDataSourceCode("lets_u8c");
        bdBusitypeEntity.setBusiname(businame);
        //2024年8月26日 11:03:06 和浪哥沟通取pkCorp为4个@的业务流程！
        //2024年8月30日 13:49:54 @@@@为U8C预设的业务流程，和妮姐沟通后，所有流程，取集团对应的业务流程
        //2024年8月30日 15:28:34 目前在集团创建的业务流程，数据库里的pk_corp为@@@@，已经向集团老师，询问清楚目前的逻辑，目前暂时使用@@@@这一行
//        bdBusitypeEntity.setPkCorp(pkCorp);
        bdBusitypeEntity.setPkCorp(pkGroup);
        bdBusitypeEntity.setDr(0);
        List<BdBusitypeEntity> bdBusitypeEntityList = iBdBusitypeDao.query(bdBusitypeEntity);
        if (bdBusitypeEntityList.size() == 0) {
            Assert.state(false, "没有查询到业务流程，业务流程名称：{} 公司主键：{}", bdBusitypeEntity.getBusiname(), pkGroup);
        } else if (bdBusitypeEntityList.size() > 1) {
            Assert.state(false, "查询到多个业务流程，业务流程名称：{} 公司主键：{}", bdBusitypeEntity.getBusiname(), pkGroup);
        }
        return bdBusitypeEntityList.get(0);
    }
}
