意思是查询的时候所对应的数据类型不匹配
正确
StringBuffer hql = new StringBuffer();
List<Object> params = new ArrayList<Object>();
hql.append("from SafTPreplanDrill where delFlag = '0' ");
//按照部门进行查询
String deptId = deptUtil.getLonginInfo().get("deptId");
if (!"0010".equals(deptId)) {
hql.append(" and mainDept.id=?");
params.add(deptId);
}
if (parameter != null) {
if (parameter.get("mainDepts") != null) { //主办部门
hql.append(" and mainDept = ? ");
params.add(parameter.get("mainDepts"));
}
if (parameter.get("drillContent") != null) { //演练内容
hql.append(" and drillContent = ? ");
params.add(parameter.get("drillContent"));
}
if (parameter.get("drillType") != null) { //演练方式
hql.append(" and drillType = ? ");
params.add(parameter.get("drillType"));
}
if (parameter.get("status") != null) { //状态
hql.append(" and status = ? ");
params.add(parameter.get("status"));
}
if (parameter.get("planTime") != null) { //计划演练时间
hql.append(" and planTime >= to_date(?,'yyyy-MM') ");
params.add(parameter.get("planTime"));
}
if (parameter.get("toPlanTime") != null) {
hql.append(" and planTime <= to_date(?,'yyyy-MM')");
params.add(parameter.get("toPlanTime"));
}
if (parameter.get("realTime") != null) { //实际演练时间
hql.append(" and realTime >= to_date(?,'yyyy-MM-dd') ");
params.add(parameter.get("realTime"));
}
if (parameter.get("toRealTime") != null) {
hql.append(" and realTime <= to_date(?,'yyyy-MM-dd')");
params.add(parameter.get("toRealTime"));
}
}
hql.append(" order by updateDate desc");
List<SafTPreplanDrill> drillList = preplanDrillDao.find(hql.toString(), params.toArray());
错误
StringBuffer hql = new StringBuffer();
List<Object> params = new ArrayList<Object>();
hql.append("from SafTPreplanDrill where delFlag = '0' ");
//按照部门进行查询
String deptId = deptUtil.getLonginInfo().get("deptId");
if (!"0010".equals(deptId)) {
hql.append(" and mainDept=?");//TODO
params.add(deptId);
}
if (parameter != null) {
if (parameter.get("mainDepts") != null) { //主办部门
hql.append(" and mainDept = ? ");
params.add(parameter.get("mainDepts"));
}
if (parameter.get("drillContent") != null) { //演练内容
hql.append(" and drillContent = ? ");
params.add(parameter.get("drillContent"));
}
if (parameter.get("drillType") != null) { //演练方式
hql.append(" and drillType = ? ");
params.add(parameter.get("drillType"));
}
if (parameter.get("status") != null) { //状态
hql.append(" and status = ? ");
params.add(parameter.get("status"));
}
if (parameter.get("planTime") != null) { //计划演练时间
hql.append(" and planTime >= to_date(?,'yyyy-MM') ");
params.add(parameter.get("planTime"));
}
if (parameter.get("toPlanTime") != null) {
hql.append(" and planTime <= to_date(?,'yyyy-MM')");
params.add(parameter.get("toPlanTime"));
}
if (parameter.get("realTime") != null) { //实际演练时间
hql.append(" and realTime >= to_date(?,'yyyy-MM-dd') ");
params.add(parameter.get("realTime"));
}
if (parameter.get("toRealTime") != null) {
hql.append(" and realTime <= to_date(?,'yyyy-MM-dd')");
params.add(parameter.get("toRealTime"));
}
}
hql.append(" order by updateDate desc");
List<SafTPreplanDrill> drillList = preplanDrillDao.find(hql.toString(), params.toArray());