Example usage for org.apache.ibatis.jdbc SQL SQL

List of usage examples for org.apache.ibatis.jdbc SQL SQL

Introduction

In this page you can find the example usage for org.apache.ibatis.jdbc SQL SQL.

Prototype

SQL

Source Link

Usage

From source file:com.baifendian.swordfish.dao.mapper.StreamingJobMapperProvider.java

License:Apache License

/**
 * ??/*from   w  w w.  j av a 2  s  . c om*/
 *
 * @param parameter
 * @return
 */
public String updateStreamingJob(Map<String, Object> parameter) {
    return new SQL() {
        {
            UPDATE(TABLE_NAME);

            SET("`desc`=#{job.desc}");
            SET("`modify_time`=#{job.modifyTime}");
            SET("`owner`=#{job.ownerId}");
            SET("`parameter`=#{job.parameter}");
            SET("`user_defined_params`=#{job.userDefinedParams}");
            SET("`notify_type`=" + EnumFieldUtil.genFieldStr("job.notifyType", NotifyType.class));
            SET("`notify_mails`=#{job.notifyMails}");

            WHERE("id = #{job.id}");
        }
    }.toString();
}

From source file:com.baifendian.swordfish.dao.mapper.StreamingJobMapperProvider.java

License:Apache License

/**
 * ?/*w  ww .ja  v a 2 s.  c  o m*/
 *
 * @param parameter
 * @return
 */
public String selectProjectStreamingCount(Map<String, Object> parameter) {
    return new SQL() {
        {
            SELECT("count(0)");

            FROM(TABLE_NAME);

            WHERE("project_id = #{projectId}");
        }
    }.toString();
}

From source file:com.baifendian.swordfish.dao.mapper.StreamingJobMapperProvider.java

License:Apache License

/**
 * ??//w ww  .  ja v  a 2 s  .  c  o m
 *
 * @param parameter
 * @return
 */
public String queryProjectStreamingJobs(Map<String, Object> parameter) {
    return new SQL() {
        {
            SELECT("s.owner as owner_id");
            SELECT("p.name as project_name");
            SELECT("u.name as owner_name");
            SELECT("s.*");

            FROM(TABLE_NAME + " s");

            JOIN("project p on s.project_id = p.id");
            JOIN("user u on s.owner = u.id");

            WHERE("s.project_id = #{projectId}");
        }
    }.toString();
}

From source file:com.baifendian.swordfish.dao.mapper.StreamingResultMapperProvider.java

License:Apache License

public String insert(Map<String, Object> parameter) {
    return new SQL() {
        {// w w w.  j av a2s  .c  om
            INSERT_INTO(TABLE_NAME);

            VALUES("`worker`", "#{result.worker}");
            VALUES("`streaming_id`", "#{result.streamingId}");
            VALUES("`parameter`", "#{result.parameter}");
            VALUES("`user_defined_params`", "#{result.userDefinedParams}");
            VALUES("`submit_user`", "#{result.submitUserId}");
            VALUES("`submit_time`", "#{result.submitTime}");
            VALUES("`queue`", "#{result.queue}");
            VALUES("`proxy_user`", "#{result.proxyUser}");
            VALUES("`schedule_time`", "#{result.scheduleTime}");
            VALUES("`start_time`", "#{result.startTime}");
            VALUES("`end_time`", "#{result.endTime}");
            VALUES("`status`", EnumFieldUtil.genFieldStr("result.status", FlowStatus.class));
            VALUES("`app_links`", "#{result.appLinks}");
            VALUES("`job_links`", "#{result.jobLinks}");
            VALUES("`job_id`", "#{result.jobId}");
        }
    }.toString();
}

From source file:com.baifendian.swordfish.dao.mapper.StreamingResultMapperProvider.java

License:Apache License

/**
 * ???/*from  ww  w  .ja  v a  2 s. c o  m*/
 * for example: select * from table where id=(select max(id) from table where field=xxx limit 1);
 *
 * @param parameter
 * @return
 */
public String findLatestDetailByStreamingId(Map<String, Object> parameter) {
    String subSql = new SQL() {
        {
            SELECT("max(id)");

            FROM(TABLE_NAME);

            WHERE("streaming_id = #{streamingId}");
        }
    }.toString() + " limit 1";

    return constructCommonDetailSQL().WHERE("r.id = " + "(" + subSql + ")").toString();
}

From source file:com.baifendian.swordfish.dao.mapper.StreamingResultMapperProvider.java

License:Apache License

/**
 *  id //from  w w  w .  j a  v  a  2  s .c om
 *
 * @param parameter
 * @return sql ?
 */
public String updateResult(Map<String, Object> parameter) {
    return new SQL() {
        {
            UPDATE(TABLE_NAME);

            SET("`worker` = #{result.worker}");
            SET("`parameter` = #{result.parameter}");
            SET("`user_defined_params` = #{result.userDefinedParams}");
            SET("`submit_user` = #{result.submitUserId}");
            SET("`submit_time` = #{result.submitTime}");
            SET("`queue` = #{result.queue}");
            SET("`proxy_user` = #{result.proxyUser}");
            SET("`schedule_time` = #{result.scheduleTime}");
            SET("`start_time` = #{result.startTime}");
            SET("`end_time` = #{result.endTime}");
            SET("`status` = " + EnumFieldUtil.genFieldStr("result.status", FlowStatus.class));
            SET("`app_links` = #{result.appLinks}");
            SET("`job_links` = #{result.jobLinks}");
            SET("`job_id` = #{result.jobId}");

            WHERE("id = #{result.execId}");
        }
    }.toString();
}

From source file:com.baifendian.swordfish.dao.mapper.StreamingResultMapperProvider.java

License:Apache License

/**
 *  id//from   www.j  a v  a2 s. co  m
 *
 * @param parameter
 * @return
 */
public String queryProject(Map<String, Object> parameter) {
    return new SQL() {
        {
            SELECT("p.*");

            FROM("project p");

            JOIN("streaming_job s on p.id = s.project_id");
            JOIN(TABLE_NAME + " as r on s.id = r.streaming_id");

            WHERE("r.id=#{execId}");
        }
    }.toString();
}

From source file:com.baifendian.swordfish.dao.mapper.StreamingResultMapperProvider.java

License:Apache License

/**
 * ???/*from  www .  j  a  v a2  s  .co m*/
 *
 * @param parameter
 * @return
 */
public String findLatestDetailByProjectAndNames(Map<String, Object> parameter) {
    List<String> nameList = (List<String>) parameter.get("nameList");

    String subSql = new SQL() {
        {
            SELECT("max(id)");

            FROM(TABLE_NAME);

            WHERE("p.id=#{projectId}");

            if (CollectionUtils.isNotEmpty(nameList)) {
                String names = "\"" + String.join("\", \"", nameList) + "\"";
                WHERE("s.name in (" + names + ")");
            }

            GROUP_BY("streaming_id");
        }
    }.toString();

    return constructCommonDetailSQL().WHERE("r.id in " + "(" + subSql + ")").toString();
}

From source file:com.baifendian.swordfish.dao.mapper.StreamingResultMapperProvider.java

License:Apache License

/**
 * ???/*from   w  w w . j ava2s  . co m*/
 *
 * @param parameter
 * @return
 */
public String findByMultiCondition(Map<String, Object> parameter) {
    List<Integer> status = (List<Integer>) parameter.get("status");
    String name = (String) parameter.get("name");

    Date startDate = (Date) parameter.get("startDate");
    Date endDate = (Date) parameter.get("endDate");

    SQL sql = constructCommonDetailSQL().WHERE("s.project_id = #{projectId}");

    if (startDate != null) {
        sql = sql.WHERE("schedule_time >= #{startDate}");
    }

    if (endDate != null) {
        sql = sql.WHERE("schedule_time < #{endDate}");
    }

    // ?
    if (StringUtils.isNotEmpty(name)) {
        sql = sql.WHERE("s.name like '" + name + "%'");
    }

    if (CollectionUtils.isNotEmpty(status)) {
        sql = sql.WHERE("`status` in (" + StringUtils.join(status, ",") + ")");
    }

    String subClause = sql.toString();

    String sqlClause = new SQL() {
        {
            SELECT("*");

            FROM("(" + subClause + ") e_f");
        }
    }.toString() + " order by schedule_time DESC limit #{start},#{limit}";

    return sqlClause;
}

From source file:com.baifendian.swordfish.dao.mapper.StreamingResultMapperProvider.java

License:Apache License

/**
 * /* w w  w. j  a v  a2 s.com*/
 *
 * @param parameter
 * @return
 */
public String findCountByMultiCondition(Map<String, Object> parameter) {
    List<Integer> status = (List<Integer>) parameter.get("status");
    String name = (String) parameter.get("name");

    Date startDate = (Date) parameter.get("startDate");
    Date endDate = (Date) parameter.get("endDate");

    return new SQL() {
        {
            SELECT("count(0)");

            FROM(TABLE_NAME + " r");

            JOIN("streaming_job s on r.streaming_id = s.id");

            if (startDate != null) {
                WHERE("schedule_time >= #{startDate}");
            }

            if (endDate != null) {
                WHERE("schedule_time < #{endDate}");
            }

            WHERE("s.project_id=#{projectId}");

            // ?
            if (StringUtils.isNotEmpty(name)) {
                WHERE("s.name like '" + name + "%'");
            }

            if (CollectionUtils.isNotEmpty(status)) {
                WHERE("`status` in (" + StringUtils.join(status, ",") + ")");
            }

        }
    }.toString();
}