package com.landtool.lanbase.modules.res.controller; import java.io.IOException; import java.io.InputStream; import java.net.URL; import java.net.URLConnection; import java.net.URLEncoder; import java.util.ArrayList; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.google.gson.JsonObject; import com.landtool.lanbase.common.utils.HttpUtils; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import com.landtool.lanbase.common.utils.HttpOperateUtils; import com.landtool.lanbase.config.SysTemPropertyConfig; import com.landtool.lanbase.modules.api.utils.PageBean; import com.landtool.lanbase.modules.sys.controller.AbstractController; import com.landtool.lanbase.modules.sys.entity.SysSysteminfo; import com.landtool.lanbase.modules.sys.service.SysFieldvalueService; /** * 前台展示 - 资源目录 */ @Controller @RequestMapping("res/systeminfo") public class SysteminfoController extends AbstractController { @Autowired private SysTemPropertyConfig sysConfig; @Autowired private SysFieldvalueService fieldUtils; @Autowired private SysTemPropertyConfig tokenConfig; @RequestMapping("/indexbak") public String index(Model model) { LinkedHashMap SystemTypeList = fieldUtils.getFieldListByKey("SystemType"); String SystemTypeListJson = ""; for (Map.Entry entry : SystemTypeList.entrySet()) { if (SystemTypeListJson != "") SystemTypeListJson += ","; List List = new ArrayList(); try { Map params = new HashMap(); params.put("systype", entry.getKey()); String url = tokenConfig.getApiServer() + "/api/sys/systeminfo/queryAllList"; List = HttpOperateUtils.getJsonObjectArrayByParams(url, SysSysteminfo.class,params); } catch (IOException e) { e.printStackTrace(); } SystemTypeListJson += "{key:'" + entry.getKey() + "',value:'" + entry.getValue() + "',zycount:'" + List.size() + "'}"; } model.addAttribute("SystemTypeListJson", "[" + SystemTypeListJson + "]"); model.addAttribute("pubzyWebRoot", sysConfig.getPubzyWebRoot()); model.addAttribute("backstageWebRoot", sysConfig.getApiServer() + "/"); model.addAttribute("systemName", sysConfig.getAppFullName()); model.addAttribute("apiServer", sysConfig.getApiServer()); model.addAttribute("gisPortal", sysConfig.getGisPortal()); return "systeminfo/index"; } @RequestMapping("/dataList") public String dataList(SysSysteminfo systeminfo, Model model, PageBean pageBean) { List List = new ArrayList(); Map params = new HashMap(); if(systeminfo.getAppfullname() != null && systeminfo.getAppfullname().length()!= 0){ params.put("appfullname", systeminfo.getAppfullname()); } params.put("systype", systeminfo.getSystype()); params.put("sysstatus", systeminfo.getSysstatus()); params.put("iscaslogin", systeminfo.getIscaslogin()); try { String url = tokenConfig.getApiServer() + "/api/sys/systeminfo/queryAllList"; List = HttpOperateUtils.getJsonObjectArrayByParams(url, SysSysteminfo.class,params); } catch (IOException e) { e.printStackTrace(); } int start = (pageBean.getPage() - 1) * 14; int end = pageBean.getPage() * 14; if (end > List.size()) { end = List.size(); } List pageList = new ArrayList(); for (int i = start; i < end; i++) { String imgUrl = ""; if (List.get(i).getSysimgurl() != null && List.get(i).getSysimgurl().length() != 0) { imgUrl = sysConfig.getApiServer()+"/uploadFile/"+List.get(i).getSysimgurl(); try { URL url = new URL(imgUrl); URLConnection uc = url.openConnection(); InputStream in = uc.getInputStream(); }catch (Exception e){ imgUrl = ""; } } List.get(i).setSysimgurl(imgUrl); List.get(i).setSysstatusname(getSysstatusname(Integer.parseInt(List.get(i).getSysstatus().toString()))); List.get(i).setSystype(getSystemName(List.get(i).getSystype())); pageList.add(List.get(i)); } model.addAttribute("SysList", pageList); model.addAttribute("Count", List.size()); model.addAttribute("Page", pageBean.getPage()); model.addAttribute("apiServer", sysConfig.getApiServer()); return "systeminfo/dataList"; } //获取系统状态名称 private String getSysstatusname(Integer status){ String name =""; switch(status){ case 1: name="正常"; break; case 2: name="暂停"; break; } return name; } //获取系统中文名称 private String getSystemName(String name) { //todo 加入环境安全 String SystemName = name; if(name.equals("haiyu")) { SystemName = "海域"; } if(name.equals("zonghe")) { SystemName = "综合"; } if(name.equals("haidao")) { SystemName = "海岛"; } if(name.equals("jingji")) { SystemName = "经济"; } if(name.equals("huangjing")) { SystemName = "环境"; } if(name.equals("zhifa")) { SystemName = "执法"; } if(name.equals("yubaojianzai")) { SystemName = "预报减灾"; } if(name.equals("huanjinganquan")) { SystemName = "环境安全"; } return SystemName; } /** * 新版 */ @RequestMapping("/index") public String newindex(Model model) { LinkedHashMap SystemTypeList = fieldUtils.getFieldListByKey("SystemType"); String SystemTypeListJson = ""; for (Map.Entry entry : SystemTypeList.entrySet()) { if (SystemTypeListJson != "") SystemTypeListJson += ","; List List = new ArrayList(); try { Map params = new HashMap(); params.put("systype", entry.getKey()); String url = tokenConfig.getApiServer() + "/api/sys/systeminfo/queryAllList"; List =new JSONObject().parseArray(HttpUtils.get(url, params),SysSysteminfo.class); } catch (Exception e) { e.printStackTrace(); } SystemTypeListJson += "{key:'" + entry.getKey() + "',value:'" + entry.getValue() + "',zycount:'" + List.size() + "'}"; } model.addAttribute("SystemTypeListJson", "[" + SystemTypeListJson + "]"); model.addAttribute("pubzyWebRoot", sysConfig.getPubzyWebRoot()); model.addAttribute("backstageWebRoot", sysConfig.getApiServer() + "/"); model.addAttribute("systemName", sysConfig.getAppFullName()); model.addAttribute("apiServer", sysConfig.getApiServer()); model.addAttribute("gisPortal", sysConfig.getGisPortal()); return "systeminfo/index_New"; } @RequestMapping("/newdataList") public String newdataList(SysSysteminfo systeminfo, Model model, PageBean pageBean) { List List = new ArrayList(); Map params = new HashMap(); if(systeminfo.getAppfullname() != null && systeminfo.getAppfullname().length()!= 0){ params.put("appfullname", URLEncoder.encode(systeminfo.getAppfullname())); //编码用于处理空格查询 alert ykm 2019/01/26 } if (StringUtils.isNotEmpty(systeminfo.getSystype()) && systeminfo.getSystype() != null){ params.put("systype", systeminfo.getSystype()); } if (systeminfo.getSysstatus() != null){ params.put("sysstatus", systeminfo.getSysstatus()); } if (systeminfo.getIscaslogin() != null){ params.put("iscaslogin", systeminfo.getIscaslogin()); } try { String url = tokenConfig.getApiServer() + "/api/sys/systeminfo/queryAllList"; List =new JSONObject().parseArray(HttpUtils.get(url, params),SysSysteminfo.class); } catch (Exception e) { e.printStackTrace(); } int start = (pageBean.getPage() - 1) * 8; int end = pageBean.getPage() * 8; if (end > List.size()) { end = List.size(); } List pageList = new ArrayList(); for (int i = start; i < end; i++) { String imgUrl = ""; if (List.get(i).getSysimgurl() != null && List.get(i).getSysimgurl().length() != 0) { imgUrl = sysConfig.getApiServer()+"/uploadFile/"+List.get(i).getSysimgurl(); try { URL url = new URL(imgUrl); URLConnection uc = url.openConnection(); InputStream in = uc.getInputStream(); }catch (Exception e){ imgUrl = ""; } } List.get(i).setSysimgurl(imgUrl); List.get(i).setSysstatusname(getSysstatusname(Integer.parseInt(List.get(i).getSysstatus().toString()))); List.get(i).setSystype(getSystemName(List.get(i).getSystype())); String browser = ""; if(List.get(i).getBrowser() != null) { browser = List.get(i).getBrowser().equals("null") ? "" : List.get(i).getBrowser(); } List.get(i).setBrowser(browser); pageList.add(List.get(i)); } model.addAttribute("SysList", pageList); model.addAttribute("Count", List.size()); model.addAttribute("Page", pageBean.getPage()); model.addAttribute("apiServer", sysConfig.getApiServer()); return "systeminfo/dataList_New"; } }