日期:2014-05-17  浏览次数:20884 次

纠结的问题!QBC多表多条件查询!!来大牛!谢谢~~
@Override
public List query_many(com.zhwl168.bean.Query query) {
System.out.println(query.getDATE1()+"...."+query.getDATE2());
Session session = getSession();
Criteria criteria = session.createCriteria(PeIndex.class);
Criteria diagTypeDict = session.createCriteria("DIAG_TYPEDICT");
Criteria peCheck = session.createCriteria("PE_CHECK");
Criteria peDiag = session.createCriteria("PE_DIAG");
Criteria peHosMoney = session.createCriteria("PE_HOS_MONEY");
Criteria peOper = session.createCriteria("PE_OPER");

if (!"".equals(query.getDATE1()) && query.getDATE1() != null)
criteria.add(Restrictions.like("DATE1", "%" + query.getDATE1()
+ "%"));

if (!"".equals(query.getDATE2()) && query.getDATE2() != null)
criteria.add(Restrictions.like("DATE2", "%" + query.getDATE2()
+ "%"));

if (!"".equals(query.getMEDICAL_ID()) && query.getMEDICAL_ID() != null)
criteria.add(Restrictions.like("MEDICAL_ID",
"%" + query.getMEDICAL_ID() + "%"));
if (!"".equals(query.getPE_ID()) && query.getPE_ID() != null)
criteria.add(Restrictions.like("PE_ID", "%" + query.getPE_ID()
+ "%"));
if (!"".equals(query.getPE_NAME()) && query.getPE_NAME() != null)
criteria.add(Restrictions.like("PE_NAME", "%" + query.getPE_NAME()
+ "%"));
if (!"".equals(query.getNAMECODE()) && query.getNAMECODE() != null)
criteria.add(Restrictions.like("NAMECODE",
"%" + query.getNAMECODE() + "%"));
if (!"".equals(query.getIN_HOS_WAY_ID())
&& query.getIN_HOS_WAY_ID() != null)
criteria.add(Restrictions.like("IN_HOS_WAY_ID",
"%" + query.getIN_HOS_WAY_ID() + "%"));
if(!"".equals(query.getIN_HOS_STATUE_ID())&& query.getIN_HOS_STATUE_ID()!=null)
criteria.add(Restrictions.like("IN_HOS_STATUE_ID", "%"+query.getIN_HOS_STATUE_ID()+"%"));
if(!"".equals(query.getMZYCY())&& query.getMZYCY()!=null)
criteria.add(Restrictions.like("MZYCY", "%"+query.getMZYCY()+"%"));
if(!"".equals(query.getRYYCY())&& query.getRYYCY()!=null)
criteria.add(Restrictions.like("RYYCY", "%"+query.getRYYCY()+"%"));
if(!"".equals(query.getSQYSH())&& query.getSQYSH()!=null)
criteria.add(Restrictions.like("SQYSH", "%"+query.getSQYSH()+"%"));
if(!"".equals(query.getFSYBL())&& query.getFSYBL()!=null)
criteria.add(Restrictions.like("FSYBL", "%"+query.getFSYBL()+"%"));
if(!"".equals(query.getLCYBL())&& query.getLCYBL()!=null)
criteria.add(Restrictions.like("LCYBL", "%"+query.getLCYBL()+"%"));
if(!"".equals(query.getDEP1())&& query.getDEP1()!=null)
criteria.add(Restrictions.like("DEP1", "%"+query.getDEP1()+"%"));
if(!"".equals(query.getDEP2())&& query.getDEP2()!=null)
criteria.add(Restrictions.like("DEP2", "%"+query.getDEP2()+"%"));

System.out.println(criteria.list());
List list = criteria.list();
System.out.println("query_many...."+list.toString());
// session.clear();
// session.close();
return list;
}


这个是我写的多条件查询代码!