|
@@ -25,6 +25,7 @@ import com.minto.core.util.StringUtil;
|
|
|
import com.minto.tap.performmance.dto.TaskScoreParam;
|
|
|
import com.minto.tip.common.exceptions.BusinessException;
|
|
|
import com.minto.tip.common.util.PageInfo;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.stereotype.Repository;
|
|
|
|
|
|
@Repository("taskAnalysisDao")
|
|
@@ -2086,6 +2087,8 @@ hql.append("AND EXISTS (\n" +
|
|
|
|
|
|
@Override
|
|
|
public List<Map<String, Object>> findTypeScopeCount(Map<String, Object> params){
|
|
|
+ Map<String, Object> param = new HashMap<>();
|
|
|
+ param.put("year", ParameterUtil.getInteger(params, "year", DateUtil.getYear()));
|
|
|
StringBuilder sql = new StringBuilder();
|
|
|
sql.append(" SELECT te.value AS name, COUNT(1) as c, ");
|
|
|
// sql.append(" SUM(CASE WHEN typeScore.base_score IS NULL THEN 0 ELSE typeScore.base_score END) AS scope1");
|
|
@@ -2103,29 +2106,41 @@ hql.append("AND EXISTS (\n" +
|
|
|
sql.append(" LEFT JOIN type_setting_score typeScore ON typeScore.enum_id = te.id AND typeScore.year = :year ");
|
|
|
sql.append(" WHERE to_char(ts.create_date,'yyyy') = :year ");
|
|
|
sql.append(" and ts.tstate != 7 ");
|
|
|
+ String taskTypeId = ParameterUtil.getString(params, "taskTypeId");
|
|
|
+ if(StringUtils.isNotBlank(taskTypeId)){
|
|
|
+ sql.append("and ts.tasktype_id = :taskTypeId ");
|
|
|
+ param.put("taskTypeId",taskTypeId);
|
|
|
+ }
|
|
|
sql.append(" GROUP BY te.value,te.id ");
|
|
|
String order = ParameterUtil.getString(params,"order","c");
|
|
|
Integer asc = ParameterUtil.getInteger(params,"asc",0);
|
|
|
sql.append(" ORDER BY ").append(order).append(asc == 1 ? " ASC " : " DESC ");
|
|
|
- Map<String, Object> param = new HashMap<>();
|
|
|
- param.put("year", ParameterUtil.getInteger(params, "year", DateUtil.getYear()));
|
|
|
return getHibernateTpl().queryBySql(sql.toString(), param);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public List<Map<String, Object>> findTaskTypeSettingDataAnalysis(Map<String, Object> params){
|
|
|
- String sql = "select te.id as id, te.value as name, te.color as color, (case when te.color is null or te"
|
|
|
- + ".color = '1' then count(CASE WHEN tts.type_state = '1' THEN tts.id END) else sum(CASE WHEN tts.type_state "
|
|
|
- + "is not null THEN tts.type_state else 1 END) end) as c1, (case when te.color is null or te.color = '1' then"
|
|
|
- + " count(tts.id) else count(tts.id) end) as c2 from task_type_setting tts inner join task_summary ts on ts"
|
|
|
- + ".id = tts.reference_id left join (SELECT * FROM tip_enum WHERE type IN ( SELECT id FROM tip_enum WHERE key"
|
|
|
- + " = 'matter_type_settings' ) AND status <> -1 ) te on te.id = tts.type_id where ts.tstate != 7 and to_char"
|
|
|
- + "(ts.create_date,'yyyy') = :year group by te.id, te.value, te.color ";
|
|
|
- String order = ParameterUtil.getString(params, "order", "name");
|
|
|
- Integer asc = ParameterUtil.getInteger(params, "asc", 0);
|
|
|
- sql = sql + (" ORDER BY " + order + (asc == 1 ? " ASC " : " DESC "));
|
|
|
Map<String, Object> param = new HashMap<>();
|
|
|
param.put("year", ParameterUtil.getInteger(params, "year", DateUtil.getYear()));
|
|
|
- return getHibernateTpl().queryBySql(sql, param);
|
|
|
+ StringBuilder sql = new StringBuilder();
|
|
|
+ sql.append("select te.id as id, te.value as name, te.color as color, ");
|
|
|
+ sql.append("(case when te.color is null or te.color = '1' then count(CASE WHEN tts.type_state = '1' THEN tts.id END) ");
|
|
|
+ sql.append("else sum(CASE WHEN tts.type_state is not null THEN tts.type_state else 1 END) end) as c1, ");
|
|
|
+ sql.append("(case when te.color is null or te.color = '1' then count(tts.id) else count(tts.id) end) as c2 ");
|
|
|
+ sql.append("from task_type_setting tts ");
|
|
|
+ sql.append("inner join task_summary ts on ts.id = tts.reference_id ");
|
|
|
+ sql.append("left join (SELECT * FROM tip_enum WHERE type IN ( SELECT id FROM tip_enum WHERE key = 'matter_type_settings' ) AND status <> -1 ) te ");
|
|
|
+ sql.append("on te.id = tts.type_id ");
|
|
|
+ sql.append("where ts.tstate != 7 and to_char(ts.create_date, 'yyyy') = :year ");
|
|
|
+ String taskTypeId = ParameterUtil.getString(params, "taskTypeId");
|
|
|
+ if(StringUtils.isNotBlank(taskTypeId)){
|
|
|
+ sql.append("and ts.tasktype_id = :taskTypeId ");
|
|
|
+ param.put("taskTypeId",taskTypeId);
|
|
|
+ }
|
|
|
+ sql.append("group by te.id, te.value, te.color ");
|
|
|
+ String order = ParameterUtil.getString(params, "order", "name");
|
|
|
+ Integer asc = ParameterUtil.getInteger(params, "asc", 0);
|
|
|
+ sql.append(" ORDER BY ").append(order).append(asc == 1 ? " ASC " : " DESC ");
|
|
|
+ return getHibernateTpl().queryBySql(sql.toString(), param);
|
|
|
}
|
|
|
}
|