qa-prevention-gwj/src/main/java/com/zcloud/controller/bus/RiskPointTemporaryControlle...

976 lines
38 KiB
Java
Raw Normal View History

2023-11-07 09:32:12 +08:00
package com.zcloud.controller.bus;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import org.apache.shiro.authz.annotation.RequiresPermissions;
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 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.entity.system.Dictionaries;
import com.zcloud.service.bus.IdeRepositoryService;
import com.zcloud.service.bus.IdentificationPartsService;
import com.zcloud.service.bus.RiskCheckItemService;
import com.zcloud.service.bus.RiskPointPositionService;
import com.zcloud.service.bus.RiskPointService;
import com.zcloud.service.bus.RiskPointTemporaryService;
import com.zcloud.service.bus.RiskToUserService;
import com.zcloud.service.bus.RiskUnitService;
import com.zcloud.service.system.DepartmentService;
import com.zcloud.service.system.DictionariesService;
import com.zcloud.service.system.UsersService;
import com.zcloud.util.Const;
import com.zcloud.util.DateUtil;
import com.zcloud.util.FileDownload;
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 net.sf.json.JSONArray;
/**
*
* luoxiaobao
* 2020-12-29
* www.zcloudchina.com
*/
@Controller
@RequestMapping("/riskpointTemporary")
public class RiskPointTemporaryController extends BaseController {
@Autowired
private RiskPointService riskpointService;
@Autowired
private DepartmentService departmentService;
@Autowired
private UsersService usersService;
@Autowired
private RiskToUserService riskToUserService;
@Autowired
private RiskPointPositionService riskPointPositionService;
@Autowired
private IdentificationPartsService identificationPartsService;
@Autowired
private RiskUnitService riskUnitService;
@Autowired
private RiskCheckItemService riskcheckitemService;
@Autowired
private DictionariesService dictionariesService;
@Autowired
private IdentificationPartsService identificationpartsService;
@Autowired
private RiskPointTemporaryService riskPointTemporaryService;
@Autowired
private IdeRepositoryService ideRepositoryService;
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/add")
@ResponseBody
@Transactional
public Object add() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd.put("RISKPOINTTEMPORARY_ID", this.get32UUID()); //主键
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业
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())); //修改时间
pd.put("TYPE", "0"); //修改时间
pd.put("RES_ISDELETE", "0");
//String riskPointCountString = riskpointService.countByCorpInfo(pd);
//Integer count = Integer.parseInt(riskPointCountString);
//count ++;
//pd.put("SORT", count);
riskPointTemporaryService.save(pd);
// if(pd.get("OTHER")!=null && !pd.get("OTHER").equals("")) {
// List<JSONObject> list = (List<JSONObject>)JSON.parse(pd.get("OTHER").toString());
// for (JSONObject json : list) {
// if(json.get("DEPARTMENT_ID")!=null && json.get("DEPARTMENT_ID")!="" && json.get("USER_ID")!=null && json.get("USER_ID")!="") {
// PageData other = new PageData();
// other.put("RISKTOUSER_ID", this.get32UUID()); //主键
// other.put("RISKPOINT_ID", pd.get("RISKPOINT_ID"));
// other.put("DEPARTMENT_ID",json.get("DEPARTMENT_ID"));
// other.put("USER_ID",json.get("USER_ID"));
// riskToUserService.save(other);
// }
// }
// }
// PageData item = new PageData();
// item.put("RISKCHECKITEM_ID", this.get32UUID()); //主键
// item.put("RISKPOINT_ID", pd.get("RISKPOINT_ID")); //风险点主键
// item.put("ISDELETE", "0"); //是否删除
// item.put("CREATOR",Jurisdiction.getUsername()); //添加人
// item.put("CREATTIME", DateUtil.date2Str(new Date())); //创建时间
// item.put("OPERATOR", Jurisdiction.getUsername()); //修改人
// item.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间
// item.put("CHECK_CONTENT", pd.get("CHECK_CONTENT")); //检查内容
// riskcheckitemService.save(item);
map.put("result", errInfo);
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/goAdd")
@RequiresPermissions("riskpointTemporary:add")
@ResponseBody
public Object goAdd() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
// //获取部门下拉树
// List<PageData> zdepartmentPdList = new ArrayList<PageData>();
// String ZDEPARTMENT_ID = Jurisdiction.getDEPARTMENT_ID();
// ZDEPARTMENT_ID = "".equals(ZDEPARTMENT_ID)?"0":ZDEPARTMENT_ID;
// PageData dept = new PageData();
// dept.put("DEPARTMENT_ID",ZDEPARTMENT_ID);
// dept=this.departmentService.findById(dept);
//获取部门下拉树
List<PageData> zdepartmentPdList = new ArrayList<PageData>();
PageData dept = new PageData();
dept.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
dept=this.departmentService.findByCorpId(dept);
String ZDEPARTMENT_ID = dept.getString("DEPARTMENT_ID");
PageData node = new PageData();
node.put("id", dept.get("DEPARTMENT_ID"));
node.put("parentId", dept.get("PARENT_ID"));
node.put("name", dept.get("NAME"));
node.put("icon", "../../../assets/images/user.gif");
zdepartmentPdList.add(node);
JSONArray arr = JSONArray.fromObject(departmentService.listAllDepartmentToSelect(ZDEPARTMENT_ID,zdepartmentPdList));
map.put("zTreeNodes", (null == arr ?"":"{\"treeNodes\":" + arr.toString() + "}"));
//获取人员下拉
PageData user = new PageData();
user.put("DEPARTMENT_ID", ZDEPARTMENT_ID);
List<PageData> userList = this.usersService.listAllUser(user);
map.put("userList", userList);
map.put("result", errInfo);
return map;
}
/**
* @param out
* @throws Exception
*/
@RequestMapping(value="/delete")
@RequiresPermissions("riskpointTemporary:del")
@ResponseBody
public Object delete() throws Exception{
Map<String,String> map = new HashMap<String,String>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
riskpointService.delete(pd);
map.put("result", errInfo); //返回结果
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/edit")
@ResponseBody
@Transactional
public Object edit() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
if(pd.get("TYPE") != null && Tools.notEmpty(pd.get("TYPE").toString())) {
if("1".equals(pd.get("TYPE").toString())) {// 修改原来已存在的风险因素
PageData risk = riskpointService.findById(pd);
pd.put("TYPE", "1");
pd.put("OPERATOR", Jurisdiction.getUsername()); //修改人
pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间
pd.put("RISKPOINTTEMPORARY_ID",this.get32UUID());
pd.put("RES_ID", pd.get("RISKPOINT_ID"));
pd.put("ISDELETE", "0"); //是否删除
pd.put("CREATOR", risk.get("CREATOR")); //添加人
pd.put("CREATTIME", risk.get("CREATTIME")); //创建时间
pd.put("RES_ISDELETE", risk.get("RES_ISDELETE"));
pd.put("SORT", risk.get("SORT"));
pd.put("LONGITUDE", risk.get("LONGITUDE"));
pd.put("LATITUDE", risk.get("LATITUDE"));
pd.put("CORPINFO_ID", risk.get("CORPINFO_ID"));
riskPointTemporaryService.save(pd);
} else if("2".equals(pd.get("TYPE").toString())) {
pd.put("RISKPOINTTEMPORARY_ID",pd.get("RISKPOINT_ID"));
pd.put("OPERATOR", Jurisdiction.getUsername()); //修改人
pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间
riskPointTemporaryService.edit(pd);
} else if("3".equals(pd.get("TYPE").toString())) {
pd.put("TYPE", "2");
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业
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())); //修改时间
pd.put("SETUPTIME", pd.get("SETUPTIME"));
pd.put("RISKPOINTTEMPORARY_ID",this.get32UUID());
pd.put("RES_ID", pd.get("RISKPOINT_ID"));
pd.put("ISDELETE", "0"); //是否删除
pd.put("RES_ISDELETE", "0");
riskPointTemporaryService.save(pd);
}
} else {
errInfo = "fail";
}
map.put("result", errInfo);
return map;
}
/**
* @param page
* @throws Exception
*/
@RequestMapping(value="/list")
@ResponseBody
public Object list(Page page) throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
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());
pd.put("USER_ID",Jurisdiction.getUSER_ID());
/* String DEPARTMENT_ID = Jurisdiction.getDEPARTMENT_ID();
String ids = departmentService.getDEPARTMENT_IDS(DEPARTMENT_ID);
ids=Jurisdiction.getDEPARTMENT_ID()+","+ids;
if(ids!=null && Tools.notEmpty(ids) && ids.lastIndexOf(",")>-1) {
ids = ids.substring(0,ids.lastIndexOf(","));
pd.put("DEPARTMENT_IDS", ids.split(","));
}*/
page.setPd(pd);
List<PageData> varList = riskpointService.list(page); //列出RiskPoint列表
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<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd.put("RISKPOINTTEMPORARY_ID", pd.get("RISKPOINT_ID"));
pd = riskPointTemporaryService.findById(pd); //根据ID读取
map.put("pd", pd);
map.put("result", errInfo);
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/goRiskEdit")
@ResponseBody
public Object goRiskEdit() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd = riskpointService.findRiskById(pd); //根据ID读取
map.put("pd", pd);
map.put("result", errInfo);
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/goResEdit")
@ResponseBody
public Object goResEdit() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd.put("IDEREPOSITORY_ID", pd.get("RISKPOINT_ID"));
pd = ideRepositoryService.findById(pd); //根据ID读取
map.put("pd", pd);
map.put("result", errInfo);
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/statistic")
@ResponseBody
public Object statistic() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd=this.getPageData();
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
// if(pd.get("isBI")==null) {
// pd.put("USER_ID",Jurisdiction.getUsername());
// String DEPARTMENT_ID = Jurisdiction.getDEPARTMENT_ID();
// String ids = departmentService.getDEPARTMENT_IDS(DEPARTMENT_ID);
// if(ids!=null && Tools.notEmpty(ids)) {
// ids = ids.substring(0,ids.lastIndexOf(","));
// pd.put("DEPARTMENT_IDS", ids.split(","));
// }
// }
List<PageData> riskAll = riskpointService.statisticsAll(pd);
//int riskCount =
//List<PageData> riskAll = identificationPartsService.getBiCount(pd);
List<PageData> idAll = identificationPartsService.listIndexAll(pd);
List<PageData> unitAll = riskUnitService.listIndexAll(pd);
//风险点-只按名称统计 辨识部位-统计不同单元内的辨识部位名称的总数
map.put("riskAll", riskAll);
map.put("idAll", idAll);
map.put("unitAll", unitAll);
map.put("result", errInfo);
return map;
}
/**
* @param
* @throws Exception
*/
@RequestMapping(value="/deleteAll")
@RequiresPermissions("riskpointTemporary:del")
@ResponseBody
public Object deleteAll() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
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(",");
riskpointService.deleteAll(ArrayDATA_IDS);
errInfo = "success";
}else{
errInfo = "fail";
}
map.put("result", errInfo); //返回结果
return map;
}
/**excel
* @param
* @throws Exception
*/
@RequestMapping(value="/excel")
2024-01-06 15:24:03 +08:00
// @RequiresPermissions("toExcel")
2023-11-07 09:32:12 +08:00
public ModelAndView exportExcel() throws Exception{
ModelAndView mv = new ModelAndView();
PageData pd = new PageData();
pd = this.getPageData();
if(Jurisdiction.getUsername()!="admin") {
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
}
Map<String,Object> dataMap = new HashMap<String,Object>();
List<String> titles = new ArrayList<String>();
titles.add("企业名称"); //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("添加人"); //12
titles.add("创建时间"); //13
titles.add("修改人"); //14
titles.add("修改时间"); //15
dataMap.put("titles", titles);
List<PageData> varOList = riskpointService.listAllByDc(pd);
List<PageData> varList = new ArrayList<PageData>();
for(int i=0;i<varOList.size();i++){
PageData vpd = new PageData();
vpd.put("var1", varOList.get(i).getString("CORP_NAME")); //1
vpd.put("var2", varOList.get(i).getString("RISKUNITNAME")); //1
vpd.put("var3", varOList.get(i).getString("PARTSNAME")); //2
vpd.put("var4", varOList.get(i).getString("RISK_DESCR")); //3
//vpd.put("var4", varOList.get(i).getString("RISK_POSITION_ID")); //4
vpd.put("var5", varOList.get(i).getString("LEVELID")); //5
vpd.put("var6", varOList.get(i).getString("MEASURES")); //6
vpd.put("var7", varOList.get(i).getString("ACCIDENTS_NAME")); //7
vpd.put("var8", varOList.get(i).getString("EME_MEASURES")); //8
vpd.put("var9", varOList.get(i).getString("DEPARTMENT_ID")); //9
vpd.put("var10", varOList.get(i).getString("USER_ID")); //10
vpd.put("var11", varOList.get(i).getString("CREATOR")); //12
vpd.put("var12", varOList.get(i).getString("CREATTIME")); //13
vpd.put("var13", varOList.get(i).getString("OPERATOR")); //14
vpd.put("var14", varOList.get(i).getString("OPERATTIME")); //15
varList.add(vpd);
}
dataMap.put("varList", varList);
ObjectExcelView erv = new ObjectExcelView();
mv = new ModelAndView(erv,dataMap);
return mv;
}
/**
* @param page
* @throws Exception
*/
@RequestMapping(value="/getPointSelect")
@ResponseBody
public Object getPointSelect() throws Exception{
Map<String,Object> map = new HashMap<String,Object>();
String errInfo = "success";
PageData pd = new PageData();
pd = this.getPageData();
pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); //企业
List<PageData> positionList = riskPointPositionService.listAll(pd);
List<PageData> partsList = identificationPartsService.listAll(pd);
List<PageData> unitList = riskUnitService.listAll(pd);
map.put("positionList", positionList);
map.put("partsList", partsList);
map.put("unitList", unitList);
map.put("result", errInfo);
return map;
}
/**excel
* @param
* @throws Exception
*/
@RequestMapping(value="/excelModel")
2024-01-06 15:24:03 +08:00
// @RequiresPermissions("toExcel")
2023-11-07 09:32:12 +08:00
public void exportExcelModel(HttpServletResponse response) throws Exception{
// Exclupload ss=new Exclupload();
// ss.testModuleExcel();
FileDownload.fileDownload(response, PathUtil.getProjectpath() + Const.FILEPATHFILE + "riskpointExcelTemplate.xls", "风险辨识导入模板.xls");
}
/**EXCEL
* @param file
* @return
* @throws Exception
*/
@RequestMapping(value="/readExcel")
@RequiresPermissions("fromExcel")
@SuppressWarnings("unchecked")
@ResponseBody
@Transactional
public Object readExcel(@RequestParam(value="FFILE",required=false) MultipartFile file) throws Exception{
Map<String,String> map = new HashMap<String,String>();
String errInfo = "success";
PageData pdPublic = new PageData();
pdPublic = this.getPageData();
StringBuffer errorStr = new StringBuffer();
String error="";
String error1="";
String error2="";
String error3="";
String error4="";
String error5="";
String error6="";
List<PageData> rList = new ArrayList<PageData>();
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 + "riskpoint/"+DateUtil.getDays()+"/";
// String fileName = FileUpload.fileUp(file, filePath, this.get32UUID());//执行上传
// String fileTyle=fileName.substring(fileName.lastIndexOf("."),fileName.length());
String ffile = "riskpoint/"+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<PageData> listPd = (List)ObjectExcelRead.readExcel(filePath, fileName, 1, 0, 0); //执行读EXCEL操作,读出的数据导入List 2:从第3行开始0:从第A列开始0:第0个sheet
pdPublic.put("ISDELETE", "0"); //删除标识0有效 1删除
pdPublic.put("ISBIND", "0"); //删除标识0未绑定 1已绑定
pdPublic.put("OPERATOR", Jurisdiction.getUsername()); //操作人
pdPublic.put("OPERATTIME", DateUtil.date2Str(new Date())); //操作时间
pdPublic.put("CREATOR", Jurisdiction.getUsername()); //创建人
pdPublic.put("CREATTIME", DateUtil.date2Str(new Date())); //创建时间
/**
* var0 :
* var1 :
* var2 :
* var3 :
* var4 :
* var5 :
* var6 :
* var7 :
* var8 :
* var9 :
*/
int succeeNum = 0;
if(listPd.size()>0) {
for(PageData lpd:listPd) {
PageData riskPoint = new PageData();
//责任部门
PageData department = new PageData();
if(Tools.isEmpty(Tools.excelHandle(lpd.get("var0").toString()))) {
break;
}
department.put("NAME", Tools.excelHandle(lpd.get("var5").toString()));
department.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
department =departmentService.findByName(department);
if(department!=null) {
riskPoint.put("DEPARTMENT_ID", department.getString("DEPARTMENT_ID"));
}else {
error3+=lpd.get("var5")+",";
errInfo="error";
break;
}
riskPoint.put("RISKPOINT_ID", this.get32UUID());
PageData riskUnit = new PageData();
riskUnit.put("RISKUNITNAME", Tools.excelHandle(lpd.get("var0").toString()));
riskUnit.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
riskUnit.put("DEPARTMENT_ID", department.getString("DEPARTMENT_ID"));
List<PageData> riskUnitList=riskUnitService.findByName(riskUnit);
if(riskUnitList.size()>0) {
//风险点(单元)
riskPoint.put("RISK_UNIT_ID", riskUnitList.get(0).getString("RISKUNIT_ID"));
}else {
error+=lpd.get("var0")+",";
errInfo="error";
break;
}
PageData identification = new PageData();
identification.put("PARTSNAME", Tools.excelHandle(lpd.get("var1").toString()));
identification.put("RISK_UNIT_ID", riskUnit.getString("RISKUNIT_ID"));
identification.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
List<PageData> identificationList =identificationPartsService.findByName(identification);
if(identificationList.size()>0) {
//辨识部位
riskPoint.put("IDENTIFICATION_ID", identificationList.get(0).getString("IDENTIFICATIONPARTS_ID"));
}else {
error1+=lpd.get("var1")+",";
errInfo="error";
break;
}
//存在风险
riskPoint.put("RISK_DESCR", Tools.excelHandle(lpd.get("var2").toString()));
PageData levelid = new PageData();
levelid.put("NAME", Tools.excelHandle(lpd.get("var3").toString()));
levelid =dictionariesService.findByName(levelid);
if(levelid!=null) {
riskPoint.put("LEVELID", levelid.getString("BIANMA"));
}else {
error2+=lpd.get("var3")+",";
errInfo="error";
break;
}
// //责任人
// PageData user = new PageData();
// user.put("NAME", lpd.get("var6").toString().replaceAll(" ", ""));
// user.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
// user =usersService.findByName(user);
// if(user!=null) {
// riskPoint.put("USER_ID", user.getString("USER_ID"));
// }else {
riskPoint.put("USER_ID", lpd.get("var6"));
String accidents="";
String accidentsId="";
if(null!=lpd.get("var7")&&!"".equals(lpd.get("var7"))) {
accidents+=Tools.excelHandle(lpd.get("var7").toString())+",";
}
if(null!=lpd.get("var8")&&!"".equals(lpd.get("var8"))) {
accidents+=Tools.excelHandle(lpd.get("var8").toString())+",";
}
if(null!=lpd.get("var7")&&!"".equals(lpd.get("var7"))) {
riskPoint.put("ACCIDENTS_NAME", accidents.substring(0, accidents.length()-1));
PageData accidentsPd = new PageData();
accidentsPd.put("NAME", Tools.excelHandle(lpd.get("var7").toString()));
accidentsPd =dictionariesService.findByName(accidentsPd);
if(accidentsPd!=null) {
accidentsId+=accidentsPd.getString("BIANMA")+",";
}else {
error5+=lpd.get("var7")+",";
errInfo="error";
break;
}
}
if(null!=lpd.get("var8")&&!"".equals(lpd.get("var8"))) {
PageData accidentssPd = new PageData();
accidentssPd.put("NAME", Tools.excelHandle(lpd.get("var8").toString()));
accidentssPd =dictionariesService.findByName(accidentssPd);
if(accidentssPd!=null) {
accidentsId+=accidentssPd.getString("BIANMA")+",";
}else {
error6+=lpd.get("var8")+",";
errInfo="error";
break;
}
}
if(accidentsId!="") {
riskPoint.put("ACCIDENTS", accidentsId.substring(0, accidentsId.length()-1));
}else {
riskPoint.put("ACCIDENTS","");
}
riskPoint.put("EME_MEASURES", Tools.excelHandle(lpd.get("var9").toString()));
riskPoint.put("MEASURES", Tools.excelHandle(lpd.get("var4").toString()));
riskPoint.put("ISDELETE", "0");
riskPoint.put("CREATOR", Jurisdiction.getUsername());
riskPoint.put("OPERATOR",Jurisdiction.getUsername());
riskPoint.put("OPERATTIME", DateUtil.date2Str(new Date()));
riskPoint.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
rList.add(riskPoint);
succeeNum++;
}
if(errInfo=="success") {
for(PageData r:rList) {
riskpointService.save(r);
PageData riskcheckitem = new PageData();
riskcheckitem.put("RISKCHECKITEM_ID", this.get32UUID()); //主键
riskcheckitem.put("CHECK_CONTENT", r.getString("MEASURES"));
riskcheckitem.put("ISDELETE", "0"); //是否删除
riskcheckitem.put("CREATOR",Jurisdiction.getUsername()); //添加人
riskcheckitem.put("CREATTIME", DateUtil.date2Str(new Date())); //创建时间
riskcheckitem.put("OPERATOR", Jurisdiction.getUsername()); //修改人
riskcheckitem.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间
riskcheckitem.put("RISKPOINT_ID", r.getString("RISKPOINT_ID")); //风险点
riskcheckitemService.save(riskcheckitem);
}
}
// PageData excelLog = new PageData();
// excelLog.put("SUCCEENUM", succeeNum);
// excelLog.put("FAILNUM", failNum);
// excelLog.put("CREATOR", Jurisdiction.getUsername()); //创建人
// excelLog.put("CREATTIME", DateUtil.date2Str(new Date())); //创建时间
// excelLog.put("URL", filePath+fileName);
// excelLog.put("TARGETTABLE", "BUS_CARPORT");
// excelLog.put("PRECINCT_ID", pdPublic.getString("PRECINCT_ID"));
// excelLog.put("EXCELLOG_ID", this.get32UUID());
// excelLogService.save(excelLog);
}else {
errInfo="banben";
}
}
map.put("result", errInfo); //返回结果
map.put("msg", error+error1+error2+error3+error4+error5+error6); //返回结果
map.put("resultStr", errorStr.toString());
return map;
}
/**EXCEL
* @param file
* @return
* @throws Exception
*/
@RequestMapping(value="/readExcel2")
@RequiresPermissions("fromExcel")
@SuppressWarnings("unchecked")
@ResponseBody
@Transactional
public Object readExcel2(@RequestParam(value="FFILE",required=false) MultipartFile file) throws Exception{
Map<String,String> map = new HashMap<String,String>();
String errInfo = "success";
PageData pdPublic = new PageData();
pdPublic = this.getPageData();
StringBuffer errorStr = new StringBuffer();
List<PageData> rList = new ArrayList<PageData>();
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 + "riskpoint/"+DateUtil.getDays()+"/";
// String fileName = FileUpload.fileUp(file, filePath, this.get32UUID());//执行上传
// String fileTyle=fileName.substring(fileName.lastIndexOf("."),fileName.length());
String ffile = "riskpoint/"+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<PageData> listPd = (List)ObjectExcelRead.readExcel(filePath, fileName, 1, 0, 0); //执行读EXCEL操作,读出的数据导入List 2:从第3行开始0:从第A列开始0:第0个sheet
/**
* var0 :
* var1 :
* var2 :
* var3 :
* var4 :
* var5 :
* var6 :
* var7 :
* var8 :
* var9 :
* var10 :
* var11 :
*/
List<String> header = new ArrayList<>();
header.add("风险点(单元)");header.add("辨识部位");header.add("存在风险");header.add("风险分级");header.add("主要管控措施");
header.add("管控部门");header.add("责任人");header.add("事故类型1");header.add("事故类型2");header.add("事故类型3");
header.add("事故类型4");header.add("应急处置措施");
PageData corpinfoId = new PageData();//企业下的全部的风险点(单元)
corpinfoId.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
corpinfoId.put("ISDELETE", "0");
List<PageData> riskUnitList=riskUnitService.listAll(corpinfoId);
Map<String, Object> riskMapAll = new HashMap<>();
for (PageData pageData : riskUnitList) {
riskMapAll.put(pageData.getString("DEPARTMENT_ID")+Tools.excelHandle(pageData.getString("RISKUNITNAME")), pageData);
}
List<PageData> idenList = identificationpartsService.listAll(corpinfoId);
Map<String, Object> identMapAll = new HashMap<>();
for (PageData pageData : idenList) {
identMapAll.put(pageData.getString("RISK_UNIT_ID")+Tools.excelHandle(pageData.getString("PARTSNAME")), pageData);
}
List<Dictionaries> levelAll =dictionariesService.listSubDictByParentId("5a81e63ec0e94d919b3138bc01dbef6b");//获取全部的风险等级
Map<String, Object> levelMapAll = new HashMap<>();
for (Dictionaries dictionaries : levelAll) {
levelMapAll.put(Tools.excelHandle(dictionaries.getNAME()), dictionaries);
}
List<PageData> deptListAll = departmentService.listAll(corpinfoId);
Map<String, Object> deptMapAll = new HashMap<>();
for (PageData pageData : deptListAll) {
deptMapAll.put(Tools.excelHandle(pageData.getString("NAME")), pageData);
}
List<Dictionaries> accListAll =dictionariesService.listSubDictByParentId("cee1190ea96a4ca9b7bca81e11f0d0f8");//获取全部的事故类型
Map<String, Object> accMapList = new HashMap<>();
for (Dictionaries dictionaries : accListAll) {
accMapList.put(Tools.excelHandle(dictionaries.getNAME()), dictionaries);
}
String riskPointCountString = riskpointService.countByCorpInfo(corpinfoId);
Integer rislPointCount = Integer.parseInt(riskPointCountString);
int succeeNum = 1;
if(listPd.size()<1) {
map.put("result", "error"); //返回结果
map.put("resultStr", "Excel数据为空请检查数据后重新上传");
return map;
}
for(PageData lpd:listPd) {
succeeNum ++;
for(int i=0;i<header.size();i++) {
if(i>=6) {
continue;
}
if(!lpd.containsKey("var"+i)) {
errorStr.append("第"+succeeNum+"行的\""+header.get(i)+"\"无数据;\n");
continue;
}
if(Tools.isEmpty(lpd.get("var"+i))) {
errorStr.append("第"+succeeNum+"行的\""+header.get(i)+"\"无数据;\n");
continue;
}
}
String riskVar = Tools.isEmpty(lpd.get("var0"))?"":Tools.excelHandle(lpd.get("var0"));
String identificationVar = Tools.isEmpty(lpd.get("var1"))?"":Tools.excelHandle(lpd.get("var1"));
String riskPointVar = Tools.isEmpty(lpd.get("var2"))?"":Tools.excelHandle(lpd.get("var2"));
String levelVar = Tools.isEmpty(lpd.get("var3"))?"":Tools.excelHandle(lpd.get("var3"));
String measuresVar = Tools.isEmpty(lpd.get("var4"))?"":Tools.excelHandle(lpd.get("var4"));
String departNameVar = Tools.isEmpty(lpd.get("var5"))?"":Tools.excelHandle(lpd.get("var5"));
String accidentsNameVar = Tools.isEmpty(lpd.get("var6"))?"":Tools.excelHandle(lpd.get("var6"));
String accidents7Var = Tools.isEmpty(lpd.get("var7"))?"":Tools.excelHandle(lpd.get("var7"));
String accidents8Var = Tools.isEmpty(lpd.get("var8"))?"":Tools.excelHandle(lpd.get("var8"));
String accidents9Var = Tools.isEmpty(lpd.get("var9"))?"":Tools.excelHandle(lpd.get("var9"));
String accidents10Var = Tools.isEmpty(lpd.get("var10"))?"":Tools.excelHandle(lpd.get("var10"));
String emeMeasuresVar = Tools.isEmpty(lpd.get("var11"))?"":Tools.excelHandle(lpd.get("var11"));
if(!deptMapAll.containsKey(departNameVar)) {
errorStr.append("第"+succeeNum+"行的"+header.get(5)+"未找到名称为\""+departNameVar+"\"的管控部门"+";\n");
continue;
}
PageData depart = (PageData) deptMapAll.get(departNameVar);
if(!riskMapAll.containsKey(depart.getString("DEPARTMENT_ID")+riskVar)) {
errorStr.append("第"+succeeNum+"行的"+header.get(0)+"未找到名称为\""+riskVar+"\"的风险点(单元)"+";\n");
continue;
}
PageData riskVal = (PageData)riskMapAll.get(depart.getString("DEPARTMENT_ID")+riskVar);
if(!identMapAll.containsKey(riskVal.getString("RISKUNIT_ID")+identificationVar)) {
errorStr.append("第"+succeeNum+"行的"+header.get(1)+"未找到名称为\""+identificationVar+"\"的辨识部位"+";\n");
continue;
}
if(!levelMapAll.containsKey(levelVar)) {
errorStr.append("第"+succeeNum+"行的"+header.get(3)+"未找到名称为\""+levelVar+"\"的风险分级"+";\n");
continue;
}
if(!Tools.isEmpty(accidents7Var)) {
if(!accMapList.containsKey(accidents7Var)) {
errorStr.append("第"+succeeNum+"行的"+header.get(7)+"未找到名称为\""+accidents7Var+"\"的事故类型(1)"+";\n");
continue;
}
}
if(!Tools.isEmpty(accidents8Var)) {
if(!accMapList.containsKey(accidents8Var)) {
errorStr.append("第"+succeeNum+"行的"+header.get(8)+"未找到名称为\""+accidents8Var+"\"的事故类型(2)"+";\n");
continue;
}
}
if(!Tools.isEmpty(accidents9Var)) {
if(!accMapList.containsKey(accidents9Var)) {
errorStr.append("第"+succeeNum+"行的"+header.get(9)+"未找到名称为\""+accidents9Var+"\"的事故类型(3)"+";\n");
continue;
}
}
if(!Tools.isEmpty(accidents10Var)) {
if(!accMapList.containsKey(accidents10Var)) {
errorStr.append("第"+succeeNum+"行的"+header.get(10)+"未找到名称为\""+accidents10Var+"\"的事故类型(4)"+";\n");
continue;
}
}
PageData identVal = (PageData) identMapAll.get(riskVal.getString("RISKUNIT_ID")+identificationVar);
Dictionaries levelVal = (Dictionaries) levelMapAll.get(levelVar);
// Dictionaries acc7Val = (Dictionaries) accMapList.get(accidents7Var);
String accidentsId = "";
String accidentsNames ="";
// accidentsId +=acc7Val.getBIANMA();
// accidentsNames += acc7Val.getNAME();
if(!Tools.isEmpty(accidents7Var)) {
Dictionaries acc7Val = new Dictionaries();
acc7Val = (Dictionaries) accMapList.get(accidents7Var);
accidentsId += ","+acc7Val.getBIANMA();
accidentsNames +=","+acc7Val.getNAME();
}
if(!Tools.isEmpty(accidents8Var)) {
Dictionaries acc8Val = new Dictionaries();
acc8Val = (Dictionaries) accMapList.get(accidents8Var);
accidentsId += ","+acc8Val.getBIANMA();
accidentsNames +=","+acc8Val.getNAME();
}
if(!Tools.isEmpty(accidents9Var)) {
Dictionaries acc9Val = new Dictionaries();
acc9Val = (Dictionaries) accMapList.get(accidents9Var);
accidentsId += ","+acc9Val.getBIANMA();
accidentsNames +=","+acc9Val.getNAME();
}
if(!Tools.isEmpty(accidents10Var)) {
Dictionaries acc10Val = new Dictionaries();
acc10Val = (Dictionaries) accMapList.get(accidents10Var);
accidentsId += ","+acc10Val.getBIANMA();
accidentsNames +=","+acc10Val.getNAME();
}
if(Tools.notEmpty(accidentsId)) {
accidentsId = accidentsId.substring(1, accidentsId.length());
}
if(Tools.notEmpty(accidentsNames)) {
accidentsNames = accidentsNames.substring(1, accidentsNames.length());
}
PageData riskPoint = new PageData();
riskPoint.put("RISK_UNIT_ID", riskVal.getString("RISKUNIT_ID"));
riskPoint.put("IDENTIFICATION_ID", identVal.getString("IDENTIFICATIONPARTS_ID"));
riskPoint.put("RISK_DESCR", riskPointVar);
riskPoint.put("LEVELID", levelVal.getBIANMA());
riskPoint.put("MEASURES", measuresVar);
riskPoint.put("DEPARTMENT_ID", depart.getString("DEPARTMENT_ID"));
riskPoint.put("USER_ID", accidentsNameVar);
riskPoint.put("ACCIDENTS", accidentsId);
riskPoint.put("ACCIDENTS_NAME", accidentsNames);
riskPoint.put("EME_MEASURES", emeMeasuresVar);
riskPoint.put("RISKPOINT_ID", this.get32UUID());
riskPoint.put("ISDELETE", "0");
riskPoint.put("CREATOR", Jurisdiction.getUsername());
riskPoint.put("CREATTIME", DateUtil.date2Str(new Date()));
riskPoint.put("OPERATOR",Jurisdiction.getUsername());
riskPoint.put("OPERATTIME", DateUtil.date2Str(new Date()));
riskPoint.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID());
riskPoint.put("SORT", rislPointCount +succeeNum);
rList.add(riskPoint);
}
if(Tools.isEmpty(errorStr.toString())) {
for(PageData r:rList) {
riskpointService.save(r);
PageData riskcheckitem = new PageData();
riskcheckitem.put("RISKCHECKITEM_ID", this.get32UUID()); //主键
riskcheckitem.put("CHECK_CONTENT", r.getString("MEASURES"));
riskcheckitem.put("ISDELETE", "0"); //是否删除
riskcheckitem.put("CREATOR",Jurisdiction.getUsername()); //添加人
riskcheckitem.put("CREATTIME", DateUtil.date2Str(new Date())); //创建时间
riskcheckitem.put("OPERATOR", Jurisdiction.getUsername()); //修改人
riskcheckitem.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间
riskcheckitem.put("RISKPOINT_ID", r.getString("RISKPOINT_ID")); //风险点
riskcheckitemService.save(riskcheckitem);
}
errorStr.append("成功导入"+rList.size()+"条数据!");
}else {
errInfo = "fail";
}
}
map.put("result", errInfo); //返回结果
map.put("resultStr", errorStr.toString());
return map;
}
}