Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java =================================================================== diff -u -r26763 -r26772 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 26763) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/RecyclingApplicationManagerImpl.java (.../RecyclingApplicationManagerImpl.java) (revision 26772) @@ -3400,33 +3400,49 @@ } } rowVo.setApplicant(foreignTousseApplication.getApplicant()); - rowVo.setReceiveMan(foreignTousseApplication.getReceiveMan()); + //rowVo.setReceiveMan(foreignTousseApplication.getReceiveMan()); // 查找当前TousseItem的清洗人,包含拆包后的清洗人 List washOperatorList = new ArrayList(); - String washOperatorSql = String.format("select distinct wr.washPersonInCharge, wr.operator from WashAndDisinfectRecord wr, ClassifyBasket cb, invoicePlan ip, RecyclingRecord rr, TousseItem ti, " - + " ClassifyBasket_RecyclingRecord cb_rr, ClassifyBasket_WashRecord cb_wr " - + " where ip.id = rr.recyclingApplication_id " - + " and rr.id = cb_rr.RecyclingRecord_ID " - + " and cb_rr.ClassifyBasket_ID = cb.id " - + " and cb.id = cb_wr.ClassifyBasket_ID " - + " and cb_wr.WashAndDisinfectRecord_ID = wr.id " - + " and ti.invoicePlanID = ip.id " - + " and ip.id = %s " - + " and ti.id = %s ", foreignTousseApplication.getId(), tousseItem.getId()); + List recyclingOperatorList = new ArrayList(); + String washOperatorSql = String.format("select distinct wr.washPersonInCharge, wr.operator, rr.operator, ti.tousseName, ti.id " + + " from WashAndDisinfectRecord wr, ClassifyBasket cb, invoicePlan ip, RecyclingRecord rr, TousseItem ti," + + " ClassifyBasket_RecyclingRecord cb_rr, ClassifyBasket_WashRecord cb_wr, ClassifiedItem ci " + + " where ip.id = rr.recyclingApplication_id " + + " and rr.id = cb_rr.RecyclingRecord_ID " + + " and cb_rr.ClassifyBasket_ID = cb.id " + + " and cb.id = cb_wr.ClassifyBasket_ID " + + " and cb_wr.WashAndDisinfectRecord_ID = wr.id " + + " and ti.recyclingApplication_ID = ip.id " + + " and ci.classifybasket_id = cb_wr.ClassifyBasket_ID " + + " and ti.tousseDefinitionId = ci.tousseDefinitionID " + + " and ip.id = %s and ti.id = %s ", foreignTousseApplication.getId(), tousseItem.getId()); + + /*String washOperatorSql = String.format(" select distinct wr.washPersonInCharge, wr.operator, rr.operator from invoicePlan ip " + + " join RecyclingRecord rr on ip.id = rr.recyclingApplication_id " + + " join ClassifyBasket_RecyclingRecord cb_rr on cb_rr.RecyclingRecord_ID = rr.id " + + " join ClassifyBasket_WashRecord cb_wr on cb_wr.ClassifyBasket_ID = cb_rr.ClassifyBasket_ID " + + " join WashAndDisinfectRecord wr on wr.id = cb_wr.WashAndDisinfectRecord_ID " + + " join ClassifiedItem ci on ci.classifybasket_id = cb_rr.ClassifyBasket_ID " + + " join TousseItem ti on ti.tousseDefinitionId = ci.tousseDefinitionID " + + " and ip.id = %s " + + " and ti.id = %s ", foreignTousseApplication.getId(), tousseItem.getId());*/ ResultSet rs = objectDao.executeSql(washOperatorSql); try { while(rs.next()) { String washPersonInCharge = rs.getString(1); String operator = rs.getString(2); + String recyclingOperator = rs.getString(3); // 优先取清洗责任人,清洗责任人为空,则取清洗操作人 washOperatorList.add(StringUtils.isNotBlank(washPersonInCharge)?washPersonInCharge:operator); + // 回收清点人 + rowVo.setReceiveMan(recyclingOperator); } } catch (SQLException e) { e.printStackTrace(); } finally { DatabaseUtil.closeResultSetAndStatement(rs); } - // 去除重复的清洗人名称 + // 去除重复的清洗人、回收清点人 washOperatorList = new ArrayList(new HashSet(washOperatorList)); for (int i = 0; i < washOperatorList.size();i++) { rowVo.setWashOperator((rowVo.getWashOperator() == null ? "" : rowVo.getWashOperator()) + washOperatorList.get(i) + " ");