package com.yeshi.buwan.controller.admin.api;
|
|
import com.google.gson.*;
|
import com.yeshi.buwan.domain.special.SearchSpecial;
|
import com.yeshi.buwan.domain.special.SearchSpecialPosition;
|
import com.yeshi.buwan.service.inter.search.SearchSpecialPositionService;
|
import com.yeshi.buwan.service.inter.search.SearchSpecialService;
|
import com.yeshi.buwan.util.Constant;
|
import com.yeshi.buwan.util.JsonUtil;
|
import com.yeshi.buwan.util.SystemUtil;
|
import com.yeshi.buwan.util.TimeUtil;
|
import net.sf.json.JSONArray;
|
import net.sf.json.JSONObject;
|
import org.springframework.stereotype.Controller;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpSession;
|
import java.io.PrintWriter;
|
import java.lang.reflect.Type;
|
import java.util.Date;
|
import java.util.List;
|
|
@Controller
|
@RequestMapping("admin/new/api/search/special")
|
public class SearchSpecialAdminController {
|
@Resource
|
private SearchSpecialService searchSpecialService;
|
|
@Resource
|
private SearchSpecialPositionService searchSpecialPositionService;
|
|
private Gson getGson() {
|
Gson gson = new GsonBuilder().registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
|
@Override
|
public JsonElement serialize(Date value, Type theType, JsonSerializationContext context) {
|
if (value == null) {
|
return new JsonPrimitive("");
|
} else {
|
return new JsonPrimitive(TimeUtil.getGernalTime(value.getTime(), "yyyy.MM.dd HH:mm"));
|
}
|
}
|
}).create();
|
return gson;
|
}
|
|
|
/**
|
* 获取专题列表
|
*
|
* @param key
|
* @param page
|
* @param out
|
*/
|
@RequestMapping(value = "/getSpecialList", method = RequestMethod.POST)
|
public void getSpecialList(String key, int page, HttpSession session, PrintWriter out) {
|
String systemId = SystemUtil.getAdminSelectedSystemId(session);
|
List<SearchSpecial> list = searchSpecialService.listSpecial(key, systemId, page, Constant.pageCount);
|
long count = searchSpecialService.countSpecial(key, systemId);
|
Gson gson = getGson();
|
JSONObject root = new JSONObject();
|
root.put("data", gson.toJson(list));
|
root.put("count", count);
|
out.print(JsonUtil.loadTrueAdmin(root));
|
}
|
|
/**
|
* 获取专题详情
|
*
|
* @param session
|
* @param out
|
*/
|
@RequestMapping(value = "/getSpecialDetail", method = RequestMethod.POST)
|
public void getSpecialDetail(String id, HttpSession session, PrintWriter out) {
|
SearchSpecial searchSpecial = searchSpecialService.selectByPrimaryKey(id);
|
if (searchSpecial == null) {
|
out.print(JsonUtil.loadFalseAdmin("专题不存在"));
|
} else {
|
Gson gson = getGson();
|
out.print(JsonUtil.loadTrueAdmin(gson.toJson(searchSpecial)));
|
}
|
}
|
|
/**
|
* 删除专题
|
*
|
* @param ids
|
* @param session
|
* @param out
|
*/
|
@RequestMapping(value = "/deleteSpecial", method = RequestMethod.POST)
|
public void deleteSpecial(String ids, HttpSession session, PrintWriter out) {
|
JSONArray array = JSONArray.fromObject(ids);
|
for (int i = 0; i < array.size(); i++) {
|
searchSpecialService.deleteByPrimaryKey(array.optString(i));
|
}
|
out.print(JsonUtil.loadTrueAdmin(""));
|
}
|
|
/**
|
* 更新专题
|
*
|
* @param id
|
* @param content
|
* @param session
|
* @param out
|
*/
|
@RequestMapping(value = "/updateSpecial", method = RequestMethod.POST)
|
public void updateSpecial(String id, String content, HttpSession session, PrintWriter out) {
|
SearchSpecial searchSpecial = getGson().fromJson(content, SearchSpecial.class);
|
//查询是否存在
|
SearchSpecial old = searchSpecialService.selectByPrimaryKey(id);
|
if (old == null) {
|
out.print(JsonUtil.loadFalseAdmin("id不存在"));
|
return;
|
}
|
old.setContainerList(searchSpecial.getContainerList());
|
if (searchSpecial.getColumn() != null)
|
old.setColumn(searchSpecial.getColumn());
|
if (searchSpecial.getKey() != null) {
|
old.setKey(searchSpecial.getKey());
|
}
|
if (searchSpecial.getName() != null) {
|
old.setName(searchSpecial.getName());
|
}
|
|
if (searchSpecial.getRemarks() != null) {
|
old.setRemarks(searchSpecial.getRemarks());
|
}
|
old.setUpdateTime(new Date());
|
searchSpecialService.updateSelective(old);
|
out.print(JsonUtil.loadTrueAdmin(""));
|
}
|
|
/**
|
* 添加专题
|
*
|
* @param content
|
* @param session
|
* @param out
|
*/
|
@RequestMapping(value = "/addSpecial", method = RequestMethod.POST)
|
public void addSpecial(String content, HttpSession session, PrintWriter out) {
|
SearchSpecial searchSpecial = getGson().fromJson(content, SearchSpecial.class);
|
try {
|
searchSpecialService.save(searchSpecial);
|
out.print(JsonUtil.loadTrueAdmin(""));
|
} catch (Exception e) {
|
out.print(JsonUtil.loadFalseAdmin(""));
|
}
|
}
|
|
|
}
|