diff --git a/src/main/java/com/weaver/seconddev/jcldoor/cmd/PortalPerformanceInfoCmd.java b/src/main/java/com/weaver/seconddev/jcldoor/cmd/PortalPerformanceInfoCmd.java index 2d18baa..bc9230b 100644 --- a/src/main/java/com/weaver/seconddev/jcldoor/cmd/PortalPerformanceInfoCmd.java +++ b/src/main/java/com/weaver/seconddev/jcldoor/cmd/PortalPerformanceInfoCmd.java @@ -145,25 +145,25 @@ public class PortalPerformanceInfoCmd { log.error("startDay:"+startDay); log.error("endDay:"+endDay); - if(StringUtils.isNotBlank(startDay) && StringUtils.isNotBlank(endDay)){ - String sql =" select scheme_id " + - " from hr_kpi_scheme_flow_log_detail " + - " where user_id=? \n" + - " and date_type='month' \n" + - " and real_period >= ? \n" + - " and real_period <=? " ; - - List strlist = new ArrayList<>(100); - strlist.add(employeeId); - strlist.add(startDay); - strlist.add(endDay); - List sqlparam = databaseUtils.getSqlParamEntity(strlist); - Map result = databaseUtils.executeForQuery(sourceType, groupId, sql, sqlparam); - List> recordList = databaseUtils.getDataSourceList(result); - if (CollectionUtils.isNotEmpty(recordList)) { - Map recordMap = recordList.get(0); - if (!recordMap.isEmpty()) { - kpi_scheme = String.valueOf(recordMap.get("scheme_id")); + String sql =" select scheme_id " + + " from hr_kpi_scheme_flow_log_detail " + + " where user_id=? \n" + + " and date_type='month' \n" + + " order by real_period desc " ; + + List strlist = new ArrayList(); + strlist.add(employeeId); + strlist.add(startDay); + strlist.add(endDay); + List sqlparam = databaseUtils.getSqlParamEntity(strlist); + Map result = databaseUtils.executeForQuery(sourceType, groupId, sql, sqlparam); + List> recordList = databaseUtils.getDataSourceList(result); + if (CollectionUtils.isNotEmpty(recordList)) { + for(int i=0;i recordMap = recordList.get(i); + kpi_scheme = String.valueOf(recordMap.get("scheme_id")); + if(StringUtils.isNotBlank(kpi_scheme)){ + break; } } } @@ -175,11 +175,10 @@ public class PortalPerformanceInfoCmd { dataMap.put("yearmonth", real_period); dataMap.put("real_period", real_period); dataMap.put("kpi_scheme", kpi_scheme); - dataMap.put("startDay", startDay); dataMap.put("endDay", endDay); }else{ - String sql =" select left(k.real_period,10) as real_period,left(k.real_period,7) as period_month,k.kpi_scheme,k.score\n" + + sql =" select k.kpi_scheme\n" + " from (select real_period,kpi_scheme,score\n" + " from hr_kpi_flow \n" + " where kpi_user=? \n" + @@ -192,19 +191,17 @@ public class PortalPerformanceInfoCmd { log.error("sql20-1:" + sql); - List strlist = new ArrayList<>(100); + strlist = new ArrayList<>(100); strlist.add(employeeId); strlist.add(tenant_key); - List sqlparam = databaseUtils.getSqlParamEntity(strlist); - Map result = databaseUtils.executeForQuery(sourceType, groupId, sql, sqlparam); - List> recordList = databaseUtils.getDataSourceList(result); + sqlparam = databaseUtils.getSqlParamEntity(strlist); + result = databaseUtils.executeForQuery(sourceType, groupId, sql, sqlparam); + recordList = databaseUtils.getDataSourceList(result); if (CollectionUtils.isNotEmpty(recordList)) { Map recordMap = recordList.get(0); if (!recordMap.isEmpty()) { - score = String.valueOf(recordMap.get("score")); kpi_scheme = String.valueOf(recordMap.get("kpi_scheme")); - real_period = String.valueOf(recordMap.get("real_period")); } } dataMap.put("score", score);