Browse Source

首页部分功能

yq 4 năm trước cách đây
mục cha
commit
02ff747ec2
23 tập tin đã thay đổi với 375 bổ sung64 xóa
  1. 7 13
      fiveep-controller/src/main/java/com/bizmatics/controller/web/UserController.java
  2. 12 0
      fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/AlarmPowerMapper.java
  3. 18 0
      fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/DeviceMapper.java
  4. 14 0
      fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/HtAnalogDataMapper.java
  5. 12 0
      fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/RtAnalogDataMapper.java
  6. 7 2
      fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/SiteMapper.java
  7. 19 0
      fiveep-persistence/src/main/resources/mapper/mysql/AlarmPowerMapper.xml
  8. 23 0
      fiveep-persistence/src/main/resources/mapper/mysql/DeviceMapper.xml
  9. 44 0
      fiveep-persistence/src/main/resources/mapper/mysql/HtAnalogDataMapper.xml
  10. 16 0
      fiveep-persistence/src/main/resources/mapper/mysql/RtAnalogDataMapper.xml
  11. 20 3
      fiveep-persistence/src/main/resources/mapper/mysql/SiteMapper.xml
  12. 1 9
      fiveep-service/src/main/java/com/bizmatics/service/DeviceService.java
  13. 6 4
      fiveep-service/src/main/java/com/bizmatics/service/HtAnalogDataService.java
  14. 6 0
      fiveep-service/src/main/java/com/bizmatics/service/UserService.java
  15. 4 2
      fiveep-service/src/main/java/com/bizmatics/service/impl/AlarmPowerServiceImpl.java
  16. 12 20
      fiveep-service/src/main/java/com/bizmatics/service/impl/DeviceServiceImpl.java
  17. 63 2
      fiveep-service/src/main/java/com/bizmatics/service/impl/HtAnalogDataServiceImpl.java
  18. 5 0
      fiveep-service/src/main/java/com/bizmatics/service/impl/RtAnalogDataServiceImpl.java
  19. 14 9
      fiveep-service/src/main/java/com/bizmatics/service/impl/SiteServiceImpl.java
  20. 19 0
      fiveep-service/src/main/java/com/bizmatics/service/impl/UserServiceImpl.java
  21. 9 0
      fiveep-service/src/main/java/com/bizmatics/service/util/SessionLocal.java
  22. 18 0
      fiveep-service/src/main/java/com/bizmatics/service/vo/CommonIcoVO.java
  23. 26 0
      fiveep-service/src/main/java/com/bizmatics/service/vo/HadCountVO.java

+ 7 - 13
fiveep-controller/src/main/java/com/bizmatics/controller/web/UserController.java

@@ -1,8 +1,11 @@
 package com.bizmatics.controller.web;
 
 
+import com.bizmatics.common.core.bean.ApiResult;
 import com.bizmatics.model.User;
+import com.bizmatics.service.UserService;
 import com.bizmatics.service.util.SessionLocal;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.stereotype.Controller;
@@ -23,21 +26,12 @@ import javax.servlet.http.HttpServletRequest;
 @RequestMapping("/user")
 public class UserController {
 
-
+    @Autowired
+    private UserService userService;
 
     @RequestMapping("/login")
-    public User login(@RequestParam String name, @RequestParam String password, HttpServletRequest request){
-        User user = new User();
-        user.setUserName(name);
-        user.setUserPassword(password);
-        //存储session
-        request.getSession().setAttribute( "sessionuser", user );
-        SessionLocal.setUser(user);
-        return user;
-    }
-    @RequestMapping("test")
-    public void test(){
-        System.out.println(1);
+    public ApiResult<User> login(@RequestParam String name, @RequestParam String password, HttpServletRequest request){
+        return ApiResult.success(userService.login(name, password, request));
     }
 }
 

+ 12 - 0
fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/AlarmPowerMapper.java

@@ -2,6 +2,7 @@ package com.bizmatics.persistence.mapper;
 
 import com.bizmatics.model.AlarmPower;
 import com.bizmatics.common.mvc.base.CrudMapper;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * <p>
@@ -13,4 +14,15 @@ import com.bizmatics.common.mvc.base.CrudMapper;
  */
 public interface AlarmPowerMapper extends CrudMapper<AlarmPower> {
 
+
+    /**
+     * 查询告警数量
+     * @param userId
+     * @param siteId
+     * @param handlingStatus
+     * @return
+     */
+    Integer selectCount(@Param("userId") Integer userId,
+                        @Param("siteId") Integer siteId,
+                        @Param("handlingStatus") Integer handlingStatus);
 }

+ 18 - 0
fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/DeviceMapper.java

@@ -2,6 +2,10 @@ package com.bizmatics.persistence.mapper;
 
 import com.bizmatics.model.Device;
 import com.bizmatics.common.mvc.base.CrudMapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.Date;
 
 /**
  * <p>
@@ -11,6 +15,20 @@ import com.bizmatics.common.mvc.base.CrudMapper;
  * @author ya
  * @since 2021-07-07
  */
+@Repository
 public interface DeviceMapper extends CrudMapper<Device> {
 
+
+    /**
+     * 根据条件查询总数
+     * @param userId
+     * @param siteId
+     * @param deviceStatus
+     * @return
+     */
+    int selectCount(@Param("userId") Integer userId,
+                    @Param("siteId") Integer siteId,
+                    @Param("deviceStatus") Integer deviceStatus,
+                    @Param("startTime") Date startTime,
+                    @Param("endTime") Date endTime);
 }

+ 14 - 0
fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/HtAnalogDataMapper.java

@@ -2,6 +2,10 @@ package com.bizmatics.persistence.mapper;
 
 import com.bizmatics.model.HtAnalogData;
 import com.bizmatics.common.mvc.base.CrudMapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
+
+import java.util.Date;
 
 /**
  * <p>
@@ -11,6 +15,16 @@ import com.bizmatics.common.mvc.base.CrudMapper;
  * @author ya
  * @since 2021-07-07
  */
+@Repository
 public interface HtAnalogDataMapper extends CrudMapper<HtAnalogData> {
 
+
+    HtAnalogData selectByEndTime(@Param("endTime") Date endTime,
+                                 @Param("siteId")Integer siteId,
+                                 @Param("userId")Integer userId);
+
+
+    HtAnalogData selectByStartTime(@Param("startTime") Date startTime,
+                                   @Param("siteId")Integer siteId,
+                                   @Param("userId")Integer userId);
 }

+ 12 - 0
fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/RtAnalogDataMapper.java

@@ -2,6 +2,8 @@ package com.bizmatics.persistence.mapper;
 
 import com.bizmatics.model.RtAnalogData;
 import com.bizmatics.common.mvc.base.CrudMapper;
+import org.apache.ibatis.annotations.Param;
+import org.springframework.stereotype.Repository;
 
 /**
  * <p>
@@ -11,6 +13,16 @@ import com.bizmatics.common.mvc.base.CrudMapper;
  * @author ya
  * @since 2021-07-07
  */
+@Repository
 public interface RtAnalogDataMapper extends CrudMapper<RtAnalogData> {
 
+
+    /**
+     * 查询电力总负荷
+     * @param userId
+     * @param siteId
+     * @return
+     */
+    Double selectTotalLoad(@Param("userId") Integer userId,
+                        @Param("siteId") Integer siteId);
 }

+ 7 - 2
fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/SiteMapper.java

@@ -4,6 +4,8 @@ import com.bizmatics.model.Site;
 import com.bizmatics.common.mvc.base.CrudMapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 /**
  * <p>
  *  Mapper 接口
@@ -16,6 +18,9 @@ public interface SiteMapper extends CrudMapper<Site> {
 
 
 
-    int selectCount(@Param("siteStatus") Integer siteStatus,
-                    @Param("siteId") Integer siteId);
+    int selectCount(@Param("userId") Integer userId,
+                    @Param("siteId") Integer siteId,
+                    @Param("siteStatus") Integer siteStatus);
+
+    List<Site> list(@Param("userId") Integer userId);
 }

+ 19 - 0
fiveep-persistence/src/main/resources/mapper/mysql/AlarmPowerMapper.xml

@@ -19,5 +19,24 @@
         <result column="handler_phone" property="handlerPhone" />
         <result column="handling_status" property="handlingStatus" />
     </resultMap>
+    <select id="selectCount" resultType="java.lang.Integer">
+        select count(1)
+        from user_site as us
+        inner join device as d
+        on us.site_id = d.site_id
+        inner join alarm_power as ap
+        on d.device_code = ap.device_code
+        <where>
+            <if test="userId != null and userId != 0">
+                us.user_id = #{userId}
+            </if>
+            <if test="siteId != null and siteId != 0">
+                us.site_id = #{siteId}
+            </if>
+            <if test="handlingStatus != null">
+                ap.handling_status = #{handlingStatus}
+            </if>
+        </where>
+    </select>
 
 </mapper>

+ 23 - 0
fiveep-persistence/src/main/resources/mapper/mysql/DeviceMapper.xml

@@ -14,5 +14,28 @@
         <result column="creator" property="creator" />
         <result column="enable" property="enable" />
     </resultMap>
+    <select id="selectCount" resultType="java.lang.Integer">
+        select count(1)
+        from user_site as us
+        inner join device_status as ds
+        on us.site_id = ds.site_id
+        <where>
+            <if test="userId != null and userId != 0">
+                us.user_id = #{userId}
+            </if>
+            <if test="siteId != null and siteId != 0">
+                us.site_id = #{siteId}
+            </if>
+            <if test="deviceStatus != null">
+                ds.device_status = #{deviceStatus}
+            </if>
+            <if test="startTime != null">
+                ds.status_time >= #{startTime}
+            </if>
+            <if test="endTime != null">
+                ds.status_time &lt;= #{endTime}
+            </if>
+        </where>
+    </select>
 
 </mapper>

+ 44 - 0
fiveep-persistence/src/main/resources/mapper/mysql/HtAnalogDataMapper.xml

@@ -69,5 +69,49 @@
         <result column="freezingTime" property="freezingTime" />
         <result column="dataTime" property="dataTime" />
     </resultMap>
+    <select id="selectByEndTime" resultType="com.bizmatics.model.HtAnalogData">
+        select had.id,deviceName,Busot,COS,COSa,COSb,COSc,Demand,DevResetTimes,DeviceTemp,Epn,Epn1,Epn2,Epn3,Epn4,Epp,
+        Epp1,Epp2,Epp3,Epp4,Eqn,Eqp,F,I0,I2,IHa,IHb,IHc,Ia,Ib,Ic,Ir,LastDayMD,LastDayMDt,P,Pa,Pb,Pc,Q,Qa,Qb,Qc,SignalIntensity,
+        T1,T2,T3,T4,THDUa,THDUb,THDUc,Ua,Uab,Ub,Ubc,UblU0,UblU2,Uc,Uca,Udt,Ul,Upt,Ust,freezingTime,dataTime
+        from user_site as us
+        inner join device as d
+        on us.site_id = d.site_id
+        inner join ht_analog_data as had
+        on d.device_code = had.deviceName
+        <where>
+            <if test="userId != null and userId != 0">
+                us.user_id = #{userId}
+            </if>
+            <if test="siteId != null and siteId != 0">
+                us.site_id = #{siteId}
+            </if>
+            <if test="endTime != null">
+                had.dataTime &lt;= #{endTime}
+            </if>
+        </where>
+        order dataTime desc limit 0,1
+    </select>
+    <select id="selectByStartTime" resultType="com.bizmatics.model.HtAnalogData">
+        select had.id,deviceName,Busot,COS,COSa,COSb,COSc,Demand,DevResetTimes,DeviceTemp,Epn,Epn1,Epn2,Epn3,Epn4,Epp,
+        Epp1,Epp2,Epp3,Epp4,Eqn,Eqp,F,I0,I2,IHa,IHb,IHc,Ia,Ib,Ic,Ir,LastDayMD,LastDayMDt,P,Pa,Pb,Pc,Q,Qa,Qb,Qc,SignalIntensity,
+        T1,T2,T3,T4,THDUa,THDUb,THDUc,Ua,Uab,Ub,Ubc,UblU0,UblU2,Uc,Uca,Udt,Ul,Upt,Ust,freezingTime,dataTime
+        from user_site as us
+        inner join device as d
+        on us.site_id = d.site_id
+        inner join ht_analog_data as had
+        on d.device_code = had.deviceName
+        <where>
+            <if test="userId != null and userId != 0">
+                us.user_id = #{userId}
+            </if>
+            <if test="siteId != null and siteId != 0">
+                us.site_id = #{siteId}
+            </if>
+            <if test="startTime != null">
+                had.dataTime >= #{startTime}
+            </if>
+        </where>
+        order dataTime asc limit 0,1
+    </select>
 
 </mapper>

+ 16 - 0
fiveep-persistence/src/main/resources/mapper/mysql/RtAnalogDataMapper.xml

@@ -69,5 +69,21 @@
         <result column="freezingTime" property="freezingTime" />
         <result column="dataTime" property="dataTime" />
     </resultMap>
+    <select id="selectTotalLoad" resultType="java.lang.Double">
+        select COALESCE(SUM(P),0)
+        from user_site as us
+        inner join device as d
+        on us.site_id = d.site_id
+        inner join rt_analog_data as rad
+        on d.device_code = rad.deviceName
+        <where>
+            <if test="userId != null and userId != 0">
+                us.user_id = #{userId}
+            </if>
+            <if test="siteId != null and siteId != 0">
+                us.site_id = #{siteId}
+            </if>
+        </where>
+    </select>
 
 </mapper>

+ 20 - 3
fiveep-persistence/src/main/resources/mapper/mysql/SiteMapper.xml

@@ -21,13 +21,30 @@
     </resultMap>
     <select id="selectCount" resultType="java.lang.Integer">
         select count(1)
-        from site as s inner join device_status as ds on s.id = ds.site_id
+        from user_site as us
+        inner join device_status as ds
+        on us.site_Id = ds.site_id
         <where>
+            <if test="userId != null and userId != 0">
+                us.user_id = #{userId}
+            </if>
+            <if test="siteId != null and siteId != 0">
+                us.site_id = #{siteId}
+            </if>
             <if test="siteStatus != null">
                 ds.device_status = #{siteStatus}
             </if>
-            <if test="siteId != null">
-                s.id = #{siteId}
+        </where>
+    </select>
+    <select id="list" resultType="com.bizmatics.model.Site">
+        select s.id,s.site_name,s.site_address,s.company_code,s.user_name,s.phone,s.station_area_id,s.route_id,
+        s.installed_capacity,s.rheological_change,s.longitude,s.latitude,s.region,s.create_time,s.creator,s.enable
+        from user_site as us
+        inner join site as s
+        on us.site_id = s.id
+        <where>
+            <if test="userId != null and userId != 0">
+                us.user_id = #{userId}
             </if>
         </where>
     </select>

+ 1 - 9
fiveep-service/src/main/java/com/bizmatics/service/DeviceService.java

@@ -18,17 +18,9 @@ import java.util.Date;
  */
 public interface DeviceService extends CrudService<Device> {
 
-
-    /**
-     * 查询设备数量
-     * @param siteId
-     * @return
-     */
-    Integer selectCount(Integer siteId);
-
     /**
      * 查询不同状态设备数量
      * @return
      */
-    SiteCountVO selectDeviceCount(Data startTime, Date endTime);
+    SiteCountVO selectDeviceCount(Date startTime, Date endTime);
 }

+ 6 - 4
fiveep-service/src/main/java/com/bizmatics/service/HtAnalogDataService.java

@@ -2,6 +2,8 @@ package com.bizmatics.service;
 
 import com.bizmatics.model.HtAnalogData;
 import com.bizmatics.common.mvc.base.CrudService;
+import com.bizmatics.service.vo.CommonIcoVO;
+import com.bizmatics.service.vo.HadCountVO;
 
 import java.util.Date;
 import java.util.List;
@@ -18,11 +20,11 @@ public interface HtAnalogDataService extends CrudService<HtAnalogData> {
 
 
     /**
-     * 今日/昨日的用电量
-     * @param startTime
-     * @param endTime
+     * 日/月/年用电量
      * @return
      */
-    List<List<Integer>> selectCountByDate(Date startTime,Date endTime);
+    HadCountVO selectCount();
+
+    List<CommonIcoVO> selectTrendByDate(Date startTime);
 
 }

+ 6 - 0
fiveep-service/src/main/java/com/bizmatics/service/UserService.java

@@ -3,6 +3,8 @@ package com.bizmatics.service;
 import com.bizmatics.model.User;
 import com.bizmatics.common.mvc.base.CrudService;
 
+import javax.servlet.http.HttpServletRequest;
+
 /**
  * <p>
  *  服务类
@@ -13,4 +15,8 @@ import com.bizmatics.common.mvc.base.CrudService;
  */
 public interface UserService extends CrudService<User> {
 
+
+
+    User login(String name, String password, HttpServletRequest request);
+
 }

+ 4 - 2
fiveep-service/src/main/java/com/bizmatics/service/impl/AlarmPowerServiceImpl.java

@@ -3,9 +3,11 @@ package com.bizmatics.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.bizmatics.model.AlarmPower;
+import com.bizmatics.model.User;
 import com.bizmatics.persistence.mapper.AlarmPowerMapper;
 import com.bizmatics.service.AlarmPowerService;
 import com.bizmatics.common.mvc.base.AbstractCrudService;
+import com.bizmatics.service.util.SessionLocal;
 import com.bizmatics.service.vo.ApCountVO;
 import org.checkerframework.checker.units.qual.A;
 import org.springframework.stereotype.Service;
@@ -23,10 +25,10 @@ public class AlarmPowerServiceImpl extends AbstractCrudService<AlarmPowerMapper,
 
     @Override
     public ApCountVO selectCount() {
-        Integer count = baseMapper.selectCount(null);
+        Integer count = baseMapper.selectCount(SessionLocal.getUserId(),null,null);
         ApCountVO apCountVo = new ApCountVO();
         apCountVo.setCount(count);
-        apCountVo.setUnCount(baseMapper.selectCount(Wrappers.lambdaQuery(AlarmPower.class).eq(AlarmPower::getHandlingStatus, 0)));
+        apCountVo.setUnCount(baseMapper.selectCount(SessionLocal.getUserId(),null,0));
         return apCountVo;
     }
 }

+ 12 - 20
fiveep-service/src/main/java/com/bizmatics/service/impl/DeviceServiceImpl.java

@@ -8,6 +8,7 @@ import com.bizmatics.persistence.mapper.DeviceStatusMapper;
 import com.bizmatics.service.DeviceService;
 import com.bizmatics.common.mvc.base.AbstractCrudService;
 import com.bizmatics.service.enums.DeviceStatusCode;
+import com.bizmatics.service.util.SessionLocal;
 import com.bizmatics.service.vo.SiteCountVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -26,29 +27,20 @@ import java.util.Date;
 @Service
 public class DeviceServiceImpl extends AbstractCrudService<DeviceMapper, Device> implements DeviceService {
 
-    @Autowired
-    private DeviceStatusMapper deviceStatusMapper;
-    @Override
-    public Integer selectCount(Integer siteId) {
-        return baseMapper.selectCount(Wrappers.lambdaQuery(Device.class).eq(null != siteId && 0 != siteId,Device::getSiteId,siteId));
-    }
 
     @Override
-    public SiteCountVO selectDeviceCount(Data startTime, Date endTime) {
+    public SiteCountVO selectDeviceCount(Date startTime, Date endTime) {
         SiteCountVO siteCountVO = new SiteCountVO();
-        siteCountVO.setNormalCount(deviceStatusMapper
-                .selectCount(
-                        Wrappers.lambdaQuery(DeviceStatus.class).eq(DeviceStatus::getDeviceStatus,DeviceStatusCode.NORMAL.getValue()).between(DeviceStatus::getStatusTime,startTime,endTime)));
-        siteCountVO.setOffLineCount(deviceStatusMapper
-                .selectCount(
-                        Wrappers.lambdaQuery(DeviceStatus.class).eq(DeviceStatus::getDeviceStatus,DeviceStatusCode.OFFLINE.getValue()).between(DeviceStatus::getStatusTime,startTime,endTime)));
-        siteCountVO.setDeviceCount(deviceStatusMapper
-                .selectCount(
-                        Wrappers.lambdaQuery(DeviceStatus.class).eq(DeviceStatus::getDeviceStatus,DeviceStatusCode.DEVICE.getValue()).between(DeviceStatus::getStatusTime,startTime,endTime)));
-        siteCountVO.setFaultCount(deviceStatusMapper
-                .selectCount(
-                        Wrappers.lambdaQuery(DeviceStatus.class).eq(DeviceStatus::getDeviceStatus,DeviceStatusCode.FAULT.getValue()).between(DeviceStatus::getStatusTime,startTime,endTime)));
-        siteCountVO.setCount(selectCount(null));
+        Integer userId = SessionLocal.getUserId();
+        siteCountVO.setNormalCount(baseMapper
+                .selectCount(userId,null,DeviceStatusCode.NORMAL.getValue(),startTime,endTime));
+        siteCountVO.setOffLineCount(baseMapper
+                .selectCount(userId,null,DeviceStatusCode.OFFLINE.getValue(),startTime,endTime));
+        siteCountVO.setDeviceCount(baseMapper
+                .selectCount(userId,null,DeviceStatusCode.DEVICE.getValue(),startTime,endTime));
+        siteCountVO.setFaultCount(baseMapper
+                .selectCount(userId,null,DeviceStatusCode.FAULT.getValue(),startTime,endTime));
+        siteCountVO.setCount(siteCountVO.getNormalCount()+siteCountVO.getOffLineCount()+siteCountVO.getDeviceCount()+siteCountVO.getFaultCount());
         return siteCountVO;
     }
 }

+ 63 - 2
fiveep-service/src/main/java/com/bizmatics/service/impl/HtAnalogDataServiceImpl.java

@@ -1,11 +1,19 @@
 package com.bizmatics.service.impl;
 
+import com.bizmatics.common.core.util.DateUtils;
 import com.bizmatics.model.HtAnalogData;
 import com.bizmatics.persistence.mapper.HtAnalogDataMapper;
 import com.bizmatics.service.HtAnalogDataService;
 import com.bizmatics.common.mvc.base.AbstractCrudService;
+import com.bizmatics.service.util.SessionLocal;
+import com.bizmatics.service.vo.CommonIcoVO;
+import com.bizmatics.service.vo.HadCountVO;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import javax.xml.crypto.Data;
+import java.util.ArrayList;
+import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
 
@@ -20,9 +28,62 @@ import java.util.List;
 @Service
 public class HtAnalogDataServiceImpl extends AbstractCrudService<HtAnalogDataMapper, HtAnalogData> implements HtAnalogDataService {
 
+    @Autowired
+    private HtAnalogDataMapper htAnalogDataMapper;
+
     @Override
-    public List<List<Integer>> selectCountByDate(Date startTime, Date endTime) {
+    public HadCountVO selectCount() {
+        Integer userId = SessionLocal.getUserId();
+        Date date = new Date();
+        //日用电量
+        Date firstDayOfDate = DateUtils.getDayStartTime(date);
+        Date lastDayOfDate = DateUtils.getDayEndTime(date);
+        HtAnalogData startDateHad = htAnalogDataMapper.selectByStartTime(firstDayOfDate, null, userId);
+        HtAnalogData endDateHad = htAnalogDataMapper.selectByEndTime(lastDayOfDate, null, userId);
+        //月用电量
+        Date firstDayOfMonth = DateUtils.getFirstDayOfMonth(date);
+        Date lastDayOfMonth = DateUtils.getLastDayOfMonth(date);
+        HtAnalogData startMonthHad = htAnalogDataMapper.selectByStartTime(firstDayOfMonth, null, userId);
+        HtAnalogData endMonthHad = htAnalogDataMapper.selectByEndTime(lastDayOfMonth, null, userId);
+        //年用电量
+        Date firstDayOfYear = DateUtils.getBeginDayOfYear(date);
+        Date lastDayOfYear= DateUtils.getEndDayOfYear(date);
+        HtAnalogData startYearHad = htAnalogDataMapper.selectByStartTime(firstDayOfYear, null, userId);
+        HtAnalogData endYearHad = htAnalogDataMapper.selectByEndTime(lastDayOfYear, null, userId);
+
+        HadCountVO hadCountVo = new HadCountVO();
+        hadCountVo.setDayCount(endDateHad.getEpp() - startDateHad.getEpp());
+        hadCountVo.setDayCount(endMonthHad.getEpp() - startMonthHad.getEpp());
+        hadCountVo.setDayCount(endYearHad.getEpp() - startYearHad.getEpp());
+        return hadCountVo;
+    }
 
-        return null;
+    @Override
+    public List<CommonIcoVO> selectTrendByDate(Date startTime) {
+        List<CommonIcoVO> list = new ArrayList<>();
+        CommonIcoVO commonIcoVoToady = new CommonIcoVO();
+        commonIcoVoToady.setName("today");
+        commonIcoVoToady.setList(getByDate(startTime));
+        CommonIcoVO commonIcoVoYesterday = new CommonIcoVO();
+        commonIcoVoYesterday.setName("yesterday");
+        commonIcoVoYesterday.setList(getByDate(DateUtils.addDays(startTime,-1)));
+        list.add(commonIcoVoToady);
+        list.add(commonIcoVoYesterday);
+        return list;
     }
+
+    public List<Object> getByDate(Date date){
+        List<Object> objects = new ArrayList<>();
+        objects.add(0);
+        for (int i = 2; i < 24 ; i+=2) {
+            //结束时间
+            Date endTime = DateUtils.addHours(date, i);
+            HtAnalogData endHad = htAnalogDataMapper.selectByEndTime(endTime, null, SessionLocal.getUserId());
+            HtAnalogData startHad = htAnalogDataMapper.selectByStartTime(date, null, SessionLocal.getUserId());
+            objects.add(endHad.getEpp() - startHad.getEpp());
+            date = endTime;
+        }
+        return objects;
+    }
+
 }

+ 5 - 0
fiveep-service/src/main/java/com/bizmatics/service/impl/RtAnalogDataServiceImpl.java

@@ -4,6 +4,8 @@ import com.bizmatics.model.RtAnalogData;
 import com.bizmatics.persistence.mapper.RtAnalogDataMapper;
 import com.bizmatics.service.RtAnalogDataService;
 import com.bizmatics.common.mvc.base.AbstractCrudService;
+import org.checkerframework.checker.units.qual.A;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 /**
@@ -17,4 +19,7 @@ import org.springframework.stereotype.Service;
 @Service
 public class RtAnalogDataServiceImpl extends AbstractCrudService<RtAnalogDataMapper, RtAnalogData> implements RtAnalogDataService {
 
+
+    @Autowired
+    private RtAnalogDataMapper rtAnalogDataMapper;
 }

+ 14 - 9
fiveep-service/src/main/java/com/bizmatics/service/impl/SiteServiceImpl.java

@@ -5,11 +5,13 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.bizmatics.common.core.util.BeanMapperUtils;
 import com.bizmatics.model.Personnel;
 import com.bizmatics.model.Site;
+import com.bizmatics.persistence.mapper.DeviceMapper;
 import com.bizmatics.persistence.mapper.SiteMapper;
 import com.bizmatics.service.DeviceService;
 import com.bizmatics.service.SiteService;
 import com.bizmatics.common.mvc.base.AbstractCrudService;
 import com.bizmatics.service.enums.DeviceStatusCode;
+import com.bizmatics.service.util.SessionLocal;
 import com.bizmatics.service.vo.SiteCountVO;
 import com.bizmatics.service.vo.SiteVO;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -32,13 +34,15 @@ public class SiteServiceImpl extends AbstractCrudService<SiteMapper, Site> imple
 
     @Autowired
     private DeviceService deviceService;
+    @Autowired
+    private DeviceMapper deviceMapper;
     @Override
     public SiteCountVO selectCount() {
         SiteCountVO siteCountVo = new SiteCountVO();
-        siteCountVo.setNormalCount(baseMapper.selectCount(DeviceStatusCode.NORMAL.getValue(),null));
-        siteCountVo.setOffLineCount(baseMapper.selectCount(DeviceStatusCode.OFFLINE.getValue(),null));
-        siteCountVo.setDeviceCount(baseMapper.selectCount(DeviceStatusCode.DEVICE.getValue(),null));
-        siteCountVo.setFaultCount(baseMapper.selectCount(DeviceStatusCode.FAULT.getValue(),null));
+        siteCountVo.setNormalCount(baseMapper.selectCount(SessionLocal.getUserId(),null,DeviceStatusCode.NORMAL.getValue()));
+        siteCountVo.setOffLineCount(baseMapper.selectCount(SessionLocal.getUserId(),null,DeviceStatusCode.OFFLINE.getValue()));
+        siteCountVo.setDeviceCount(baseMapper.selectCount(SessionLocal.getUserId(),null,DeviceStatusCode.DEVICE.getValue()));
+        siteCountVo.setFaultCount(baseMapper.selectCount(SessionLocal.getUserId(),null,DeviceStatusCode.FAULT.getValue()));
         siteCountVo.setCount(siteCountVo.getNormalCount()+siteCountVo.getOffLineCount()+siteCountVo.getDeviceCount()+siteCountVo.getFaultCount());
         return siteCountVo;
     }
@@ -46,13 +50,14 @@ public class SiteServiceImpl extends AbstractCrudService<SiteMapper, Site> imple
     @Override
     public List<SiteVO> list(String name) {
         List<SiteVO> list = new ArrayList<>();
-        List<Site> sites = baseMapper.selectList(Wrappers.lambdaQuery(Site.class).like(Site::getSiteName, name));
+        List<Site> sites = baseMapper.list(SessionLocal.getUserId());
+        Integer userId = SessionLocal.getUserId();
         for (Site site:sites) {
             SiteVO siteVo = BeanMapperUtils.map(site, SiteVO.class);
-            siteVo.setDeviceCount(deviceService.selectCount(siteVo.getId()));
-            int deviceCount = baseMapper.selectCount(DeviceStatusCode.DEVICE.getValue(), siteVo.getId());
-            int offLineCount = baseMapper.selectCount(DeviceStatusCode.OFFLINE.getValue(), siteVo.getId());
-            int faultCount = baseMapper.selectCount(DeviceStatusCode.FAULT.getValue(), siteVo.getId());
+            siteVo.setDeviceCount(deviceMapper.selectCount(userId,siteVo.getId(),null,null,null));
+            int deviceCount = baseMapper.selectCount(userId,siteVo.getId(),DeviceStatusCode.DEVICE.getValue());
+            int offLineCount = baseMapper.selectCount(userId,siteVo.getId(),DeviceStatusCode.OFFLINE.getValue());
+            int faultCount = baseMapper.selectCount(userId,siteVo.getId(),DeviceStatusCode.FAULT.getValue());
             siteVo.setAlarmPowerCount(deviceCount);
             if (deviceCount > 0){
                 siteVo.setStatus(DeviceStatusCode.FAULT.getDescribe());

+ 19 - 0
fiveep-service/src/main/java/com/bizmatics/service/impl/UserServiceImpl.java

@@ -1,11 +1,18 @@
 package com.bizmatics.service.impl;
 
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.bizmatics.common.core.exception.BusinessException;
 import com.bizmatics.model.User;
 import com.bizmatics.persistence.mapper.UserMapper;
 import com.bizmatics.service.UserService;
 import com.bizmatics.common.mvc.base.AbstractCrudService;
+import com.bizmatics.service.util.SessionLocal;
 import org.springframework.stereotype.Service;
 
+import javax.servlet.http.HttpServletRequest;
+import java.sql.Wrapper;
+import java.util.Optional;
+
 /**
  * <p>
  *  服务实现类
@@ -17,4 +24,16 @@ import org.springframework.stereotype.Service;
 @Service
 public class UserServiceImpl extends AbstractCrudService<UserMapper, User> implements UserService {
 
+    @Override
+    public User login(String name, String password, HttpServletRequest request) {
+        User user = baseMapper.selectOne(Wrappers.lambdaQuery(User.class)
+                .eq(User::getUserName, name)
+                .eq(User::getUserPassword, password));
+        //存储session
+        request.getSession().setAttribute( "sessionuser", user );
+        //存储ThreadLocal
+        SessionLocal.setUser( user );
+        return Optional.ofNullable(user).orElseThrow(() -> new BusinessException("用户信息为空"));
+
+    }
 }

+ 9 - 0
fiveep-service/src/main/java/com/bizmatics/service/util/SessionLocal.java

@@ -1,8 +1,13 @@
 package com.bizmatics.service.util;
 
+import com.bizmatics.common.core.exception.BusinessException;
 import com.bizmatics.model.User;
 import lombok.extern.log4j.Log4j2;
 
+import java.util.Optional;
+
+import static com.bizmatics.common.core.exception.BusinessErrorCode.BIZ_LACK_NECESSARY_PARAM_ERROR;
+
 /**
  * @author yq
  * @date 2021/7/8 10:34
@@ -30,4 +35,8 @@ public class SessionLocal {
         log.info( "当前线程:" + Thread.currentThread().getName() );
         return local.get();
     }
+
+    public static Integer getUserId(){
+       return Optional.ofNullable(getUser()).map(user -> getUserId()).orElseThrow(() ->new BusinessException(BIZ_LACK_NECESSARY_PARAM_ERROR,"用户未登录"));
+    }
 }

+ 18 - 0
fiveep-service/src/main/java/com/bizmatics/service/vo/CommonIcoVO.java

@@ -0,0 +1,18 @@
+package com.bizmatics.service.vo;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author yq
+ * @date 2021/7/8 14:30
+ */
+@Data
+public class CommonIcoVO {
+
+
+    private String name;
+
+    private List<Object> list;
+}

+ 26 - 0
fiveep-service/src/main/java/com/bizmatics/service/vo/HadCountVO.java

@@ -0,0 +1,26 @@
+package com.bizmatics.service.vo;
+
+import lombok.Data;
+
+/**
+ * @author yq
+ * @date 2021/7/8 14:45
+ */
+@Data
+public class HadCountVO {
+
+    /**
+     * 日用电量
+     */
+    private Double dayCount;
+
+    /**
+     * 月用电量
+     */
+    private Double monthCount;
+
+    /**
+     * 年用电量
+     */
+    private Double yearCount;
+}