From d8616fa68d8d2de22d32c9e8e851a2b3563f7d89 Mon Sep 17 00:00:00 2001 From: guoshengxiong <1923636941@qq.com> Date: Thu, 23 Oct 2025 17:37:07 +0800 Subject: [PATCH] =?UTF-8?q?=E6=93=8D=E4=BD=9C=E5=B7=A5=E4=BD=9C=E7=A5=A8?= =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../policecamera/mapper/WorkTicketMapper.java | 2 ++ .../mapper/xml/WorkTicketMapper.xml | 7 +++++ .../service/impl/WorkTicketServiceImpl.java | 28 ++++++++++++++++++- 3 files changed, 36 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/zhgd/xmgl/modules/policecamera/mapper/WorkTicketMapper.java b/src/main/java/com/zhgd/xmgl/modules/policecamera/mapper/WorkTicketMapper.java index b7ebd50b9..0d5b8eafd 100644 --- a/src/main/java/com/zhgd/xmgl/modules/policecamera/mapper/WorkTicketMapper.java +++ b/src/main/java/com/zhgd/xmgl/modules/policecamera/mapper/WorkTicketMapper.java @@ -54,4 +54,6 @@ public interface WorkTicketMapper extends BaseMapper { WorkTicketVo queryById(String id); CountWorkTicketVo countWorkTicket(HashMap map); + + List getPoliceCameraIdsByWorkTicketId(Long id); } diff --git a/src/main/java/com/zhgd/xmgl/modules/policecamera/mapper/xml/WorkTicketMapper.xml b/src/main/java/com/zhgd/xmgl/modules/policecamera/mapper/xml/WorkTicketMapper.xml index cf6effec0..f893e4ff6 100644 --- a/src/main/java/com/zhgd/xmgl/modules/policecamera/mapper/xml/WorkTicketMapper.xml +++ b/src/main/java/com/zhgd/xmgl/modules/policecamera/mapper/xml/WorkTicketMapper.xml @@ -35,4 +35,11 @@ and t.project_sn = #{projectSn} + + diff --git a/src/main/java/com/zhgd/xmgl/modules/policecamera/service/impl/WorkTicketServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/policecamera/service/impl/WorkTicketServiceImpl.java index c40ea99f0..14cfbe932 100644 --- a/src/main/java/com/zhgd/xmgl/modules/policecamera/service/impl/WorkTicketServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/policecamera/service/impl/WorkTicketServiceImpl.java @@ -192,6 +192,9 @@ public class WorkTicketServiceImpl extends ServiceImpl() .eq(WorkTicket::getProjectSn, workTicketDto.getProjectSn()) .eq(WorkTicket::getWorkTicketNumber, workTicketDto.getWorkTicketNumber()) @@ -200,6 +203,21 @@ public class WorkTicketServiceImpl extends ServiceImpl 0) { throw new OpenAlertException("工作票编号已存在"); } + if (Objects.equals(workTicketDto.getStatus(), 2)) { + //施工状态不能修改执法记录仪 + List pcids = baseMapper.getPoliceCameraIdsByWorkTicketId(workTicketDto.getId()); + if (CollUtil.isEmpty(pcids) != StrUtil.isBlank(workTicketDto.getPoliceCameraIds())) { + throw new OpenAlertException("施工中不得修改作业监控,请先暂停作业重试"); + } + if (StrUtil.isNotBlank(workTicketDto.getPoliceCameraIds())) { + List getItemIds = policeCameraItemService.list(new LambdaQueryWrapper() + .in(PoliceCameraItem::getItemId, StrUtil.split(workTicketDto.getPoliceCameraIds(), ","))).stream().map(PoliceCameraItem::getItemId).collect(Collectors.toList()); + if (pcids.size() != getItemIds.size() || !getItemIds.containsAll(pcids)) { + throw new OpenAlertException("施工中不得修改作业监控,请先暂停作业重试"); + } + } + } + //施工中不得新增作业监控,请先暂停作业重试 baseMapper.updateById(workTicketDto); workTicketCameraRelService.remove(new LambdaQueryWrapper() .eq(WorkTicketCameraRel::getWorkTicketId, workTicketDto.getId())); @@ -228,6 +246,10 @@ public class WorkTicketServiceImpl extends ServiceImpl() .eq(WorkTicketOrder::getWorkTicketId, id)); + workTicketCameraRelService.remove(new LambdaQueryWrapper() + .eq(WorkTicketCameraRel::getWorkTicketId, id)); + workTicketHistoryService.remove(new LambdaQueryWrapper() + .eq(WorkTicketHistory::getWorkTicketId, id)); } @Override @@ -259,6 +281,10 @@ public class WorkTicketServiceImpl extends ServiceImpl