PDA 废水巡检&废气巡检&酸雾塔

liweidong
张乾翔 2 days ago
parent e6473d787d
commit 1d15865fa7
  1. 1
      blade-service/blade-desk/src/main/java/org/springblade/desk/energy/service/IBsDosingRecService.java
  2. 1
      blade-service/blade-desk/src/main/java/org/springblade/desk/energy/service/IBsTowerService.java
  3. 26
      blade-service/blade-desk/src/main/java/org/springblade/desk/energy/service/impl/BsDosingRecServiceImpl.java
  4. 8
      blade-service/blade-desk/src/main/java/org/springblade/desk/energy/service/impl/BsTowerServiceImpl.java
  5. 33
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/PdaLoadController.java
  6. 44
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/PdaSaveController.java
  7. 4
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IPdaLoadService.java
  8. 9
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IPdaSaveService.java
  9. 61
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PdaLoadServiceImpl.java
  10. 79
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/PdaSaveServiceImpl.java

@ -62,4 +62,5 @@ public interface IBsDosingRecService extends BaseService<BsDosingRecEntity> {
void towerSosRec(List<JSONObject> objList);
Object epDosingRecByCode(String code);
}

@ -62,4 +62,5 @@ public interface IBsTowerService extends BaseService<BsTowerEntity> {
void generateData(List<JSONObject> objList);
List<BsTowerEntity> list(String code);
}

@ -52,7 +52,7 @@ import static org.springblade.desk.energy.pojo.entity.BsDosingRecEntity.HANDLE_R
*/
@Service
public class BsDosingRecServiceImpl extends BaseServiceImpl<BsDosingRecMapper, BsDosingRecEntity> implements IBsDosingRecService {
@Resource
@Resource
IBsTowerService iBsTowerService;
@Override
public IPage<BsDosingRecVO> selectBsDosingRecPage(IPage<BsDosingRecVO> page, BsDosingRecVO bsDosingRec) {
@ -102,4 +102,28 @@ public class BsDosingRecServiceImpl extends BaseServiceImpl<BsDosingRecMapper, B
}
}
@Override
public Object epDosingRecByCode(String code) {
/**
String hql = "from EpDosingRec a join a.bsTower b ON a.BT_ID = b.BT_ID" +
"where b.btCode=:btCode " +
"and a.handleResult=:handleResult " +
"order by a.dosingTime desc";
Query<EpDosingRec> query = this.getSession().createQuery(hql);
query.setParameter("btCode", code);
query.setParameter("handleResult", EpDosingRec.HANDLE_RESULT_WAIT);
query.setMaxResults(1);
return query.uniqueResult();
* */
List<BsTowerEntity> bsTowers = iBsTowerService.list(code);
List<Long> towerIds = bsTowers.stream().map(BsTowerEntity::getId).toList();
return list(Wrappers.lambdaQuery(BsDosingRecEntity.class)
.in(BsDosingRecEntity::getBtId,towerIds)
.orderByDesc(BsDosingRecEntity::getDosingTime)
.last("limit 1"));
}
}

@ -26,6 +26,7 @@
package org.springblade.desk.energy.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import jakarta.annotation.Resource;
import org.springblade.desk.energy.excel.BsTowerExcel;
import org.springblade.desk.energy.mapper.BsTowerMapper;
@ -148,4 +149,11 @@ public class BsTowerServiceImpl extends BaseServiceImpl<BsTowerMapper, BsTowerEn
//}
}
@Override
public List<BsTowerEntity> list(String code) {
return list(Wrappers.lambdaQuery(BsTowerEntity.class)
.eq(BsTowerEntity::getBtCode, code));
}
}

@ -13,6 +13,7 @@ import org.springblade.core.tool.api.R;
import org.springblade.desk.device.pojo.entity.EquipmentEntity;
import org.springblade.desk.device.pojo.entity.FeiBaSetEntity;
import org.springblade.desk.device.pojo.entity.RackSetEntity;
import org.springblade.desk.energy.pojo.entity.BsDosingRecEntity;
import org.springblade.desk.energy.pojo.entity.BsEpciuPatrolInspectionEntity;
import org.springblade.desk.oldv1.constant.Constant;
import org.springblade.desk.oldv1.pojo.ResultInfo;
@ -119,28 +120,9 @@ public class PdaLoadController {
return ResultInfo.ok(pdaLoadService.getInspectionByEcCode(code, true,request));
}
@Operation(summary = "安全巡检处理,修改安全巡检任务", description = "")
@PostMapping(value = "/saveByInspection")
public ResultInfo saveSafetyInspection(HttpServletRequest request) throws Exception {
JSONObject params = (JSONObject) request.getAttribute(Constant.WEBAPI_REQUEST_PARAMETERS);
if (params == null || params.size() == 0) {
throw new BusinessException("参数传递异常!");
}
String code = params.getString("code");
String man = params.getString("reviewMan");
String memo = params.getString("memo");
if (code == null || man == null) {
throw new BusinessException("参数传递异常!");
}
log.info("安全巡检处理传递参数---编码:" + code + " 人员:" + man + " 备注:" + memo);
pdaLoadService.saveSafetyInspection(code, man, memo);
return ResultInfo.ok();
}
@Operation(summary = "根据巡检器编码查询环保巡检数据(PDA废水巡检))", description = "")
@Operation(summary = "根据巡检器编码查询环保巡检数据", description = "")
@PostMapping("/getInspectionBySan")
public ResultInfo getInspectionBySan(@RequestBody JSONObject data) throws Exception {
@ -150,13 +132,10 @@ public class PdaLoadController {
return ResultInfo.ok(pdaLoadService.getInspectionBySan(code, eipType));
}
@Operation(summary = "环保巡检检验", description = "")
@RequestMapping(value = "/savePatrolIns", method = RequestMethod.POST)
public ResultInfo savePatrolIns(@RequestBody BsEpciuPatrolInspectionEntity epPatrolInspection, HttpServletRequest request) {
pdaLoadService.savePatrolIns(epPatrolInspection);
return ResultInfo.ok();
@Operation(summary = "根据酸雾塔编码查询数据", description = "")
@GetMapping("/epDosingRecByCode/{code}")
public ResultInfo epDosingRecByCode(@PathVariable String code) throws Exception {
return ResultInfo.ok(pdaLoadService.epDosingRecByCode(code));
}
}

@ -1,12 +1,20 @@
package org.springblade.desk.produce.controller;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletRequest;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.common.exception.BusinessException;
import org.springblade.core.tool.api.R;
import org.springblade.desk.basic.pojo.entity.BasicClazz;
import org.springblade.desk.basic.service.IBasicClazzService;
import org.springblade.desk.energy.pojo.entity.BsDosingRecEntity;
import org.springblade.desk.energy.pojo.entity.BsEpciuPatrolInspectionEntity;
import org.springblade.desk.oldv1.constant.Constant;
import org.springblade.desk.oldv1.pojo.ResultInfo;
import org.springblade.desk.produce.pojo.dto.DeviceBindDTO;
import org.springblade.desk.produce.pojo.vo.MacToolUseVO;
import org.springblade.desk.produce.pojo.vo.SjEcBingCardVo;
@ -25,6 +33,7 @@ import java.util.List;
* @Version 1.0
* 注意本内容仅限于内部传阅禁止外泄及用于其他的商业目的
*/
@Slf4j
@RestController
@RequiredArgsConstructor
@RequestMapping("/pdaSave")
@ -126,4 +135,39 @@ public class PdaSaveController {
}
@Operation(summary = "安全巡检处理,修改安全巡检任务", description = "")
@PostMapping(value = "/saveByInspection")
public ResultInfo saveSafetyInspection(HttpServletRequest request) throws Exception {
JSONObject params = (JSONObject) request.getAttribute(Constant.WEBAPI_REQUEST_PARAMETERS);
if (params == null || params.size() == 0) {
throw new BusinessException("参数传递异常!");
}
String code = params.getString("code");
String man = params.getString("reviewMan");
String memo = params.getString("memo");
if (code == null || man == null) {
throw new BusinessException("参数传递异常!");
}
log.info("安全巡检处理传递参数---编码:" + code + " 人员:" + man + " 备注:" + memo);
pdaSaveService.saveSafetyInspection(code, man, memo);
return ResultInfo.ok();
}
@Operation(summary = "环保巡检检验", description = "")
@RequestMapping(value = "/savePatrolIns", method = RequestMethod.POST)
public ResultInfo savePatrolIns(@RequestBody BsEpciuPatrolInspectionEntity epPatrolInspection, HttpServletRequest request) {
pdaSaveService.savePatrolIns(epPatrolInspection);
return ResultInfo.ok();
}
@Operation(summary = "酸雾塔报警处理", description = "")
@PostMapping("/saveEpDosingRec")
public ResultInfo saveEpDosingRec(@RequestBody BsDosingRecEntity epDosingRec, HttpServletRequest request) throws Exception {
pdaSaveService.saveEpDosingRec(epDosingRec);
return ResultInfo.ok();
}
}

@ -77,11 +77,11 @@ public interface IPdaLoadService extends BaseService<WorkPlan> {
Object getInspectionByEcCode(String code,Boolean flag, HttpServletRequest request);
void saveSafetyInspection(String code, String man, String memo);
Object getInspectionBySan(String code, Short eipType);
void savePatrolIns(BsEpciuPatrolInspectionEntity epPatrolInspection);
Object epDosingRecByCode(String code);
}

@ -1,6 +1,8 @@
package org.springblade.desk.produce.service;
import org.springblade.core.mp.base.BaseService;
import org.springblade.desk.energy.pojo.entity.BsDosingRecEntity;
import org.springblade.desk.energy.pojo.entity.BsEpciuPatrolInspectionEntity;
import org.springblade.desk.produce.pojo.dto.DeviceBindDTO;
import org.springblade.desk.produce.pojo.dto.MesRbRedoRoutDTO;
import org.springblade.desk.produce.pojo.dto.ShiftTransferDTO;
@ -63,4 +65,11 @@ public interface IPdaSaveService extends BaseService<WorkPlan> {
void shiftTransfer(ShiftTransferDTO shiftTransferDTO);
boolean receiveNoProcessOrder();
void saveSafetyInspection(String code, String man, String memo);
void savePatrolIns(BsEpciuPatrolInspectionEntity epPatrolInspection);
void saveEpDosingRec(BsDosingRecEntity epDosingRec);
}

@ -8,7 +8,6 @@ import jakarta.servlet.http.HttpServletRequest;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springblade.common.exception.BusinessException;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.secure.utils.AuthUtil;
@ -26,6 +25,7 @@ import org.springblade.desk.device.service.IRackSetService;
import org.springblade.desk.energy.pojo.entity.BsEpciuPatrolInspectionEntity;
import org.springblade.desk.energy.pojo.entity.BsSafeInspectionPointEntity;
import org.springblade.desk.energy.pojo.entity.BsSafePatrolInspectionEntity;
import org.springblade.desk.energy.service.IBsDosingRecService;
import org.springblade.desk.energy.service.IBsEpciuPatrolInspectionService;
import org.springblade.desk.energy.service.IBsSafeInspectionPointService;
import org.springblade.desk.energy.service.IBsSafePatrolInspectionService;
@ -99,6 +99,7 @@ public class PdaLoadServiceImpl extends BaseServiceImpl<WorkPlanMapper, WorkPlan
private final IBsSafePatrolInspectionService inspectionService;
private final IUserClient userClient;
private final IBsSafeInspectionPointService bsSafeInspectionPointService;
private final IBsDosingRecService bsDosingRecService;
// @Value("${request.device.prefixId}")
private String prefixId;
@ -460,68 +461,16 @@ public class PdaLoadServiceImpl extends BaseServiceImpl<WorkPlanMapper, WorkPlan
return piList;
}
@Override
public void saveSafetyInspection(String code, String man, String memo) {
// 根据编码去拿未检验的数据
List<BsSafePatrolInspectionEntity> spiList = inspectionService.getByCode(code);
if (spiList == null || spiList.size() == 0) {
throw new RuntimeException("根据编码未找到需要处理数据");
}
List<User> users = userClient.listByNameNolike(man);
if (CollUtil.isEmpty(users)) {
throw new RuntimeException("根据域账号未找到对应的处理人");
}
User user = users.get(0);
Date date = new Date();
for (BsSafePatrolInspectionEntity safePatrolInspection : spiList) {
// 不超过一个小时算正常检验
if (new Date().getTime() - safePatrolInspection.getLaunchTime().getTime() <= 60 * 60 * 1000) {
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.CHECKED.toString());
} else {
// 超过一个小时但是下个任务并没有触发
int hours = safePatrolInspection.getLaunchTime().getHours();
int hours1 = new Date().getHours();
if (hours == 0 && hours1 < 2) {
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.NOT_ON_TIME.toString());
} else if (hours == 2 && hours1 < 5) {
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.NOT_ON_TIME.toString());
} else if (hours == 5 && hours1 < 7) {
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.NOT_ON_TIME.toString());
} else if (hours == 7 && hours1 < 8) {
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.NOT_ON_TIME.toString());
} else {
// 超过一个小时但是下个任务已触发
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.NO_CHECK.toString());
}
}
safePatrolInspection.setTestTime(date);
safePatrolInspection.setInsMan(man);
safePatrolInspection.setParMemo(memo);
BsSafeInspectionPointEntity safeInspectionPoint = bsSafeInspectionPointService.getByKey(safePatrolInspection.getIpId());
safeInspectionPoint.setLastInsCycle(date);
inspectionService.updateOldPatrol(safePatrolInspection.getIpId(), safePatrolInspection.getLaunchTime(), user.getId());
}
}
@Override
public Object getInspectionBySan(String code, Short eipType) {
return bsEpciuPatrolInspectionService.ListPi(code, eipType);
}
@Override
public void savePatrolIns(BsEpciuPatrolInspectionEntity epPatrolInspection) {
//if (epPatrolInspection.getEpiId() != null) {
//
//}
if (Objects.isNull(epPatrolInspection.getId())) {
return;
}
bsEpciuPatrolInspectionService.savePatrolIns(epPatrolInspection);
@Override
public Object epDosingRecByCode(String code) {
return bsDosingRecService.epDosingRecByCode(code);
}
}

@ -1,5 +1,6 @@
package org.springblade.desk.produce.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@ -23,6 +24,14 @@ import org.springblade.desk.device.pojo.entity.RackSetEntity;
import org.springblade.desk.device.service.IEquipmentService;
import org.springblade.desk.device.service.IFeiBaSetService;
import org.springblade.desk.device.service.IRackSetService;
import org.springblade.desk.energy.pojo.entity.BsDosingRecEntity;
import org.springblade.desk.energy.pojo.entity.BsEpciuPatrolInspectionEntity;
import org.springblade.desk.energy.pojo.entity.BsSafeInspectionPointEntity;
import org.springblade.desk.energy.pojo.entity.BsSafePatrolInspectionEntity;
import org.springblade.desk.energy.service.IBsDosingRecService;
import org.springblade.desk.energy.service.IBsEpciuPatrolInspectionService;
import org.springblade.desk.energy.service.IBsSafeInspectionPointService;
import org.springblade.desk.energy.service.IBsSafePatrolInspectionService;
import org.springblade.desk.order.pojo.entity.YieldOrder;
import org.springblade.desk.order.pojo.entity.YieldOrderCraft;
import org.springblade.desk.order.pojo.enums.YieldOrderEnum;
@ -104,7 +113,10 @@ public class PdaSaveServiceImpl extends BaseServiceImpl<WorkPlanMapper, WorkPlan
private IUserClient userClient;
private final IYieldOrderCraftService yieldOrderCraftService;
private final IBsSafeInspectionPointService bsSafeInspectionPointService;
private final IBsSafePatrolInspectionService inspectionService;
private final IBsEpciuPatrolInspectionService bsEpciuPatrolInspectionService;
private final IBsDosingRecService bsDosingRecService;
@Override
@Transactional(rollbackFor = Exception.class)
public void bindingCard(DeviceBindDTO deviceBindDTO) {
@ -816,4 +828,69 @@ public class PdaSaveServiceImpl extends BaseServiceImpl<WorkPlanMapper, WorkPlan
}
@Override
public void saveSafetyInspection(String code, String man, String memo) {
// 根据编码去拿未检验的数据
List<BsSafePatrolInspectionEntity> spiList = inspectionService.getByCode(code);
if (spiList == null || spiList.size() == 0) {
throw new RuntimeException("根据编码未找到需要处理数据");
}
List<User> users = userClient.listByNameNolike(man);
if (CollUtil.isEmpty(users)) {
throw new RuntimeException("根据域账号未找到对应的处理人");
}
User user = users.get(0);
Date date = new Date();
for (BsSafePatrolInspectionEntity safePatrolInspection : spiList) {
// 不超过一个小时算正常检验
if (new Date().getTime() - safePatrolInspection.getLaunchTime().getTime() <= 60 * 60 * 1000) {
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.CHECKED.toString());
} else {
// 超过一个小时但是下个任务并没有触发
int hours = safePatrolInspection.getLaunchTime().getHours();
int hours1 = new Date().getHours();
if (hours == 0 && hours1 < 2) {
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.NOT_ON_TIME.toString());
} else if (hours == 2 && hours1 < 5) {
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.NOT_ON_TIME.toString());
} else if (hours == 5 && hours1 < 7) {
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.NOT_ON_TIME.toString());
} else if (hours == 7 && hours1 < 8) {
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.NOT_ON_TIME.toString());
} else {
// 超过一个小时但是下个任务已触发
safePatrolInspection.setTaskStatus(BsSafePatrolInspectionEntity.NO_CHECK.toString());
}
}
safePatrolInspection.setTestTime(date);
safePatrolInspection.setInsMan(man);
safePatrolInspection.setParMemo(memo);
BsSafeInspectionPointEntity safeInspectionPoint = bsSafeInspectionPointService.getByKey(safePatrolInspection.getIpId());
safeInspectionPoint.setLastInsCycle(date);
inspectionService.updateOldPatrol(safePatrolInspection.getIpId(), safePatrolInspection.getLaunchTime(), user.getId());
}
}
@Override
public void savePatrolIns(BsEpciuPatrolInspectionEntity epPatrolInspection) {
if (Objects.isNull(epPatrolInspection.getId())) {
return;
}
bsEpciuPatrolInspectionService.savePatrolIns(epPatrolInspection);
}
@Override
public void saveEpDosingRec(BsDosingRecEntity epDosingRec) {
if (Objects.isNull(epDosingRec.getId())){
throw new RuntimeException("请选择加药记录");
}
epDosingRec.setDosingMan(AuthUtil.getUserName());
epDosingRec.setDosingTime(new Date());
epDosingRec.setHandleResult(Long.valueOf(BsDosingRecEntity.HANDLE_RESULT_PDA));
bsDosingRecService.updateById(epDosingRec);
}
}

Loading…
Cancel
Save