From e9dd07a6eec753511aec755e1d1ee5344f06a194 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期三, 21 八月 2024 16:26:05 +0800 Subject: [PATCH] 工单生成时优化,报备优化 --- ycl-server/src/main/java/com/ycl/task/DeviceChannelTask.java | 18 +++++++++ ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderYwConditionRecordVO.java | 3 + ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderYwConditionRecord.java | 3 + ycl-server/src/main/java/com/ycl/platform/mapper/ReportMapper.java | 8 ++++ ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml | 19 +++++++++ ycl-server/src/main/resources/mapper/zgyw/WorkOrderYwConditionRecordMapper.xml | 2 ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java | 22 ++++++++++- ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java | 7 --- ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java | 8 ---- 9 files changed, 72 insertions(+), 18 deletions(-) diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderYwConditionRecord.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderYwConditionRecord.java index 2d4f45b..71231ca 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderYwConditionRecord.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/WorkOrderYwConditionRecord.java @@ -38,5 +38,8 @@ @TableField("yw_proofMaterials") private String ywProofMaterials; + @ApiModelProperty("鏄惁涓虹郴缁熸秷鎭�") + @TableField("sys_msg") + private Boolean sysMsg; } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderYwConditionRecordVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderYwConditionRecordVO.java index 2e7abb0..9b9bdc1 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderYwConditionRecordVO.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/WorkOrderYwConditionRecordVO.java @@ -34,6 +34,9 @@ /** 浣愯瘉鏉愭枡 */ private String ywProofMaterials; + /** 鏄惁绯荤粺娑堟伅 */ + private Boolean sysMsg; + public static WorkOrderYwConditionRecordVO getVoByEntity(@NonNull WorkOrderYwConditionRecord entity, WorkOrderYwConditionRecordVO vo) { if(vo == null) { vo = new WorkOrderYwConditionRecordVO(); diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/ReportMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/ReportMapper.java index 1d574d4..2569293 100644 --- a/ycl-server/src/main/java/com/ycl/platform/mapper/ReportMapper.java +++ b/ycl-server/src/main/java/com/ycl/platform/mapper/ReportMapper.java @@ -33,4 +33,12 @@ List<ReportVO> examineRecord(@Param("id") Integer id); List<String> selectNumberList(String status, String date); + + /** + * 鏌ヨ宸ュ崟鏄惁鎶ュ杩� + * + * @param serialNumber 鍥芥爣鐮� + * @return + */ + Report checkPointReported(@Param("serialNumber") String serialNumber); } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java b/ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java index db4bf96..d06696f 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/DataCenterService.java @@ -23,7 +23,6 @@ * @param query * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 Result videoPointOnlineRate(DataCenterQuery query); /** @@ -72,7 +71,6 @@ * @param query * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 Result videoLabelingAccuracy(DataCenterQuery query); /** @@ -81,7 +79,6 @@ * @param query * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 Result videoImportantPointLabelingAccuracy(DataCenterQuery query); /** @@ -90,7 +87,6 @@ * @param query * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 Result videoCheckTimeAccuracy(DataCenterQuery query); /** @@ -99,7 +95,6 @@ * @param query * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 Result videoImportantPointCheckTimeAccuracy(DataCenterQuery query); /** @@ -108,7 +103,6 @@ * @param query * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 Result videoImportantPointOnlineRate(DataCenterQuery query); /** @@ -117,7 +111,6 @@ * @param query * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 Result videoImportantPointImageOnlineRate(DataCenterQuery query); @@ -226,7 +219,6 @@ * @param query * @return */ - // TODO 鏇存崲鍝嶅簲缁撴灉 Result facePointOnlineRate(DataCenterQuery query); /** diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java index 8b0c6d6..f779f18 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/DataCenterServiceImpl.java @@ -189,7 +189,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoLabelingAccuracy(DataCenterQuery params) { Query query = new Query(); @@ -215,7 +214,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoImportantPointLabelingAccuracy(DataCenterQuery params) { Query query = new Query(); @@ -241,7 +239,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoCheckTimeAccuracy(DataCenterQuery params) { Query query = new Query(); @@ -267,7 +264,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoImportantPointCheckTimeAccuracy(DataCenterQuery params) { Query query = new Query(); @@ -293,7 +289,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoImportantPointOnlineRate(DataCenterQuery params) { Query query = new Query(); @@ -319,7 +314,6 @@ * @param params * @return */ - // TODO 杩斿洖鏁版嵁瀵硅薄鏇存崲 @Override public Result videoImportantPointImageOnlineRate(DataCenterQuery params) { Query query = new Query(); @@ -623,7 +617,6 @@ * @param params * @return */ - // TODO 鏇存崲鍝嶅簲缁撴灉 @Override public Result facePointOnlineRate(DataCenterQuery params) { Query query = new Query(); diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java index ddf6987..13a982c 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/WorkOrderServiceImpl.java @@ -82,6 +82,7 @@ private final TMonitorMapper monitorMapper; private final SysConfigMapper configMapper; private final ServerConfig serverConfig; + private final ReportMapper reportMapper; @Value("${rtsp.server:http://127.0.0.1:7788}") private String rtspServer; @@ -112,7 +113,7 @@ Map<String, WorkOrder> mapping = inDatabaseWorkOrderList.stream().collect((Collectors.toMap(WorkOrder::getSerialNumber, workOrder -> workOrder))); List<WorkOrder> waitAddList = new ArrayList<>(48); Integer updateNum = 0; - // TODO 鏌ヨ鏄惁鎶ュ杩囷紝鏇存柊鏁呴殰绫诲瀷 + for (WorkOrder workOrder : workOrderList) { WorkOrder databaseWorkOrder = mapping.get(workOrder.getSerialNumber()); if (Objects.nonNull(databaseWorkOrder)) { @@ -129,11 +130,22 @@ databaseWorkOrder.setUpdateTime(now); baseMapper.updateById(databaseWorkOrder); updateNum++; - // 鍚屾椂鏂板涓�涓繍缁村鐞嗕俊鎭紝琛ㄦ槑姝ゅ伐鍗曡璋冩暣 TODO + // 鍚屾椂鏂板涓�涓繍缁村鐞嗕俊鎭紝琛ㄦ槑姝ゅ伐鍗曡璋冩暣 + WorkOrderYwConditionRecord ywRecord = new WorkOrderYwConditionRecord(); + ywRecord.setWorkOrderId(databaseWorkOrder.getId()); + ywRecord.setCommitUser(1); + ywRecord.setYwCondition("鏁呴殰绫诲瀷鏇存柊锛屽伐鍗曠姸鎬佽皟鏁翠负寰呭鐞�"); + ywRecord.setCreateTime(new Date()); + workOrderYwConditionRecordMapper.insert(ywRecord); } } else { workOrder.setCreateTime(new Date()); workOrder.setUpdateTime(new Date()); + // 濡傛灉鎶ュ杩囷紝浣跨敤鏈�鏂版姤澶囩殑閿欒绫诲瀷 + Report report = reportMapper.checkPointReported(workOrder.getSerialNumber()); + if (Objects.nonNull(report)) { + workOrder.setErrorType(report.getErrorType()); + } waitAddList.add(workOrder); } } @@ -316,6 +328,7 @@ workOrderYwConditionRecord.setCommitUser(SecurityUtils.getLoginUser().getUserId().intValue()); workOrderYwConditionRecord.setYwCondition(form.getYwCondition()); workOrderYwConditionRecord.setYwProofMaterials(form.getYwProofMaterials()); + workOrderYwConditionRecord.setSysMsg(Boolean.FALSE); workOrderYwConditionRecordMapper.insert(workOrderYwConditionRecord); return Result.ok("鎿嶄綔鎴愬姛"); } @@ -323,6 +336,11 @@ @Override public Result selectYwConditionByYwId(Integer id) { List<WorkOrderYwConditionRecordVO> ywConditionList = workOrderYwConditionRecordMapper.selectYwConditionByYwId(id); + ywConditionList.stream().forEach(item -> { + if (Objects.nonNull(item.getSysMsg()) && item.getSysMsg()) { + item.setCommitUserName("绯荤粺娑堟伅"); + } + }); return Result.ok().data(ywConditionList); } diff --git a/ycl-server/src/main/java/com/ycl/task/DeviceChannelTask.java b/ycl-server/src/main/java/com/ycl/task/DeviceChannelTask.java new file mode 100644 index 0000000..ae1b355 --- /dev/null +++ b/ycl-server/src/main/java/com/ycl/task/DeviceChannelTask.java @@ -0,0 +1,18 @@ +package com.ycl.task; + +import org.springframework.stereotype.Component; + +/** + * 閫氶亾鍚屾 + * + * @author锛歺p + * @date锛�2024/8/21 15:18 + */ +@Component("deviceChannelTask") +public class DeviceChannelTask { + + public void run() { + // TODO 寰呭疄鐜� + } + +} diff --git a/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml index 52bf32f..9da4ca5 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/ReportMapper.xml @@ -70,4 +70,23 @@ WHERE r.status = #{status} AND #{date} between r.begin_create_time and r.end_create_time </select> + + <select id="checkPointReported" resultType="com.ycl.platform.domain.vo.ReportVO"> + SELECT + r.id, r.errorType + FROM + t_report r + INNER JOIN t_yw_point yo ON r.point_id = yo.id AND yo.deleted = 0 + INNER JOIN t_work_order wo ON yo.serial_number = wo.serial_number AND wo.serial_number = #{serialNumber} AND wo.deleted = 0 + WHERE + r.status = 1 + ORDER BY r.auditing_time DESC + LIMIT 1 + </select> + + + + + + </mapper> diff --git a/ycl-server/src/main/resources/mapper/zgyw/WorkOrderYwConditionRecordMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/WorkOrderYwConditionRecordMapper.xml index d8b6c6e..24fc1cd 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/WorkOrderYwConditionRecordMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/WorkOrderYwConditionRecordMapper.xml @@ -13,7 +13,7 @@ </resultMap> <select id="selectYwConditionByYwId" resultMap="BaseResultMap"> - SELECT yw.id, yw.commit_user, yw.yw_condition, yw.yw_proofMaterials, yw.create_time, su.nick_name + SELECT yw.id, yw.commit_user, yw.yw_condition, yw.yw_proofMaterials, yw.create_time, yw.sys_msg, su.nick_name FROM t_work_order_yw_condition_record yw INNER JOIN sys_user su ON yw.commit_user = su.user_id AND yw.deleted = 0 AND yw.work_order_id = #{workOrderId} ORDER BY yw.create_time DESC -- Gitblit v1.8.0