package com.jiuqi.mobile.nigo.comeclose.manager.app; import java.io.Serializable; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import com.jiuqi.mobile.nigo.comeclose.bean.SelectKey; /** * 消息查询KEY</br> * 20130724 add 参数为0是当null处理 * @author modi * */ public class SelectNewsKey extends SelectKey implements Serializable{ private final List<SelectNewsParam> params = new ArrayList<SelectNewsParam>(); public SelectNewsKey(){ } public SelectNewsKey(int size){ super(size); } public List<SelectNewsParam> getParams() { return params; } // Integer newsType, Integer carType, Integer cropType, Double minPrice, Double , Long adminAreaCode // void foo(){ // addParams(new SelectNewsParam("newsType", DataDictionaryBean bean OR int code), new SelectNewsParam("carType", DataDictionaryBean bean OR int code) // , new SelectNewsParam("cropType", DataDictionaryBean bean OR int code), new SelectNewsParam("adminAreaCode", AdminAreaBean bean OR long code) // , new SelectNewsParam("price", double minPrice, double maxPrice)); // // } /** * addParams(new SelectNewsParam("newsType", DataDictionaryBean bean OR int code), * <p> * new SelectNewsParam("cropType", DataDictionaryBean bean OR int code), * <p> * new SelectNewsParam("adminAreaCode", AdminAreaBean bean OR long code), * <p> * new SelectNewsParam("createDate", Date date OR long date), * <p> * new SelectNewsParam("price", double minPrice, double maxPrice)); * <p> * @param params * @return */ public SelectNewsKey addParams(SelectNewsParam... params) { // this.params = params; this.params.addAll(Arrays.asList(params)); return this; } /** * 农机信息查询 * <link>CarTaskNewsBean</link> * @param newsType * @param carType * @param cropType * @param minPrice * @param maxPrice * @param adminAreaCode */ public void setCarTaskNewsParams(Integer newsType, Long carType, Integer cropType, Double minPrice, Double maxPrice, Long adminAreaCode){ params.clear(); addParam("newsType", newsType); addParam("carTypeNew", carType); addParam("cropType", cropType); addParam("adminAreaCode", adminAreaCode); addParams(new SelectNewsParam("price", minPrice, maxPrice)); } // 查询类型: 机收信息 农作物类别: 请选择 价格范围: 请选择 所在地: 省份 地市 区县 /** * 作业信息查询 * <link>WorkTaskNewsBean</link> * @param newsType * @param workType 农作物类别 * @param minPrice * @param maxPrice * @param adminAreaCode */ public void setWorkTaskNewsParams(Integer newsType, Integer workType, Double minPrice, Double maxPrice, Long adminAreaCode){ params.clear(); addParam("newsType", newsType); addParam("workType", workType); addParam("adminAreaCode", adminAreaCode); addParams(new SelectNewsParam("price", minPrice, maxPrice)); } // 查询类型: 机收信息 农作物类别: 请选择 价格范围: 请选择 所在地: 省份 地市 区县 /** * 作业信息查询 * <link>WorkTaskNewsBean</link> * @param newsType * @param workType 农作物类别 * @param minPrice * @param maxPrice * @param adminAreaCode */ public void setWorkTaskNewsParamsNew(Integer newsType, Integer workType, Double etPrice, Long adminAreaCode){ params.clear(); addParam("newsType", newsType); addParam("workType", workType); addParam("adminAreaCode", adminAreaCode); if (etPrice == 0.0) { }else { addParams(new SelectNewsParam("minPrice", null, etPrice)); addParams(new SelectNewsParam("maxPrice", etPrice, null)); } } // 查询类型: 供应信息 商品种类: 请选择 商品名称: 所在地: 省份 地市 区县 /** * 供需信息查询 * <link>SupplyAndDemandTaskNewsBean</link> * @param newsType * @param goodsType * @param goodsName * @param adminAreaCode */ public void setSupplyAndDemandTaskNewsParams(Integer newsType, Integer goodsType, String goodsName, Long adminAreaCode){ params.clear(); addParam("newsType", newsType); addParam("goodsType", goodsType); // addParam("goodsName", goodsName); SelectNewsParam p = new SelectNewsParam("goodsName"); p.setSearch(goodsName); addParams(p); addParam("adminAreaCode", adminAreaCode); } /** * 公告通知类信息查询 * <link>NoticeNewsBean</link> * @param newsType * @param adminAreaCode */ public void setNoticeNewsParams(Integer newsType, Long adminAreaCode){ params.clear(); addParam("newsType", newsType); addParam("adminAreaCode", adminAreaCode); } /** * @Title: addParam * @Description: 内部方法,添加参数 * @param @param key * @param @param value 设定文件 * @return void 返回类型 * @throws */ private void addParam(String key, Object value) { if(null == value || value.equals(0)){ return; }else if(value instanceof Long&&(Long)value==0l){ return ; } if(value instanceof Long&&(Long)value==999999l){ value=0; } this.params.add(new SelectNewsParam(key, value)); } }