Index: ssts-operationmonitor/src/main/java/com/forgon/disinfectsystem/supplyroomcontrol/service/SupplyRoomControlManagerImpl.java =================================================================== diff -u -r14428 -r14536 --- ssts-operationmonitor/src/main/java/com/forgon/disinfectsystem/supplyroomcontrol/service/SupplyRoomControlManagerImpl.java (.../SupplyRoomControlManagerImpl.java) (revision 14428) +++ ssts-operationmonitor/src/main/java/com/forgon/disinfectsystem/supplyroomcontrol/service/SupplyRoomControlManagerImpl.java (.../SupplyRoomControlManagerImpl.java) (revision 14536) @@ -298,12 +298,12 @@ SupplyRoomConfig config = supplyRoomConfigManager.getFirstSupplyRoomConfig(); String orgUnitCoding = config.getOrgUnitCoding(); - String joinedBasketSql = "select ti.tousseName tousseName,sr.id id,sr.sterilizationUser operator,s.name disinfectIdentification," - + "sr.frequency frequency,sr.sterilizationType disinfectProgram,sr.startDate startDate," - + "sr.endDate endDate,c.containerName basketName "; - String notJoinedBasketSql = "select ti.tousseName tousseName,sr.id,sr.sterilizationUser operator,s.name disinfectIdentification," - + "sr.frequency frequency,sr.sterilizationType disinfectProgram,sr.startDate startDate," - + "sr.endDate endDate,'' basketName "; + String joinedBasketSql = "select ti.tousseName as \"tousseName\",sr.id as \"id\",sr.sterilizationUser as \"operator\",s.name as \"disinfectIdentification\"," + + "sr.frequency as \"frequency\",sr.sterilizationType as \"disinfectProgram\",sr.startDate as \"startDate\"," + + "sr.endDate as \"endDate\",c.containerName as \"basketName\" "; + String notJoinedBasketSql = "select ti.tousseName as \"tousseName\",sr.id as \"id\",sr.sterilizationUser as \"operator\",s.name as \"disinfectIdentification\"," + + "sr.frequency as \"frequency\",sr.sterilizationType as \"disinfectProgram\",sr.startDate as \"startDate\"," + + "sr.endDate as \"endDate\",'' as \"basketName\" "; /*String whereSql = "from Container c,SterilizationRecord sr " + "left join Sterilizer s on s.id = sr.sterilizer_id " @@ -349,7 +349,7 @@ + dateQueryAdapter.dateAdapter(endDate); //String groupBySql = " group by ti.tousseName,sr.id,sr.sterilizationUser,s.name,sr.frequency,sr.sterilizationType,sr.startDate,sr.endDate,c.containerName"; - String groupBySql = " group by alias.tousseName,alias.id,alias.operator,alias.disinfectProgram,alias.frequency,alias.disinfectIdentification,alias.startDate,alias.endDate,alias.basketName"; + String groupBySql = " group by alias.\"tousseName\",alias.\"id\",alias.\"operator\",alias.\"disinfectProgram\",alias.\"frequency\",alias.\"disinfectIdentification\",alias.\"startDate\",alias.\"endDate\",alias.\"basketName\""; if (StringUtils.isNotBlank(tousseName)) { joinedBasketWhereSql += " and ti.tousseName = '" + tousseName + "'"; @@ -366,7 +366,8 @@ Integer [] totalAmountArray = countBySql(totalCountSql); int sterilizationTotalAmount = totalAmountArray[1]; - List list = objectDao.findBySql(TousseOperate.class, joinedBasketSql + joinedBasketWhereSql + " union all " + notJoinedBasketSql + notJoinedBasketWhereSql, Integer.parseInt(currentPage), Integer.parseInt(pageSize)); + String detailSql = "select \"tousseName\",\"id\",\"operator\",\"disinfectIdentification\",\"frequency\",\"disinfectProgram\",\"startDate\",\"endDate\",\"basketName\",count(0) as \"amount\" from " + whereSql; + List list = objectDao.findBySql(TousseOperate.class, detailSql, Integer.parseInt(currentPage), Integer.parseInt(pageSize)); Map sterilizationMap = new HashMap(); sterilizationMap.put("totalCount", totalCount); sterilizationMap.put("sterilizationTotalAmount", sterilizationTotalAmount); @@ -458,10 +459,10 @@ String endDateStr = dateQueryAdapter.dateAdapter(endDate); String countSql = "select count(*),sum(po.amount),sum(po.amount) "; - String sql = "select po.tousseName,i.depart," + - "i.id ,i.applicant,i.sender," + - "i.serialNumber,i.sendTime senderTime," + - "i.applicationTime,po.amount "; + String sql = "select po.tousseName as \"tousseName\",i.depart as \"depart\"," + + "i.id as \"id\" ,i.applicant as \"applicant\",i.sender as \"sender\"," + + "i.serialNumber as \"serialNumber\",i.sendTime as \"senderTime\"," + + "i.applicationTime as \"applicationTime\",po.amount as \"amount\" "; String whereSql = "from Invoice i,InvoicePlan ip,InvoiceItem po" + " where i.id = po.invoice_id and ip.id = i.invoicePlan_ID"