package com.zcloud.controller.bus; import java.io.File; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletResponse; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.transaction.annotation.Transactional; 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.util.Const; import com.zcloud.util.DateUtil; import com.zcloud.util.FileDownload; import com.zcloud.util.FileUpload; import com.zcloud.util.Jurisdiction; import com.zcloud.util.ObjectExcelRead; import com.zcloud.util.ObjectExcelView; import com.zcloud.util.PathUtil; import com.zcloud.util.Smb; import com.zcloud.util.Tools; import com.zcloud.entity.PageData; import com.zcloud.entity.system.Dictionaries; import com.zcloud.service.bus.ImgFilesService; import com.zcloud.service.bus.RestrictedSpaceService; import com.zcloud.service.system.DictionariesService; /** * 说明:有(受)限空间 * 作者:luoxiaobao * 时间:2021-01-07 * 官网:www.zcloudchina.com */ @Controller @RequestMapping("/restrictedspace") public class RestrictedSpaceController extends BaseController { @Autowired private RestrictedSpaceService restrictedspaceService; @Autowired private ImgFilesService imgFilesService; @Autowired private DictionariesService dictionariesService; /**新增 * @param * @throws Exception */ @RequestMapping(value="/add") @RequiresPermissions("restrictedspace:add") @ResponseBody public Object add() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("RESTRICTEDSPACE_ID", this.get32UUID()); //主键 pd.put("CREATOR", Jurisdiction.getUsername()); //添加人 pd.put("CREATTIME", DateUtil.date2Str(new Date())); //添加时间 pd.put("OPERATOR", Jurisdiction.getUsername()); //修改人 pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); pd.put("ISDELETE", "0"); //是否删除 1-是 0-否 restrictedspaceService.save(pd); map.put("result", errInfo); map.put("pd", pd); return map; } /**删除 * @param out * @throws Exception */ @RequestMapping(value="/delete") @RequiresPermissions("restrictedspace: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())); //修改时间 restrictedspaceService.delete(pd); PageData pd2 = new PageData(); pd2.put("FOREIGN_KEY", pd.getString("RESTRICTEDSPACE_ID")); pd2.put("TYPE",7); List imgs = imgFilesService.listAll(pd2);//隐患图片 if(imgs != null && imgs.size() > 0) { for (PageData pageData : imgs) { File old = new File(PathUtil.getProjectpath()+pageData.getString("FILEPATH")); old.delete(); imgFilesService.delete(pageData); } } map.put("result", errInfo); //返回结果 return map; } /**修改 * @param * @throws Exception */ @RequestMapping(value="/edit") @RequiresPermissions("restrictedspace:edit") @ResponseBody public Object edit() 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())); //修改时间 restrictedspaceService.edit(pd); map.put("result", errInfo); map.put("pd", pd); return map; } /**列表 * @param page * @throws Exception */ @RequestMapping(value="/list") @RequiresPermissions("restrictedspace: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()); pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); page.setPd(pd); List varList = restrictedspaceService.list(page); //列出RestrictedSpace列表 if(varList.size()>0) {//如果有数据就去查询图片 String varIds[] = new String[varList.size()]; //需要查询的图片ids for (int i = 0; i < varList.size(); i++) { varIds[i] = varList.get(i).getString("RESTRICTEDSPACE_ID"); } PageData pd2 = new PageData(); pd2.put("ArrayDATA_IDS", varIds); List varImgList = imgFilesService.listAllByIds(pd2);// for(int i=0;i map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd = restrictedspaceService.findById(pd); //根据ID读取 PageData pd2 = new PageData(); pd2.put("FOREIGN_KEY", pd.getString("RESTRICTEDSPACE_ID")); pd2.put("TYPE",7); List hImgs = imgFilesService.listAll(pd2);// map.put("hImgs", hImgs); map.put("pd", pd); map.put("result", errInfo); return map; } /**批量删除 * @param * @throws Exception */ @RequestMapping(value="/deleteAll") @RequiresPermissions("restrictedspace: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(","); restrictedspaceService.deleteAll(ArrayDATA_IDS); 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{ String DICTIONARIES_ID = "723d3cc7b2c8497c83fd6b4b6cc9a45d"; DICTIONARIES_ID = Tools.isEmpty(DICTIONARIES_ID)?"0":DICTIONARIES_ID; List dicListVal = dictionariesService.listSubDictByParentId(DICTIONARIES_ID); //用传过来的ID获取此ID下的子列表数据 Map dicMap = new HashMap<>(); for (Dictionaries dictionaries : dicListVal) { dicMap.put(dictionaries.getBIANMA(), dictionaries.getNAME()); } ModelAndView mv = new ModelAndView(); PageData pd = new PageData(); pd = this.getPageData(); Map dataMap = new HashMap(); List titles = new ArrayList(); titles.add("NO"); //1 titles.add("名称"); //1 titles.add("存在区域"); //2 titles.add("涉及岗位"); //3 titles.add("进入频率"); //4 titles.add("主要危害因素"); //5 titles.add("可能事故后果"); //6 titles.add("防护要求"); //7 titles.add("作业形式"); //8 titles.add("审批责任人"); //9 titles.add("现场责任人"); //10 titles.add("备注"); //11 titles.add("添加人"); //13 titles.add("添加时间"); //14 titles.add("修改人"); //15 titles.add("修改时间"); //16 // titles.add("是否删除 1-是 0-否"); //17 dataMap.put("titles", titles); pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); pd.put("ISDELETE", "0"); List varOList = restrictedspaceService.listAll(pd); List varList = new ArrayList(); for(int i=0;i map = new HashMap(); String errInfo = "success"; PageData pdPublic = new PageData(); pdPublic = this.getPageData(); StringBuffer errorStr = new StringBuffer(); if (null != file && !file.isEmpty()) { String suffixName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")+1).toLowerCase(); if (!"xls".equals(suffixName)) { errInfo = "fail"; map.put("result", errInfo); map.put("msg", "文件格式不正确!"); return map; } String ffile = "restrictedspace/"+DateUtil.getDays()+"/"; String filePath = Const.FILEURL + Const.FILEPATHFILE + Jurisdiction.getCORPINFO_ID() + "/" + ffile; String fileName = this.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); Smb.sshSftp(file, fileName,Const.FILEPATHFILE + Jurisdiction.getCORPINFO_ID() + "/" + ffile); List listPd = (List)ObjectExcelRead.readExcel(filePath, fileName, 1, 0, 0);//执行读EXCEL操作,读出的数据导入List 2:从第3行开始;0:从第A列开始;0:第0个sheet if(listPd.size()==0) { errInfo="error"; errorStr.append("未找到上传内容,请确认后重新上传"); map.put("result", errInfo); //返回结果 map.put("resultStr", errorStr.toString()); return map; } String DICTIONARIES_ID = "723d3cc7b2c8497c83fd6b4b6cc9a45d"; DICTIONARIES_ID = Tools.isEmpty(DICTIONARIES_ID)?"0":DICTIONARIES_ID; List dicListVal = dictionariesService.listSubDictByParentId(DICTIONARIES_ID); //用传过来的ID获取此ID下的子列表数据 Map dicMap = new HashMap<>(); for (Dictionaries dictionaries : dicListVal) { dicMap.put(dictionaries.getNAME(),dictionaries.getBIANMA()); } int line= 12; int row =0; List> addList = new ArrayList<>(); for(PageData lpd:listPd) { row ++; String biaoshi = Tools.excelHandle(lpd.get("var0").toString()); if(Tools.isEmpty(biaoshi)) { break; } for(int i=1;i valPd = new HashMap<>(); String NAME= Tools.excelHandle(lpd.get("var1").toString()); String AREA= Tools.excelHandle(lpd.get("var2").toString()); String POST= Tools.excelHandle(lpd.get("var3").toString()); String FREQUENCY= Tools.excelHandle(lpd.get("var4").toString()); String HAZARDFACTORS= Tools.excelHandle(lpd.get("var5").toString()); String CONSEQUENCE= Tools.excelHandle(lpd.get("var6").toString()); String REQUIREMENTS= Tools.excelHandle(lpd.get("var7").toString()); String HOMEWORKFORM= dicMap.get(Tools.excelHandle(lpd.get("var8").toString())).toString(); String EXAMINEOR= Tools.excelHandle(lpd.get("var9").toString()); String SCENEOR=Tools.excelHandle( lpd.get("var10").toString()); String DESCR= Tools.excelHandle(lpd.get("var11").toString()); valPd.put("NAME", NAME); valPd.put("AREA", AREA); valPd.put("POST", POST); valPd.put("FREQUENCY", FREQUENCY); valPd.put("HAZARDFACTORS", HAZARDFACTORS); valPd.put("CONSEQUENCE", CONSEQUENCE); valPd.put("REQUIREMENTS", REQUIREMENTS); valPd.put("HOMEWORKFORM", HOMEWORKFORM); valPd.put("EXAMINEOR", EXAMINEOR); valPd.put("SCENEOR", SCENEOR); valPd.put("DESCR", DESCR); valPd.put("RESTRICTEDSPACE_ID", this.get32UUID()); //主键 valPd.put("CREATOR", Jurisdiction.getUsername()); //添加人 valPd.put("CREATTIME", DateUtil.date2Str(new Date())); //添加时间 valPd.put("OPERATOR", Jurisdiction.getUsername()); //修改人 valPd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 valPd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); valPd.put("ISDELETE", "0"); //是否删除 1-是 0-否 addList.add(valPd); } PageData pd = new PageData(); pd.put("list", addList); restrictedspaceService.savaAll(pd); }else { errInfo="error"; errorStr.append("上传文件错误!请联系管理员"); } map.put("result", errInfo); //返回结果 map.put("resultStr", errorStr.toString()); return map; } }