jichaobo 3 yıl önce
ebeveyn
işleme
6cd01c8e8a

+ 20 - 0
fiveep-model/src/main/java/com/bizmatics/model/PlatformArea.java

@@ -3,6 +3,8 @@ package com.bizmatics.model;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import java.io.Serializable;
+import java.util.Date;
+
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
@@ -48,5 +50,23 @@ public class PlatformArea implements Serializable {
      */
     private Integer enable;
 
+    /**
+     * 添加用户
+     */
+    private String creator;
+
+    /**
+     * 租户ID
+     */
+    private Integer tenantId;
+
+    /**
+     * 添加时间
+     */
+    private Date createTime;
+
+
+
+
 
 }

+ 16 - 0
fiveep-model/src/main/java/com/bizmatics/model/vo/PlatformAreaVo.java

@@ -8,6 +8,7 @@ import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 
 import java.io.Serializable;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -66,4 +67,19 @@ public class PlatformAreaVo implements Serializable {
      */
     private List<Site> site;
 
+    /**
+     * 添加用户
+     */
+    private String creator;
+
+    /**
+     * 租户ID
+     */
+    private Integer tenantId;
+
+    /**
+     * 添加时间
+     */
+    private Date createTime;
+
 }

+ 2 - 1
fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/DeviceMapper.java

@@ -51,7 +51,8 @@ public interface DeviceMapper extends CrudMapper<Device> {
 
     List<CorrespondDeviceVO> CorrespondDeviceList(@Param("deviceName") String deviceName,
                                                   @Param("startCurrent") Integer startCurrent,
-                                                  @Param("size") Integer size);
+                                                  @Param("size") Integer size,
+                                                  @Param("tenantId") Integer tenantId);
 
 
     List<DeviceAnalogVariableList> deviceAnalogVariableList(@Param("siteId") Integer siteId);

+ 8 - 3
fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/PlatformAreaMapper.java

@@ -3,7 +3,6 @@ package com.bizmatics.persistence.mapper;
 import com.bizmatics.common.mvc.base.CrudMapper;
 import com.bizmatics.model.PlatformArea;
 import com.bizmatics.model.vo.PlatformAreaVo;
-import com.bizmatics.model.vo.SiteDeviceList;
 import com.bizmatics.model.vo.SiteListVo;
 import org.apache.ibatis.annotations.Param;
 
@@ -22,9 +21,15 @@ public interface PlatformAreaMapper extends CrudMapper<PlatformArea> {
     List<PlatformAreaVo> siteCount(@Param("platformAreaName") String platformAreaName,
                                    @Param("startCurrent") Integer startCurrent,
                                    @Param("size") Integer size,
-                                   @Param("userId") Long userId);
+                                   @Param("tenantId") Integer tenantId);
 
-    List<PlatformAreaVo> deviceCount(@Param("platformAreaName") String platformAreaName);
+    int platformSiteCount(@Param("platformAreaName") String platformAreaName,
+                          @Param("startCurrent") Integer startCurrent,
+                          @Param("size") Integer size,
+                          @Param("tenantId") Integer tenantId);
+
+    List<PlatformAreaVo> deviceCount(@Param("platformAreaName") String platformAreaName,
+                                     @Param("tenantId") Integer tenantId);
 
     List<SiteListVo> deviceList(@Param("stationAreaId") int stationAreaId);
 

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

@@ -116,6 +116,7 @@
         JOIN site AS c ON a.site_id = c.id
         <where>
             a.enable =1
+            and c.tenant_id=#{tenantId}
             <if test="deviceName != null and deviceName != ''">
                 and a.device_name LIKE CONCAT(CONCAT('%', #{deviceName}), '%')
             </if>

+ 45 - 10
fiveep-persistence/src/main/resources/mapper/mysql/PlatformAreaMapper.xml

@@ -9,17 +9,19 @@
         <result column="platform_area_address" property="platformAreaAddress"/>
         <result column="platform_area_code" property="platformAreaCode"/>
         <result column="enable" property="enable"/>
+        <result column="creator" property="creator"/>
+        <result column="tenant_id" property="tenantId"/>
+        <result column="create_time" property="createTime"/>
     </resultMap>
     <select id="siteCount" resultType="com.bizmatics.model.vo.PlatformAreaVo">
         SELECT
-        s.*,IFNULL(siteCount,0) as siteCount
+        p.*,
+        IFNULL(siteCount, 0) AS siteCount
         FROM
-        platform_area AS s
-        join site as j on  j.station_area_id = s.id
-        join user_site as i on j.id=i.site_id
+        platform_area AS p
         LEFT JOIN (
         SELECT
-        a.id as idone,COUNT(b.id) AS siteCount
+        a.*, COUNT(1) AS siteCount
         FROM
         platform_area AS a
         JOIN site AS b ON a.id = b.station_area_id
@@ -27,15 +29,47 @@
             and b.enable = 1
         </where>
         GROUP BY a.id desc
-        ) AS o ON s.id = o.idone
+        )  AS ps ON p.id = ps.id
         <where>
-            s.enable = 1
-            and i.user_id=#{userId}
+            p.enable = 1
+            and p.tenant_id=#{tenantId}
             <if test="platformAreaName != null and platformAreaName != ''">
-                and s.platform_area_name LIKE CONCAT(CONCAT('%', #{platformAreaName}), '%')
+                and p.platform_area_name LIKE CONCAT(CONCAT('%', #{platformAreaName}), '%')
             </if>
         </where>
-        order by s.id desc
+        ORDER BY
+        p.id DESC
+        <if test="startCurrent != null and size !=0">
+            LIMIT #{startCurrent},
+            #{size}
+        </if>
+    </select>
+
+    <select id="platformSiteCount" resultType="java.lang.Integer">
+        SELECT
+        count(1)
+        FROM
+        platform_area AS p
+        LEFT JOIN (
+        SELECT
+        a.*, COUNT(1) AS siteCount
+        FROM
+        platform_area AS a
+        JOIN site AS b ON a.id = b.station_area_id
+        <where>
+            and b.enable = 1
+        </where>
+        GROUP BY a.id desc
+        )  AS ps ON p.id = ps.id
+        <where>
+            p.enable = 1
+            and p.tenant_id=#{tenantId}
+            <if test="platformAreaName != null and platformAreaName != ''">
+                and p.platform_area_name LIKE CONCAT(CONCAT('%', #{platformAreaName}), '%')
+            </if>
+        </where>
+        ORDER BY
+        p.id DESC
         <if test="startCurrent != null and size !=0">
             LIMIT #{startCurrent},
             #{size}
@@ -54,6 +88,7 @@
             a.enable = 1
             and b.enable = 1
             and c.enable = 1
+            and a.tenant_id=#{tenantId}
             <if test="platformAreaName != null and platformAreaName != ''">
                 and a.platform_area_name LIKE CONCAT(CONCAT('%', #{platformAreaName}), '%')
             </if>

+ 14 - 3
fiveep-service/src/main/java/com/bizmatics/service/impl/DeviceServiceImpl.java

@@ -19,6 +19,7 @@ import com.bizmatics.model.*;
 import com.bizmatics.model.system.SysUser;
 import com.bizmatics.model.vo.*;
 import com.bizmatics.persistence.mapper.DeviceMapper;
+import com.bizmatics.persistence.mapper.system.SysUserMapper;
 import com.bizmatics.service.DeviceAnalogVariableListService;
 import com.bizmatics.service.DeviceAttributeService;
 import com.bizmatics.service.DeviceService;
@@ -63,6 +64,8 @@ public class DeviceServiceImpl extends AbstractCrudService<DeviceMapper, Device>
     private DeviceStatusService deviceStatusService;
     @Autowired
     private DeviceAttributeService deviceAttributeService;
+    @Autowired
+    private SysUserMapper userMapper;
 
     @Override
     public DeviceCountVO selectDeviceCount(Date startTime, Date endTime) {
@@ -194,13 +197,17 @@ public class DeviceServiceImpl extends AbstractCrudService<DeviceMapper, Device>
 
     @Override
     public CommonPage<CorrespondDeviceVO> correspondDeviceList(String deviceName, int size, int current) {
-        List<CorrespondDeviceVO> correspondDeviceListOne = baseMapper.CorrespondDeviceList(deviceName, null, null);
+        List<SysUser> tenantDaya = userMapper.getTenantId(SecurityUtils.getLoginUser().getUser().getUserId());
+        if (tenantDaya.size()<0) {
+            throw new BusinessException("无此租户,请联系管理员");
+        }
+        List<CorrespondDeviceVO> correspondDeviceListOne = baseMapper.CorrespondDeviceList(deviceName, null, null,tenantDaya.get(0).getTenantId());
         int total = 0;
         if (correspondDeviceListOne.size() > 0) {
             total = correspondDeviceListOne.size();
         }
         int startCurrent = (current - 1) * size;
-        List<CorrespondDeviceVO> correspondDeviceList = baseMapper.CorrespondDeviceList(deviceName, startCurrent, size);
+        List<CorrespondDeviceVO> correspondDeviceList = baseMapper.CorrespondDeviceList(deviceName, startCurrent, size,tenantDaya.get(0).getTenantId());
         return new CommonPage<>(correspondDeviceList, total, size, current);
     }
 
@@ -430,13 +437,17 @@ public class DeviceServiceImpl extends AbstractCrudService<DeviceMapper, Device>
         SimpleDateFormat longSdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         Workbook workbook = null;
         File file = null;
+        List<SysUser> tenantDaya = userMapper.getTenantId(SecurityUtils.getLoginUser().getUser().getUserId());
+        if (tenantDaya.size()<0) {
+            throw new BusinessException("无此租户,请联系管理员");
+        }
         try {
             ExportParams params = new ExportParams(null, "通信设备列表");
             workbook = ExcelExportUtil.exportBigExcel(params, CorrespondDeviceExportVO.class,
                     (o, i) -> {
                         List<CorrespondDeviceTwoVO> Active = new ArrayList<CorrespondDeviceTwoVO>();
                         int startCurrent = (i - 1) * 30;
-                        List<CorrespondDeviceVO> correspondDeviceList = baseMapper.CorrespondDeviceList(deviceName, startCurrent, 30);
+                        List<CorrespondDeviceVO> correspondDeviceList = baseMapper.CorrespondDeviceList(deviceName, startCurrent, 30,tenantDaya.get(0).getTenantId());
                         for (int j = 0; j <correspondDeviceList.size(); j++){
                             CorrespondDeviceTwoVO correspondDeviceTwoVO = new CorrespondDeviceTwoVO();
                             correspondDeviceTwoVO.setDeviceCode(correspondDeviceList.get(j).getDeviceCode());

+ 59 - 6
fiveep-service/src/main/java/com/bizmatics/service/impl/PlatformAreaServiceImpl.java

@@ -12,12 +12,14 @@ import com.bizmatics.model.Site;
 import com.bizmatics.model.system.SysUser;
 import com.bizmatics.model.vo.*;
 import com.bizmatics.persistence.mapper.PlatformAreaMapper;
+import com.bizmatics.persistence.mapper.system.SysUserMapper;
 import com.bizmatics.service.PlatformAreaService;
 import com.bizmatics.service.util.SecurityUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
 import java.util.Map;
 
@@ -43,14 +45,24 @@ public class PlatformAreaServiceImpl extends AbstractCrudService<PlatformAreaMap
     @Autowired
     private DeviceAttributeServiceImpl deviceAttributeService;
 
+    @Autowired
+    private SysUserMapper userMapper;
+
     @Override
     public void platformAreaAdd(PlatformArea platformArea){
+        List<SysUser> tenantDaya = userMapper.getTenantId(SecurityUtils.getLoginUser().getUser().getUserId());
+        if (tenantDaya.size()<0) {
+            throw new BusinessException("无此租户,请联系管理员");
+        }
         LambdaQueryWrapper<PlatformArea> queryWrapper = Wrappers.lambdaQuery();
         queryWrapper.eq(PlatformArea::getEnable, 1).eq(PlatformArea::getPlatformAreaCode, platformArea.getPlatformAreaCode());
         List<PlatformArea> platformAreaList = this.list(queryWrapper);
         if (platformAreaList!=null&&!platformAreaList.isEmpty()){
             throw new BusinessException("台区编号重复,不可重复添加台区");
-        }{
+        }else {
+            platformArea.setCreator(SecurityUtils.getLoginUser().getUser().getUserName());
+            platformArea.setCreateTime(new Date());
+            platformArea.setTenantId(tenantDaya.get(0).getTenantId());
             platformArea.setEnable(1);
             this.save(platformArea);
         }
@@ -100,11 +112,14 @@ public class PlatformAreaServiceImpl extends AbstractCrudService<PlatformAreaMap
 
     @Override
     public CommonPage<PlatformAreaVo> platformAreaListOne(String platformAreaName,Integer current,Integer size){
-        SysUser user = SecurityUtils.getLoginUser().getUser();
-        List<PlatformAreaVo> platformAreaVoSiteOne = baseMapper.siteCount(platformAreaName,null,0,user.getUserId());
+        List<SysUser> tenantDaya = userMapper.getTenantId(SecurityUtils.getLoginUser().getUser().getUserId());
+        if (tenantDaya.size()<0) {
+            throw new BusinessException("无此租户,请联系管理员");
+        }
+        int platformAreaConut = baseMapper.platformSiteCount(platformAreaName,null,0,tenantDaya.get(0).getTenantId());
         int startCurrent = (current - 1) * size;
-        List<PlatformAreaVo> platformAreaVoSite = baseMapper.siteCount(platformAreaName,startCurrent,size,user.getUserId());
-        List<PlatformAreaVo> platformAreaVoDevice =baseMapper.deviceCount(platformAreaName);
+        List<PlatformAreaVo> platformAreaVoSite = baseMapper.siteCount(platformAreaName,startCurrent,size,tenantDaya.get(0).getTenantId());
+        List<PlatformAreaVo> platformAreaVoDevice =baseMapper.deviceCount(platformAreaName,tenantDaya.get(0).getTenantId());
         List<PlatformAreaVo> platformAreaList = new ArrayList<>();
         for (int i = 0; i < platformAreaVoSite.size(); i++) {
             PlatformAreaVo platformArea = new PlatformAreaVo();
@@ -114,6 +129,9 @@ public class PlatformAreaServiceImpl extends AbstractCrudService<PlatformAreaMap
             platformArea.setId(platformAreaVoSite.get(i).getId());
             platformArea.setEnable(platformAreaVoSite.get(i).getEnable());
             platformArea.setSiteCount(platformAreaVoSite.get(i).getSiteCount());
+            platformArea.setCreator(platformAreaVoSite.get(i).getCreator());
+            platformArea.setTenantId(platformAreaVoSite.get(i).getTenantId());
+            platformArea.setCreateTime(platformAreaVoSite.get(i).getCreateTime());
             if (platformAreaVoDevice.size()>0){
                 Integer deviceCount = 0;
                 for (int j = 0; j < platformAreaVoDevice.size(); j++) {
@@ -130,9 +148,44 @@ public class PlatformAreaServiceImpl extends AbstractCrudService<PlatformAreaMap
 
             platformAreaList.add(platformArea);
         }
-        return new CommonPage<>(platformAreaList, platformAreaVoSiteOne.size(), size, current);
+        return new CommonPage<>(platformAreaList, platformAreaConut, size, current);
     }
 
+//    @Override
+//    public CommonPage<PlatformAreaVo> platformAreaListOne(String platformAreaName,Integer current,Integer size){
+//        SysUser user = SecurityUtils.getLoginUser().getUser();
+//        List<PlatformAreaVo> platformAreaVoSiteOne = baseMapper.siteCount(platformAreaName,null,0,user.getUserId());
+//        int startCurrent = (current - 1) * size;
+//        List<PlatformAreaVo> platformAreaVoSite = baseMapper.siteCount(platformAreaName,startCurrent,size,user.getUserId());
+//        List<PlatformAreaVo> platformAreaVoDevice =baseMapper.deviceCount(platformAreaName);
+//        List<PlatformAreaVo> platformAreaList = new ArrayList<>();
+//        for (int i = 0; i < platformAreaVoSite.size(); i++) {
+//            PlatformAreaVo platformArea = new PlatformAreaVo();
+//            platformArea.setPlatformAreaName(platformAreaVoSite.get(i).getPlatformAreaName());
+//            platformArea.setPlatformAreaAddress(platformAreaVoSite.get(i).getPlatformAreaAddress());
+//            platformArea.setPlatformAreaCode(platformAreaVoSite.get(i).getPlatformAreaCode());
+//            platformArea.setId(platformAreaVoSite.get(i).getId());
+//            platformArea.setEnable(platformAreaVoSite.get(i).getEnable());
+//            platformArea.setSiteCount(platformAreaVoSite.get(i).getSiteCount());
+//            if (platformAreaVoDevice.size()>0){
+//                Integer deviceCount = 0;
+//                for (int j = 0; j < platformAreaVoDevice.size(); j++) {
+//                    int id1=platformAreaVoSite.get(i).getId();
+//                    int id2=platformAreaVoDevice.get(j).getId();
+//                    if (id1==id2){
+//                        deviceCount = deviceCount + platformAreaVoDevice.get(j).getDeviceCount();
+//                    }
+//                }
+//                platformArea.setDeviceCount(deviceCount);
+//            }else {
+//                platformArea.setDeviceCount(0);
+//            }
+//
+//            platformAreaList.add(platformArea);
+//        }
+//        return new CommonPage<>(platformAreaList, platformAreaVoSiteOne.size(), size, current);
+//    }
+
     @Override
     public void platformAreaDel(int id){
         PlatformArea platformArea = new PlatformArea();

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

@@ -169,12 +169,17 @@ public class SiteServiceImpl extends AbstractCrudService<SiteMapper, Site> imple
 
     @Override
     public void siteAdd(SiteVOT siteVOT) {
+        List<SysUser> tenantDaya = userMapper.getTenantId(SecurityUtils.getLoginUser().getUser().getUserId());
+        if (tenantDaya.size()<0) {
+            throw new BusinessException("无此租户,请联系管理员");
+        }
         SysUser user = SecurityUtils.getLoginUser().getUser();
         Site site1 = siteVOT.getSite();
         site1.setCreateTime(new Date());
         site1.setCreator(user.getUserName());
         site1.setCompanyCode(11111);
         site1.setEnable(1);
+        site1.setTenantId(tenantDaya.get(0).getTenantId());
         this.save(site1);
         int ID = site1.getId();
         SiteDynamicProperties siteDynamicProperties = siteVOT.getSiteDynamicProperties();

+ 1 - 1
fiveep-service/src/main/java/com/bizmatics/service/impl/SysPlatformMenuServiceImpl.java

@@ -198,7 +198,7 @@ public class SysPlatformMenuServiceImpl extends AbstractCrudService<SysPlatformM
 
         for (int i = 0; i < SysMenuVoListOne.size(); i++) {
             String name = SysMenuVoListOne.get(i).getMenu();
-            if (name.equals("数据管理") || name.equals("电能质量") || name.equals("系统管理")|| name.equals("租户管理")) {
+            if (name.equals("数据管理") || name.equals("电能质量") || name.equals("系统管理")|| name.equals("租户管理")|| name.equals("统计管理")) {
                 list.add(SysMenuVoListOne.get(i));
             } else {
                 for (int j = 0; j < SysMenuVoList.size(); j++) {

+ 1 - 1
fiveep-service/src/main/java/com/bizmatics/service/impl/SysPlatformServiceImpl.java

@@ -166,7 +166,7 @@ public class SysPlatformServiceImpl extends AbstractCrudService<SysPlatformMappe
 
         for (int i = 0; i < SysMenuVoListOne.size(); i++) {
             String name = SysMenuVoListOne.get(i).getMenu();
-            if (name.equals("数据管理") || name.equals("电能质量") || name.equals("系统管理")|| name.equals("租户管理")) {
+            if (name.equals("数据管理") || name.equals("电能质量") || name.equals("系统管理")|| name.equals("租户管理")|| name.equals("统计管理")) {
                 list.add(SysMenuVoListOne.get(i));
             } else {
                 for (int j = 0; j < SysMenuVoList.size(); j++) {

+ 1 - 1
fiveep-service/src/main/java/com/bizmatics/service/system/impl/SysMenuServiceImpl.java

@@ -757,7 +757,7 @@ public class SysMenuServiceImpl implements ISysMenuService {
 
         for (int i = 0; i < SysMenuVoListOne.size(); i++) {
             String name = SysMenuVoListOne.get(i).getMenu();
-            if (name.equals("数据管理") || name.equals("电能质量") || name.equals("系统管理")|| name.equals("租户管理")) {
+            if (name.equals("数据管理") || name.equals("电能质量") || name.equals("系统管理")|| name.equals("租户管理")|| name.equals("统计管理")) {
                 list.add(SysMenuVoListOne.get(i));
             } else {
                 for (int j = 0; j < SysMenuVoList.size(); j++) {