Index: ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java =================================================================== diff -u -r37549 -r37565 --- ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 37549) +++ ssts-invoice/src/main/java/com/forgon/disinfectsystem/invoicemanager/service/InvoiceManagerImpl.java (.../InvoiceManagerImpl.java) (revision 37565) @@ -11663,7 +11663,8 @@ @Override public List getDepartUnsignedInvoice(String invoiceOrgUnitCoding , Collection departCodes) { List retList = new LinkedList(); - String sql = "select i.id,ip.departCoding,ip.depart,ip.type from Invoice i,InvoicePlan ip where i.invoicePlan_ID = ip.id"; + //1.非自定义发货单的待签收单查询 + String queryNonCustomInvoiceSql = "select i.id,ip.departCoding,ip.depart,ip.type from Invoice i,InvoicePlan ip where i.invoicePlan_ID = ip.id"; //pda发货单签收-待签收列表-查询的发货单条件由“状态为已发货”改为“签收状态为未签收与部分签收” SZSLGZXYY-17 PDA【发货单签收】新增显示物品明细以及可移除操作模式 String where1 = String.format(" and i.signStatus in ('%s','%s')",Invoice.SIGNSTATUS_UNSIGNED,Invoice.SIGNSTATUS_PARTSIGNED); String where2 = " "; @@ -11677,11 +11678,15 @@ //如果是发的一次性物品,则没有包实例关联也需要显示 String where3 = " and i.id in (select ii.invoice_id from "+InvoiceItem.class.getSimpleName() + " ii where ii.diposable = '"+ Constants.STR_YES +"' union select (case when invoice2_id is not null then invoice2_id else invoice_id end) from "+TousseInstance.class.getSimpleName()+" ti where ti.status='"+ TousseInstance.STATUS_SHIPPED +"')"; - sql = String.format("%s %s %s %s", sql,where1,where2,where3); + queryNonCustomInvoiceSql = String.format("%s %s %s %s", queryNonCustomInvoiceSql,where1,where2,where3); + //2.自定义发货单的待签收单查询(SZSLGZXYY-26 【PDA】【发货单签收】新增可签收自定义发货的发货单) + String queryCustomInvoiceSql = "select i.id,i.departCoding,i.depart,i.INVOICEPLANTYPE type from Invoice i where 1=1 "; + queryCustomInvoiceSql = String.format("%s %s %s %s", queryCustomInvoiceSql,where1,where2,where3); + ResultSet rs = null; try { - rs = objectDao.executeSql(sql); + rs = objectDao.executeSql(queryNonCustomInvoiceSql + " union " + queryCustomInvoiceSql); while(rs.next()){ long id = rs.getLong(1); final String departCoding = rs.getString(2);