package xin.glue.ui.G.G10; import com.posdata.glue.biz.activity.PosActivity; import com.posdata.glue.biz.constants.PosBizControlConstants; import com.posdata.glue.context.PosContext; import com.posdata.glue.dao.PosGenericDao; import com.posdata.glue.dao.PosJdbcDao; import com.posdata.glue.dao.manager.PosQueryDefinition; import com.posdata.glue.dao.manager.PosQueryManager; import com.posdata.glue.dao.vo.PosParameter; import com.posdata.glue.dao.vo.PosRowSet; public class FindWgtDetail extends PosActivity { public String runActivity(PosContext context) { String[] QueryContent = (String[])context.get("QueryContent"); String[] QueryCol = (String[])context.get("QueryCol"); String[]startTime = (String[])context.get("startTime");//开始时间 String[]endTime = (String[])context.get("endTime");//结束时间 String _endTime = endTime[0]; PosParameter param = new PosParameter(); StringBuffer sql = new StringBuffer(); PosGenericDao dao = this.getDao("mesdao"); if("FYL_DETAIL".equals(QueryContent[0]))//发运量 { sql = getManagerSql("UIG100001_01.DETAILSELECT"); } else if("QLZ_DETAIL".equals(QueryContent[0]))//去冷轧 { sql = getManagerSql("UIG100001_02.DETAILSELECT"); } sql.append(" AND TRNF_DTIME BETWEEN ? AND ? "); param.setWhereClauseParameter(0, startTime[0]); if("DAY".equals(QueryCol[0])){//当期 param.setWhereClauseParameter(1, _endTime); }else if("MONTH".equals(QueryCol[0])){//月累 _endTime = _endTime.substring(0, 6)+"31"; param.setWhereClauseParameter(1, _endTime); } sql.append(" ORDER BY TRNF_DTIME "); PosRowSet rowset = dao.findByQueryStatement(sql.toString() , param); context.put("detailsResult", rowset); return PosBizControlConstants.SUCCESS; } private StringBuffer getManagerSql(String id)//通过ID获取SQL语句 { PosJdbcDao dao = (PosJdbcDao)this.getDao("mesdao"); PosQueryManager ppt = dao.getQueryManager(); PosQueryDefinition x = ppt.getQueryDefinition(id); return new StringBuffer(x.getQueryStatement()); } }