Agent.java 1.3 KB
package com.air.model;

import java.util.List;

import com.air.model.base.BaseAgent;
import com.jfinal.kit.StrKit;
import com.jfinal.plugin.activerecord.Page;

@SuppressWarnings("serial")
public class Agent extends BaseAgent<Agent> {
	public static final Agent dao = new Agent();

	public String table() {
		return "WDS_"+getClass().getSimpleName();
	}

	public List<Agent> search(String code) {
		if (StrKit.isBlank(code) || code.length() < 2) {
			return null;
		}

		String sql = "select * from " + table() + " where agentCode like '%" + code + "%'";
		return find(sql);
	}

	/**
	 * 查询
	 * 
	 * @param page
	 *            页码
	 * @param pageNum
	 *            每页数量
	 * @param key
	 *            关键字
	 */
	public Page<Agent> search(int page, int pageNum, String key) {
		String orderBy = " order by id desc";
		String listSql = buildListSql(key);
		Page<Agent> dataList = paginate(page, pageNum, "select *", listSql + orderBy);
		return dataList;
	}

	private String buildListSql(String key) {
		StringBuilder sb = new StringBuilder();
		String table = table();
		sb.append(" from " + table);
		sb.append(" where id>0");
		if (!StrKit.isBlank(key)) {
			// 搜索
			sb.append(" and (nameCN like '%" + key + "%'");
			sb.append(" or manager like '%" + key + "%'");
			sb.append(" or phone like '%" + key + "%')");
		}

		return sb.toString();
	}
}