package com.yeshi.makemoney.app.controller.admin.config;
|
|
import com.google.gson.*;
|
import com.yeshi.makemoney.app.entity.config.SystemConfig;
|
import com.yeshi.makemoney.app.entity.config.SystemConfigKey;
|
import com.yeshi.makemoney.app.entity.config.SystemConfigType;
|
import com.yeshi.makemoney.app.service.inter.config.SystemConfigService;
|
import com.yeshi.makemoney.app.service.query.config.SystemConfigQuery;
|
import com.yeshi.makemoney.app.vo.AcceptAdminData;
|
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.ResponseBody;
|
import org.yeshi.utils.JsonUtil;
|
import org.yeshi.utils.TimeUtil;
|
|
import javax.annotation.Resource;
|
import javax.servlet.http.HttpSession;
|
import java.lang.reflect.Type;
|
import java.util.Date;
|
import java.util.List;
|
|
@Controller
|
@RequestMapping("/admin/api/config")
|
public class SystemConfigAdminController {
|
|
@Resource
|
private SystemConfigService systemConfigService;
|
|
|
private String loadPrint(String callback, String root) {
|
return root;
|
}
|
|
@ResponseBody
|
@RequestMapping("list")
|
public String list(SystemConfigQuery query, int page, int limit, String callback) {
|
List<SystemConfig> list = systemConfigService.listByType(SystemConfigType.common);
|
long count = list.size();
|
JSONObject data = new JSONObject();
|
Gson gson = new GsonBuilder().registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
|
|
@Override
|
public JsonElement serialize(Date date, Type type, JsonSerializationContext jsonSerializationContext) {
|
return date == null ? new JsonPrimitive("") : new JsonPrimitive(TimeUtil.getGernalTime(date.getTime(), "yyyy.MM.dd HH:mm"));
|
}
|
}).create();
|
|
data.put("list", gson.toJson(list));
|
data.put("count", count);
|
return loadPrint(callback, JsonUtil.loadTrueResult(data));
|
}
|
|
@ResponseBody
|
@RequestMapping("add")
|
public String add(SystemConfig bean, AcceptAdminData acceptAdminData, String callback) {
|
try {
|
bean.setSystem(acceptAdminData.getSystem());
|
systemConfigService.add(bean);
|
return loadPrint(callback, JsonUtil.loadTrueResult(""));
|
} catch (Exception e) {
|
return loadPrint(callback, JsonUtil.loadFalseResult(e.getMessage()));
|
}
|
}
|
|
@ResponseBody
|
@RequestMapping("get")
|
public String get(String id, HttpSession session, String callback) {
|
SystemConfig entity = systemConfigService.get(id);
|
if (entity != null) {
|
return loadPrint(callback, JsonUtil.loadTrueResult(entity));
|
} else {
|
return loadPrint(callback, JsonUtil.loadFalseResult("ID不存在"));
|
}
|
}
|
|
|
@ResponseBody
|
@RequestMapping("update")
|
public String update(SystemConfig bean, HttpSession session, String callback) {
|
if (bean.getId() == null) {
|
return loadPrint(callback, JsonUtil.loadFalseResult("ID不能为空"));
|
}
|
try {
|
systemConfigService.update(bean);
|
} catch (Exception e) {
|
return loadPrint(callback, JsonUtil.loadFalseResult(e.getMessage()));
|
}
|
return loadPrint(callback, JsonUtil.loadTrueResult(""));
|
}
|
|
|
@ResponseBody
|
@RequestMapping("getKeyList")
|
public String getKeyList() {
|
JSONArray array = new JSONArray();
|
for (SystemConfigKey key : SystemConfigKey.values()) {
|
if (key.getType() == SystemConfigType.common) {
|
JSONObject data = new JSONObject();
|
data.put("key", key.name());
|
data.put("value", key.getDesc());
|
array.add(data);
|
}
|
}
|
return JsonUtil.loadTrueResult(array);
|
}
|
|
|
}
|