package com.zcloud.controller.inspection; import com.zcloud.controller.base.BaseController; import com.zcloud.entity.Page; import com.zcloud.entity.PageData; import com.zcloud.service.bus.HiddenService; import com.zcloud.service.bus.NoticeCorpUtil; import com.zcloud.service.inspection.SafetyEnvironmentalExplainService; import com.zcloud.service.system.DepartmentService; import com.zcloud.util.*; import org.apache.commons.lang.StringUtils; 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.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; import java.util.*; import java.util.stream.Collectors; /** * 说明:安全环保检查申辩 * 作者:luoxiaobao * 时间:2022-06-08 * 官网:www.zcloudchina.com */ @Controller @RequestMapping("/safetyenvironmentalexplain") public class SafetyEnvironmentalExplainController extends BaseController { @Autowired private SafetyEnvironmentalExplainService safetyenvironmentalexplainService; @Autowired private HiddenService hiddenService; @Autowired private DepartmentService departmentService; @Resource private NoticeCorpUtil noticeCorpUtil; /** * 列表 * * @param page * @throws Exception */ @RequestMapping(value = "/list") @RequiresPermissions("safetyenvironmentalexplain: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("INSPECTED_SITEUSER_ID", Jurisdiction.getUSER_ID()); //被检查单位现场负责人 pd = Jurisdiction.getUserDataJurisdiction(pd); pd.put("loginUserId", Jurisdiction.getUSER_ID()); page.setPd(pd); List varList = safetyenvironmentalexplainService.list(page); //列出SafetyEnvironmentalExplain列表 for (PageData vector : varList) { PageData condition = new PageData(); condition.put("DEPARTMENT_ID", vector.getString("INSPECTED_DEPARTMENT_ID")); List parent_list = departmentService.getGenealogy(condition); String corp_infos = ""; /*for(PageData pageData:parent_list){ for(Object key:pageData.keySet()){ if(StringUtils.equals("NAME",key.toString())&&StringUtils.isBlank(pageData.getString(key))){ if(StringUtils.isBlank(corp_infos)){ corp_infos =pageData.getString(key); }else { corp_infos+= "-"; corp_infos += pageData.getString(key); } } } }*/ if (!Tools.isEmpty(parent_list)) { corp_infos = parent_list.stream().filter(n -> StringUtils.isNotBlank(n.getString("NAME"))).map(n -> n.getString("NAME")).collect(Collectors.joining("-")); } vector.put("INSPECTED_DEPARTMENT_NAMES", corp_infos); } map.put("varList", varList); map.put("page", page); map.put("result", errInfo); return map; } /** * 新增 * * @param * @throws Exception */ @RequestMapping(value = "/add") @RequiresPermissions("safetyenvironmentalexplain:add") @ResponseBody public Object add(@RequestParam(value = "file", required = false) MultipartFile file) throws Exception { Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd.put("INSPECTION_EXPLAIN_ID", this.get32UUID()); //主键 pd.put("ISDELETE", "0"); //是否删除(0:有效 1:删除) pd.put("CREATOR", Jurisdiction.getUSER_ID()); //添加人 pd.put("CREATTIME", DateUtil.date2Str(new Date())); //添加时间 pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业ID pd.put("ACTION_USER", Jurisdiction.getName()); //操作人 pd.put("VALID", "1"); pd.put("ISPASS", "0"); if (StringUtils.isNotBlank(pd.getString("INSPECTED_SITEUSER_SIGN_IMG"))) { MultipartFile img = BASE64DecodedMultipartFile.base64ToMultipart(pd.getString("INSPECTED_SITEUSER_SIGN_IMG")); String suffixName = img.getOriginalFilename().substring(img.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.getDays(); String fileName = this.get32UUID() + img.getOriginalFilename().substring(img.getOriginalFilename().lastIndexOf(".")); Smb.sshSftp(img, fileName, Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile); pd.put("INSPECTED_SITEUSER_SIGN_IMG", Const.FILEPATHFILE + pd.getString("CORPINFO_ID") + "/" + ffile + "/" + fileName); } if (null != file && !file.isEmpty()) { 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.getDays(); //服务器 String fileName = this.get32UUID() + file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); Smb.sshSftp(file, fileName, Const.FILEPATHFILE + Jurisdiction.getCORPINFO_ID() + "/" + ffile); pd.put("INSPECTED_EXPLAIN_FILENAME", file.getOriginalFilename()); pd.put("INSPECTED_EXPLAIN_FILEPATH", Const.FILEPATHFILE + Jurisdiction.getCORPINFO_ID() + "/" + ffile + "/" + fileName); } safetyenvironmentalexplainService.save(pd); noticeCorpUtil.SE_PleadingStepUtil(pd); map.put("pd", pd); map.put("result", errInfo); return map; } /** * 删除 * * @param * @throws Exception */ @RequestMapping(value = "/delete") @RequiresPermissions("safetyenvironmentalexplain: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())); //修改时间 safetyenvironmentalexplainService.delete(pd); map.put("result", errInfo); //返回结果 return map; } /** * 修改 * * @param * @throws Exception */ @RequestMapping(value = "/edit") @RequiresPermissions("safetyenvironmentalexplain: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())); //修改时间 safetyenvironmentalexplainService.edit(pd); map.put("pd", pd); map.put("result", errInfo); return map; } /** * 去修改页面获取数据 * * @param * @throws Exception */ @RequestMapping(value = "/goEdit") @RequiresPermissions("safetyenvironmentalexplain:edit") @ResponseBody public Object goEdit() throws Exception { Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); pd = safetyenvironmentalexplainService.findById(pd); //根据ID读取 map.put("pd", pd); map.put("result", errInfo); return map; } /** * 批量删除 * * @param * @throws Exception */ @RequestMapping(value = "/deleteAll") @RequiresPermissions("safetyenvironmentalexplain:del") @ResponseBody public Object deleteAll() 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())); //修改时间 String DATA_IDS = pd.getString("DATA_IDS"); if (Tools.notEmpty(DATA_IDS)) { String[] ArrayDATA_IDS = DATA_IDS.split(","); pd.put("ArrayDATA_IDS", ArrayDATA_IDS); //待删除ids safetyenvironmentalexplainService.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("安全环保检查ID"); //1 titles.add("申辩内容"); //2 titles.add("是否删除(0:有效 1:删除)"); //3 titles.add("添加人"); //4 titles.add("添加时间"); //5 titles.add("修改人"); //6 titles.add("修改时间"); //7 titles.add("企业ID"); //8 dataMap.put("titles", titles); pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业ID List varOList = safetyenvironmentalexplainService.listAll(pd); List varList = new ArrayList(); for (int i = 0; i < varOList.size(); i++) { PageData vpd = new PageData(); vpd.put("var1", varOList.get(i).getString("INSPECTION_ID")); //1 vpd.put("var2", varOList.get(i).getString("INSPECTED_EXPLAIN")); //2 vpd.put("var3", varOList.get(i).getString("ISDELETE")); //3 vpd.put("var4", varOList.get(i).getString("CREATOR")); //4 vpd.put("var5", varOList.get(i).getString("CREATTIME")); //5 vpd.put("var6", varOList.get(i).getString("OPERATOR")); //6 vpd.put("var7", varOList.get(i).getString("OPERATTIME")); //7 vpd.put("var8", varOList.get(i).getString("CORPINFO_ID")); //8 varList.add(vpd); } dataMap.put("varList", varList); ObjectExcelView erv = new ObjectExcelView(); mv = new ModelAndView(erv, dataMap); return mv; } /** * 查询安环检查是否有隐患 * * @param * @throws Exception */ @RequestMapping(value = "/hiddencount") @ResponseBody public Object hiddencount() throws Exception { Map map = new HashMap(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); List hiddenlist = hiddenService.findByInspectionId(pd); //根据ID读取 if (hiddenlist.size() > 0) { map.put("hiddencount", '1'); } else { map.put("hiddencount", '0'); } map.put("pd", pd); map.put("result", errInfo); return map; } }