From 31b561887544afc020c5c20637f3cd8f7c927e5e Mon Sep 17 00:00:00 2001
From: wl <173@qq.com>
Date: 星期五, 14 十月 2022 18:21:43 +0800
Subject: [PATCH] 日志管理 点位管理

---
 ycl-common/src/main/java/com/ycl/service/user/IAdminLoginLogService.java                   |   16 ++
 ycl-platform/src/main/java/com/ycl/service/equipment/impl/EquipmentBayonetServiceImpl.java |   20 ++
 ycl-common/src/main/java/com/ycl/dto/log/LogQueryParams.java                               |   40 +++++
 ycl-common/src/main/java/com/ycl/service/user/impl/AdminLoginLogServiceImpl.java           |   20 ++
 ycl-platform/src/main/java/com/ycl/entity/equipment/EquipmentBayonet.java                  |   69 ++++++++
 ycl-platform/src/main/java/com/ycl/service/equipment/IEquipmentBayonetService.java         |   16 ++
 ycl-platform/src/main/java/com/ycl/controller/epuipment/EquipmentBayonetController.java    |   29 +++
 ycl-platform/src/main/java/com/ycl/controller/video/VideoPointController.java              |   50 +++++
 ycl-platform/src/main/resources/mapper/equipment/EquipmentBayonetMapper.xml                |   21 ++
 ycl-common/src/main/java/com/ycl/entity/user/vo/UmsAdminLogVO.java                         |   42 +++++
 ycl-common/src/main/java/com/ycl/entity/user/UmsAdminLoginLog.java                         |    6 
 ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java                |  131 ++++++++++++++++
 12 files changed, 452 insertions(+), 8 deletions(-)

diff --git a/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java b/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java
new file mode 100644
index 0000000..a428b3f
--- /dev/null
+++ b/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java
@@ -0,0 +1,131 @@
+package com.ycl.controller.user;
+
+import com.alibaba.excel.EasyExcel;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ycl.annotation.LogSave;
+import com.ycl.api.CommonResult;
+import com.ycl.dto.log.LogQueryParams;
+import com.ycl.entity.user.UmsAdmin;
+import com.ycl.entity.user.UmsAdminLoginLog;
+import com.ycl.entity.user.vo.UmsAdminLogVO;
+import com.ycl.service.user.IAdminLoginLogService;
+import com.ycl.service.user.UmsAdminService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.SneakyThrows;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.net.URLEncoder;
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.stream.Collectors;
+
+@RestController
+@RequestMapping("/log_manage")
+@Api(tags = "鏃ュ織绠$悊")
+public class UmsAdminLogController {
+
+    @Autowired
+    IAdminLoginLogService iAdminLoginLogService;
+    @Autowired
+    UmsAdminService umsAdminService;
+
+    @GetMapping("/query")
+    @ApiOperation(value = "鏌ヨ")
+    @LogSave(operationType = "鏃ュ織绠$悊", contain = "鏌ヨ鏃ュ織淇℃伅")
+    public CommonResult searchLog(LogQueryParams logQueryParams) {
+        Page<UmsAdminLoginLog> umsAdminLoginLogPage = new Page<>();
+        umsAdminLoginLogPage.setCurrent(logQueryParams.getCurrent());
+        umsAdminLoginLogPage.setSize(logQueryParams.getSize());
+        Page<UmsAdminLoginLog> page = iAdminLoginLogService
+                .page(umsAdminLoginLogPage, new LambdaQueryWrapper<UmsAdminLoginLog>()
+                        .like(StringUtils.isNotBlank(logQueryParams.getContent()), UmsAdminLoginLog::getContain, logQueryParams.getContent())
+                        .eq(StringUtils.isNotBlank(logQueryParams.getOperationType()), UmsAdminLoginLog::getOperationType, logQueryParams.getOperationType())
+                        .eq(StringUtils.isNotBlank(logQueryParams.getPortEquipment()), UmsAdminLoginLog::getUserAgent, logQueryParams.getPortEquipment())
+                        .eq(logQueryParams.getId() != null, UmsAdminLoginLog::getAdminId, logQueryParams.getId())
+                        .between(logQueryParams.getStartTime() != null && logQueryParams.getEndTime() != null, UmsAdminLoginLog::getCreateTime, logQueryParams.getStartTime(), logQueryParams.getEndTime())
+                        .orderBy(logQueryParams.getSort() == 0, true, UmsAdminLoginLog::getCreateTime)
+                        .orderBy(logQueryParams.getSort() == 1, false, UmsAdminLoginLog::getCreateTime));
+        List<UmsAdminLogVO> umsAdminLogVOList = page.getRecords().stream()
+                .map(item -> {
+                    UmsAdminLogVO umsAdminlogVO = new UmsAdminLogVO();
+                    BeanUtils.copyProperties(item, umsAdminlogVO);
+                    umsAdminlogVO.setAdminId(umsAdminService
+                            .getOne(new LambdaQueryWrapper<UmsAdmin>()
+                                    .eq(UmsAdmin::getId, item.getAdminId()))
+                            .getUsername());
+                    return umsAdminlogVO;
+                }).collect(Collectors.toList());
+        Page<UmsAdminLogVO> umsAdminLogVOPage = new Page<>();
+        BeanUtils.copyProperties(page, umsAdminLogVOPage);
+        umsAdminLogVOPage.setRecords(umsAdminLogVOList);
+        return CommonResult.success(umsAdminLogVOPage);
+    }
+
+    @DeleteMapping("/deletion_batch")
+    @ApiOperation(value = "鎵归噺鍒犻櫎鏃ュ織")
+    @LogSave(operationType = "鏃ュ織绠$悊", contain = "鎵归噺鍒犻櫎鏃ュ織淇℃伅")
+    public CommonResult deleteBatch(@RequestParam List<Long> ids) {
+        return CommonResult.success(iAdminLoginLogService.removeBatchByIds(ids));
+    }
+
+    @DeleteMapping("/clear")
+    @ApiOperation(value = "娓呯┖鏃ュ織")
+    @LogSave(operationType = "鏃ュ織绠$悊", contain = "娓呯┖鏃ュ織淇℃伅")
+    public CommonResult clear() {
+        return CommonResult.success(iAdminLoginLogService.remove(new LambdaQueryWrapper<UmsAdminLoginLog>()));
+    }
+
+    @GetMapping("/query_operationType")
+    @ApiOperation(value = "鏌ヨ鎿嶄綔绫诲瀷")
+    public CommonResult queryOperationType() {
+        return CommonResult.success(iAdminLoginLogService.list(new LambdaQueryWrapper<UmsAdminLoginLog>().groupBy(UmsAdminLoginLog::getOperationType)));
+    }
+
+    @PostMapping("/export")
+    @ApiOperation(value = "瀵煎嚭")
+    @SneakyThrows
+    @LogSave(operationType = "鏃ュ織绠$悊", contain = "瀵煎嚭鏃ュ織")
+    public void export(HttpServletResponse response, LogQueryParams logQueryParams) {
+        Page<UmsAdminLoginLog> umsAdminLoginLogPage = new Page<>();
+        umsAdminLoginLogPage.setCurrent(logQueryParams.getCurrent());
+        umsAdminLoginLogPage.setSize(logQueryParams.getSize());
+        StringBuilder fileName = new StringBuilder();
+        fileName.append(LocalDateTime.now().getYear())
+                .append("-")
+                .append(LocalDateTime.now().getMonthValue())
+                .append("-")
+                .append(LocalDateTime.now().getDayOfMonth())
+                .append("鏃ュ織鏁版嵁");
+        response.setContentType("application/vnd.ms-excel");
+        response.setCharacterEncoding("utf-8");
+        String file = URLEncoder.encode(fileName.toString(), "UTF-8").replaceAll("\\+", "%20");
+        response.setHeader("Content-disposition", "attachment;filename=" + file + ".xlsx");
+        EasyExcel
+                .write(response.getOutputStream(), UmsAdminLogVO.class)
+                .sheet("鏁版嵁")
+                .doWrite(iAdminLoginLogService
+                        .page(umsAdminLoginLogPage, new LambdaQueryWrapper<UmsAdminLoginLog>()
+                                .like(StringUtils.isNotBlank(logQueryParams.getContent()), UmsAdminLoginLog::getContain, logQueryParams.getContent())
+                                .eq(StringUtils.isNotBlank(logQueryParams.getOperationType()), UmsAdminLoginLog::getOperationType, logQueryParams.getOperationType())
+                                .between(logQueryParams.getStartTime() != null && logQueryParams.getEndTime() != null, UmsAdminLoginLog::getCreateTime, logQueryParams.getStartTime(), logQueryParams.getEndTime())
+                                .orderBy(logQueryParams.getSort() == 0, true, UmsAdminLoginLog::getCreateTime)
+                                .orderBy(logQueryParams.getSort() == 1, false, UmsAdminLoginLog::getCreateTime))
+                        .getRecords()
+                        .stream()
+                        .map(item -> {
+                            UmsAdminLogVO umsAdminlogVO = new UmsAdminLogVO();
+                            BeanUtils.copyProperties(item, umsAdminlogVO);
+                            umsAdminlogVO.setAdminId(umsAdminService
+                                    .getOne(new LambdaQueryWrapper<UmsAdmin>()
+                                            .eq(UmsAdmin::getId, item.getAdminId()))
+                                    .getUsername());
+                            return umsAdminlogVO;
+                        }).collect(Collectors.toList()));
+    }
+}
diff --git a/ycl-common/src/main/java/com/ycl/dto/log/LogQueryParams.java b/ycl-common/src/main/java/com/ycl/dto/log/LogQueryParams.java
new file mode 100644
index 0000000..773df2a
--- /dev/null
+++ b/ycl-common/src/main/java/com/ycl/dto/log/LogQueryParams.java
@@ -0,0 +1,40 @@
+package com.ycl.dto.log;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.models.auth.In;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+@Data
+@ApiModel(value = "鏃ュ織鏌ヨ")
+public class LogQueryParams {
+
+    @ApiModelProperty(value = "鏁扮洰")
+    Long size;
+
+    @ApiModelProperty(value = "椤电爜")
+    Long current;
+
+    @ApiModelProperty(value = "鍐呭")
+    String content;
+
+    @ApiModelProperty(value = "鎿嶄綔绫诲瀷")
+    String operationType;
+
+    @ApiModelProperty(value = "鎿嶄綔浜哄憳")
+    Long id;
+
+    @ApiModelProperty(value = "寮�濮嬫椂闂�")
+    LocalDateTime startTime;
+
+    @ApiModelProperty(value = "缁撴潫鏃堕棿")
+    LocalDateTime endTime;
+
+    @ApiModelProperty(value = "缁堢璁惧")
+    String portEquipment;
+
+    @ApiModelProperty(value = "鎺掑簭 0 姝e簭 1 鍊掑簭")
+    Integer sort;
+}
\ No newline at end of file
diff --git a/ycl-common/src/main/java/com/ycl/entity/user/UmsAdminLoginLog.java b/ycl-common/src/main/java/com/ycl/entity/user/UmsAdminLoginLog.java
index b210d2c..da3f54f 100644
--- a/ycl-common/src/main/java/com/ycl/entity/user/UmsAdminLoginLog.java
+++ b/ycl-common/src/main/java/com/ycl/entity/user/UmsAdminLoginLog.java
@@ -22,10 +22,10 @@
 @Data
 @EqualsAndHashCode(callSuper = false)
 @TableName("ums_admin_login_log")
-@ApiModel(value="UmsAdminLoginLog瀵硅薄", description="鍚庡彴鐢ㄦ埛鐧诲綍鏃ュ織琛�")
+@ApiModel(value = "UmsAdminLoginLog瀵硅薄", description = "鍚庡彴鐢ㄦ埛鐧诲綍鏃ュ織琛�")
 public class UmsAdminLoginLog implements Serializable {
 
-    private static final long serialVersionUID=1L;
+    private static final long serialVersionUID = 1L;
 
     @TableId(value = "id", type = IdType.AUTO)
     private Long id;
@@ -44,6 +44,6 @@
     @ApiModelProperty(value = "鎿嶄綔绫诲瀷")
     private String operationType;
 
-    @ApiModelProperty(value = "鎿嶄綔鍐呭")
+    @ApiModelProperty(value = "鍐呭")
     private String contain;
 }
diff --git a/ycl-common/src/main/java/com/ycl/entity/user/vo/UmsAdminLogVO.java b/ycl-common/src/main/java/com/ycl/entity/user/vo/UmsAdminLogVO.java
new file mode 100644
index 0000000..bf7351b
--- /dev/null
+++ b/ycl-common/src/main/java/com/ycl/entity/user/vo/UmsAdminLogVO.java
@@ -0,0 +1,42 @@
+package com.ycl.entity.user.vo;
+
+import com.alibaba.excel.annotation.ExcelIgnore;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class UmsAdminLogVO {
+
+    @TableId(value = "id", type = IdType.AUTO)
+    @ExcelIgnore
+    private Long id;
+
+    @ExcelProperty(index = 3, value = "鎿嶄綔浜哄憳")
+    private String adminId;
+
+    @ExcelProperty(index = 0, value = "鏃ュ織鏃堕棿", format = "YYYY-mm-dd HH:mm:ss")
+    private Date createTime;
+
+    @ExcelProperty(index = 4, value = "IP鍦板潃")
+    private String ip;
+
+    @ExcelIgnore
+    private String address;
+
+    @ApiModelProperty(value = "娴忚鍣ㄧ櫥褰曠被鍨�")
+    @ExcelProperty(index = 1, value = "缁堢璁惧")
+    private String userAgent;
+
+    @ApiModelProperty(value = "鎿嶄綔绫诲瀷")
+    @ExcelProperty(index = 2, value = "鎿嶄綔绫诲瀷")
+    private String operationType;
+
+    @ApiModelProperty(value = "鍐呭")
+    @ExcelProperty(index = 5, value = "鍐呭")
+    private String contain;
+}
diff --git a/ycl-common/src/main/java/com/ycl/service/user/IAdminLoginLogService.java b/ycl-common/src/main/java/com/ycl/service/user/IAdminLoginLogService.java
new file mode 100644
index 0000000..f3b6f19
--- /dev/null
+++ b/ycl-common/src/main/java/com/ycl/service/user/IAdminLoginLogService.java
@@ -0,0 +1,16 @@
+package com.ycl.service.user;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ycl.entity.user.UmsAdminLoginLog;
+
+/**
+ * <p>
+ * 鍚庡彴鐢ㄦ埛鐧诲綍鏃ュ織琛� 鏈嶅姟绫�
+ * </p>
+ *
+ * @author zhanghua
+ * @since 2022-10-14
+ */
+public interface IAdminLoginLogService extends IService<UmsAdminLoginLog> {
+
+}
diff --git a/ycl-common/src/main/java/com/ycl/service/user/impl/AdminLoginLogServiceImpl.java b/ycl-common/src/main/java/com/ycl/service/user/impl/AdminLoginLogServiceImpl.java
new file mode 100644
index 0000000..892f0db
--- /dev/null
+++ b/ycl-common/src/main/java/com/ycl/service/user/impl/AdminLoginLogServiceImpl.java
@@ -0,0 +1,20 @@
+package com.ycl.service.user.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ycl.entity.user.UmsAdminLoginLog;
+import com.ycl.mapper.user.UmsAdminLoginLogMapper;
+import com.ycl.service.user.IAdminLoginLogService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 鍚庡彴鐢ㄦ埛鐧诲綍鏃ュ織琛� 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author zhanghua
+ * @since 2022-10-14
+ */
+@Service
+public class AdminLoginLogServiceImpl extends ServiceImpl<UmsAdminLoginLogMapper, UmsAdminLoginLog> implements IAdminLoginLogService {
+
+}
diff --git a/ycl-platform/src/main/java/com/ycl/controller/epuipment/EquipmentBayonetController.java b/ycl-platform/src/main/java/com/ycl/controller/epuipment/EquipmentBayonetController.java
new file mode 100644
index 0000000..47d3e45
--- /dev/null
+++ b/ycl-platform/src/main/java/com/ycl/controller/epuipment/EquipmentBayonetController.java
@@ -0,0 +1,29 @@
+package com.ycl.controller.epuipment;
+
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ycl.api.CommonResult;
+import com.ycl.controller.BaseController;
+import com.ycl.entity.video.VideoPoint;
+import com.ycl.service.equipment.IEquipmentBayonetService;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * <p>
+ * 鍗″彛绠$悊 鍓嶇鎺у埗鍣�
+ * </p>
+ *
+ * @author wl
+ * @since 2022-10-14
+ */
+@RestController
+@RequestMapping("/equipment_bayonet")
+public class EquipmentBayonetController extends BaseController {
+
+    @Autowired
+    IEquipmentBayonetService iEquipmentBayonetService;
+
+}
diff --git a/ycl-platform/src/main/java/com/ycl/controller/video/VideoPointController.java b/ycl-platform/src/main/java/com/ycl/controller/video/VideoPointController.java
index cc5df9e..fdc6221 100644
--- a/ycl-platform/src/main/java/com/ycl/controller/video/VideoPointController.java
+++ b/ycl-platform/src/main/java/com/ycl/controller/video/VideoPointController.java
@@ -1,10 +1,16 @@
 package com.ycl.controller.video;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ycl.api.CommonResult;
 import com.ycl.controller.BaseController;
-import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.web.bind.annotation.RestController;
+import com.ycl.entity.video.VideoPoint;
+import com.ycl.service.video.impl.IVideoPointService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
 
 /**
  * <p>
@@ -15,7 +21,41 @@
  * @since 2022-09-26
  */
 @RestController
-@RequestMapping("/video-point")
+@RequestMapping("/video_point")
+@Api(tags = "鐐逛綅绠$悊")
 public class VideoPointController extends BaseController {
 
-}
+    @Autowired
+    IVideoPointService iVideoPointService;
+
+    @GetMapping("/query")
+    @ApiOperation("鏌ヨ")
+    public CommonResult searchVideoPoint(@RequestParam Long size,
+                                         @RequestParam Long current,
+                                         @RequestParam(required = false) Integer streetId,
+                                         @RequestParam(required = false) Integer communityId) {
+        Page page = new Page<VideoPoint>()
+                .setSize(size)
+                .setCurrent(current);
+        return CommonResult.success(iVideoPointService.page(page, new LambdaQueryWrapper<VideoPoint>()
+                .eq(streetId != null, VideoPoint::getStreetId, streetId)
+                .eq(communityId != null, VideoPoint::getCommunityId, communityId)));
+    }
+    @PostMapping("/addition")
+    @ApiOperation("娣诲姞")
+    public CommonResult addVideoPoint(@RequestBody VideoPoint videoPoint) {
+        return CommonResult.success(iVideoPointService.save(videoPoint));
+    }
+
+    @PutMapping("/modification")
+    @ApiOperation("缂栬緫")
+    public CommonResult modifyVideoPoint(@RequestBody VideoPoint videoPoint) {
+        return CommonResult.success(iVideoPointService.updateById(videoPoint));
+    }
+
+    @DeleteMapping("/deletion")
+    @ApiOperation("鍒犻櫎")
+    public  CommonResult deleteVideoPoint(@RequestParam Long id){
+        return CommonResult.success(iVideoPointService.removeById(id));
+    }
+}
\ No newline at end of file
diff --git a/ycl-platform/src/main/java/com/ycl/entity/equipment/EquipmentBayonet.java b/ycl-platform/src/main/java/com/ycl/entity/equipment/EquipmentBayonet.java
new file mode 100644
index 0000000..28ef0fd
--- /dev/null
+++ b/ycl-platform/src/main/java/com/ycl/entity/equipment/EquipmentBayonet.java
@@ -0,0 +1,69 @@
+package com.ycl.entity.equipment;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+
+/**
+ * <p>
+ * 鍗″彛绠$悊
+ * </p>
+ *
+ * @author zhanghua
+ * @since 2022-10-14
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("ums_equipment_bayonet")
+public class EquipmentBayonet implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 涓婚敭
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 鍗″彛鍚嶇О
+     */
+    @TableField("bayonet_name")
+    private String bayonetName;
+
+    /**
+     * 鍗″彛缁忓害
+     */
+    @TableField("longitude")
+    private BigDecimal longitude;
+
+    /**
+     * 鍗″彛绾害
+     */
+    @TableField("latitude")
+    private BigDecimal latitude;
+
+    /**
+     * ip鍦板潃
+     */
+    @TableField("ip_address")
+    private String ipAddress;
+
+    /**
+     * 绔彛鍙�
+     */
+    @TableField("port")
+    private String port;
+
+    /**
+     * 鎻忚堪
+     */
+    @TableField("description")
+    private String description;
+}
\ No newline at end of file
diff --git a/ycl-platform/src/main/java/com/ycl/service/equipment/IEquipmentBayonetService.java b/ycl-platform/src/main/java/com/ycl/service/equipment/IEquipmentBayonetService.java
new file mode 100644
index 0000000..fe3ad71
--- /dev/null
+++ b/ycl-platform/src/main/java/com/ycl/service/equipment/IEquipmentBayonetService.java
@@ -0,0 +1,16 @@
+package com.ycl.service.equipment;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ycl.entity.equipment.EquipmentBayonet;
+
+/**
+ * <p>
+ * 鍗″彛绠$悊 鏈嶅姟绫�
+ * </p>
+ *
+ * @author zhanghua
+ * @since 2022-10-14
+ */
+public interface IEquipmentBayonetService extends IService<EquipmentBayonet> {
+
+}
diff --git a/ycl-platform/src/main/java/com/ycl/service/equipment/impl/EquipmentBayonetServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/equipment/impl/EquipmentBayonetServiceImpl.java
new file mode 100644
index 0000000..82ff304
--- /dev/null
+++ b/ycl-platform/src/main/java/com/ycl/service/equipment/impl/EquipmentBayonetServiceImpl.java
@@ -0,0 +1,20 @@
+package com.ycl.service.equipment.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ycl.entity.equipment.EquipmentBayonet;
+import com.ycl.mapper.equipment.EquipmentBayonetMapper;
+import com.ycl.service.equipment.IEquipmentBayonetService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 鍗″彛绠$悊 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author zhanghua
+ * @since 2022-10-14
+ */
+@Service
+public class EquipmentBayonetServiceImpl extends ServiceImpl<EquipmentBayonetMapper, EquipmentBayonet> implements IEquipmentBayonetService {
+
+}
diff --git a/ycl-platform/src/main/resources/mapper/equipment/EquipmentBayonetMapper.xml b/ycl-platform/src/main/resources/mapper/equipment/EquipmentBayonetMapper.xml
new file mode 100644
index 0000000..eb398d3
--- /dev/null
+++ b/ycl-platform/src/main/resources/mapper/equipment/EquipmentBayonetMapper.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ycl.mapper.equipment.EquipmentBayonetMapper">
+
+    <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+    <resultMap id="BaseResultMap" type="com.ycl.entity.equipment.EquipmentBayonet">
+        <id column="id" property="id" />
+        <result column="bayonet_name" property="bayonetName" />
+        <result column="longitude" property="longitude" />
+        <result column="latitude" property="latitude" />
+        <result column="ip_address" property="ipAddress" />
+        <result column="port" property="port" />
+        <result column="description" property="description" />
+    </resultMap>
+
+    <!-- 閫氱敤鏌ヨ缁撴灉鍒� -->
+    <sql id="Base_Column_List">
+        id, bayonet_name, longitude, latitude, ip_address, port, description
+    </sql>
+
+</mapper>

--
Gitblit v1.8.0