List of usage examples for org.apache.ibatis.jdbc SQL SQL
SQL
From source file:com.baifendian.swordfish.dao.mapper.ExecutionFlowMapperProvider.java
License:Apache License
/** * ??//w ww . ja va 2 s .c om */ public String sumByFlowIdAndTimesAndStatus(Map<String, Object> parameter) { List<FlowStatus> flowStatuses = (List<FlowStatus>) parameter.get("status"); List<String> workflowList = (List<String>) parameter.get("workflowList"); List<String> workflowList2 = new ArrayList<>(); Date startDate = (Date) parameter.get("startDate"); Date endDate = (Date) parameter.get("endDate"); if (CollectionUtils.isNotEmpty(workflowList)) { for (String workflow : workflowList) { workflowList2.add("\"" + workflow + "\""); } } List<String> flowStatusStrList = new ArrayList<>(); if (CollectionUtils.isNotEmpty(flowStatuses)) { for (FlowStatus status : flowStatuses) { flowStatusStrList.add(String.valueOf(status.ordinal())); } } String where = String.join(",", flowStatusStrList); return new SQL() { { SELECT("count(0)"); FROM(TABLE_NAME + " e_f"); JOIN("project_flows p_f on e_f.flow_id = p_f.id"); JOIN("project p on p_f.project_id = p.id"); WHERE("p.name = #{projectName}"); if (CollectionUtils.isNotEmpty(workflowList)) { WHERE("p_f.name in (" + String.join(",", workflowList2) + ")"); } if (startDate != null && endDate != null) { WHERE("start_time >= #{startDate}"); WHERE("start_time <= #{endDate}"); } if (CollectionUtils.isNotEmpty(flowStatuses)) { WHERE("`status` in (" + where + ") "); } } }.toString(); }
From source file:com.baifendian.swordfish.dao.mapper.ExecutionFlowMapperProvider.java
License:Apache License
/** * @param parameter// w w w .ja v a 2s . c om * @return */ public String selectStateByProject(Map<String, Object> parameter) { String sql = new SQL() { { SELECT("str_to_date(DATE_FORMAT(e_f.start_time,'%Y%m%d'),'%Y%m%d') as day,\n" + "SUM(case e_f.status when 0 then 1 else 0 end) as INIT,\n" + "SUM(case e_f.status when 1 then 1 else 0 end) as WAITING_DEP,\n" + "SUM(case e_f.status when 2 then 1 else 0 end) as WAITING_RES,\n" + "SUM(case e_f.status when 3 then 1 else 0 end) as RUNNING,\n" + "SUM(case e_f.status when 4 then 1 else 0 end) as SUCCESS,\n" + "SUM(case e_f.status when 5 then 1 else 0 end) as `KILL`,\n" + "SUM(case e_f.status when 6 then 1 else 0 end) as `FAILED`,\n" + "SUM(case e_f.status when 7 then 1 else 0 end) as `DEP_FAILED`,\n" + "SUM(case e_f.status when 8 then 1 else 0 end) as `INACTIVE`"); FROM(TABLE_NAME + " e_f"); JOIN("project_flows p_f on e_f.flow_id = p_f.id"); WHERE("e_f.start_time >= #{startDate} AND e_f.start_time <= #{endDate}"); WHERE("p_f.project_id = #{projectId}"); GROUP_BY("day"); } }.toString(); return sql; }
From source file:com.baifendian.swordfish.dao.mapper.ExecutionFlowMapperProvider.java
License:Apache License
/** * @param parameter//from w w w . jav a2s. co m * @return */ public String selectStateHourByProject(Map<String, Object> parameter) { return new SQL() { { SELECT("CONVERT(DATE_FORMAT(e_f.start_time,'%H'),SIGNED) as hour,\n" + "SUM(case e_f.status when 0 then 1 else 0 end) as INIT,\n" + "SUM(case e_f.status when 1 then 1 else 0 end) as WAITING_DEP,\n" + "SUM(case e_f.status when 2 then 1 else 0 end) as WAITING_RES,\n" + "SUM(case e_f.status when 3 then 1 else 0 end) as RUNNING,\n" + "SUM(case e_f.status when 4 then 1 else 0 end) as SUCCESS,\n" + "SUM(case e_f.status when 5 then 1 else 0 end) as `KILL`,\n" + "SUM(case e_f.status when 6 then 1 else 0 end) as `FAILED`,\n" + "SUM(case e_f.status when 7 then 1 else 0 end) as `DEP_FAILED`,\n" + "SUM(case e_f.status when 8 then 1 else 0 end) as `INACTIVE`"); FROM(TABLE_NAME + " e_f"); JOIN("project_flows p_f on e_f.flow_id = p_f.id"); WHERE("str_to_date(DATE_FORMAT(e_f.start_time,'%Y%m%d'),'%Y%m%d') = #{day}"); WHERE("p_f.project_id = #{projectId}"); GROUP_BY("hour"); } }.toString(); }
From source file:com.baifendian.swordfish.dao.mapper.ExecutionFlowMapperProvider.java
License:Apache License
/** * @param parameter//from w w w . ja v a 2s.c o m * @return */ public String selectDurationsByProject(Map<String, Object> parameter) { String sql1 = new SQL() { { SELECT("timestampdiff(SECOND,start_time,if(end_time is null,now(),end_time)) as duration"); SELECT("p_f.name as flow_name"); SELECT("u.name as owner_name"); SELECT("e_f.*"); FROM(TABLE_NAME + " e_f"); JOIN("project_flows p_f on e_f.flow_id = p_f.id"); JOIN("user u on p_f.owner = u.id"); WHERE("str_to_date(DATE_FORMAT(e_f.start_time,'%Y%m%d'),'%Y%m%d') = #{date}"); WHERE("p_f.project_id = #{projectId}"); ORDER_BY("duration DESC"); } }.toString() + " limit #{top}"; return new SQL() { { SELECT("s1.*"); SELECT("u.name as proxyUser"); FROM("(" + sql1 + ") s1"); LEFT_OUTER_JOIN("user u on s1.proxy_user = u.id"); } }.toString(); }
From source file:com.baifendian.swordfish.dao.mapper.ExecutionFlowMapperProvider.java
License:Apache License
/** * @param parameter/*from w w w. j a v a 2s.c o m*/ * @return */ public String selectErrorsByProject(Map<String, Object> parameter) { return new SQL() { { SELECT("count(0) as times"); SELECT("p_f.name as flow_name"); SELECT("u.name as owner_name"); SELECT("p.name as projectName"); SELECT("p_f.proxy_user"); FROM(TABLE_NAME + " e_f"); JOIN("project_flows p_f on e_f.flow_id = p_f.id"); JOIN("user u on p_f.owner = u.id"); JOIN("project p on p_f.project_id = p.id"); WHERE("str_to_date(DATE_FORMAT(e_f.start_time,'%Y%m%d'),'%Y%m%d') = #{date}"); WHERE("e_f.status in (" + FlowStatus.FAILED.ordinal() + "," + FlowStatus.DEP_FAILED.ordinal() + ")"); WHERE("p.id = #{projectId}"); GROUP_BY("e_f.flow_id"); ORDER_BY("times DESC"); } }.toString() + " limit #{top}"; }
From source file:com.baifendian.swordfish.dao.mapper.ExecutionFlowMapperProvider.java
License:Apache License
/** * @param parameter//from ww w . j a v a2 s. c o m * @return */ public String selectPreDate(Map<String, Object> parameter) { return new SQL() { { SELECT("*"); FROM(TABLE_NAME); WHERE("schedule_time <= #{date}"); WHERE("flow_id = #{flowId}"); ORDER_BY("schedule_time DESC"); } }.toString() + " limit 1"; }
From source file:com.baifendian.swordfish.dao.mapper.ExecutionFlowMapperProvider.java
License:Apache License
/** * @param parameter//from ww w . java2s . c om * @return */ public String selectPreDate2(Map<String, Object> parameter) { return new SQL() { { SELECT("*"); FROM(TABLE_NAME); WHERE("schedule_time < #{date}"); WHERE("flow_id = #{flowId}"); ORDER_BY("schedule_time DESC"); } }.toString() + " limit 1"; }
From source file:com.baifendian.swordfish.dao.mapper.ExecutionFlowMapperProvider.java
License:Apache License
/** * @param parameter//w w w. ja va 2 s.c o m * @return */ public String selectPreStartDate(Map<String, Object> parameter) { return new SQL() { { SELECT("*"); FROM(TABLE_NAME); WHERE("start_time <= #{date}"); WHERE("flow_id = #{flowId}"); ORDER_BY("start_time DESC"); } }.toString() + " limit 1"; }
From source file:com.baifendian.swordfish.dao.mapper.ExecutionFlowMapperProvider.java
License:Apache License
public String selectByStartTimeAndScheduleTime(Map<String, Object> parameter) { return new SQL() { {//from w w w. ja v a 2 s .c om SELECT("*"); FROM(TABLE_NAME); WHERE("schedule_time < #{scheduleTime}"); WHERE("start_time > #{startTime}"); WHERE("flow_id = #{flowId}"); ORDER_BY("schedule_time,start_time DESC"); } }.toString() + " limit 1"; }
From source file:com.baifendian.swordfish.dao.mapper.ExecutionFlowMapperProvider.java
License:Apache License
/** * ?flowIdScheduleTimeExecutionFlow/* w w w. j a va 2 s .co m*/ */ public String selectExecutionFlowByScheduleTime(Map<String, Object> parameter) { return new SQL() { { SELECT("*"); FROM(TABLE_NAME); WHERE("flow_id = #{flowId}"); WHERE("schedule_time = #{scheduleTime}"); ORDER_BY("id desc"); } }.toString() + " limit 0,1"; }