package com.zcloud.controller.alarm; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.zcloud.controller.base.BaseController; import com.zcloud.entity.Page; import com.zcloud.entity.PageData; import com.zcloud.logs.LogAnno; import com.zcloud.service.alarm.DevNoticeService; import com.zcloud.util.DateUtil; import com.zcloud.util.Jurisdiction; import com.zcloud.util.ObjectExcelView; import com.zcloud.util.Tools; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.servlet.ModelAndView; import java.util.*; /** * 说明:设备公告管理 * 作者:luoxiaobao * 时间:2022-05-28 * 官网:www.zcloudchina.com */ @Controller @RequestMapping("/devnotice") public class DevNoticeController extends BaseController { @Autowired private DevNoticeService devnoticeService; /**新增 * @param * @throws Exception */ @RequestMapping(value="/add") @RequiresPermissions("devnotice:add") @ResponseBody public Object add() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("DEVNOTICE_ID", this.get32UUID()); //主键 pd.put("CREATOR", ""); //创建人 pd.put("CREATTIME", DateUtil.date2Str(new Date())); //创建时间 pd.put("OPERATOR", ""); //编辑人 pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //编辑时间 pd.put("ISDELETE", ""); //- devnoticeService.save(pd); map.put("result", errInfo); return map; } /**删除 * @param out * @throws Exception */ @RequestMapping(value="/delete") @RequiresPermissions("devnotice:del") @ResponseBody public Object delete() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); devnoticeService.delete(pd); map.put("result", errInfo); //返回结果 return map; } /**修改 * @param * @throws Exception */ @RequestMapping(value="/edit") @ResponseBody @LogAnno(menuType= "监测预警",menuServer= "在线监测",instructionsOperate = "智能预警",instructionsType = "修改") public Object edit() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); Set address = new HashSet(); String addStr = ""; if(pd.get("selectUserList") != null && Tools.notEmpty(pd.get("selectUserList").toString())) { List list = (List) JSON.parse(pd.get("selectUserList").toString()); for(JSONObject u : list) { if(u != null && u.get("USER_ID") != null && Tools.notEmpty(u.get("USER_ID").toString())) { address.add(u.get("USER_ID").toString()); } } for(String s : address) { addStr += s + ","; } pd.put("ADDRESSEE", addStr.substring(0, addStr.length() -1)); } else { pd.put("ADDRESSEE", ""); } List devnotice = devnoticeService.listAll(pd); if(devnotice != null && devnotice.size() == 1) { pd.put("DEVNOTICE_ID", devnotice.get(0).get("DEVNOTICE_ID")); //主键 devnoticeService.edit(pd); } else { pd.put("DEVNOTICE_ID", this.get32UUID()); //主键 pd.put("ISDELETE", "0"); //是否删除 pd.put("CREATOR",Jurisdiction.getUsername()); //添加人 pd.put("CREATTIME", DateUtil.date2Str(new Date())); //创建时间 pd.put("OPERATOR", Jurisdiction.getUsername()); //修改人 pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 devnoticeService.save(pd); } map.put("result", errInfo); return map; } /**列表 * @param page * @throws Exception */ @RequestMapping(value="/list") @RequiresPermissions("devnotice:list") @ResponseBody public Object list(Page page) throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); String KEYWORDS = pd.getString("KEYWORDS"); //关键词检索条件 if(Tools.notEmpty(KEYWORDS))pd.put("KEYWORDS", KEYWORDS.trim()); page.setPd(pd); List varList = devnoticeService.list(page); //列出DevNotice列表 map.put("varList", varList); map.put("page", page); map.put("result", errInfo); return map; } /**去修改页面获取数据 * @param * @throws Exception */ @RequestMapping(value="/goEdit") @RequiresPermissions("devnotice:edit") @ResponseBody public Object goEdit() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd = devnoticeService.findById(pd); //根据ID读取 map.put("pd", pd); map.put("result", errInfo); return map; } /**去修改页面获取数据 * @param * @throws Exception */ @RequestMapping(value="/findByCorp") @ResponseBody @LogAnno(menuType= "监测预警",menuServer= "在线监测",instructionsOperate = "智能预警",instructionsType = "去修改页面获取数据") public Object findByCorp() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); List devnotice = devnoticeService.listAll(pd); List selectUserList = new ArrayList(); if(devnotice != null && devnotice.size() == 1 && devnotice.get(0).get("ADDRESSEE") != null && Tools.notEmpty(devnotice.get(0).get("ADDRESSEE").toString())) { String[] userList = devnotice.get(0).get("ADDRESSEE").toString().split(","); for(String u : userList) { PageData su = new PageData(); su.put("USER_ID", u); selectUserList.add(su); } } map.put("selectUserList", selectUserList); map.put("result", errInfo); return map; } /**批量删除 * @param * @throws Exception */ @RequestMapping(value="/deleteAll") @RequiresPermissions("devnotice:del") @ResponseBody public Object deleteAll() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); String DATA_IDS = pd.getString("DATA_IDS"); if(Tools.notEmpty(DATA_IDS)){ String ArrayDATA_IDS[] = DATA_IDS.split(","); devnoticeService.deleteAll(ArrayDATA_IDS); errInfo = "success"; }else{ errInfo = "error"; } map.put("result", errInfo); //返回结果 return map; } /**导出到excel * @param * @throws Exception */ @RequestMapping(value="/excel") @RequiresPermissions("toExcel") public ModelAndView exportExcel() throws Exception{ ModelAndView mv = new ModelAndView(); PageData pd = new PageData(); pd = this.getPageData(); Map dataMap = new HashMap(); List titles = new ArrayList(); titles.add("企业id"); //1 titles.add("收件人id"); //2 titles.add("用户名称"); //3 titles.add("创建人"); //4 titles.add("创建时间"); //5 titles.add("编辑人"); //6 titles.add("编辑时间"); //7 titles.add("-"); //8 dataMap.put("titles", titles); List varOList = devnoticeService.listAll(pd); List varList = new ArrayList(); for(int i=0;i