Jelajahi Sumber

App布撤防子系统详情页面 机构名称增加地区+行社

jingyuanchao 1 tahun lalu
induk
melakukan
a41f40145e

+ 2 - 1
soc-api/soc-api-system/src/main/java/com/xunmei/system/api/RemoteOrgService.java

@@ -199,5 +199,6 @@ public interface RemoteOrgService {
     @GetMapping("/dept/findByCode/{guid}")
     SysOrg findByCode(@PathVariable("guid") String guid, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
 
-
+    @GetMapping("/dept/concatOrgName/{orgId}")
+    String concatOrgName(@PathVariable("orgId") Long orgId, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
 }

+ 6 - 0
soc-api/soc-api-system/src/main/java/com/xunmei/system/api/factory/RemoteOrgFallbackFactory.java

@@ -11,6 +11,7 @@ import com.xunmei.system.api.domain.SysOrg;
 import com.xunmei.system.api.domain.SysOrgExtend;
 import com.xunmei.system.api.vo.FindOrgTypes;
 import com.xunmei.system.api.vo.SysOrgVO;
+import io.netty.util.internal.StringUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.cloud.openfeign.FallbackFactory;
@@ -217,6 +218,11 @@ public class RemoteOrgFallbackFactory implements FallbackFactory<RemoteOrgServic
             public SysOrg findByCode(String guid, String source) {
                 return null;
             }
+
+            @Override
+            public String concatOrgName(Long orgId, String source) {
+                return StringUtil.EMPTY_STRING;
+            }
         };
     }
 }

+ 2 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/controller/ProtectionStatusController.java

@@ -4,11 +4,11 @@ import com.xunmei.common.core.web.controller.BaseController;
 import com.xunmei.common.core.web.domain.AjaxResult;
 import com.xunmei.common.core.web.page.TableDataInfo;
 import com.xunmei.common.security.annotation.RequiresPermissions;
-import com.xunmei.common.core.domain.iot.domain.IotAlarmSubsystem;
 import com.xunmei.core.resumption.dto.protection.ProtectionLogPageDto;
 import com.xunmei.core.resumption.dto.protection.ProtectionPageDto;
 import com.xunmei.core.resumption.dto.protection.SubSystemStateUpdateDto;
 import com.xunmei.core.resumption.service.IProtectionService;
+import com.xunmei.core.resumption.vo.protection.SubsystemSimpleVo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
@@ -48,7 +48,7 @@ class ProtectionStatusController extends BaseController {
     @GetMapping("{id}")
     @RequiresPermissions({"device:protectionstatus:query"})
     public AjaxResult get(@PathVariable Long id) {
-        IotAlarmSubsystem r = protectionService.get(id);
+        SubsystemSimpleVo r = protectionService.getSubsystemSimpleVo(id);
         return success(r);
     }
 

+ 3 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/IProtectionService.java

@@ -9,6 +9,7 @@ import com.xunmei.core.resumption.dto.protection.ProtectionEditDto;
 import com.xunmei.core.resumption.dto.protection.ProtectionLogPageDto;
 import com.xunmei.core.resumption.dto.protection.ProtectionPageDto;
 import com.xunmei.core.resumption.dto.protection.SubSystemStateUpdateDto;
+import com.xunmei.core.resumption.vo.protection.SubsystemSimpleVo;
 import com.xunmei.system.api.vo.ProtectionVO;
 
 import javax.servlet.http.HttpServletResponse;
@@ -52,6 +53,8 @@ public interface IProtectionService extends IService<IotAlarmSubsystem> {
     void export(ProtectionPageDto pageDto, HttpServletResponse response) throws Exception;
 
     List<Map<String, List<Map<String,Object>>>> selectDataByOrgId(Long orgId, Date date);
+
+    SubsystemSimpleVo getSubsystemSimpleVo(Long id);
 //    MePage<pageSensorVo> pageSensorList(pageSensorDto request);
 
 //    MePage<ProtectionPageVo4Mybatis> pageByMybatis(ProtectionPageDto4Mybatis request);

+ 22 - 2
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/service/impl/ProtectionServiceImpl.java

@@ -19,6 +19,7 @@ import com.xunmei.common.core.domain.iot.domain.IotAlarmSubsystemLog;
 import com.xunmei.common.core.domain.panel.dto.PanelListDto;
 import com.xunmei.common.core.domain.panel.vo.PanelListVo;
 import com.xunmei.common.core.enums.iot.DeviceSourceEnum;
+import com.xunmei.common.core.util.BeanHelper;
 import com.xunmei.common.core.utils.bean.BeanUtils;
 import com.xunmei.common.core.web.page.TableDataInfo;
 import com.xunmei.common.security.utils.SecurityUtils;
@@ -32,13 +33,16 @@ import com.xunmei.core.resumption.service.IProtectionService;
 import com.xunmei.core.resumption.vo.protection.ProtectionLogPageVo;
 import com.xunmei.core.resumption.vo.protection.ProtectionPageVo;
 import com.xunmei.core.resumption.vo.protection.SubSystemAppDetailVo;
+import com.xunmei.core.resumption.vo.protection.SubsystemSimpleVo;
 import com.xunmei.system.api.RemoteDeviceService;
 import com.xunmei.system.api.RemoteDictDataService;
+import com.xunmei.system.api.RemoteOrgService;
 import com.xunmei.system.api.domain.SysDevice;
 import com.xunmei.system.api.domain.SysDictData;
 import com.xunmei.system.api.enums.ProtectionStatus;
 import com.xunmei.system.api.vo.ProtectionVO;
 import io.netty.util.internal.StringUtil;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -58,8 +62,8 @@ import java.util.stream.Collectors;
  */
 @Service
 public class ProtectionServiceImpl extends ServiceImpl<ProtectionMapper, IotAlarmSubsystem> implements IProtectionService {
-//    @Resource
-//    private OrgService orgService;
+    @Autowired
+    private RemoteOrgService orgService;
 
     @Resource
     ProtectionLogMapper protectionLogMapper;
@@ -261,6 +265,22 @@ public class ProtectionServiceImpl extends ServiceImpl<ProtectionMapper, IotAlar
         EasyExcel.write(response.getOutputStream(), ProtectionPageVo.class).sheet("Sheet1").doWrite(rows);
     }
 
+
+    @Override
+    public SubsystemSimpleVo getSubsystemSimpleVo(Long id) {
+        IotAlarmSubsystem subsystem = get(id);
+        SubsystemSimpleVo simpleVo = new SubsystemSimpleVo();
+        if (ObjectUtil.isEmpty(subsystem)){
+            return simpleVo;
+        }
+        BeanHelper.copyProperties(simpleVo,subsystem);
+        String orgName = orgService.concatOrgName(subsystem.getOrgId(), SecurityConstants.INNER);
+        if (ObjectUtil.isNotEmpty(orgName)){
+            simpleVo.setOrgName(orgName);
+        }
+        return simpleVo;
+    }
+
     @Override
     public List<Map<String, List<Map<String, Object>>>> selectDataByOrgId(Long orgId, Date date) {
 

+ 17 - 0
soc-modules/soc-modules-core/src/main/java/com/xunmei/core/resumption/vo/protection/SubsystemSimpleVo.java

@@ -0,0 +1,17 @@
+package com.xunmei.core.resumption.vo.protection;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+public class SubsystemSimpleVo {
+
+    @ApiModelProperty("机构名称")
+    private String orgName;
+
+    @ApiModelProperty(value = "防区的名称")
+    private String name;
+
+    @ApiModelProperty(value = "防区的名称")
+    private String hostName;
+}

+ 13 - 9
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/controller/SysDeptController.java

@@ -2,10 +2,6 @@ package com.xunmei.system.controller;
 
 import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.excel.EasyExcel;
-import com.alibaba.excel.ExcelWriter;
-import com.alibaba.excel.support.ExcelTypeEnum;
-import com.alibaba.excel.write.builder.ExcelWriterBuilder;
-import com.alibaba.excel.write.metadata.WriteSheet;
 import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.xunmei.common.core.constant.Constants;
@@ -16,7 +12,6 @@ import com.xunmei.common.core.enums.OrgTypeEnum;
 import com.xunmei.common.core.utils.StringUtils;
 import com.xunmei.common.core.web.controller.BaseController;
 import com.xunmei.common.core.web.domain.AjaxResult;
-import com.xunmei.common.core.web.page.TableDataInfo;
 import com.xunmei.common.log.annotation.Log;
 import com.xunmei.common.log.enums.BusinessType;
 import com.xunmei.common.security.annotation.InnerAuth;
@@ -33,7 +28,9 @@ import com.xunmei.system.dto.SysOrgDto;
 import com.xunmei.system.service.ISysDeptService;
 import com.xunmei.system.service.ISysOrgService;
 import com.xunmei.system.service.ISysUserService;
-import com.xunmei.system.util.*;
+import com.xunmei.system.util.ConstructionDetailExport;
+import com.xunmei.system.util.OrgPhysicalDefenseConstructionExport;
+import com.xunmei.system.util.SecurityWorkExport;
 import io.swagger.annotations.ApiOperation;
 import org.apache.commons.lang3.ArrayUtils;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -41,10 +38,11 @@ import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
-import java.io.File;
-import java.io.Writer;
 import java.net.URLEncoder;
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.Date;
+import java.util.List;
 import java.util.concurrent.atomic.AtomicInteger;
 
 /**
@@ -549,4 +547,10 @@ public class SysDeptController extends BaseController {
             response.setCharacterEncoding("utf-8");
         }
     }
+
+    @InnerAuth
+    @GetMapping("/concatOrgName/{orgId}")
+    String concatOrgName(@PathVariable("orgId") Long orgId){
+        return orgService.concatOrgName(orgId);
+    }
 }

+ 2 - 1
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/ISysOrgService.java

@@ -13,7 +13,6 @@ import com.xunmei.system.util.OrgPhysicalDefenseConstructionExport;
 import com.xunmei.system.util.SecurityWorkExport;
 
 import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
 import java.util.List;
 
 /**
@@ -189,4 +188,6 @@ public interface ISysOrgService extends IService<SysOrg> {
     void exportOrgExtend(SysOrg dept, HttpServletResponse response) throws Exception;
 
     void exportDefenseDetailExtend(SysOrg dept, HttpServletResponse response) throws Exception;
+    //返回 地区+行社+网点 的机构名称
+    String concatOrgName(Long orgId);
 }

+ 9 - 2
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/impl/SysOrgServiceImpl.java

@@ -4,7 +4,6 @@ import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.collection.ListUtil;
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.io.LineHandler;
 import cn.hutool.core.util.ObjectUtil;
 import com.alibaba.excel.EasyExcel;
 import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
@@ -30,7 +29,6 @@ import com.xunmei.system.api.domain.SysDictData;
 import com.xunmei.system.api.domain.SysOrg;
 import com.xunmei.system.api.vo.FindOrgTypes;
 import com.xunmei.system.api.vo.SysOrgVO;
-import com.xunmei.system.domain.SysPhysicalDefenseConstruction;
 import com.xunmei.system.dto.SysOrgDto;
 import com.xunmei.system.dto.SysPhysicalDefenseConstructionDTO;
 import com.xunmei.system.mapper.SysOrgMapper;
@@ -1448,4 +1446,13 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
         EasyExcel.write(response.getOutputStream(), OrgPhysicalDefenseConstructionDetailExport.class)
                 .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()).sheet("安全防范设施建设达标信息").doWrite(detailExports);
     }
+
+    @Override
+    public String concatOrgName(Long orgId) {
+        SysOrg org = getById(orgId);
+        if (ObjectUtil.isEmpty(org)){
+            return StringUtil.EMPTY_STRING;
+        }
+        return org.getAffiliatedArea()+"_"+org.getAffiliatedBank()+"_"+org.getShortName();
+    }
 }