Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/master'

tianyabing 2 anni fa
parent
commit
62e147cf4e

+ 11 - 0
src/main/java/com/sky/ioc/controller/life/ParkingController.java

@@ -1,6 +1,7 @@
 package com.sky.ioc.controller.life;
 
 import com.sky.ioc.entity.params.IocParam;
+import com.sky.ioc.service.Parking.ParkService;
 import com.sky.ioc.service.Parking.ParkingService;
 import com.sky.ioc.tool.ReturnMsg;
 import io.swagger.annotations.Api;
@@ -32,6 +33,9 @@ public class ParkingController {
     @Autowired
     private ParkingService parkingService;
 
+    @Autowired
+    ParkService parkService;
+
 
     @ApiOperation("查询智慧生活中智慧停车的核心指标")
     @PostMapping("getCoreIndicators")
@@ -82,6 +86,13 @@ public class ParkingController {
         return parkingService.getOccupationOfParkingSpace(iocParam);
     }
 
+    @ApiOperation("车位信息")
+    @PostMapping("getParkingData")
+    public ReturnMsg  getParkingData(){
+//        dateType   1.周,2.月,3.年
+        return parkService.getParkData();
+    }
+
 
 
 

+ 1 - 0
src/main/java/com/sky/ioc/controller/system/UserController.java

@@ -70,4 +70,5 @@ public class UserController {
         String pwd = "135246";
         System.out.println(Pbkdf2Sha256Digest.encode(pwd));
     }
+
 }

+ 7 - 1
src/main/java/com/sky/ioc/entity/domain/parking/Park.java

@@ -12,7 +12,7 @@ import lombok.Data;
 @Data
 public class Park {
 
-
+    private  Integer id;
 
     /**拥有者ID*/
     private Integer userId;
@@ -33,4 +33,10 @@ public class Park {
     /**是否违停*/
     private Integer type;
 
+    /**
+     * 车位编号
+     * */
+    private String parkingNumbers;
+
+
 }

+ 14 - 9
src/main/java/com/sky/ioc/entity/domain/parking/Parking.java

@@ -15,7 +15,7 @@ import java.util.concurrent.ThreadLocalRandom;
 @Data
 public class Parking {
 
-
+    private  Integer id;
 
     /**车位*/
     private String position;
@@ -31,6 +31,18 @@ public class Parking {
     /**单位名称*/
     private String company;
 
+    /**
+     * 车位编号
+     * */
+    private String parkingNumbers;
+
+    /**
+     * 车位类型
+     * */
+    private String parkingType;
+    /**车位状态 1 空闲 2已被预约 3车位被使用*/
+    private String parkingStatus;
+
     /**最长停车时间*/
     private String prkingDurationLong;
     /**最段停车时间*/
@@ -42,12 +54,5 @@ public class Parking {
 
 
 
-    public Parking(String param1 , @NonNull String param2 , String param3,String param4 , String param5){
-        ThreadLocalRandom current = ThreadLocalRandom.current();
-        position = param1;
-        people = param2;
-        company = param3;
-        prkingDurationLong  = param4;
-        prkingDurationBreak = param5;
-    }
+
 }

+ 3 - 1
src/main/java/com/sky/ioc/mapper/ParkMapper.java

@@ -1,5 +1,7 @@
 package com.sky.ioc.mapper;
 
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.sky.ioc.entity.domain.parking.Park;
 import com.sky.ioc.entity.params.IocParam;
 import com.sky.ioc.entity.params.IocTimeRange;
 import org.apache.ibatis.annotations.Mapper;
@@ -10,7 +12,7 @@ import java.util.List;
 import java.util.Map;
 
 @Mapper
-public interface ParkMapper {
+public interface ParkMapper extends BaseMapper<Park> {
     @Select("<script>" +
             "SELECT count(1) FROM park where 1=1 " +
             "<if test='iocParam!=null and iocParam.companyId != null '>" +

+ 2 - 1
src/main/java/com/sky/ioc/mapper/ParkingMapper.java

@@ -1,5 +1,6 @@
 package com.sky.ioc.mapper;
 
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.sky.ioc.entity.domain.parking.Parking;
 import com.sky.ioc.entity.params.IocParam;
 import org.apache.ibatis.annotations.Mapper;
@@ -9,7 +10,7 @@ import org.apache.ibatis.annotations.Select;
 import java.util.List;
 
 @Mapper
-public interface ParkingMapper {
+public interface ParkingMapper extends BaseMapper<Parking> {
 
     @Select("<script>" +
             "SELECT count(1) FROM parking where 1=1 " +

+ 8 - 0
src/main/java/com/sky/ioc/service/Parking/ParkService.java

@@ -0,0 +1,8 @@
+package com.sky.ioc.service.Parking;
+
+import com.sky.ioc.tool.ReturnMsg;
+
+public interface ParkService {
+
+    ReturnMsg getParkData();
+}

+ 2 - 0
src/main/java/com/sky/ioc/service/Parking/ParkingService.java

@@ -21,4 +21,6 @@ public interface ParkingService {
     ReturnMsg getOccupationOfParkingSpace(IocParam iocParam);
 
     ReturnMsg getParkingSpaceDetails(IocParam iocParam);
+
+    ReturnMsg getParkingData();
 }

+ 86 - 0
src/main/java/com/sky/ioc/service/Parking/impl/ParkServiceImpl.java

@@ -0,0 +1,86 @@
+package com.sky.ioc.service.Parking.impl;
+
+import com.sky.ioc.entity.domain.parking.Park;
+import com.sky.ioc.entity.domain.parking.Parking;
+import com.sky.ioc.mapper.ParkMapper;
+import com.sky.ioc.mapper.job.TokenMapper;
+import com.sky.ioc.service.Parking.ParkService;
+import com.sky.ioc.tool.ReturnMsg;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.http.HttpEntity;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpMethod;
+import org.springframework.http.ResponseEntity;
+import org.springframework.stereotype.Service;
+import org.springframework.web.client.RestTemplate;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.concurrent.ThreadLocalRandom;
+
+@Service
+@Slf4j
+public class ParkServiceImpl implements ParkService {
+
+    @Autowired
+    TokenMapper tokenMapper;
+
+    @Value("${sky.dataIp}")
+    private String dataIp;
+
+    @Autowired
+    ParkMapper parkMapper;
+
+    final static  String PARK_URL="%s/api/parking/PARKING/parkingDuration/list";
+
+    @Override
+    public ReturnMsg getParkData() {
+        String url =   String.format(PARK_URL,"http://"+dataIp)+"??pageNum=1&pageSize=1000";
+        Map<String,String> tokenMap = tokenMapper.getNewToken();
+        String token ="Bearer eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VyX2tleSI6IjUwZTU1NTRkLWJjYzYtNGRhMS1iZDUxLWFhNTc3YzU4YTFiNCIsInVzZXJuYW1lIjoiYWRtaW4ifQ.X10VPYJfeeRTka7OtqNPOGMpL4QkW3fR_TfCKXCmO-yXbIIrr_40fcwiVnpXfYVENo_BvXWEACRd-Y6nXsbkog";
+        if(tokenMap!=null){
+            token = "Bearer "+tokenMap.get("token");
+        }
+        // 创建一个请求头对象
+        HttpHeaders httpHeaders = new HttpHeaders();
+        // 设置参数
+        httpHeaders.set("authorization", token);
+        // 创建一个响应体对象
+        HttpEntity<String> httpEntity = new HttpEntity(httpHeaders);
+        // 3.创建RestTemplate
+        RestTemplate restTemplate = new RestTemplate();
+        // 发送GET请求
+        ResponseEntity<Map> responseEntity = restTemplate.exchange(url, HttpMethod.GET, httpEntity, Map.class);
+        // 获取响应对象里的 body 对象
+        Map<String, Object> body = responseEntity.getBody();
+        // 获取状态码
+        Integer code = (Integer)body.get("code");
+        // 获取响应信息
+        String message = (String)body.get("msg");
+        if(code==200){
+            ThreadLocalRandom random = ThreadLocalRandom.current();
+            ArrayList list = (ArrayList) body.get("rows");
+            if(list!=null&&list.size()>0){
+                parkMapper.delete(null);
+                for (int i=0;i<list.size();i++){
+                    LinkedHashMap json = (LinkedHashMap) list.get(i);
+                    Park park = new Park();
+                    park.setId((Integer) json.get("id"));
+                    park.setParkingNumbers(String.valueOf(json.get("parkingNumbers")));
+                    park.setEntryTime(String.valueOf(json.get("inParkTime")));
+                    park.setLicencePlate(String.valueOf(json.get("illegalCardnumber")));
+                    park.setDepartureTime(String.valueOf(json.get("outParkTime")));
+                    park.setType(Integer.parseInt(String.valueOf(json.get("ifIllegal"))));
+                    parkMapper.insert(park);
+                }
+            }
+            return ReturnMsg.ok();
+        }else{
+            log.info("获取车位数据:"+message);
+            return  ReturnMsg.fail(message);
+        }
+    }
+}

+ 67 - 0
src/main/java/com/sky/ioc/service/Parking/impl/ParkingServiceImpl.java

@@ -4,17 +4,26 @@ import com.alibaba.fastjson.JSONObject;
 import com.sky.ioc.entity.Indeicator;
 import com.sky.ioc.entity.Label;
 import com.sky.ioc.entity.Cake;
+import com.sky.ioc.entity.domain.carbon.CarbonQuota;
 import com.sky.ioc.entity.domain.parking.Parking;
 import com.sky.ioc.entity.params.IocParam;
 import com.sky.ioc.mapper.ParkMapper;
 import com.sky.ioc.mapper.ParkingMapper;
+import com.sky.ioc.mapper.job.TokenMapper;
 import com.sky.ioc.service.Parking.ParkingService;
 import com.sky.ioc.tool.DateUtil;
 import com.sky.ioc.tool.FalseData;
 import com.sky.ioc.tool.GeneralMethod;
 import com.sky.ioc.tool.ReturnMsg;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.http.HttpEntity;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpMethod;
+import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
+import org.springframework.web.client.RestTemplate;
 
 import java.text.DecimalFormat;
 import java.util.*;
@@ -27,6 +36,7 @@ import java.util.concurrent.ThreadLocalRandom;
  * @Date 2023/2/10 13:45
  **/
 @Service
+@Slf4j
 public class ParkingServiceImpl implements ParkingService {
 
     @Autowired
@@ -36,6 +46,15 @@ public class ParkingServiceImpl implements ParkingService {
     ParkMapper parkMapper;
 
 
+    @Autowired
+    TokenMapper tokenMapper;
+
+    @Value("${sky.dataIp}")
+    private String dataIp;
+
+    final static  String PARKING_URL="%s/api/parking/PARKING/parkingInfo/list";
+
+
     @Override
     public ReturnMsg getCoreIndicators(IocParam iocParam) {
         Indeicator indeicator = new Indeicator();
@@ -91,6 +110,54 @@ public class ParkingServiceImpl implements ParkingService {
         return ReturnMsg.ok(FalseData.PARKINGLIST);
     }
 
+    @Override
+    public ReturnMsg getParkingData() {
+        String url =   String.format(PARKING_URL,"http://"+dataIp)+"??pageNum=1&pageSize=1000";
+        Map<String,String> tokenMap = tokenMapper.getNewToken();
+        String token ="Bearer eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VyX2tleSI6IjUwZTU1NTRkLWJjYzYtNGRhMS1iZDUxLWFhNTc3YzU4YTFiNCIsInVzZXJuYW1lIjoiYWRtaW4ifQ.X10VPYJfeeRTka7OtqNPOGMpL4QkW3fR_TfCKXCmO-yXbIIrr_40fcwiVnpXfYVENo_BvXWEACRd-Y6nXsbkog";
+        if(tokenMap!=null){
+            token = "Bearer "+tokenMap.get("token");
+        }
+        // 创建一个请求头对象
+        HttpHeaders httpHeaders = new HttpHeaders();
+        // 设置参数
+        httpHeaders.set("authorization", token);
+        // 创建一个响应体对象
+        HttpEntity<String> httpEntity = new HttpEntity(httpHeaders);
+        // 3.创建RestTemplate
+        RestTemplate restTemplate = new RestTemplate();
+        // 发送GET请求
+        ResponseEntity<Map> responseEntity = restTemplate.exchange(url, HttpMethod.GET, httpEntity, Map.class);
+        // 获取响应对象里的 body 对象
+        Map<String, Object> body = responseEntity.getBody();
+        // 获取状态码
+        Integer code = (Integer)body.get("code");
+        // 获取响应信息
+        String message = (String)body.get("msg");
+        if(code==200){
+            ThreadLocalRandom random = ThreadLocalRandom.current();
+            ArrayList list = (ArrayList) body.get("rows");
+            if(list!=null&&list.size()>0){
+                parkingMapper.delete(null);
+                for (int i=0;i<list.size();i++){
+                    LinkedHashMap json = (LinkedHashMap) list.get(i);
+                    Parking parking = new Parking();
+                    parking.setId((Integer) json.get("id"));
+                    parking.setParkingNumbers(String.valueOf(json.get("parkingNumbers")));
+                    parking.setParkingType(String.valueOf(json.get("parkingType")));
+                    parking.setPosition(String.valueOf(json.get("parkingArea")));
+
+                   parkingMapper.insert(parking);
+                }
+            }
+            return ReturnMsg.ok();
+
+        }else{
+            log.info("获取车位数据:"+message);
+            return  ReturnMsg.fail(message);
+        }
+    }
+
 
     @Override
     public ReturnMsg getStopViolation(IocParam iocParam) {

+ 2 - 0
src/main/java/com/sky/ioc/service/system/UserService.java

@@ -17,4 +17,6 @@ public interface UserService {
     ReturnMsg phoneLogin(String phone, String code);
 
     ReturnMsg getUserInfoById(long userId);
+
+    ReturnMsg getUserData();
 }

+ 69 - 2
src/main/java/com/sky/ioc/service/system/impl/UserServiceImpl.java

@@ -3,9 +3,11 @@ package com.sky.ioc.service.system.impl;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.sky.ioc.constant.Constant;
+import com.sky.ioc.entity.domain.carbon.CarbonNotice;
 import com.sky.ioc.entity.domain.system.Menus;
 import com.sky.ioc.entity.domain.system.Users;
 import com.sky.ioc.entity.result.system.LoginUserVo;
+import com.sky.ioc.mapper.job.TokenMapper;
 import com.sky.ioc.mapper.system.MenuMapper;
 import com.sky.ioc.mapper.system.UserMapper;
 import com.sky.ioc.service.system.UserService;
@@ -13,17 +15,25 @@ import com.sky.ioc.tool.JwtUtil;
 import com.sky.ioc.tool.Pbkdf2Sha256Digest;
 import com.sky.ioc.tool.RedisUtil;
 import com.sky.ioc.tool.ReturnMsg;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.http.HttpEntity;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.HttpMethod;
+import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Service;
+import org.springframework.web.client.RestTemplate;
 import org.springframework.web.context.request.RequestContextHolder;
 import org.springframework.web.context.request.ServletRequestAttributes;
 
 import javax.annotation.Resource;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
+import java.util.concurrent.ThreadLocalRandom;
 
 @Service
+@Slf4j
 public class UserServiceImpl implements UserService {
 
     @Autowired
@@ -35,6 +45,14 @@ public class UserServiceImpl implements UserService {
     @Autowired
     MenuMapper menuMapper;
 
+    @Autowired
+    TokenMapper tokenMapper;
+
+    @Value("${sky.dataIp}")
+    private String dataIp;
+
+    final static  String USER_URL="%s/api/hr/HR/staff/list";
+
     @Override
     public ReturnMsg updateCommonMenusByUserIdAndMenuId(long userId, String menuIDs) {
         userMapper.updateCommonMenusByUserIdAndMenuId(userId,menuIDs);
@@ -138,4 +156,53 @@ public class UserServiceImpl implements UserService {
         }
         return ReturnMsg.ok(users);
     }
+
+    @Override
+    public ReturnMsg getUserData() {
+        String url =   String.format(USER_URL,"http://"+dataIp)+"??pageNum=1&pageSize=1000";
+        Map<String,String> tokenMap = tokenMapper.getNewToken();
+        String token ="Bearer eyJhbGciOiJIUzUxMiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VyX2tleSI6IjUwZTU1NTRkLWJjYzYtNGRhMS1iZDUxLWFhNTc3YzU4YTFiNCIsInVzZXJuYW1lIjoiYWRtaW4ifQ.X10VPYJfeeRTka7OtqNPOGMpL4QkW3fR_TfCKXCmO-yXbIIrr_40fcwiVnpXfYVENo_BvXWEACRd-Y6nXsbkog";
+        if(tokenMap!=null){
+            token = "Bearer "+tokenMap.get("token");
+        }
+        // 创建一个请求头对象
+        HttpHeaders httpHeaders = new HttpHeaders();
+        // 设置参数
+        httpHeaders.set("authorization", token);
+        // 创建一个响应体对象
+        HttpEntity<String> httpEntity = new HttpEntity(httpHeaders);
+        // 3.创建RestTemplate
+        RestTemplate restTemplate = new RestTemplate();
+        // 发送GET请求
+        ResponseEntity<Map> responseEntity = restTemplate.exchange(url, HttpMethod.GET, httpEntity, Map.class);
+        // 获取响应对象里的 body 对象
+        Map<String, Object> body = responseEntity.getBody();
+        // 获取状态码
+        Integer code = (Integer)body.get("code");
+        // 获取响应信息
+        String message = (String)body.get("msg");
+        if(code==200){
+            ArrayList list = (ArrayList) body.get("rows");
+            if(list!=null&&list.size()>0){
+                userMapper.delete(new LambdaQueryWrapper<Users>().gt(Users::getId,2));
+                for (int i=0;i<list.size();i++){
+                    LinkedHashMap json = (LinkedHashMap) list.get(i);
+                    Users users = new Users();
+                    users.setId((Integer) json.get("id"));
+                    users.setUserName(String.valueOf(json.get("staffNo")));
+                    users.setName(String.valueOf(json.get("staffName")));
+                    users.setPhone(String.valueOf(json.get("phone")));
+                    users.setPassword(Pbkdf2Sha256Digest.encode("123456"));
+                    userMapper.insert(users);
+
+                }
+            }
+            return ReturnMsg.ok();
+
+        }else{
+            log.info("获取双碳通知数据:"+message);
+            return  ReturnMsg.fail(message);
+        }
+      //  return null;
+    }
 }

+ 2 - 2
src/main/java/com/sky/ioc/tool/FalseData.java

@@ -70,7 +70,7 @@ public class FalseData {
         CUISINELIST.add(new Cuisine("麻酱凤尾"));
         CUISINELIST.add(new Cuisine("麻酱凤尾"));*/
 
-        PARKINGLIST.add(new Parking("B201","李劲","北京电信规划设计院","8","0"));
+       /* PARKINGLIST.add(new Parking("B201","李劲","北京电信规划设计院","8","0"));
         PARKINGLIST.add(new Parking("B202","李良","北京电信规划设计院","8","0"));
         PARKINGLIST.add(new Parking("B203","宋明宇","北京电信规划设计院","8","0"));
         PARKINGLIST.add(new Parking("B204","陈涵亮","北京电信规划设计院","8","0"));
@@ -86,7 +86,7 @@ public class FalseData {
         PARKINGLIST.add(new Parking("B106","许鸿畴","北京电信规划设计院","8","0"));
         PARKINGLIST.add(new Parking("B107","徐瀚文","北京电信规划设计院","8","0"));
         PARKINGLIST.add(new Parking("B108","陈浩初","北京电信规划设计院","8","0"));
-        PARKINGLIST.add(new Parking("B109","程涵煦","北京电信规划设计院","8","0"));
+        PARKINGLIST.add(new Parking("B109","程涵煦","北京电信规划设计院","8","0"));*/