diff --git a/ssctp/src/client/nccloud/web/ssctp/sscbd/ssctask/action/SSCTaskHandleQueryAction.java b/ssctp/src/client/nccloud/web/ssctp/sscbd/ssctask/action/SSCTaskHandleQueryAction.java index 22ce004..4f4b429 100644 --- a/ssctp/src/client/nccloud/web/ssctp/sscbd/ssctask/action/SSCTaskHandleQueryAction.java +++ b/ssctp/src/client/nccloud/web/ssctp/sscbd/ssctask/action/SSCTaskHandleQueryAction.java @@ -235,11 +235,53 @@ public class SSCTaskHandleQueryAction } whereSql.append(" ) "); } + //联查 付款单、收款单、主报销单、主借款单 四张单子 whereSql.append(" or task.pk_bill in ( "); - whereSql.append(" SELECT task.pk_bill FROM ssctp_task task LEFT JOIN AR_GATHERITEM bill on task.busiid = bill.pk_gatherbill LEFT JOIN BD_BALATYPE bala on bala.pk_balatype = bill.pk_balatype"); + whereSql.append(" SELECT " + + " pk_bill " + + "FROM " + + " ( " + + " SELECT " + + " task.pk_bill, " + + " bala.name " + + " FROM " + + " ssctp_task task " + + " INNER JOIN AR_GATHERITEM bill ON task.busiid = bill.pk_gatherbill " + + " INNER JOIN BD_BALATYPE bala ON bala.pk_balatype = bill.pk_balatype " + + " WHERE " + + " task.pk_billtype = '0000Z3000000000000F2' UNION " + + " SELECT " + + " task.pk_bill, " + + " bala.name " + + " FROM " + + " ssctp_task task " + + " INNER JOIN ap_paybill bill ON task.busiid = bill.pk_paybill " + + " INNER JOIN AP_PAYITEM item ON item.pk_paybill = bill.pk_paybill " + + " LEFT JOIN BD_BALATYPE bala ON bala.pk_balatype = item.pk_balatype " + + " WHERE " + + " task.pk_billtype = '0000Z3000000000000F3' UNION " + + " SELECT " + + " task.pk_bill, " + + " bala.name " + + " FROM " + + " ssctp_task task " + + " INNER JOIN er_bxzb bill ON task.busiid = bill.pk_jkbx " + + " INNER JOIN BD_BALATYPE bala ON bala.pk_balatype = bill.jsfs " + + " WHERE " + + " task.pk_billtype = '0000Z30000000000264X' UNION " + + " SELECT " + + " task.pk_bill, " + + " bala.name " + + " FROM " + + " ssctp_task task " + + " INNER JOIN er_jkzb bill ON task.busiid = bill.pk_jkbx " + + " INNER JOIN BD_BALATYPE bala ON bala.pk_balatype = bill.jsfs " + + " WHERE " + + " task.pk_billtype = '0000Z30000000000263X' " + + " ) pk_type "); whereSql.append(" where "); for (int i = 0; i < vas.size(); i++) { - whereSql.append(" bala.name LIKE '%").append(vas.get(i)).append("%'"); + whereSql.append(" pk_type.name LIKE '%").append(vas.get(i)).append("%'"); if (i < vas.size() - 1) { whereSql.append(" OR "); }