From 65b70cf13a2ec91013d876771be878c165cae3a4 Mon Sep 17 00:00:00 2001
From: cjl <909710561@qq.com>
Date: Tue, 23 Apr 2024 15:32:45 +0800
Subject: [PATCH] fix:补充提交

---
 screen-manage/src/main/java/com/moral/api/service/impl/ManageCoordinateServiceImpl.java |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 52 insertions(+), 8 deletions(-)

diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/ManageCoordinateServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/ManageCoordinateServiceImpl.java
index 0b79153..7baa71b 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/ManageCoordinateServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/ManageCoordinateServiceImpl.java
@@ -1,12 +1,18 @@
 package com.moral.api.service.impl;
 
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.ObjectUtils;
 
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -17,6 +23,7 @@
 import com.moral.api.mapper.ManageCoordinateDetailMapper;
 import com.moral.api.mapper.ManageCoordinateMapper;
 import com.moral.api.mapper.SpecialDeviceMapper;
+import com.moral.api.pojo.form.coordinate.CoordinateCode;
 import com.moral.api.service.DeviceService;
 import com.moral.api.service.ManageCoordinateDetailService;
 import com.moral.api.service.ManageCoordinateService;
@@ -40,17 +47,14 @@
      */
     @Override
     public Integer interCoordinate(Map<String, Object> params) {
-//        String mac = params.get("mac").toString();
-        String mac ="p5dnd7a0243625";
+        String mac = params.get("mac").toString();
         QueryWrapper<SpecialDevice> wrapper = new QueryWrapper<>();
         wrapper.eq("mac",mac);
         wrapper.eq("is_delete","0");
         SpecialDevice specialDevice = specialDeviceMapper.selectOne(wrapper);
         String startPoint = params.get("startPoint").toString();
-        String endPoint = params.get("endPoint").toString();
         QueryWrapper<ManageCoordinate> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("start_point",startPoint);
-        queryWrapper.eq("end_point",endPoint);
         Integer integer = manageCoordinateMapper.selectCount(queryWrapper);
         if (integer>=1){
             return null;
@@ -59,7 +63,6 @@
         manageCoordinate.setCreateTime(new Date());
         manageCoordinate.setUpdateTime(new Date());
         manageCoordinate.setStartPoint(startPoint);
-        manageCoordinate.setEndPoint(endPoint);
         manageCoordinate.setIsDel(0);
         manageCoordinate.setOrganizationId(specialDevice.getOrganizationId());
         int code = manageCoordinateMapper.insert(manageCoordinate);
@@ -68,11 +71,17 @@
 
     /**
      * ������������
-     * @param manageCoordinate
+     * @param coordinateCode
      */
     @Override
-    public void updateCoordinate(ManageCoordinate manageCoordinate) {
+    public void updateCoordinate(CoordinateCode coordinateCode) {
+        ManageCoordinate manageCoordinate = new ManageCoordinate();
+        BeanUtils.copyProperties(coordinateCode,manageCoordinate);
         manageCoordinate.setUpdateTime(new Date());
+        List<HashMap<String, Object>> value = coordinateCode.getValue();
+        String s = JSON.toJSONString(value);
+        manageCoordinate.setValue(s);
+        manageCoordinate.setBdValue(JSON.toJSONString(coordinateCode.getBdValue()));
         manageCoordinateMapper.updateById(manageCoordinate);
     }
 
@@ -93,10 +102,45 @@
      * @return
      */
     @Override
-    public List<ManageCoordinate> selectCoordinate() {
+    public List<ManageCoordinate> selectCoordinate(String name,String mac) {
+
         QueryWrapper<ManageCoordinate> queryWrapper = new QueryWrapper<>();
+
+        if (!ObjectUtils.isEmpty(name)){
+            queryWrapper.like("start_point",name);
+        }
+        if(!ObjectUtils.isEmpty(mac)){
+            QueryWrapper<SpecialDevice> wrapper = new QueryWrapper<>();
+            wrapper.eq("mac",mac);
+            wrapper.eq("is_delete","0");
+            SpecialDevice specialDevice = specialDeviceMapper.selectOne(wrapper);
+            queryWrapper.eq("organization_id",specialDevice.getOrganizationId());
+        }
         queryWrapper.eq("is_del",0);
+        queryWrapper.orderByDesc("coordinate_id");
         List<ManageCoordinate> manageCoordinates = manageCoordinateMapper.selectList(queryWrapper);
+        manageCoordinates.forEach(it->{
+            String value = it.getValue();
+            String bdValue = it.getBdValue();
+            if (!ObjectUtils.isEmpty(value)  &&  !ObjectUtils.isEmpty(bdValue)){
+//                List<HashMap<String, Object>> hashMaps = (List<HashMap<String, Object>>)JSON.parseObject(value,List.class);
+                List<HashMap<String, Object>> parse = (List<HashMap<String, Object>>) JSONArray.parse(value);
+                it.setValues(parse);
+                it.setBdValues((List<HashMap<String, Object>>) JSONArray.parse(bdValue));
+            }
+        });
         return manageCoordinates;
     }
+
+    /**
+     * ������id������������������
+     *
+     * @param id
+     * @return
+     */
+    @Override
+    public ManageCoordinate query(Integer id) {
+        ManageCoordinate manageCoordinate = manageCoordinateMapper.selectById(id);
+        return manageCoordinate;
+    }
 }

--
Gitblit v1.8.0