From 2fcd97552d16718cc7997629fd637a73a5a4483f Mon Sep 17 00:00:00 2001 From: 郑永安 <zyazyz250@sina.com> Date: 星期一, 19 六月 2023 14:44:19 +0800 Subject: [PATCH] 删除 --- src/main/java/com/gk/firework/Controller/PatrolController.java | 593 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 593 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/gk/firework/Controller/PatrolController.java b/src/main/java/com/gk/firework/Controller/PatrolController.java new file mode 100644 index 0000000..11aaff0 --- /dev/null +++ b/src/main/java/com/gk/firework/Controller/PatrolController.java @@ -0,0 +1,593 @@ +package com.gk.firework.Controller; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.gk.firework.Controller.Base.BaseController; +import com.gk.firework.Domain.*; +import com.gk.firework.Domain.Utils.*; +import com.gk.firework.Domain.Vo.EnterpriseVo; +import com.gk.firework.Domain.Vo.PatrolOrderVo; +import com.gk.firework.Service.*; +import com.sun.org.apache.xpath.internal.operations.Bool; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.util.MultiValueMap; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.support.StandardMultipartHttpServletRequest; + +import java.io.File; +import java.io.FileInputStream; +import java.io.InputStream; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Date; +import java.util.HashMap; +import java.util.List; + + +@Api(tags = "安全巡检接口") +@RestController +public class PatrolController extends BaseController{ + @Value("${patrolPath}") + private String patrolPath; //配置文件配置的物理保存地址 + @Value("${patrolUrl}") + private String patrolUrl; //配置文件配置的url + + @Autowired + PatrolOrderService patrolOrderService; + @Autowired + PatrolDetailService patrolDetailService; + @Autowired + SelfCheckService selfCheckService; + @Autowired + EnterpriseService enterpriseService; + @Autowired + UserService userService; + @Autowired + ExcelExportService excelExportService; + + @GetMapping("/getEnterpriseVo") + @ApiOperation(value = "根据企业编号获取巡检企业信息",response = Msg.class) + @ApiImplicitParams({ + @ApiImplicitParam(name = "enterprisenumber",value = "单位编号"), + }) + public Msg getEnterpriseVo(EnterpriseVo enterpriseVo){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + EnterpriseVo enterprise = enterpriseService.selctSimpleByNumber(enterpriseVo.getEnterprisenumber()); + List<PatrolOrderVo> patrolOrderVos = patrolOrderService.selectListByEnterprise(enterprise.getEnterprisename(),getUser().getUsername()); + enterprise.setPatrolOrderVos(patrolOrderVos); + if (enterprise != null) { + msg.setResult(enterprise); + return msg; + }else { + msg.setCode("999"); + msg.setMessage("未找到该企业"); + return msg; + } + } + + @GetMapping("/getSelfCheck") + @ApiOperation(value = "根据企业类型获取检查内容",response = Msg.class) + public Msg getSelfCheck(SelfCheckInfo selfCheck){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + List<SelfCheckInfo> selfChecks = selfCheckService.selctByType(selfCheck.getType()); + if (selfChecks.size() > 0) { + msg.setResult(selfChecks); + return msg; + }else { + msg.setCode("999"); + msg.setMessage("未找到该检查内容"); + return msg; + } + } + + @ApiOperation(value = "上传图片",notes = "上传图片") + @ApiImplicitParams({ + @ApiImplicitParam(paramType="query",name = "files",value = "文件"), + }) + @PostMapping("/uploadPic") + @ResponseBody + public Msg uploadPic(StandardMultipartHttpServletRequest req){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + MultiValueMap<String, MultipartFile> multipartFiles = req.getMultiFileMap(); + MultipartFile picFile = multipartFiles.get("files").get(0); + if (null == picFile){ + msg.setCode("404"); + msg.setMessage("上传文件为空"); + }else { + try { + String picmame = UploadUtil.uploadFile(picFile,patrolPath); + msg.setResult(patrolUrl+picmame); + }catch (Exception e){ + e.printStackTrace(); + msg.setCode("500"); + msg.setMessage("上传失败"); + } + } + return msg; + } + + @ApiOperation(value = "提交检查内容",notes = "提交检查内容") + @ApiImplicitParams({ + @ApiImplicitParam(name = "enterpriseId",value = "企业id"), + @ApiImplicitParam(name = "userId",value = "用户id"), + @ApiImplicitParam(name = "createdby",value = "用户名"), + @ApiImplicitParam(name = "checkcontent",value = "检查内容"), + @ApiImplicitParam(name = "content",value = "检查内容"), + @ApiImplicitParam(name = "standard",value = "参考判断"), + @ApiImplicitParam(name = "choose",value = "选项"), + @ApiImplicitParam(name = "reason",value = "理由"), + @ApiImplicitParam(name = "baforepath",value = "整改前图片"), + @ApiImplicitParam(name = "ismend",value = "是否整改"), + }) + @PostMapping("/submitPatrol") + @ResponseBody + public Msg submitPatrol(@RequestBody JSONObject jsonObject){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + Long enterpriseId = jsonObject.getLong("enterpriseId"); + Long userId = jsonObject.getLong("userId"); + String createdby = jsonObject.getString("createdby"); + JSONArray jsonArray = jsonObject.getJSONArray("checkcontent"); + + PatrolOrderInfo patrolOrderInfo = new PatrolOrderInfo(); + patrolOrderInfo.setUserid(userId); + patrolOrderInfo.setCompanyid(enterpriseId); + patrolOrderInfo.setCreatedby(createdby); + patrolOrderInfo.setCreateddate(new Date()); + patrolOrderInfo.setModifiedby(createdby); + patrolOrderInfo.setModifieddate(new Date()); + patrolOrderService.save(patrolOrderInfo); + + List<PatrolDetailInfo> patrolDetailInfoList = new ArrayList<>(); + Byte ismend = 1; + for (int i = 0; i < jsonArray.size(); i++){ + JSONObject patrolDetail = jsonArray.getJSONObject(i); + PatrolDetailInfo patrolDetailInfo = new PatrolDetailInfo(); + patrolDetailInfo.setOrderid(patrolOrderInfo.getId()); + patrolDetailInfo.setContent(patrolDetail.getString("content")); + patrolDetailInfo.setStandard(patrolDetail.getString("standard")); + patrolDetailInfo.setChoose(patrolDetail.getString("choose")); + patrolDetailInfo.setReason(patrolDetail.getString("reason")); + patrolDetailInfo.setBeforepath(patrolDetail.getString("baforepath")); + patrolDetailInfo.setIsmend(patrolDetail.getByte("ismend")); + patrolDetailInfo.setCreatedby(createdby); + patrolDetailInfo.setCreateddate(new Date()); + patrolDetailInfo.setModifiedby(createdby); + patrolDetailInfo.setModifieddate(new Date()); + if (patrolDetailInfo.getIsmend() == 0){ + ismend = 0; + } + patrolDetailInfoList.add(patrolDetailInfo); + } + patrolDetailService.saveBatch(patrolDetailInfoList); + patrolOrderInfo.setIsmend(ismend); + patrolOrderService.updateById(patrolOrderInfo); + + return msg; + } + + @GetMapping("/selfCheck") + @ApiOperation(value = "获取自定义检查内容",response = Msg.class) + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageIndex",value = "当前页码"), + @ApiImplicitParam(name = "pageSize",value = "每页行数"), + @ApiImplicitParam(name = "sort",value = "排序规则"), + @ApiImplicitParam(name = "order",value = "排序字段"), + @ApiImplicitParam(name = "type",value = "检查类型"), + @ApiImplicitParam(name = "content",value = "检查内容"), + }) + public Msg getSelfCheckList(@RequestParam(defaultValue = "0") Integer pageIndex, @RequestParam(defaultValue = "10") Integer pageSize, String sort, String order, + String type, String content){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + PageInfo pageInfo = new PageInfo(pageIndex, pageSize,sort,order); + HashMap<String, Object> condition = new HashMap<String, Object>(); + + if (StringUtils.isNotBlank(type)) { + condition.put("type", type.trim()); + } + + if (StringUtils.isNotBlank(content)) { + condition.put("content", content.trim()); + } + + pageInfo.setCondition(condition); + selfCheckService.selectDataGrid(pageInfo); + msg.setResult(pageInfo); + return msg; + } + + @PostMapping("/selfCheck") + @ApiOperation(value = "添加自定义检查内容",response = Msg.class) + public Msg addSelfCheckList(@RequestBody SelfCheckInfo selfCheckInfo){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + if (StringUtils.isBlank(selfCheckInfo.getType())){ + msg.setCode("999"); + msg.setMessage("检查类型不能为空"); + return msg; + }else if (StringUtils.isBlank(selfCheckInfo.getContent())){ + msg.setCode("999"); + msg.setMessage("检查内容不能为空"); + return msg; + }else if (StringUtils.isBlank(selfCheckInfo.getStandard())){ + msg.setCode("999"); + msg.setMessage("参考判断不能为空"); + return msg; + } + selfCheckInfo.setCreatedby(getUser().getUsername()); + selfCheckInfo.setModifiedby(getUser().getUsername()); + selfCheckInfo.setCreateddate(new Date()); + selfCheckInfo.setModifieddate(new Date()); + selfCheckInfo.setIsdel((byte)0); + selfCheckService.save(selfCheckInfo); + return msg; + } + + @PostMapping("/putselfCheck") + @ApiOperation(value = "修改自定义检查内容",response = Msg.class) + public Msg editSelfCheckList(@RequestBody SelfCheckInfo selfCheckInfo){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + if (StringUtils.isBlank(selfCheckInfo.getType())){ + msg.setCode("999"); + msg.setMessage("检查类型不能为空"); + return msg; + }else if (StringUtils.isBlank(selfCheckInfo.getContent())){ + msg.setCode("999"); + msg.setMessage("检查内容不能为空"); + return msg; + }else if (StringUtils.isBlank(selfCheckInfo.getStandard())){ + msg.setCode("999"); + msg.setMessage("参考判断不能为空"); + return msg; + } + selfCheckInfo.setModifiedby(getUser().getUsername()); + selfCheckInfo.setModifieddate(new Date()); + selfCheckService.updateById(selfCheckInfo); + return msg; + } + + @PostMapping("/delselfCheck") + @ApiOperation(value = "删除自定义检查内容",response = Msg.class) + public Msg delSelfCheckList(@RequestBody JSONObject jsonObject){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + Long id = jsonObject.getLong("id"); + SelfCheckInfo selfCheckInfo = selfCheckService.getById(id); + if (selfCheckInfo != null){ + selfCheckInfo.setIsdel((byte)1); + selfCheckInfo.setModifiedby(getUser().getUsername()); + selfCheckInfo.setModifieddate(new Date()); + selfCheckService.updateById(selfCheckInfo); + return msg; + }else { + msg.setCode("999"); + msg.setMessage("未找到检查内容"); + return msg; + } + } + + @PostMapping("/selfChecks") + @ApiOperation(value = "删除自定义检查内容",response = Msg.class) + public Msg bashDelSelfCheckList(@RequestBody JSONObject jsonObject){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + JSONArray ids = jsonObject.getJSONArray("ids"); + List<Long> idList = ids.toJavaList(Long.class); + List<SelfCheckInfo> selfCheckInfoList = selfCheckService.selectByIds(idList); + if (selfCheckInfoList != null && selfCheckInfoList.size() > 0){ + for (SelfCheckInfo selfCheckInfo : selfCheckInfoList) { + selfCheckInfo.setIsdel((byte)1); + selfCheckInfo.setModifiedby(getUser().getUsername()); + selfCheckInfo.setModifieddate(new Date()); + selfCheckService.updateById(selfCheckInfo); + } + return msg; + }else { + msg.setCode("999"); + msg.setMessage("未找到检查内容"); + return msg; + } + } + + @PostMapping("/importSelfCheck") + @ApiOperation(value = "导入自定义检查内容",response = Msg.class) + @ApiImplicitParams({ + @ApiImplicitParam(name = "file",value = "文件",required = true), + }) + public Msg addSelfCheckList(MultipartFile file){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + String filesave =""; + try { + SimpleDateFormat sdf = new SimpleDateFormat( "yyyyMMddHHmmssSSS" ); + if (file == null) + { + msg.setCode("404"); + msg.setMessage("未找到上传文件"); + return msg; + } + + long size = file.getSize(); + if(0 == size) + { + msg.setCode("404"); + msg.setMessage("上传文件大小为空"); + return msg; + } + + if(!FileOptUtils.isDirExists(patrolPath)){ + msg.setCode("500"); + msg.setMessage("发生错误或不为目录"); + return msg; + } + + filesave = patrolPath + getUser().getUsername() + "_" + sdf.format(new Date()) +".xlsx"; + + file.transferTo(new File(filesave)); + InputStream in = new FileInputStream(filesave); + String name = file.getOriginalFilename(); + Boolean isExcel2007 = name.substring(name.lastIndexOf(".") + 1).endsWith("xlsx")? true:false; + BooleanReason blret = excelExportService.imporSelfCheckExcel(in,getUser().getUsername(),isExcel2007); + if(blret.getValue().equals(false)) + { + msg.setCode("500"); + msg.setMessage(blret.getResultmsg()); + return msg; + } + } catch (Exception e) { + e.printStackTrace(); + msg.setCode("500"); + msg.setMessage("导入发生错误"); + return msg; + } + + return msg; + } + + @GetMapping("/patrolOrder") + @ApiOperation(value = "获取安全巡检记录",response = Msg.class) + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageIndex",value = "当前页码"), + @ApiImplicitParam(name = "pageSize",value = "每页行数"), + @ApiImplicitParam(name = "sort",value = "排序规则"), + @ApiImplicitParam(name = "order",value = "排序字段"), + + @ApiImplicitParam(name = "starttime",value = "开始时间"), + @ApiImplicitParam(name = "endtime",value = "结束时间"), + @ApiImplicitParam(name = "enterprisetype",value = "企业类型"), + @ApiImplicitParam(name = "enterprisename",value = "企业名称"), + @ApiImplicitParam(name = "checkname",value = "检查人"), + + @ApiImplicitParam(name = "ismend",value = "是否整改"), + @ApiImplicitParam(name = "province",value = "省份"), + @ApiImplicitParam(name = "city",value = "城市"), + @ApiImplicitParam(name = "area",value = "区县"), + @ApiImplicitParam(name = "town",value = "乡镇"), + @ApiImplicitParam(name = "community",value = "社区"), + }) + public Msg getPatrolOrderList(@RequestParam(defaultValue = "0") Integer pageIndex, @RequestParam(defaultValue = "10") Integer pageSize, String sort, String order, + String starttime, String endtime, String enterprisename, String checkname, String enterprisetype, + String province, String city, String area, String town, String community, Byte ismend){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + PageInfo pageInfo = new PageInfo(pageIndex, pageSize,sort,order); + HashMap<String, Object> condition = new HashMap<String, Object>(); + + if (StringUtils.isNotBlank(starttime)) { + condition.put("starttime", starttime.trim()); + } + + if (StringUtils.isNotBlank(endtime)) { + condition.put("endtime", endtime.trim()); + } + + if (StringUtils.isNotBlank(enterprisename)) { + condition.put("enterprisename", enterprisename.trim()); + } + + if (StringUtils.isNotBlank(checkname)) { + condition.put("checkname", checkname.trim()); + } + + if (StringUtils.isNotBlank(enterprisetype)) { + condition.put("enterprisetype", enterprisetype.trim()); + } + + if (ismend != null){ + condition.put("ismend",ismend); + } + + UserInfo userInfo = userService.getById(getUser().getId()); + if (userInfo.getCompanyid() != null){ + Enterprise enterprise = enterpriseService.getById(userInfo.getCompanyid()); + condition.put("enterprisename", enterprise.getEnterprisename()); + }else if (userInfo.getType() == 3){ + condition.put("province",userInfo.getProvince()); + condition.put("city",userInfo.getCity()); + condition.put("area",userInfo.getArea()); + condition.put("town",userInfo.getTown()); + condition.put("community",userInfo.getCommunity()); + } + + if (StringUtils.isNotBlank(province) && condition.get("province") == null) { + condition.put("province", province.trim()); + if (StringUtils.isNotBlank(city)) { + condition.put("city", city.trim()); + } + + if (StringUtils.isNotBlank(area)) { + condition.put("area", area.trim()); + } + + if (StringUtils.isNotBlank(town)) { + condition.put("town", town.trim()); + } + + if (StringUtils.isNotBlank(community)) { + condition.put("community", community.trim()); + } + } + + pageInfo.setCondition(condition); + + patrolOrderService.selectDataGrid(pageInfo); + + msg.setResult(pageInfo); + return msg; + } + + @GetMapping("/patrolDetail") + @ApiOperation(value = "获取安全巡检明细",response = Msg.class) + @ApiImplicitParams({ + @ApiImplicitParam(name = "pageIndex",value = "当前页码"), + @ApiImplicitParam(name = "pageSize",value = "每页行数"), + @ApiImplicitParam(name = "sort",value = "排序规则"), + @ApiImplicitParam(name = "order",value = "排序字段"), + @ApiImplicitParam(name = "orderid",value = "订单id"), + @ApiImplicitParam(name = "ismend",value = "是否整改"), + }) + public Msg getpatrolDetailList(@RequestParam(defaultValue = "0") Integer pageIndex, @RequestParam(defaultValue = "10") Integer pageSize, String sort, String order, + Long orderid, Byte ismend){ + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + PageInfo pageInfo = new PageInfo(pageIndex, pageSize,sort,order); + HashMap<String, Object> condition = new HashMap<String, Object>(); + + if (orderid != null) { + condition.put("orderid", orderid); + } + + if (ismend != null) { + condition.put("ismend", ismend); + } + + pageInfo.setCondition(condition); + + patrolDetailService.selectDataGrid(pageInfo); + msg.setResult(pageInfo); + return msg; + } + + @PostMapping("/mendPatrol") + @ApiOperation(value = "上报整改",response = Msg.class) + @ApiImplicitParams({ + @ApiImplicitParam(name = "id",value = "单据id"), + @ApiImplicitParam(name = "file",value = "整改后图片文件"), + @ApiImplicitParam(name = "ismend",value = "是否整改"), + }) + public Msg mendPatrol(Long id, MultipartFile file, Byte ismend) throws Exception { + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + if (id == null){ + msg.setCode("999"); + msg.setMessage("单据id不能为空"); + return msg; + } + PatrolDetailInfo patrolDetailInfo = patrolDetailService.getById(id); + if (patrolDetailInfo == null){ + msg.setCode("999"); + msg.setMessage("未找到单据"); + return msg; + } + if (file != null){ + String origincontract = UploadUtil.uploadFile(file,patrolPath); + patrolDetailInfo.setAfterpath(patrolUrl+origincontract); + } + if (ismend != null){ + patrolDetailInfo.setIsmend(ismend); + } + patrolDetailService.updateById(patrolDetailInfo); + + //查看所有detail 全为已整改 则修改order为已整改 + int isNotMend = patrolDetailService.selectIsNotMend(patrolDetailInfo.getOrderid()); + if (isNotMend == 0){ + PatrolOrderInfo patrolOrderInfo = patrolOrderService.getById(patrolDetailInfo.getOrderid()); + if (patrolOrderInfo != null){ + patrolOrderInfo.setIsmend((byte)1); + patrolOrderService.updateById(patrolOrderInfo); + } + } + + return msg; + } + + @PostMapping("/appMendPatrol") + @ApiOperation(value = "APP上报整改",response = Msg.class) + @ApiImplicitParams({ + @ApiImplicitParam(name = "id",value = "单据id"), + @ApiImplicitParam(name = "afterpath",value = "整改后图片文件"), + @ApiImplicitParam(name = "ismend",value = "是否整改"), + }) + public Msg mendPatrol(Long id, String afterpath, Byte ismend) throws Exception { + Msg msg = new Msg(); + msg.setCode("200"); + msg.setMessage("success"); + + if (id == null){ + msg.setCode("999"); + msg.setMessage("单据id不能为空"); + return msg; + } + PatrolDetailInfo patrolDetailInfo = patrolDetailService.getById(id); + if (patrolDetailInfo == null){ + msg.setCode("999"); + msg.setMessage("未找到单据"); + return msg; + } + + patrolDetailInfo.setAfterpath(afterpath); + + if (ismend != null){ + patrolDetailInfo.setIsmend(ismend); + } + patrolDetailService.updateById(patrolDetailInfo); + + //查看所有detail 全为已整改 则修改order为已整改 + int isNotMend = patrolDetailService.selectIsNotMend(patrolDetailInfo.getOrderid()); + if (isNotMend == 0){ + PatrolOrderInfo patrolOrderInfo = patrolOrderService.getById(patrolDetailInfo.getOrderid()); + if (patrolOrderInfo != null){ + patrolOrderInfo.setIsmend((byte)1); + patrolOrderService.updateById(patrolOrderInfo); + } + } + + return msg; + } + +} -- Gitblit v1.9.2