package com.yeshi.buwan.controller.admin.api;
|
|
import java.io.File;
|
import java.io.IOException;
|
import java.io.PrintWriter;
|
import java.util.Date;
|
import java.util.HashMap;
|
import java.util.List;
|
import java.util.Map;
|
|
import javax.annotation.Resource;
|
import javax.servlet.ServletContext;
|
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpSession;
|
|
import com.yeshi.buwan.util.SystemUtil;
|
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 org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.multipart.commons.CommonsMultipartFile;
|
|
import com.google.gson.Gson;
|
import com.google.gson.GsonBuilder;
|
import com.yeshi.buwan.domain.DetailSystem;
|
import com.yeshi.buwan.domain.SuperVideoType;
|
import com.yeshi.buwan.domain.VideoType;
|
import com.yeshi.buwan.service.imp.ClassService;
|
import com.yeshi.buwan.service.imp.SystemService;
|
import com.yeshi.buwan.util.Constant;
|
import com.yeshi.buwan.util.StringUtil;
|
import com.yeshi.buwan.web.tag.PageEntity;
|
|
@Controller
|
@RequestMapping("admin/new/api/videoType")
|
public class VideoTypeAdminController {
|
|
@Resource
|
private ClassService classService;
|
|
@Resource
|
private SystemService systemService;
|
|
private static final String IMGPATH = "/upload/class";
|
|
@RequestMapping("videoTypeList")
|
public void videoTypeList(int pageIndex, int detailsystem, int pid, HttpSession session, PrintWriter out) {
|
if (pageIndex == 0)
|
pageIndex = 1;
|
|
List<com.yeshi.buwan.domain.web.VideoTypeAdmin> list = classService.getVideoTypeAdmin(SystemUtil.getAdminSelectedSystemId(session), detailsystem, pid,
|
pageIndex);
|
|
long count = classService.getVideoTypeAdminCount(detailsystem, pid);
|
PageEntity pe = new PageEntity();
|
pe.setPageIndex(pageIndex);
|
pe.setPageSize(Constant.pageCount);
|
Map<String, String> map = new HashMap<String, String>();
|
map.put("pid", pid + "");
|
map.put("detailsystem", detailsystem + "");
|
pe.setParams(map);
|
pe.setTotalCount((int) count);
|
JSONObject json = new JSONObject();
|
json.put("code", "0");
|
json.put("pageEntity", pe);
|
Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();
|
json.put("videoTypeAdminList", gson.toJson(list));
|
out.print(json);
|
return;
|
}
|
|
@RequestMapping("getAllVideoType")
|
public void getAllVideoType(PrintWriter out) {
|
List<VideoType> list = classService.getAllVideoType();
|
Gson gson = new GsonBuilder().excludeFieldsWithoutExposeAnnotation().create();
|
JSONObject json = new JSONObject();
|
json.put("code", "0");
|
json.put("list", gson.toJson(list));
|
out.print(json);
|
}
|
|
@RequestMapping("setSuperVideoType")
|
public void set(String type, String id, String icon, String detailSystem, PrintWriter out) {
|
|
if ("add".equals(type)) {
|
SuperVideoType svt = new SuperVideoType();
|
svt.setCreatetime(System.currentTimeMillis() + "");
|
svt.setDetailSystem(new DetailSystem(detailSystem));
|
svt.setPicture(icon.trim());
|
svt.setType(new VideoType(Long.parseLong(id)));
|
classService.addSuperVideoType(svt);
|
out.print("yes");
|
} else if ("delete".equals(type)) {
|
classService.deleteVideoTypeAdmin(id, detailSystem);
|
out.print("yes");
|
}
|
}
|
|
@RequestMapping("getVideoType")
|
public void getVideoType(String id, PrintWriter out) {
|
VideoType vt = classService.getType(Long.parseLong(id));
|
JSONObject json = new JSONObject();
|
json.put("code", "0");
|
json.put("videoType", vt);
|
out.print(json);
|
return;
|
}
|
|
@RequestMapping("updateVideoType")
|
public void updateVideoType(String id, String orderby, String name, String beizhu, String iconFile, String iconUrl, String show, String showTitle, PrintWriter out) {
|
|
VideoType vt = classService.getType(Long.parseLong(id));
|
vt.setOrderby(Integer.parseInt(orderby));
|
if (iconFile != null && !"".equals(iconFile.trim())) {// 保存图片
|
vt.setIcon(iconFile);
|
} else {
|
if (!StringUtil.isNullOrEmpty(iconUrl))
|
vt.setIcon(iconUrl);
|
}
|
vt.setName(name);
|
vt.setBeizhu(beizhu);
|
vt.setShow(show);
|
vt.setShowTitle(showTitle);
|
classService.updateType(vt);
|
out.print("yes");
|
return;
|
}
|
|
@RequestMapping("addVideoType")
|
public void addVideoType(String pid, String orderby, String name, String beizhu, String iconFile, String iconUrl, String show, String showTitle, PrintWriter out) {
|
|
VideoType vt = new VideoType();
|
if (iconFile != null && !"".equals(iconFile.trim())) {// 保存图片
|
vt.setIcon(iconFile);
|
} else {
|
if (!StringUtil.isNullOrEmpty(iconUrl))
|
vt.setIcon(iconUrl);
|
}
|
vt.setName(name);
|
vt.setBeizhu(beizhu);
|
vt.setOrderby(Integer.parseInt(orderby));
|
vt.setShow(show);
|
vt.setCreatetime(String.valueOf(new Date().getTime()));
|
vt.setShowTitle(showTitle);
|
if (!StringUtil.isNullOrEmpty(pid) && !pid.equalsIgnoreCase("0")) {
|
vt.setParent(new VideoType(Long.parseLong(pid)));
|
}
|
System.out.println("vt.getIcon()--" + vt.getIcon());
|
classService.createType(vt);
|
out.print("yes");
|
return;
|
}
|
|
@RequestMapping(value = "updateVideoTypeFile", method = RequestMethod.POST)
|
public void updateVideoTypeFile(@RequestParam("file") CommonsMultipartFile file, HttpServletRequest request, PrintWriter out) {
|
ServletContext servletContext = request.getSession().getServletContext();
|
JSONObject json = new JSONObject();
|
if (file != null) {
|
String root = servletContext.getRealPath(IMGPATH);
|
if (!new File(root).exists()) {
|
new File(root).mkdirs();
|
}
|
File newFile = new File(root + "/" + file.getOriginalFilename());
|
//通过CommonsMultipartFile的方法直接写文件(注意这个时候)
|
try {
|
file.transferTo(newFile);
|
json.put("code", "0");
|
json.put("path", IMGPATH + "/" + newFile.getName());
|
} catch (IllegalStateException e) {
|
e.printStackTrace();
|
json.put("code", "2");
|
} catch (IOException e) {
|
e.printStackTrace();
|
json.put("code", "2");
|
} finally {
|
out.print(json);
|
}
|
} else {
|
json.put("code", "1");
|
out.print(json);
|
}
|
}
|
|
@RequestMapping("deleteVideoType")
|
public void deleteVideoType(String ids, PrintWriter out) {
|
String[] idArr = ids.split(",");
|
for (String id : idArr) {
|
System.out.println("id==" + id);
|
if ("310".equals(id)) { //310做特殊处理不删除 20170915
|
continue;
|
}
|
classService.deleteVideoType(id);
|
}
|
out.print("yes");
|
return;
|
}
|
|
}
|