Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r16178 -r16272 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 16178) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 16272) @@ -11112,12 +11112,14 @@ Map voMap = new LinkedHashMap(); + String sqlLengthFunctionName = DatabaseUtil.getSqlLengthFunctionName(dbConnection); + String sql = "select ci.invoicePlanID invoicePlanID," + "rr.recyclingTime recyclingTime," + "fta.tousseName tousseName," + "fta.supplierName supplierName," - + "cb.personInCharge personInCharge," + + "case when (cb.personInCharge is null or "+sqlLengthFunctionName+"(cb.personInCharge)=0) then wr.operator else cb.personInCharge end personInCharge," + "cw.WashAndDisinfectRecord_ID washAndDisinfectRecordId " + "from RecyclingRecord rr " @@ -11148,7 +11150,7 @@ ForeignTousseAfterUseDeliveryVO vo = voMap.get(invoicePlanID); String personInCharge = StringTools.defaultString(result.getString("personInCharge")); String washAndDisinfectRecordId = StringTools.defaultString(result.getString("washAndDisinfectRecordId")); - personInCharge = (washAndDisinfectRecordId.equals("") ? "" : personInCharge); //怕用户录入了清洗记录,然后又把他删除了,但是在书库中只删除关系表 + personInCharge = (washAndDisinfectRecordId.equals("") ? "" : personInCharge); //怕用户录入了清洗记录,然后又把那个清洗篮筐删除了,但是只删除关系表,而我这里又是做外连接 if (vo == null) { vo = new ForeignTousseAfterUseDeliveryVO(); @@ -11167,7 +11169,7 @@ voMap.put(invoicePlanID, vo); } else { String personInChargeTemp = vo.getWashAndDisinfectUser(); - vo.setWashAndDisinfectUser(personInChargeTemp + "," + personInCharge); + vo.setWashAndDisinfectUser(personInChargeTemp + "," + personInCharge); //解决拆包清洗的器械包 } }