From b9a62c75633d8f22fece8645d528be79dc116d7d Mon Sep 17 00:00:00 2001
From: jinpengyong <jpy123456>
Date: Fri, 01 Mar 2024 16:20:05 +0800
Subject: [PATCH] fix:手持设备补充提交

---
 screen-api/src/main/java/com/moral/api/service/impl/HandDeviceServiceImpl.java |   17 ++++++++++++++---
 screen-api/src/main/resources/mapper/HandDeviceMapper.xml                      |   11 +++++++----
 2 files changed, 21 insertions(+), 7 deletions(-)

diff --git a/screen-api/src/main/java/com/moral/api/service/impl/HandDeviceServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/HandDeviceServiceImpl.java
index e7e23f1..a5e04ea 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/HandDeviceServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/HandDeviceServiceImpl.java
@@ -64,6 +64,7 @@
      */
     @Override
     public Page<HandDevice> page(HandDevicePageCond handDevicePageCond) {
+
         Page<HandDevice> page = handDeviceMapper.Page(handDevicePageCond.getPage().convertPage(),
                                                     handDevicePageCond.getMac(),
                                                     handDevicePageCond.getName(),
@@ -95,14 +96,17 @@
      */
     @Override
     public HandDevice update(HandDevice handDevice) {
+        QxUser currentUser = UserHelper.getCurrentUser();
         String state = handDevice.getState();
         if (state.equals("0")){
             HandDevice handDevice1 = getHand(handDevice);
+            handDevice1.setCreateName(currentUser.getUserName());
             handDeviceMapper.insert(handDevice1);
             return handDevice1;
         }else {
             handDevice.setEndTime(new Date());
             handDevice.setState("0");
+            handDevice.setUpdateName(currentUser.getUserName());
             handDeviceMapper.updateById(handDevice);
             return handDevice;
         }
@@ -140,7 +144,10 @@
         Date startDate = DateUtils.getDate(startTime,DateUtils.yyyy_MM_dd_HH_mm_EN);
         Date endDate = DateUtils.getDate(endTime,DateUtils.yyyy_MM_dd_HH_mm_EN);
         List<Map<String, Object>> rsMap = new ArrayList<>();
+        if (ObjectUtils.isEmpty(endTime)){
+             endDate = new Date();
 
+        }
         if (type.equals("hour")){
             List<HistoryHourly> valueByMacAndTime = historyHourlyService.getValueByMacAndTime(mac, startDate, endDate);
             for (HistoryHourly historyHourly : valueByMacAndTime) {
@@ -175,9 +182,15 @@
     public List<Map<String, Object>> detailsExecl(Map<String, Object> params) {
         String type = params.get("type").toString();
         String mac = params.get("mac").toString();
+        Object endTime = params.get("endTime");
         Date startDate = DateUtils.getDate(params.get("startTime").toString(),DateUtils.yyyy_MM_dd_HH_mm_EN);
-        Date endDate = DateUtils.getDate(params.get("endTime").toString(),DateUtils.yyyy_MM_dd_HH_mm_EN);
+        Date endDate;
         List<Map<String, Object>> rsMap = new ArrayList<>();
+        if (ObjectUtils.isEmpty(endTime)){
+             endDate = new Date();
+        }else {
+             endDate = DateUtils.getDate(endTime.toString(),DateUtils.yyyy_MM_dd_HH_mm_EN);
+        }
         if (type.equals("hour")){
             List<HistoryHourly> valueByMacAndTime = historyHourlyService.getValueByMacAndTime(mac, startDate, endDate);
             for (HistoryHourly historyHourly : valueByMacAndTime) {
@@ -226,7 +239,6 @@
 
 
     private HandDevice getHand(HandDevice handDevice){
-        QxUser currentUser = UserHelper.getCurrentUser();
         HandDevice rsHandDevice = new HandDevice();
         rsHandDevice.setName(handDevice.getName());
         rsHandDevice.setMac(handDevice.getMac());
@@ -234,7 +246,6 @@
         rsHandDevice.setLatitude(handDevice.getLatitude());
         rsHandDevice.setLongitude(handDevice.getLongitude());
         rsHandDevice.setIsDelete(Constants.NOT_DELETE);
-        rsHandDevice.setUpdateName(currentUser.getUserName());
         rsHandDevice.setStartTime(new Date());
         rsHandDevice.setUpdateTime(new Date());
         rsHandDevice.setCreateTime(new Date());
diff --git a/screen-api/src/main/resources/mapper/HandDeviceMapper.xml b/screen-api/src/main/resources/mapper/HandDeviceMapper.xml
index aeea728..a7abf36 100644
--- a/screen-api/src/main/resources/mapper/HandDeviceMapper.xml
+++ b/screen-api/src/main/resources/mapper/HandDeviceMapper.xml
@@ -15,10 +15,12 @@
                     <result column="end_time" property="endTime" />
                     <result column="create_name" property="createName" />
                     <result column="update_name" property="updateName" />
+                    <result column="create_time" property="createTime" />
+                    <result column="update_time" property="updateTime" />
         </resultMap>
 
     <sql id="Base_Column_List">
-        id,name,mac,address,longitude,latitude,start_time,is_delete,end_time
+        id,name,mac,address,longitude,latitude,start_time,is_delete,end_time,create_name,update_name,create_time,update_time
     </sql>
     <select id="Page" resultType="com.moral.api.entity.HandDevice">
         select
@@ -32,10 +34,11 @@
             <if test="mac != null and mac != ''">
                 and mac = #{mac}
             </if>
-            <if test="startTime != null and startTime != '' ">
-                and date(start_time) <![CDATA[>=]]> #{startTime}
+            <if test="startTime != null and endTime == '' ">
+                and date(start_time) like CONCAT('%',#{startTime},'%')
             </if>
-            <if test="endTime != null and endTime !='' ">
+            <if test="endTime != '' and startTime != ''">
+                and date(start_time) <![CDATA[>=]]> #{startTime}
                 and date(end_time) <![CDATA[<=]]>  #{endTime}
             </if>
         </where>

--
Gitblit v1.8.0