package com.zcloud.controller.app; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import com.zcloud.util.*; 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.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.servlet.ModelAndView; import org.apache.shiro.authz.annotation.RequiresPermissions; import com.zcloud.controller.base.BaseController; import com.zcloud.entity.Page; import com.zcloud.entity.PageData; import com.zcloud.service.bus.LimitSpaceService; /** * 说明:有限空间台账 * 作者:luoxiaobao * 时间:2021-04-02 * 官网:www.zcloudchina.com */ @Controller @RequestMapping("/app/limitspace") public class AppLimitSpaceController extends BaseController { @Autowired private LimitSpaceService limitspaceService; /**新增 * @param * @throws Exception */ @RequestMapping(value="/add") @ResponseBody public Object add(@RequestParam(value="FFILE",required=false) MultipartFile file) throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("LIMITSPACE_ID", this.get32UUID()); //主键 pd.put("CREATOR",pd.get("USER")); //添加人 pd.put("CREATTIME", DateUtil.date2Str(new Date())); //创建时间 pd.put("OPERATOR", pd.get("USER")); //修改人 pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 pd.put("ISDELETE", "0"); //是否删除 if(file !=null){ String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1).toLowerCase(); if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { errInfo = "fail"; map.put("result", errInfo); map.put("msg", "文件格式不正确!"); return map; } String ffile = DateUtil.getTime(); String fileName = this.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); Smb.sshSftp(file, fileName, Const.FILEPATHYHTP + "/" + ffile); pd.put("INSTRUCTION_FILE",Const.FILEPATHYHTP + "/" + ffile + "/" + fileName); } limitspaceService.save(pd); map.put("result", errInfo); return map; } /**删除 * @param out * @throws Exception */ @RequestMapping(value="/delete") @RequiresPermissions("limitspace:del") @ResponseBody public Object delete() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("OPERATOR", Jurisdiction.getUsername()); //修改人 pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 limitspaceService.delete(pd); map.put("result", errInfo); //返回结果 return map; } /**修改 * @param * @throws Exception */ @RequestMapping(value="/edit") @ResponseBody public Object edit(@RequestParam(value="FFILE",required=false) MultipartFile file) throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("OPERATOR", pd.get("USER")); //修改人 pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 if(file !=null){ String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1).toLowerCase(); if (!"pdf".equals(suffixName) && !"jpg".equals(suffixName) && !"jpeg".equals(suffixName) && !"png".equals(suffixName) && !"mp4".equals(suffixName)) { errInfo = "fail"; map.put("result", errInfo); map.put("msg", "文件格式不正确!"); return map; } String ffile = DateUtil.getTime(); String fileName = this.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); Smb.sshSftp(file, fileName, Const.FILEPATHYHTP + "/" + ffile); pd.put("INSTRUCTION_FILE",Const.FILEPATHYHTP + "/" + ffile + "/" + fileName); } limitspaceService.edit(pd); map.put("result", errInfo); return map; } /**列表 * @param page * @throws Exception */ @RequestMapping(value="/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 = limitspaceService.list(page); //列出LimitSpace列表 map.put("varList", varList); map.put("page", page); map.put("result", errInfo); return map; } /**去修改页面获取数据 * @param * @throws Exception */ @RequestMapping(value="/goEdit") @ResponseBody public Object goEdit() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd = limitspaceService.findById(pd); //根据ID读取 map.put("pd", pd); map.put("result", errInfo); return map; } /**查询本公司所有有限空间 * @param * @throws Exception */ @RequestMapping(value="/listAllSpace") @ResponseBody public Object listAllSpace() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); List varList = limitspaceService.listAll(pd); //根据ID读取 map.put("varList", varList); map.put("result", errInfo); return map; } /**批量删除 * @param * @throws Exception */ @RequestMapping(value="/deleteAll") @RequiresPermissions("limitspace: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(","); pd.put("ArrayDATA_IDS", ArrayDATA_IDS); pd.put("OPERATOR", Jurisdiction.getUsername()); //修改人 pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 //limitspaceService.deleteAll(pd); errInfo = "success"; }else{ errInfo = "fail"; } 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("编号"); //1 titles.add("有限空间名称"); //2 titles.add("有限空间类型"); //3 titles.add("位置及范围"); //4 titles.add("主要危险及有害因素"); //5 titles.add("风险等级"); //6 titles.add("本有限空间最多作业人数"); //7 titles.add("是否有应急指导书 0无 1有"); //8 titles.add("备注"); //9 titles.add("填报人"); //10 titles.add("主要负责人"); //11 titles.add("填报时间"); //12 titles.add("企业ID"); //13 titles.add("添加人"); //14 titles.add("添加时间"); //15 titles.add("修改人"); //16 titles.add("修改时间"); //17 titles.add("是否删除 1-是 0-否"); //18 dataMap.put("titles", titles); List varOList = limitspaceService.listAll(pd); List varList = new ArrayList(); for(int i=0;i