账账相对优化查询
This commit is contained in:
		
							parent
							
								
									af32f0e46e
								
							
						
					
					
						commit
						5cf9966d89
					
				|  | @ -234,63 +234,13 @@ public class SSCTaskHandleQueryAction | ||||||
|           whereSql.append(" SELECT a.busiid FROM sscrp_bill_done a,sscrp_detail_done b WHERE a.pk_bill = b.pk_bill AND VALUE like '%" + s.replaceAll("'", "") + "%' AND a.busiid IN (" + taskFilterSQL + ") "); |           whereSql.append(" SELECT a.busiid FROM sscrp_bill_done a,sscrp_detail_done b WHERE a.pk_bill = b.pk_bill AND VALUE like '%" + s.replaceAll("'", "") + "%' AND a.busiid IN (" + taskFilterSQL + ") "); | ||||||
|         } |         } | ||||||
|         whereSql.append(" ) "); |         whereSql.append(" ) "); | ||||||
|  |         // 新增四个EXISTS条件 //联查 付款单、收款单、主报销单、主借款单 四张单子 | ||||||
|  |         whereSql.append(" OR EXISTS (SELECT 1 FROM AR_GATHERITEM bill JOIN BD_BALATYPE bala ON bala.pk_balatype = bill.pk_balatype WHERE task.busiid = bill.pk_gatherbill AND bala.name LIKE '%" + s.replaceAll("'", "") + "%')"); | ||||||
|  |         whereSql.append(" OR EXISTS (SELECT 1 FROM ap_paybill bill JOIN AP_PAYITEM item ON item.pk_paybill = bill.pk_paybill JOIN BD_BALATYPE bala ON bala.pk_balatype = item.pk_balatype WHERE task.busiid = bill.pk_paybill AND bala.name LIKE '%" + s.replaceAll("'", "") + "%')"); | ||||||
|  |         whereSql.append(" OR EXISTS (SELECT 1 FROM er_bxzb bill JOIN BD_BALATYPE bala ON bala.pk_balatype = bill.jsfs WHERE task.busiid = bill.pk_jkbx AND bala.name LIKE '%" + s.replaceAll("'", "") + "%')"); | ||||||
|  |         whereSql.append(" OR EXISTS (SELECT 1 FROM er_jkzb bill JOIN BD_BALATYPE bala ON bala.pk_balatype = bill.jsfs WHERE task.busiid = bill.pk_jkbx AND bala.name LIKE '%" + s.replaceAll("'", "") + "%')"); | ||||||
|  |         whereSql.append(" ) "); | ||||||
|       } |       } | ||||||
|       //젬꿴 마운데、澗운데、寮괩饋데、寮썼운데 愷蠟데綾 |  | ||||||
|       whereSql.append(" or task.pk_bill in ( "); |  | ||||||
|       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(" pk_type.name LIKE '%").append(vas.get(i)).append("%'"); |  | ||||||
|         if (i < vas.size() - 1) { |  | ||||||
|           whereSql.append(" OR "); |  | ||||||
|         } |  | ||||||
|       } |  | ||||||
|       whereSql.append(" ) "); |  | ||||||
|       whereSql.append(" ) "); |  | ||||||
|     } |     } | ||||||
|     if (whereSql.length() > 0) { |     if (whereSql.length() > 0) { | ||||||
|       condition = condition + whereSql.toString(); |       condition = condition + whereSql.toString(); | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue