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 javax.management.RuntimeErrorException; 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.service.bus.IdentificationPartsService; import com.zcloud.service.bus.RiskPointService; import com.zcloud.service.bus.RiskUnitService; import com.zcloud.service.system.DepartmentService; /** * 说明:辨识部位 * 作者:luoxiaobao * 时间:2020-12-30 * 官网:www.zcloudchina.com */ @Controller @RequestMapping("/app/identificationparts") public class AppIdentificationPartsController extends BaseController { @Autowired private IdentificationPartsService identificationpartsService; @Autowired private RiskUnitService riskunitService; @Autowired private RiskPointService riskpointService; @Autowired private DepartmentService departmentService; /**新增 * @param * @throws Exception */ @RequestMapping(value="/add") @RequiresPermissions("identificationparts:add") @ResponseBody public Object add() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("IDENTIFICATIONPARTS_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-否 identificationpartsService.save(pd); map.put("result", errInfo); return map; } /**获取风险点下拉框选项 * @param page * @throws Exception */ @RequestMapping(value="/getSelect") @ResponseBody public Object getPointSelect() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业 List unitList = riskunitService.listAll(pd); map.put("unitList", unitList); map.put("result", errInfo); return map; } /**删除 * @param out * @throws Exception */ @RequestMapping(value="/delete") @RequiresPermissions("identificationparts:del") @ResponseBody public Object delete() throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("CHECK_IDENTIFICATION_ID", pd.get("IDENTIFICATIONPARTS_ID")); List list = riskpointService.listAll(pd); if(list!=null && list.size()>0) { map.put("result", "fail"); //返回结果 return map; } pd.put("OPERATOR", Jurisdiction.getUsername()); //修改人 pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 identificationpartsService.delete(pd); map.put("result", errInfo); //返回结果 return map; } /**修改 * @param * @throws Exception */ @RequestMapping(value="/edit") @RequiresPermissions("identificationparts: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())); //修改时间 identificationpartsService.edit(pd); map.put("result", errInfo); return map; } /**列表 * @param page * @throws Exception */ @RequestMapping(value="/list") @RequiresPermissions("identificationparts: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 = identificationpartsService.list(page); //列出IdentificationParts列表 map.put("varList", varList); map.put("page", page); map.put("result", errInfo); return map; } /**列表 * @param page * @throws Exception */ @RequestMapping(value="/listAll") @ResponseBody public Object listAll(Page page) throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业 List partsList = identificationpartsService.listAll(pd); map.put("partsList", partsList); map.put("result", errInfo); return map; } /**列表 * @param page * @throws Exception */ @RequestMapping(value="/listAllByIdens") @ResponseBody public Object listAllByIdens(Page page) throws Exception{ Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); String DATA_IDS = pd.getString("IDS"); if(Tools.notEmpty(DATA_IDS)){ String ArrayDATA_IDS[] = DATA_IDS.split(","); pd.put("ArrayDATA_IDS", ArrayDATA_IDS); List varList = identificationpartsService.listAllByIdens(pd); errInfo = "success"; map.put("varList", varList); }else{ errInfo = "fail"; } pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业 List partsList = identificationpartsService.listAll(pd); map.put("partsList", partsList); 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(); List arrList = riskpointService.findByPartsId(pd); String ACCIDENTS_NAME = ""; if(arrList.size()>0){ for(PageData arr:arrList){ if(Tools.isEmpty(ACCIDENTS_NAME)){ ACCIDENTS_NAME =ACCIDENTS_NAME + arr.getString("ACCIDENTS_NAME"); }else { ACCIDENTS_NAME =ACCIDENTS_NAME +","+ arr.getString("ACCIDENTS_NAME"); } } } String[] a = ACCIDENTS_NAME.split(","); pd = identificationpartsService.findById(pd); //根据ID读取 pd.put("ACCIDENTS_NAME",ACCIDENTS_NAME); map.put("pd", pd); map.put("result", errInfo); return map; } /**批量删除 * @param * @throws Exception */ @RequestMapping(value="/deleteAll") @RequiresPermissions("identificationparts: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(","); for (String id : ArrayDATA_IDS) { PageData iden = new PageData(); iden.put("CHECK_IDENTIFICATION_ID", id); List list = riskpointService.listAll(iden); if(list!=null && list.size()>0) { continue; } pd.put("IDENTIFICATIONPARTS_ID", id); pd.put("OPERATOR", Jurisdiction.getUsername()); //修改人 pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 identificationpartsService.delete(pd); } // identificationpartsService.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{ ModelAndView mv = new ModelAndView(); PageData pd = new PageData(); pd = this.getPageData(); pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); Map dataMap = new HashMap(); List titles = new ArrayList(); titles.add("所属企业"); //2 titles.add("风险点(单元)"); //2 titles.add("辨识部位"); //1 dataMap.put("titles", titles); List varOList = identificationpartsService.listAll(pd); List varList = new ArrayList(); for(int i=0;i map = new HashMap(); String errInfo = "success"; 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 filePath = PathUtil.getProjectpath() + Const.FILEPATHFILE + "identificationparts/"+DateUtil.getDays()+"/"; // String fileName = FileUpload.fileUp(file, filePath, this.get32UUID());//执行上传 String ffile = "identificationparts/"+DateUtil.getDays()+"/"; String filePath = Const.FILEURL + Const.FILEPATHFILE + ffile; String fileName = this.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); Smb.sshSftp(file, fileName,Const.FILEPATHFILE + ffile); List listPd = (List)ObjectExcelRead.readExcel(filePath, fileName, 1, 0, 0); //执行读EXCEL操作,读出的数据导入List 2:从第3行开始;0:从第A列开始;0:第0个sheet /** * * 所属部门 风险点(单元) 辨识部位 */ List saveList = new ArrayList<>(); try { if(listPd.size()>0) { List header = new ArrayList<>(); header.add("所属部门");header.add("风险点(单元)");header.add("辨识部位"); PageData pdCorpId = new PageData(); pdCorpId.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); pdCorpId.put("ISDELETE", "0"); List departAll =departmentService.listAll(pdCorpId); Map departMapAll = new HashMap<>(); for (PageData pageData : departAll) { departMapAll.put(pageData.getString("NAME"), pageData); } List riskunitListAll =riskunitService.listAll(pdCorpId); Map riskunitMapAll = new HashMap<>(); for (PageData pageData : riskunitListAll) { riskunitMapAll.put(pageData.getString("DEPARTMENT_ID")+pageData.getString("RISKUNITNAME"), pageData); } List identiListAll =identificationpartsService.listAll(pdCorpId); Map identiMapAll = new HashMap<>(); for (PageData pageData : identiListAll) { identiMapAll.put(pageData.getString("RISK_UNIT_ID")+pageData.getString("PARTSNAME"), pageData); } Map hasAgain = new HashMap<>(); int succeeNum = 1; for(PageData lpd:listPd) { succeeNum++; for(int i=0;i map = new HashMap<>(); PageData pd = new PageData(); pd = this.getPageData(); String errInfo = "success"; PageData identificationparts = new PageData(); identificationparts.put("RISKUNIT_ID", pd.getString("RISK_UNIT_ID")); identificationparts.put("CHECK_NAME",pd.getString("name")); List list = identificationpartsService.listAll(identificationparts); if(list.size()>0) { errInfo = "fail"; } map.put("result", errInfo); //返回结果 map.put("count", list.size()); return map; } }