package com.yizhao.action;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;
import android.util.Log;
import com.google.gson.Gson;
import com.google.gson.JsonParseException;
import com.google.gson.reflect.TypeToken;
import com.yizhao.bean.DetailShopsBean;
import com.yizhao.bean.HotProductBean;
import com.yizhao.bean.ProductDetailBean;
import com.yizhao.bean.ReceiveBean;
import com.yizhao.bean.SearchBean;
import com.yizhao.core.Const;
import com.yizhao.core.HttpManager;
public class ProductAction {
/**
* 获取热门产品,此处是5个热门产品及5个促销产品
* @return
*/
public static HotProductBean getHotProduct(){
HotProductBean bean = null;
List<NameValuePair> params = new ArrayList<NameValuePair>();
String s = new HttpManager(Const.HOT_URL).submitRequest(params);
//String s = "{\"result\":\"true\",\"popFileList\":[{\"id\":\"71f1039617ec1f6f66aafb95e9cd7903\",\"category\":\"channel1\",\"name\":\"Apple/苹果 iphone 3GS(8G) 联通版\",\"coverImage\":\"2051013649952884228.jpg\",\"lowprice\":10700,\"highprice\":34200,\"reviews\":34,\"shops\":4},{\"id\":\"71f1039617ec1f6f66aafb95e9cd7903\",\"category\":\"channel1\",\"name\":\"Apple/苹果 iphone 3GS(8G) 联通版\",\"coverImage\":\"2051013649952884228.jpg\",\"lowprice\":10700,\"highprice\":34200,\"reviews\":34,\"shops\":4}],\"popSize\":2,\"promFileList\":[{\"id\":\"compulte_1\",\"name\":\"sales_promotion_product_name1\"},{\"id\":\"compulte_2\",\"name\":\"sales_promotion_product_name2\"}],\"promSize\":2}";
Log.d(Const.TAG, "ProductAction.getHotProduct|jsonStr="+s);
if(s!=null && !"".equals(s)){
Gson gson = new Gson();
try{
bean = gson.fromJson(s,new TypeToken<HotProductBean>(){}.getType());
}catch(JsonParseException e){
Log.e(Const.TAG, "ProductAction.getHotProduct|JsonParseException",e);
}
}
return bean;
}
/**
* 搜索产品
* @param map
* @return
*/
public static SearchBean getSearchBean(Map<String, String> map){
Log.d(Const.TAG, "ProductAction.getSearchBean|map="+map+",keyworld="+URLEncoder.encode(map.get("n")));
SearchBean bean = null;
String from = map.get("from");
List<NameValuePair> params = new ArrayList<NameValuePair>();
if("product".equals(from)){
params.add(new BasicNameValuePair("c", map.get("n")));
}else{
params.add(new BasicNameValuePair("n", map.get("n")));
}
params.add(new BasicNameValuePair("p", map.get("p")));
params.add(new BasicNameValuePair("psize", Const.PAGE_SIZE));
String s = new HttpManager(Const.SEARCH_URL).submitRequest(params);
//String s = "{\"result\":\"true\",\"filelist\":[{\"id\":\"71f1039617ec1f6f66aafb95e9cd7903\",\"category\":\"channel1\",\"name\":\"Apple/苹果 iphone 3GS(8G) 联通版\",\"coverImage\":\"2051013649952884228.jpg\",\"refprice\":10700,\"shops\":123,\"reviews\":12},{\"id\":\"71f1039617ec1f6f66aafb95e9cd7903\",\"category\":\"channel1\",\"name\":\"Apple/苹果 iphone 3GS(16G) 移动版\",\"coverImage\":\"2051013649952884228.jpg\",\"refprice\":10700,\"shops\":123,\"reviews\":12}],\"size\":3,\"total\":253,\"page\":1}";
Log.d(Const.TAG, "ProductAction.getSearchBean|jsonStr="+s);
if(s!=null && !"".equals(s)){
Gson gson = new Gson();
try{
bean = gson.fromJson(s,new TypeToken<SearchBean>(){}.getType());
}catch(JsonParseException e){
Log.e(Const.TAG, "ProductAction.getSearchBean|JsonParseException",e);
}
}
return bean;
}
/**
* 根据产品ID获取详情
* @param map
* @return
*/
public static ProductDetailBean getProductDetail(Map<String, String> map){
Log.d(Const.TAG, "ProductAction.getProductDetail|map="+map);
ProductDetailBean bean = null;
//设置HTTP POST请求参数必须用NameValuePair对象
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("id", map.get("product_id")));
String s = new HttpManager(Const.DETAIL_URL).submitRequest(params);
//String s = "{\"result\":\"true\",\"id\":\"71f1039617ec1f6f66aafb95e9cd7903\",\"category\":\"channel\",\"name\":\"product_name\",\"coverImage\":\"2051013649952884228.jpg\",\"highprice\":560000,\"lowprice\":380000,\"shops\":125,\"reviews\":344,\"photos\":\"2051013649952884228.jpg|2051013649952884228.jpg\",\"fileList\":[{\"shopName\":\"shopname1\",\"price\":5410000,\"sellUrl\":\"www.baidu.com\"},{\"shopName\":\"shopname2\",\"price\":5410000,\"sellUrl\":\"www.baidu.com\"}],\"size\":2}";
if(s!=null && !"".equals(s)){
Gson gson = new Gson();
try{
bean = gson.fromJson(s,new TypeToken<ProductDetailBean>(){}.getType());
}catch(JsonParseException e){
Log.e(Const.TAG, "ProductAction.getProductDetail|JsonParseException",e);
}
}
return bean;
}
/**
* 根据产品ID获取评论
* @param map
* @return
*/
public static ReceiveBean getProductReceive(Map<String, String> map){
ReceiveBean bean = null;
Log.d(Const.TAG, "ProductAction.getProductReceive|map="+map);
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("id", map.get("product_id")));
params.add(new BasicNameValuePair("p", map.get("p")));
params.add(new BasicNameValuePair("psize", Const.PAGE_SIZE));
String s = new HttpManager(Const.REVIEWS_URL).submitRequest(params);
//String s = "{\"result\":\"true\",\"id\":\"71f1039617ec1f6f66aafb95e9cd7903\",\"name\":\"product_name1\",\"reviews\":2,\"fileList\":[{\"author\":\"张三\",\"writeTime\":1234567000,\"fromType\":1,\"from\":\"一找网\",\"content\":\"屏幕高分辨率,整体感觉比较好,速度比3GS快,全新的A4处理器,性价比高\"},{\"author\":\"李四\",\"writeTime\":1234567000,\"fromType\":1,\"from\":\"百度网\",\"content\":\"屏幕高分辨率,整体感觉比较好,速度比3GS快,全新的A4处理器,性价比高\"}],\"size\":2,\"page\":1}";
if(s!=null && !"".equals(s)){
Gson gson = new Gson();
try{
bean = gson.fromJson(s,new TypeToken<ReceiveBean>(){}.getType());
}catch(JsonParseException e){
Log.e(Const.TAG, "ProductAction.getProductReceive|JsonParseException",e);
}
}
return bean;
}
/**
* 根据产品ID获取商家列表
* @param map
* @return
*/
public static DetailShopsBean getProductShops(Map<String, String> map){
DetailShopsBean bean = null;
Log.d(Const.TAG, "ProductAction.getProductShops|map="+map);
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("id", map.get("product_id")));
params.add(new BasicNameValuePair("p", map.get("p")));
params.add(new BasicNameValuePair("psize", Const.PAGE_SIZE));
String s = new HttpManager(Const.SHOPS_URL).submitRequest(params);
//String s = "{\"result\":\"true\",\"id\":\"71f1039617ec1f6f66aafb95e9cd7903\",\"name\":\"product_name1\",\"shops\":2,\"fileList\":[{\"shopName\":\"shopname1\",\"price\":5410000,\"sellUrl\":\"www.baidu.com\"},{\"shopName\":\"shopname2\",\"price\":5610000,\"sellUrl\":\"www.qq.com\"}],\"size\":2,\"page\":1}";
if(s!=null && !"".equals(s)){
Gson gson = new Gson();
try{
bean = gson.fromJson(s,new TypeToken<DetailShopsBean>(){}.getType());
}catch(JsonParseException e){
Log.e(Const.TAG, "ProductAction.getProductShops|JsonParseException",e);
}
}
return bean;
}
}