From 26fcb8cc095255e444a59a24763f0b31f30a4f60 Mon Sep 17 00:00:00 2001 From: "zangch@mesnac.com" Date: Wed, 4 Mar 2026 08:55:21 +0800 Subject: [PATCH] =?UTF-8?q?fix(mapper):=20=E4=BF=AE=E5=A4=8D=E6=89=B9?= =?UTF-8?q?=E9=87=8F=E6=8F=92=E5=85=A5=E5=92=8C=E6=97=B6=E9=97=B4=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 修改 DmsBillsMaintDetail 批量插入语句为标准 insert into 格式并移除多余字段 - 为批量插入操作添加空集合检查避免无效执行 - 修复关机记录查询中时间范围条件的日期转换逻辑 - 添加参数非空验证防止查询异常 --- .../impl/DmsBillsMaintInstanceServiceImpl.java | 12 +++++++++--- .../mapper/dms/DmsBillsMaintInstanceMapper.xml | 16 +++++++--------- .../mapper/dms/DmsRecordShutDownMapper.xml | 5 +++-- 3 files changed, 19 insertions(+), 14 deletions(-) diff --git a/aucma-dms/src/main/java/com/aucma/dms/service/impl/DmsBillsMaintInstanceServiceImpl.java b/aucma-dms/src/main/java/com/aucma/dms/service/impl/DmsBillsMaintInstanceServiceImpl.java index 41114da..5981ad1 100644 --- a/aucma-dms/src/main/java/com/aucma/dms/service/impl/DmsBillsMaintInstanceServiceImpl.java +++ b/aucma-dms/src/main/java/com/aucma/dms/service/impl/DmsBillsMaintInstanceServiceImpl.java @@ -131,7 +131,9 @@ public class DmsBillsMaintInstanceServiceImpl implements IDmsBillsMaintInstanceS billsMaintDetails.add(dmsBillsMaintDetail); }); - dmsBillsMaintInstanceMapper.batchDmsBillsMaintDetail(billsMaintDetails); + if (!billsMaintDetails.isEmpty()) { + dmsBillsMaintInstanceMapper.batchDmsBillsMaintDetail(billsMaintDetails); + } ArrayList list1 = new ArrayList<>(); List list = dmsBillsMaintDetailMapper.selectDetailList(maintInstanceId); for (DmsBillsMaintDetail detail : list) { @@ -148,7 +150,9 @@ public class DmsBillsMaintInstanceServiceImpl implements IDmsBillsMaintInstanceS } } - dmsBillsMaintInstanceMapper.batchDmsProject(list1); + if (!list1.isEmpty()) { + dmsBillsMaintInstanceMapper.batchDmsProject(list1); + } } @Override @@ -509,7 +513,9 @@ public class DmsBillsMaintInstanceServiceImpl implements IDmsBillsMaintInstanceS detail.setCreateTime(now); billsMaintDetails.add(detail); } - dmsBillsMaintInstanceMapper.batchDmsBillsMaintDetail(billsMaintDetails); + if (!billsMaintDetails.isEmpty()) { + dmsBillsMaintInstanceMapper.batchDmsBillsMaintDetail(billsMaintDetails); + } // 创建保养工单明细项目(所有项目均为已完成状态) List insertedDetails = dmsBillsMaintDetailMapper.selectDetailList(instance.getMaintInstanceId()); diff --git a/aucma-dms/src/main/resources/mapper/dms/DmsBillsMaintInstanceMapper.xml b/aucma-dms/src/main/resources/mapper/dms/DmsBillsMaintInstanceMapper.xml index 5b3fca6..9ed7857 100644 --- a/aucma-dms/src/main/resources/mapper/dms/DmsBillsMaintInstanceMapper.xml +++ b/aucma-dms/src/main/resources/mapper/dms/DmsBillsMaintInstanceMapper.xml @@ -165,12 +165,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - insert all - - into dms_bills_maint_detail( - bills_maint_detail_id, maint_instance_id, device_id, station_id, maint_standard_id, - operation_description, maint_status, is_flag, remark, create_by, create_time, update_by, update_time - ) values ( + insert into dms_bills_maint_detail( + bills_maint_detail_id, maint_instance_id, machine_id, maint_station_id, maint_standard_id, + operation_description, maint_status, remark, create_by, create_time, update_by, update_time + ) + + select HAIWEI.SEQ_DMS_MAINT_DETAIL.NEXTVAL, #{item.maintInstanceId,jdbcType=NUMERIC}, #{item.deviceId,jdbcType=NUMERIC}, @@ -178,15 +178,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{item.maintStandardId,jdbcType=NUMERIC}, #{item.operationDescription,jdbcType=VARCHAR}, #{item.maintStatus,jdbcType=NUMERIC}, - #{item.isFlag,jdbcType=NUMERIC}, #{item.remark,jdbcType=VARCHAR}, #{item.createBy,jdbcType=NUMERIC}, #{item.createTime,jdbcType=TIMESTAMP}, #{item.updateBy,jdbcType=NUMERIC}, #{item.updateTime,jdbcType=TIMESTAMP} - ) + from dual - select 1 from dual insert all diff --git a/aucma-dms/src/main/resources/mapper/dms/DmsRecordShutDownMapper.xml b/aucma-dms/src/main/resources/mapper/dms/DmsRecordShutDownMapper.xml index 7d5fce9..424640e 100644 --- a/aucma-dms/src/main/resources/mapper/dms/DmsRecordShutDownMapper.xml +++ b/aucma-dms/src/main/resources/mapper/dms/DmsRecordShutDownMapper.xml @@ -57,8 +57,9 @@ and r.shut_begin_time between #{beginTime} and #{endTime} - - and r.shut_begin_time between #{params.beginTime} and #{params.endTime} + + and r.shut_begin_time between to_date(#{params.beginTime}, 'yyyy-MM-dd HH24:mi:ss') + and to_date(#{params.endTime}, 'yyyy-MM-dd HH24:mi:ss') and r.shut_begin_time >= #{shutBeginTime} and #{shutEndTime} >= r.shut_end_time