package com.yeshi.fanli.controller.admin;
|
|
import java.io.PrintWriter;
|
import java.util.ArrayList;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
import javax.annotation.Resource;
|
|
import org.springframework.stereotype.Controller;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
import com.google.gson.Gson;
|
import com.google.gson.GsonBuilder;
|
import com.yeshi.fanli.entity.bus.recommend.RecommendSectionGoods;
|
import com.yeshi.fanli.entity.taobao.PidUser;
|
import com.yeshi.fanli.entity.taobao.SearchFilter;
|
import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
|
import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig;
|
import com.yeshi.fanli.exception.ExistObjectException;
|
import com.yeshi.fanli.exception.NotExistObjectException;
|
import com.yeshi.fanli.service.inter.goods.RecommendSectionGoodsService;
|
import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
|
import com.yeshi.fanli.tag.PageEntity;
|
import com.yeshi.fanli.util.Constant;
|
import com.yeshi.fanli.util.GsonUtil;
|
import com.yeshi.fanli.util.StringUtil;
|
import com.yeshi.fanli.util.taobao.TaoBaoUtil;
|
import org.yeshi.utils.JsonUtil;
|
|
import net.sf.json.JSONObject;
|
|
@Controller
|
@RequestMapping("admin/new/api/v1/sectiongoods")
|
public class RecommendSectionGoodsAdminController {
|
|
@Resource
|
private RecommendSectionGoodsService recommendSectionGoodsService;
|
|
@Resource
|
private TaoBaoUnionConfigService taoBaoUnionConfigService;
|
|
@RequestMapping(value = "/getSectionGoodsList", method = RequestMethod.POST)
|
public void getSectionGoodsList(int pageIndex, long rsid, String key, PrintWriter out) {
|
|
List<RecommendSectionGoods> recommendSections = recommendSectionGoodsService
|
.getRecommendSectionGoods(pageIndex - 1, rsid, key);
|
int count = recommendSectionGoodsService.getCount(rsid, key);
|
int totalPage = count % Constant.PAGE_SIZE == 0 ? count / Constant.PAGE_SIZE : count / Constant.PAGE_SIZE + 1;
|
PageEntity pe = new PageEntity(pageIndex, Constant.PAGE_SIZE, count, totalPage);
|
Map<String, String> map = new HashMap<String, String>();
|
map.put("key", key);
|
pe.setParams(map);
|
JSONObject data = new JSONObject();
|
data.put("pe", pe);
|
data.put("recommendSectionGoodsList", GsonUtil.toDFJson(recommendSections));
|
out.print(JsonUtil.loadTrueResult(data));
|
return;
|
|
}
|
|
@RequestMapping(value = "/deleteSectionGoods", method = RequestMethod.POST)
|
public void deleteSectionGoods(long[] rsgids, PrintWriter out) {
|
recommendSectionGoodsService.deleteSectionGoods(rsgids);
|
out.print(JsonUtil.loadTrueResult("删除成功"));
|
}
|
|
@RequestMapping(value = "/searchTaoBaoGoodsList")
|
public void searchTaoBaoGoodsList(String callback, int pageIndex, int type, String key, PrintWriter out) {
|
List<TaoBaoUnionConfig> config = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID);
|
SearchFilter searchFilter = new SearchFilter();
|
searchFilter.setPage(pageIndex);
|
searchFilter.setKey(key);
|
searchFilter.setType(type);
|
searchFilter.setQuan(1);
|
TaoBaoSearchResult search = TaoBaoUtil.search2(searchFilter, config.get(0));
|
JSONObject data = new JSONObject();
|
Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();
|
String json = gson.toJson(search.getTaoBaoGoodsBriefs());
|
if ("[]".equals(json)) {
|
out.print(JsonUtil.loadFalseResult("暂无数据"));
|
return;
|
}
|
PageEntity pe = search.getPageEntity();
|
pe.setPageIndex(pageIndex);
|
String pejson = gson.toJson(search.getPageEntity());
|
data.put("taoBaoGoodsList", json);
|
data.put("pe", pejson);
|
if (StringUtil.isNullOrEmpty(callback))
|
out.print(JsonUtil.loadTrueResult(data));
|
else
|
out.print(callback + "(" + JsonUtil.loadTrueResult(data) + ")");
|
}
|
|
@RequestMapping(value = "/addSectionGoods", method = RequestMethod.POST)
|
public void addSectionGoods(long rsid, String[] tbgids, PrintWriter out) {
|
List<JSONObject> list = new ArrayList<JSONObject>();
|
JSONObject data = null;
|
for (String tbgid : tbgids) {
|
data = new JSONObject();
|
try {
|
recommendSectionGoodsService.addSectionGoods(rsid, tbgid);
|
data.put("id", tbgid);
|
data.put("msg", "添加成功");
|
} catch (ExistObjectException e) {
|
data.put("id", tbgid);
|
data.put("msg", e.getMessage());
|
}
|
list.add(data);
|
}
|
JSONObject dataAll = new JSONObject();
|
dataAll.put("list", list);
|
out.print(JsonUtil.loadTrueResult(dataAll));
|
}
|
|
@RequestMapping(value = "/getSectionGoods", method = RequestMethod.POST)
|
public void getSectionGoods(long id, PrintWriter out) {
|
RecommendSectionGoods rsg = recommendSectionGoodsService.getRecommendSectionGoods(id);
|
JSONObject data = new JSONObject();
|
if (rsg == null) {
|
out.print(JsonUtil.loadFalseResult("不存在RecommendSectionGoods"));
|
return;
|
}
|
data.put("orderby", rsg.getOrderby());
|
out.print(JsonUtil.loadTrueResult(data));
|
}
|
|
@RequestMapping(value = "/updateSectionGoods", method = RequestMethod.POST)
|
public void updateSectionGoods(RecommendSectionGoods rsg, PrintWriter out) {
|
try {
|
recommendSectionGoodsService.updateRecommendSectionGoods(rsg);
|
out.print(JsonUtil.loadTrueResult("修改成功"));
|
} catch (NotExistObjectException e) {
|
out.print(JsonUtil.loadFalseResult(e.getMessage()));
|
}
|
}
|
}
|