package com.yeshi.buwan.controller.admin; import java.io.PrintWriter; import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.Map; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import com.yeshi.buwan.util.SystemUtil; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import com.yeshi.buwan.domain.AdminInfo; import com.yeshi.buwan.domain.system.DetailSystem; import com.yeshi.buwan.domain.HomeAd; import com.yeshi.buwan.domain.HomeNotice; import com.yeshi.buwan.domain.HomeType; import com.yeshi.buwan.domain.HomeVideo; import com.yeshi.buwan.domain.SuperUserBanner; import com.yeshi.buwan.domain.system.SystemInfo; import com.yeshi.buwan.domain.UserBanner; import com.yeshi.buwan.domain.VideoInfo; import com.yeshi.buwan.domain.VideoIntersection; import com.yeshi.buwan.domain.VideoType; import com.yeshi.buwan.domain.WXAd; import com.yeshi.buwan.domain.WeiXinInfo; import com.yeshi.buwan.service.imp.AdService; import com.yeshi.buwan.service.imp.ClassService; import com.yeshi.buwan.service.imp.HomeAdService; import com.yeshi.buwan.service.imp.HomeNoticeService; import com.yeshi.buwan.service.imp.HomeTypeService; import com.yeshi.buwan.service.imp.IntersectionService; import com.yeshi.buwan.service.imp.OtherService; import com.yeshi.buwan.service.imp.UserBannerService; import com.yeshi.buwan.service.imp.WeiXinService; import com.yeshi.buwan.util.FileUtil; import com.yeshi.buwan.util.StringUtil; import net.sf.json.JSONArray; import net.sf.json.JSONObject; @Controller @RequestMapping("") public class UserBannerAdminController { @Resource private UserBannerService userBannerService; @Resource private ClassService classService; @Resource private HomeTypeService homeTypeService; @Resource private HomeAdService homeAdService; @Resource private AdService adService; @Resource private WeiXinService weiXinService; @Resource private HomeNoticeService homeNoticeService; @RequestMapping(value = "/UserBannerAdminServlet", method = RequestMethod.GET) public void get(HttpServletRequest req, PrintWriter out) { try { req.setCharacterEncoding("UTF-8"); } catch (UnsupportedEncodingException e1) { e1.printStackTrace(); } String type = req.getParameter("type"); if (type.equalsIgnoreCase("addSuperUserBanner")) {// 获取来源列表 String detailSystem = req.getParameter("system"); String classid = req.getParameter("ids"); if (!StringUtil.isNullOrEmpty(detailSystem) && !StringUtil.isNullOrEmpty(classid)) { SuperUserBanner sz = new SuperUserBanner(); sz.setCreatetime(System.currentTimeMillis() + ""); sz.setDetailSystem(new DetailSystem(detailSystem)); sz.setUserBanner(new UserBanner(classid)); userBannerService.addSuperUserBanner(sz); } out.print("SUCCESS"); } else if (type.equalsIgnoreCase("deleteSuperUserBanner")) {// 获取下级分类 String detailSystem = req.getParameter("system"); String classid = req.getParameter("ids"); if (!StringUtil.isNullOrEmpty(detailSystem) && !StringUtil.isNullOrEmpty(classid)) { userBannerService.deleteUserBannerAdmin(classid, detailSystem); } out.print("SUCCESS"); } else if (type.equalsIgnoreCase("getAllParentType")) {// 根据子分类得到所有的上级分类 String id = req.getParameter("id"); if (!StringUtil.isNullOrEmpty(id)) { List idsList = new ArrayList<>(); if (StringUtil.isNullOrEmpty(id) || id.contains("undefined") || Long.parseLong(id) == 0) id = "1"; VideoType vt = classService.getTypeById(Long.parseLong(id)); idsList.add(vt.getId()); while (vt.getParent() != null) { vt = vt.getParent(); idsList.add(vt.getId()); } // 将list倒序 Collections.reverse(idsList); JSONArray array = new JSONArray(); for (int i = 0; i < idsList.size(); i++) { JSONArray carray = new JSONArray(); long parentId = 0; if (i == 0) { parentId = 0; } else { parentId = idsList.get(i - 1); } List vts = classService.getFirstTypeList(parentId + ""); for (VideoType vty : vts) { JSONObject object = new JSONObject(); object.put("Name", vty.getName()); object.put("Id", vty.getId()); if (vty.getId() == idsList.get(i)) { object.put("Selected", "1"); } else { object.put("Selected", "0"); } carray.add(object); } array.add(carray); } out.print(array.toString()); } } } @RequestMapping(value = "/UserBannerAdminServlet", method = RequestMethod.POST) public String post(HttpServletRequest req, HttpServletResponse resp, HttpSession session, PrintWriter out) { try { req.setCharacterEncoding("UTF-8"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } String type = req.getParameter("type"); if (type.equalsIgnoreCase("addHomeType")) { String name = req.getParameter("name"); String orderby = req.getParameter("orderby"); String beizhu = req.getParameter("beizhu"); String hasMore = req.getParameter("hasmore"); String clumns = req.getParameter("clumns"); String activity = req.getParameter("activity"); String params = req.getParameter("params"); String number = req.getParameter("number"); HomeType homeType = new HomeType(); homeType.setAdmin((AdminInfo) req.getSession().getAttribute("ADMIN_INFO")); homeType.setName(name); homeType.setCreatetime((new StringBuilder(String.valueOf(System.currentTimeMillis()))).toString()); homeType.setOrderby(orderby); homeType.setBeizhu(beizhu); homeType.setNumber(Integer.parseInt(number)); homeType.setActivity(activity); homeType.setParams(params); if (StringUtil.isNullOrEmpty(clumns)) homeType.setColumns(3); else homeType.setColumns(Integer.parseInt(clumns)); if (!StringUtil.isNullOrEmpty(hasMore)) { if (hasMore.equalsIgnoreCase("on")) homeType.setHasMore(true); else homeType.setHasMore(false); } else homeType.setHasMore(false); homeType.setSystem(SystemUtil.getAdminSelectedSystem(session)); homeTypeService.addHomeType(homeType); return "hometype_add"; } else if (type.equalsIgnoreCase("updateHomeType")) { String id = req.getParameter("id"); String name = req.getParameter("name"); String orderby = req.getParameter("orderby"); String beizhu = req.getParameter("beizhu"); String activity = req.getParameter("activity"); String params = req.getParameter("params"); String number = req.getParameter("number"); HomeType homeType = homeTypeService.getHomeTypeById(id); homeType.setName(name); homeType.setOrderby(orderby); homeType.setBeizhu(beizhu); homeType.setActivity(activity); homeType.setParams(params); homeType.setNumber(Integer.parseInt(number)); String hasMore = req.getParameter("hasmore"); String clumns = req.getParameter("clumns"); if (!StringUtil.isNullOrEmpty(clumns)) homeType.setColumns(Integer.parseInt(clumns)); if (!StringUtil.isNullOrEmpty(hasMore)) { if (hasMore.equalsIgnoreCase("on")) homeType.setHasMore(true); else homeType.setHasMore(false); } else homeType.setHasMore(false); homeTypeService.updateHomeType(homeType); return "hometype_edit"; } else if (type.equalsIgnoreCase("addHomeAd")) { FileUtil f = new FileUtil(); try { Map map = f.getTextAndFile(2, req); String linktype = map.get("olinktype"); String ourl = map.get("ourl"); String ovideoid = map.get("ovideoid"); String ointersection = map.get("ointersection"); HomeAd ad = new HomeAd(); ad.setSystem(SystemUtil.getAdminSelectedSystem(session)); ad.setAdmin((AdminInfo) req.getSession().getAttribute("ADMIN_INFO")); ad.setSystem(new SystemInfo(map.get("system"))); ad.setBeizhu((String) map.get("beizhu")); ad.setCreatetime((new StringBuilder(String.valueOf(System.currentTimeMillis()))).toString()); if (!StringUtil.isNullOrEmpty((String) map.get("pictureurl"))) ad.setPicture((String) map.get("pictureurl")); else if (!StringUtil.isNullOrEmpty((String) map.get("picture"))) ad.setPicture((String) map.get("picture")); ad.setLinkType(Integer.parseInt(linktype)); ad.setVideo(new VideoInfo("1")); if (ad.getLinkType() == 1) { ad.setVideo(new VideoInfo(ovideoid)); } else if (ad.getLinkType() == 2) { JSONObject obj = new JSONObject(); obj.put("url", ourl); ad.setClazz("com.weikou.beibeivideo.ui.mine.BrowserActivity"); ad.setParams(obj.toString()); } else if (ad.getLinkType() == 3) { JSONObject obj = new JSONObject(); obj.put("id", ointersection); IntersectionService iservice = new IntersectionService(); VideoIntersection se = iservice.getIntersectionById(ointersection); if (se != null) { obj.put("title", se.getName()); } ad.setClazz("com.weikou.beibeivideo.ui.common.MVideosActivity"); ad.setParams(obj.toString()); } homeAdService.addHomeAd(ad); } catch (Exception e) { e.printStackTrace(); } return "homead_add"; } else if (type.equalsIgnoreCase("addHomeWx")) { FileUtil f = new FileUtil(); try { Map map = f.getTextAndFile(2, req); WXAd ad = new WXAd(); ad.setAdmin((AdminInfo) req.getSession().getAttribute("ADMIN_INFO")); ad.setSystem(new SystemInfo(map.get("system"))); ad.setBeizhu((String) map.get("beizhu")); ad.setLink((String) map.get("link")); ad.setContent((String) map.get("content")); ad.setCreatetime((new StringBuilder(String.valueOf(System.currentTimeMillis()))).toString()); if (!StringUtil.isNullOrEmpty((String) map.get("imageurl"))) ad.setImageUrl((String) map.get("imageurl")); else if (!StringUtil.isNullOrEmpty((String) map.get("image"))) ad.setImageUrl((String) map.get("image")); if (!StringUtil.isNullOrEmpty((String) map.get("iconurl"))) ad.setIcon((String) map.get("iconurl")); else if (!StringUtil.isNullOrEmpty((String) map.get("icon"))) ad.setIcon((String) map.get("icon")); adService.addWX(ad); } catch (Exception e) { e.printStackTrace(); } return "homewx_add"; } else if (type.equalsIgnoreCase("updateHomeAd")) { FileUtil f = new FileUtil(); try { Map map = f.getTextAndFile(2, req); String linktype = map.get("olinktype"); String ourl = map.get("ourl"); String ovideoid = map.get("ovideoid"); String ointersection = map.get("ointersection"); HomeAd ad = homeAdService.getHomeAdById(req.getParameter("id")); ad.setLinkType(Integer.parseInt(linktype)); if (ad.getLinkType() == 1) { ad.setVideo(new VideoInfo(ovideoid)); } else if (ad.getLinkType() == 2) { JSONObject obj = new JSONObject(); obj.put("url", ourl); ad.setClazz("com.weikou.beibeivideo.ui.mine.BrowserActivity"); ad.setParams(obj.toString()); } else if (ad.getLinkType() == 3) { JSONObject obj = new JSONObject(); obj.put("id", ointersection); IntersectionService iservice = new IntersectionService(); VideoIntersection se = iservice.getIntersectionById(ointersection); if (se != null) { obj.put("title", se.getName()); } ad.setClazz("com.weikou.beibeivideo.ui.common.MVideosActivity"); ad.setParams(obj.toString()); } ad.setBeizhu((String) map.get("beizhu")); if (!StringUtil.isNullOrEmpty((String) map.get("pictureurl"))) ad.setPicture((String) map.get("pictureurl")); else if (!StringUtil.isNullOrEmpty((String) map.get("picture"))) ad.setPicture((String) map.get("picture")); ad.setSystem(new SystemInfo(map.get("system"))); homeAdService.updateHomeAd(ad); } catch (Exception e) { e.printStackTrace(); } return "homead_edit"; } else if (type.equalsIgnoreCase("updateHomeWx")) { FileUtil f = new FileUtil(); try { Map map = f.getTextAndFile(2, req); OtherService service = new OtherService(); WXAd ad = adService.getWXAd(req.getParameter("id")); ad.setBeizhu((String) map.get("beizhu")); ad.setLink((String) map.get("link")); ad.setContent((String) map.get("content")); ad.setCreatetime((new StringBuilder(String.valueOf(System.currentTimeMillis()))).toString()); if (!StringUtil.isNullOrEmpty((String) map.get("imageurl"))) ad.setImageUrl((String) map.get("imageurl")); else if (!StringUtil.isNullOrEmpty((String) map.get("image"))) ad.setImageUrl((String) map.get("image")); if (!StringUtil.isNullOrEmpty((String) map.get("iconurl"))) ad.setIcon((String) map.get("iconurl")); else if (!StringUtil.isNullOrEmpty((String) map.get("icon"))) ad.setIcon((String) map.get("icon")); ad.setSystem(new SystemInfo(map.get("system"))); adService.updateWXAd(ad); } catch (Exception e) { e.printStackTrace(); } return "homewx_edit"; } else if (type.equalsIgnoreCase("updateAdVideo")) { String videoId = req.getParameter("id"); String adId = req.getParameter("homead"); HomeAd ad = homeAdService.getHomeAdById(adId); VideoInfo info = new VideoInfo(); info.setId(videoId); ad.setVideo(info); homeAdService.updateHomeAd(ad); return "video_list"; } else if (type.equalsIgnoreCase("addHomeNotice")) { HomeNotice ad = new HomeNotice(); ad.setBeizhu(req.getParameter("beizhu")); ad.setContent(req.getParameter("content")); ad.setCreatetime(System.currentTimeMillis() + ""); String show = req.getParameter("show"); if (show != null && show.equalsIgnoreCase("on")) ad.setShow("1"); else ad.setShow("0"); ad.setSystem(new SystemInfo(req.getParameter("system"))); ad.setUrl(req.getParameter("url")); homeNoticeService.addHomeNotice(ad); return "homenotice_list"; } else if (type.equalsIgnoreCase("updateHomeNotice")) { String id = req.getParameter("id"); HomeNotice ad = homeNoticeService.getHomeNotice(id); ad.setBeizhu(req.getParameter("beizhu")); ad.setContent(req.getParameter("content")); ad.setStarttime(req.getParameter("starttime")); ad.setEndtime(req.getParameter("endtime")); String show = req.getParameter("show"); if (show != null && show.equalsIgnoreCase("on")) ad.setShow("1"); else ad.setShow("0"); ad.setSystem(new SystemInfo(req.getParameter("system"))); ad.setUrl(req.getParameter("url")); homeNoticeService.updateHomeNotice(ad); req.setAttribute("id", id); return "homenotice_edit"; } else if (type.equalsIgnoreCase("updateWeiXin")) { String id = req.getParameter("id"); WeiXinInfo info = weiXinService.getWeiXinInfo(id); info.setAddress(req.getParameter("address")); info.setNickName(req.getParameter("nickname")); if (!StringUtil.isNullOrEmpty(req.getParameter("portrait"))) info.setPortrait(req.getParameter("portrait")); info.setSex(req.getParameter("sex")); info.setSign(req.getParameter("sign")); info.setType(req.getParameter("wtype")); info.setWeight(Integer.parseInt(req.getParameter("weight"))); info.setWeiXinId(req.getParameter("weixinid")); weiXinService.updateWeiXinInfo(info, req.getParameter("wximg")); req.setAttribute("id", id); return "weixin_edit"; } else if (type.equalsIgnoreCase("addWeiXin")) { WeiXinInfo info = new WeiXinInfo(); info.setAddress(req.getParameter("address")); info.setNickName(req.getParameter("nickname")); info.setPortrait(req.getParameter("portrait")); info.setSex(req.getParameter("sex")); info.setSign(req.getParameter("sign")); info.setType(req.getParameter("wtype")); info.setWeight(Integer.parseInt(req.getParameter("weight"))); info.setWeiXinId(req.getParameter("weixinid")); info.setCreatetime(System.currentTimeMillis() + ""); info = weiXinService.addWeiXinInfo(info); weiXinService.addWeiXinImage(info, req.getParameter("wximg")); return "weixin_add"; } else if (type.equalsIgnoreCase("updateHomeVideo")) { String id = req.getParameter("id"); String picture = req.getParameter("picture"); HomeVideo video = homeTypeService.getHomeVideoById(id); video.setPicture(picture); homeTypeService.updateHomeVideo(video); req.setAttribute("id", id); return "homevideo_update"; } return ""; } }