|
@@ -339,62 +339,63 @@ public class PrepareAdjustApplicationFormPlugin extends AbstractBillPlugIn imple
|
|
|
String dateStr = sdf.format(date);
|
|
|
|
|
|
// 拼接 SQL 查询
|
|
|
- StringBuilder sql = new StringBuilder("SELECT a.fid AS id, a.fboid AS boid, A.fparentid as parentorg, "
|
|
|
- + "t.flevel as level1, t.fstructlongnumber as structlongnumber, ST.fcount as count,ST.fcontainsubcount as containsubcount, "
|
|
|
+ StringBuilder sql = new StringBuilder("SELECT a.fid AS id, a.fboid AS boid, A.fparentid as parentorg, \n"
|
|
|
+ + "t.flevel as level1, t.fstructlongnumber as structlongnumber, ST.fcount as count,ST.fcontainsubcount as containsubcount, \n"
|
|
|
// + "(select top 1 N.fstaffcount from t_haos_adminorg M where a.fparentid = M.fboid ) as "
|
|
|
// + " (select top 1 CASE WHEN N.fstaffcount IS NULL THEN 999999 ELSE N.fstaffcount END AS fstaffcount "
|
|
|
// + "from t_haos_adminorg M left join t_haos_dutyorgdetail N on N.fdutyorgid = M.fid "
|
|
|
// + "where M.fenable ='1' and M.fboid =a.fboid and N.fenable = '1' and N.fleffdt >='" + dateStr + "' "
|
|
|
// + "AND M.fbsed <= '" + dateStr + "' AND M.fbsled >= '" + dateStr + "' "
|
|
|
// + "order by M.fhisversion desc) as staffcount "
|
|
|
- + "CASE "
|
|
|
- + " WHEN (SELECT TOP 1 CASE WHEN N.fstaffcount IS NULL THEN 999999 ELSE N.fstaffcount END "
|
|
|
- + " FROM t_haos_adminorg M "
|
|
|
- + " LEFT JOIN t_haos_dutyorgdetail N ON N.fdutyorgid = M.fid "
|
|
|
- + " WHERE M.fenable = '1' "
|
|
|
- + " AND M.fboid = a.fboid "
|
|
|
- + " AND N.fenable = '1' "
|
|
|
- + " AND N.fid = ? "
|
|
|
- + " AND N.fleffdt >= '" + dateStr + "' "
|
|
|
- + " AND M.fbsed <= '" + dateStr + "' "
|
|
|
- + " AND M.fbsled >= '" + dateStr + "' "
|
|
|
- + " ORDER BY M.fhisversion DESC) IS NULL "
|
|
|
- + " THEN 999999 "
|
|
|
- + " ELSE (SELECT TOP 1 CASE WHEN N.fstaffcount IS NULL THEN 999999 ELSE N.fstaffcount END "
|
|
|
- + " FROM t_haos_adminorg M "
|
|
|
- + " LEFT JOIN t_haos_dutyorgdetail N ON N.fdutyorgid = M.fid "
|
|
|
- + " WHERE M.fenable = '1' "
|
|
|
- + " AND M.fboid = a.fboid "
|
|
|
- + " AND N.fenable = '1' "
|
|
|
- + " AND N.fid = ? "
|
|
|
- + " AND N.fleffdt >= '" + dateStr + "' "
|
|
|
- + " AND M.fbsed <= '" + dateStr + "' "
|
|
|
- + " AND M.fbsled >= '" + dateStr + "' "
|
|
|
- + " ORDER BY M.fhisversion DESC) "
|
|
|
- + "END AS staffcount "
|
|
|
-
|
|
|
- + "FROM T_HAOS_ADMINORG A "
|
|
|
- + "LEFT JOIN T_HAOS_STAFFORGEMPCOUNT ST on A.fboid = ST.fuseorgboid "
|
|
|
- + "LEFT JOIN T_HAOS_ADMINSTRUCT T ON A.fboid = T.fadminorgid "
|
|
|
- + "AND T.fiscurrentversion = '0' AND T.fdatastatus = '1' AND T.fstructprojectid = 1010 "
|
|
|
- + "AND T.finitstatus = '2' AND T.fbsed <= '" + dateStr + "' "
|
|
|
- + "AND T.fbsled >= '" + dateStr + "' AND T.fenable = '1' "
|
|
|
- + "LEFT JOIN T_HAOS_ORGSORTCODE S ON S.FADMINORGID = A.fboid "
|
|
|
- + "AND S.fiscurrentversion = '0' AND S.fdatastatus = '1' AND S.finitstatus = '2' "
|
|
|
- + "AND S.fbsed <= '" + dateStr + "' AND S.fbsled >= '" + dateStr + "' "
|
|
|
- + "AND S.fenable = '1' "
|
|
|
- + "LEFT JOIN T_HAOS_DUTYORGDETAIL M ON M.fdutyorgid = A.fboid "
|
|
|
- + "WHERE A.fiscurrentversion = '0' AND A.fdatastatus = '1' AND A.finitstatus = '2' "
|
|
|
- + "AND A.fbsed <= '" + dateStr + "' AND A.fbsled >= '" + dateStr + "' "
|
|
|
- + "AND A.fenable = '1' "
|
|
|
- + "AND ( T.fstructlongnumber LIKE ( select top 1 concat(F.fstructlongnumber,'%') from T_HAOS_ADMINSTRUCT F where F.fadminorgid = ? "
|
|
|
- + "AND F.fiscurrentversion = '0' AND F.fdatastatus = '1' AND F.fstructprojectid = 1010 "
|
|
|
- + "AND F.finitstatus = '2' AND F.fbsed <= '" + dateStr + "' "
|
|
|
- + "AND F.fbsled >= '" + dateStr + "' AND F.fenable = '1' "
|
|
|
- +") " +") "
|
|
|
+ + "CASE \n"
|
|
|
+ + " WHEN (SELECT TOP 1 CASE WHEN N.fstaffcount IS NULL THEN 999999 ELSE N.fstaffcount END \n "
|
|
|
+ + " FROM t_haos_adminorg M \n"
|
|
|
+ + " LEFT JOIN t_haos_dutyorgdetail N ON N.fdutyorgid = M.fid \n"
|
|
|
+ + " WHERE M.fenable = '1' \n"
|
|
|
+ + " AND M.fboid = a.fboid \n"
|
|
|
+ + " AND N.fenable = '1' \n"
|
|
|
+ + " AND N.fid = ? \n"
|
|
|
+ + " AND N.fleffdt >= '" + dateStr + "' \n"
|
|
|
+ + " AND M.fbsed <= '" + dateStr + "' \n"
|
|
|
+ + " AND M.fbsled >= '" + dateStr + "' \n"
|
|
|
+ + " ORDER BY M.fhisversion DESC) IS NULL \n"
|
|
|
+ + " THEN 999999 \n"
|
|
|
+ + " ELSE (SELECT TOP 1 CASE WHEN N.fstaffcount IS NULL THEN 999999 ELSE N.fstaffcount END \n"
|
|
|
+ + " FROM t_haos_adminorg M \n"
|
|
|
+ + " LEFT JOIN t_haos_dutyorgdetail N ON N.fdutyorgid = M.fid \n"
|
|
|
+ + " WHERE M.fenable = '1' \n"
|
|
|
+ + " AND M.fboid = a.fboid \n"
|
|
|
+ + " AND N.fenable = '1' \n"
|
|
|
+ + " AND N.fid = ? \n"
|
|
|
+ + " AND N.fleffdt >= '" + dateStr + "' \n"
|
|
|
+ + " AND M.fbsed <= '" + dateStr + "' \n"
|
|
|
+ + " AND M.fbsled >= '" + dateStr + "' \n"
|
|
|
+ + " ORDER BY M.fhisversion DESC) \n"
|
|
|
+ + "END AS staffcount \n"
|
|
|
+
|
|
|
+ + "FROM T_HAOS_ADMINORG A \n"
|
|
|
+ + "LEFT JOIN T_HAOS_STAFFORGEMPCOUNT ST on A.fboid = ST.fuseorgboid \n"
|
|
|
+ + "LEFT JOIN T_HAOS_ADMINSTRUCT T ON A.fboid = T.fadminorgid \n"
|
|
|
+ + "AND T.fiscurrentversion = '0' AND T.fdatastatus = '1' AND T.fstructprojectid = 1010 \n"
|
|
|
+ + "AND T.finitstatus = '2' AND T.fbsed <= '" + dateStr + "' \n"
|
|
|
+ + "AND T.fbsled >= '" + dateStr + "' AND T.fenable = '1' \n"
|
|
|
+ + "LEFT JOIN T_HAOS_ORGSORTCODE S ON S.FADMINORGID = A.fboid \n"
|
|
|
+ + "AND S.fiscurrentversion = '0' AND S.fdatastatus = '1' AND S.finitstatus = '2' \n"
|
|
|
+ + "AND S.fbsed <= '" + dateStr + "' AND S.fbsled >= '" + dateStr + "' \n"
|
|
|
+ + "AND S.fenable = '1' \n"
|
|
|
+ + "LEFT JOIN T_HAOS_DUTYORGDETAIL M ON M.fdutyorgid = A.fboid \n"
|
|
|
+ + "WHERE A.fiscurrentversion = '0' AND A.fdatastatus = '1' AND A.finitstatus = '2' \n"
|
|
|
+ + "AND A.fbsed <= '" + dateStr + "' AND A.fbsled >= '" + dateStr + "' \n"
|
|
|
+ + "AND A.fenable = '1' \n"
|
|
|
+ + "AND ( T.fstructlongnumber LIKE ( select top 1 concat(F.fstructlongnumber,'%') from T_HAOS_ADMINSTRUCT F where F.fadminorgid = ? \n"
|
|
|
+ + "AND A.fboid in (select fuseorgboid from t_haos_useorgdetail where fid = ? \n)"
|
|
|
+ + "AND F.fiscurrentversion = '0' AND F.fdatastatus = '1' AND F.fstructprojectid = 1010 \n"
|
|
|
+ + "AND F.finitstatus = '2' AND F.fbsed <= '" + dateStr + "' \n"
|
|
|
+ + "AND F.fbsled >= '" + dateStr + "' AND F.fenable = '1' \n"
|
|
|
+ +") " +") \n"
|
|
|
+ "ORDER BY S.fsortcode");
|
|
|
// Object[] param = new Object[]{(Long) orgid,haosStaff.getPkValue()};
|
|
|
- Object[] param = new Object[]{pkValue,pkValue,(Long) orgid};
|
|
|
+ Object[] param = new Object[]{pkValue,pkValue,(Long) orgid, pkValue};
|
|
|
DataSet dataSet = HRDBUtil.queryDataSet("haos_adminOrgHisSearch", new DBRoute("hr"), sql.toString(), param);
|
|
|
// DataSet dataSet = DB.queryDataSet("leaseContractPushCard", DBRoute.of("hr"), sql);
|
|
|
|