From 012c0c6dab044e38a8825fa905ef50a42895713f Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期五, 16 八月 2024 11:23:12 +0800 Subject: [PATCH] 资产管理接口 --- ycl-server/src/main/java/com/ycl/platform/service/ITMonitorService.java | 8 ++ ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java | 1 ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorMapper.java | 10 +++ ycl-pojo/src/main/java/com/ycl/platform/domain/vo/TMonitorVO.java | 6 ++ ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml | 87 +++++++++++++++++++++++++++++ ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java | 15 +++++ ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java | 12 ++++ 7 files changed, 139 insertions(+), 0 deletions(-) diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java index 8c6054e..b813bbe 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/DataCenterQuery.java @@ -23,4 +23,5 @@ /** 鍏抽敭璇� */ private String keyword; + } diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/TMonitorVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/TMonitorVO.java index fa83f24..a916997 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/TMonitorVO.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/TMonitorVO.java @@ -6,6 +6,7 @@ import lombok.Data; import java.util.Date; +import java.util.List; /** @@ -219,4 +220,9 @@ private Long deptId; private String deptName; + + /** + * 鍔ㄦ�佸垪 + */ + private List<DynamicColumnVO> dynamicColumnList; } diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java b/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java index 59f54c1..a2ddb0d 100644 --- a/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java +++ b/ycl-server/src/main/java/com/ycl/platform/controller/DataCenterController.java @@ -2,6 +2,7 @@ import com.ycl.platform.domain.query.DataCenterQuery; import com.ycl.platform.service.DataCenterService; +import com.ycl.platform.service.ITMonitorService; import com.ycl.platform.service.PlatformOnlineService; import com.ycl.system.Result; import io.swagger.annotations.ApiOperation; @@ -24,6 +25,20 @@ private final DataCenterService dataCenterService; private final PlatformOnlineService platformOnlineService; + private final ITMonitorService monitorService; + + /** + * 璧勪骇绠$悊 + * + * @param query + * @return + */ + @GetMapping("/assetManagement") + @ApiOperation(value = "璧勪骇绠$悊", notes = "璧勪骇绠$悊") + @PreAuthorize("hasAuthority('assetManagement:page')") + public Result assetManagement(DataCenterQuery query) { + return monitorService.assetManagement(query); + } /** * 骞冲彴鍦ㄧ嚎鐜� diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorMapper.java index 12ae867..922d206 100644 --- a/ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorMapper.java +++ b/ycl-server/src/main/java/com/ycl/platform/mapper/TMonitorMapper.java @@ -1,12 +1,15 @@ package com.ycl.platform.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.ycl.platform.domain.entity.TMonitor; import com.ycl.platform.domain.query.DashboardQuery; +import com.ycl.platform.domain.query.DataCenterQuery; import com.ycl.platform.domain.query.HomeQuery; import com.ycl.platform.domain.vo.TMonitorVO; import com.ycl.platform.domain.vo.screen.MonitorRateVO; import com.ycl.platform.domain.vo.screen.MonitorTotalVO; +import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Map; @@ -116,4 +119,11 @@ */ List<MonitorRateVO> monitorRate(DashboardQuery dashboardQuery); + /** + * 鏁版嵁涓績-璧勪骇绠$悊 + * + * @param page + * @param query + */ + void assetManagement(IPage<TMonitorVO> page, @Param("query") DataCenterQuery query); } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/ITMonitorService.java b/ycl-server/src/main/java/com/ycl/platform/service/ITMonitorService.java index 16a323d..d0246df 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/ITMonitorService.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/ITMonitorService.java @@ -3,10 +3,12 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.ycl.platform.domain.entity.TMonitor; import com.ycl.platform.domain.query.DashboardQuery; +import com.ycl.platform.domain.query.DataCenterQuery; import com.ycl.platform.domain.query.HomeQuery; import com.ycl.platform.domain.vo.TMonitorVO; import com.ycl.platform.domain.vo.screen.MonitorRateVO; import com.ycl.platform.domain.vo.screen.MonitorTotalVO; +import com.ycl.system.Result; import java.util.List; import java.util.Map; @@ -101,4 +103,10 @@ */ List<MonitorRateVO> monitorRate(DashboardQuery dashboardQuery); + /** + * 璧勪骇绠$悊 + * @param query + * @return + */ + Result assetManagement(DataCenterQuery query); } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java index 9aa15a8..3a6d860 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/TMonitorServiceImpl.java @@ -1,15 +1,19 @@ package com.ycl.platform.service.impl; import annotation.DataScope; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ycl.platform.domain.entity.TMonitor; import com.ycl.platform.domain.query.DashboardQuery; +import com.ycl.platform.domain.query.DataCenterQuery; import com.ycl.platform.domain.query.HomeQuery; import com.ycl.platform.domain.vo.TMonitorVO; import com.ycl.platform.domain.vo.screen.MonitorRateVO; import com.ycl.platform.domain.vo.screen.MonitorTotalVO; import com.ycl.platform.mapper.TMonitorMapper; import com.ycl.platform.service.ITMonitorService; +import com.ycl.system.Result; import com.ycl.system.service.ISysConfigService; import com.ycl.utils.StringUtils; import com.ycl.utils.redis.RedisCache; @@ -160,4 +164,12 @@ public List<MonitorRateVO> monitorRate(DashboardQuery dashboardQuery) { return baseMapper.monitorRate(dashboardQuery); } + + + @Override + public Result assetManagement(DataCenterQuery query) { + IPage<TMonitorVO> page = new Page<>(query.getPageNum(), query.getPageSize()); + baseMapper.assetManagement(page, query); + return Result.ok().data(page.getRecords()).total(page.getTotal()); + } } diff --git a/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml index 0de6265..604549a 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/TMonitorMapper.xml @@ -454,4 +454,91 @@ ) c ON a.area = c.area </select> + + <select id="assetManagement" resultMap="dyMap"> + SELECT + tm.id, + tm.serial_number, + tm.name, + tm.site_type, + tm.mac_addr, + tm.ip, + tm.camera_fun_type, + tm.longitude, + tm.latitude, + tm.camera_capture_area, + tm.on_state, + tm.civil_code, + tm.integrated_device, + tm.camera_brand, + tm.address, + tm.net_working, + tm.public_security, + tm.installed_time, + tm.management_unit, + tm.mu_contact_info, + tm.storage_days, + tm.monitor_azimuth, + tm.scene_photo_addr, + tm.model, + tm.site_vulgo, + tm.camera_type, + tm.camera_light_type, + tm.encoded_format, + tm.camera_dept, + tm.hybm, + tm.lxbm, + dc.prop_name, + dc.label_value, + dc.field_value + FROM + t_monitor tm + LEFT JOIN t_dynamic_column dc ON tm.id = dc.ref_id + <where> + <if test="query.keyword != null and query.keyword != ''"> + AND (tm.name like concat('%', #{query.keyword}, '%') OR dc.field_value like concat('%', #{query.keyword}, '%')) + </if> + </where> + </select> + + <resultMap id="dyMap" type="com.ycl.platform.domain.vo.TMonitorVO"> + <id column="id" property="id"/> + <result column="serial_number" property="serialNumber"/> + <result column="name" property="name"/> + <result column="site_type" property="siteType"/> + <result column="mac_addr" property="macAddr"/> + <result column="ip" property="ip"/> + <result column="longitude" property="longitude"/> + <result column="latitude" property="latitude"/> + <result column="camera_capture_area" property="cameraCaptureArea"/> + <result column="camera_fun_type" property="cameraFunType"/> + <result column="on_state" property="onState"/> + <result column="civil_code" property="civilCode"/> + <result column="integrated_device" property="integratedDevice"/> + <result column="camera_brand" property="cameraBrand"/> + <result column="address" property="address"/> + <result column="public_security" property="publicSecurity"/> + <result column="installed_time" property="installedTime"/> + <result column="management_unit" property="managementUnit"/> + <result column="mu_contact_info" property="muContactInfo"/> + <result column="storage_days" property="storageDays"/> + <result column="monitor_azimuth" property="monitorAzimuth"/> + <result column="scene_photo_addr" property="scenePhotoAddr"/> + <result column="model" property="model"/> + <result column="site_vulgo" property="siteVulgo"/> + <result column="camera_type" property="cameraType"/> + <result column="camera_light_type" property="cameraLightType"/> + <result column="encoded_format" property="encodedFormat"/> + <result column="camera_dept" property="cameraDept"/> + <result column="hybm" property="hybm"/> + <result column="lxbm" property="lxbm"/> + <collection property="dynamicColumnList" ofType="com.ycl.platform.domain.vo.DynamicColumnVO" resultMap="dynamicColumnMap"/> + </resultMap> + + <resultMap id="dynamicColumnMap" type="com.ycl.platform.domain.vo.DynamicColumnVO"> + <result column="prop_name" property="propName"/> + <result column="label_value" property="labelValue"/> + <result column="field_value" property="fieldValue"/> + </resultMap> + </mapper> -- Gitblit v1.8.0