// 如果id为空,则抛出运行时异常,提示ID不能为空 if (id == null) throw new RuntimeException("ID不能为空");

// 构建查询语句,查询t_projectreports表中满足条件的数据 String hql = "select * from t_projectreports as x where x.C_TOWID = " + user.getQyOwnerId() + " and x.R_STATEMENT_ID = " + id + " and x.C_DELETED = 0 GROUP BY x.C_VILID";

// 执行查询,获取满足条件的TProjectreports列表 List reports1 = tProjectreportsMapper.listByR_STATEMENT_IDOrderByVilId(hql);

// 构建查询语句,查询t_projectreports表中满足条件的数据 String hqls = "select * from t_projectreports as x where x.C_TOWID = " + user.getQyOwnerId() + " and x.R_STATEMENT_ID = " + id + " and x.C_DELETED = 0 GROUP BY x.R_NAT_ID";

// 执行查询,获取满足条件的TProjectreports列表 List reports2 = tProjectreportsMapper.listByR_STATEMENT_IDOrderByNatId(hqls);

// 创建一个空的NamedItem列表 List data = new ArrayList<>();

// 遍历reports1列表中的每个TProjectreports对象 for (TProjectreports report : reports1) { // 获取当前TProjectreports对象的vilname和vilid String vilname = report.getVilname(); Long vilid = report.getVilid();

// 创建一个NamedItem对象,并设置其vilid和vilname属性
NamedItem vil = new NamedItem();
vil.setVilid(vilid);
vil.setVilName(vilname);

// 遍历reports2列表中的每个TProjectreports对象
for (TProjectreports r : reports2) {
    // 如果当前TProjectreports对象的vilid与上一个循环中的vilid相等
    if (vilid.equals(r.getVilid())) {
        // 创建一个NamedItem对象,并设置其natid、natName、parent_id和create属性
        NamedItem nat = new NamedItem();
        TNatural natural = naturalMapper.selectTNaturalById(r.getNatId());
        nat.setNatid(natural.getId());
        nat.setNatName(natural.getName());
        nat.setParent_id(vilid);
        nat.setCreate(1);

        // 将nat对象添加到vil对象的items列表中
        vil.getItems().add(nat);
    }
}

// 将vil对象添加到data列表中
data.add(vil);

}

// 返回data列表作为结果 return data

if id == null throw new RuntimeExceptionID不能为空; String hql = select from t_projectreports as x where xC_TOWID = + usergetQyOwnerId + and xR_STATEMENT_ID = + id + and xC_DELETED = 0 GROUP

原文地址: http://www.cveoy.top/t/topic/ilr9 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录