lzs
parent
2cfc4be141
commit
1bd707698e
|
@ -1,30 +0,0 @@
|
|||
package com.god.base.common;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class Fence {
|
||||
/** 电子围栏ID */
|
||||
private Integer fenceId ;
|
||||
/** 围栏名称 */
|
||||
private String fenceName ;
|
||||
/** 围栏经纬度 */
|
||||
private String fenceLat ;
|
||||
/** 激活状态 */
|
||||
private Integer fenceStatus ;
|
||||
/** 操作时间 */
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
|
||||
private Date fenceTime ;
|
||||
/** 操作者 */
|
||||
private Integer createBy ;
|
||||
}
|
|
@ -0,0 +1,96 @@
|
|||
package com.god.base.common.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.god.base.common.domain.request.FenceAddRequest;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 电子围栏信息
|
||||
*
|
||||
* @Author Lou-Zs
|
||||
* @Date 2023/11/20 19:41
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@TableName(value = "t_fence")
|
||||
public class Fence {
|
||||
|
||||
|
||||
/**
|
||||
* 围栏主建编号
|
||||
*/
|
||||
@TableId(value = "fence_id",type = IdType.AUTO)
|
||||
private long fenceId;
|
||||
|
||||
/**
|
||||
* 围栏名称
|
||||
*/
|
||||
@NotEmpty(message = "围栏名称不能为空")
|
||||
private String fenceName;
|
||||
|
||||
/**
|
||||
* 围栏坐标位置
|
||||
*/
|
||||
private String fenceLocation;
|
||||
|
||||
/**
|
||||
* 激活状态
|
||||
* 0-停用
|
||||
* 1-开启
|
||||
*/
|
||||
private Integer fenceStatus;
|
||||
|
||||
/**
|
||||
* 行驶状态
|
||||
* 1-驶入
|
||||
* 2-驶出
|
||||
*/
|
||||
private Integer driveStatus;
|
||||
|
||||
/**
|
||||
* 车辆主建
|
||||
*/
|
||||
private String carVinId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH-mm-ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH-mm-ss",timezone = "GMT+8")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH-mm-ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH-mm-ss",timezone = "GMT+8")
|
||||
private Date updateTime;
|
||||
|
||||
|
||||
|
||||
public static Fence fenceBuildAdd(FenceAddRequest fenceAddRequest){
|
||||
return Fence.builder()
|
||||
.fenceName(fenceAddRequest.getFenceName())
|
||||
.fenceLocation(fenceAddRequest.getFenceLocation())
|
||||
.fenceStatus(fenceAddRequest.getFenceStatus())
|
||||
.driveStatus(fenceAddRequest.getDriveStatus())
|
||||
.carVinId(fenceAddRequest.getCarVinId())
|
||||
.createTime(fenceAddRequest.getCreateTime())
|
||||
.updateTime(fenceAddRequest.getUpdateTime())
|
||||
.build();
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,76 @@
|
|||
package com.god.base.common.domain.request;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 围栏新增参数
|
||||
*
|
||||
* @author Lou-Zs
|
||||
* @Date 2023/11/20 19:41
|
||||
**/
|
||||
@Data
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@TableName(value = "t_fence")
|
||||
public class FenceAddRequest {
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 围栏名称
|
||||
*/
|
||||
@NotEmpty(message = "围栏名称不能为空")
|
||||
private String fenceName;
|
||||
|
||||
/**
|
||||
* 围栏坐标位置
|
||||
*/
|
||||
private String fenceLocation;
|
||||
|
||||
/**
|
||||
* 激活状态
|
||||
* 0-停用
|
||||
* 1-开启
|
||||
*/
|
||||
private Integer fenceStatus;
|
||||
|
||||
/**
|
||||
* 行驶状态
|
||||
* 1-驶入
|
||||
* 2-驶出
|
||||
*/
|
||||
private Integer driveStatus;
|
||||
|
||||
/**
|
||||
* 车辆主建
|
||||
*/
|
||||
private String carVinId;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH-mm-ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH-mm-ss",timezone = "GMT+8")
|
||||
private Date createTime;
|
||||
|
||||
/**
|
||||
* 修改时间
|
||||
*/
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH-mm-ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH-mm-ss",timezone = "GMT+8")
|
||||
private Date updateTime;
|
||||
|
||||
|
||||
}
|
|
@ -0,0 +1,46 @@
|
|||
package com.god.base.common.domain.request;
|
||||
|
||||
import com.god.base.common.page.PageQuery;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
|
||||
/**
|
||||
* 电子围栏查询条件
|
||||
*
|
||||
* @author Lou-Zs
|
||||
* @Date 2023/11/20 22:01
|
||||
**/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class FenceQueryRequest extends PageQuery {
|
||||
|
||||
|
||||
/**
|
||||
* 围栏名称
|
||||
*/
|
||||
private String fenceName;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 激活状态
|
||||
* 0-停用
|
||||
* 1-开启
|
||||
*/
|
||||
private Integer fenceStatus;
|
||||
|
||||
/**
|
||||
* 行驶状态
|
||||
* 1-驶入
|
||||
* 2-驶出
|
||||
*/
|
||||
private Integer driveStatus;
|
||||
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
package com.god.base.common.page;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.SuperBuilder;
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询条件
|
||||
*
|
||||
* @author Lou-Zs
|
||||
* @Date 2023/11/20 22:03
|
||||
**/
|
||||
@Data
|
||||
@SuperBuilder
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class PageQuery {
|
||||
|
||||
|
||||
private Integer pageNum;
|
||||
|
||||
|
||||
|
||||
private Integer pageSize;
|
||||
|
||||
|
||||
|
||||
public <T> Page<T> buildPage(){
|
||||
Page<T> page = new Page<>(this.pageNum, this.pageSize);
|
||||
return page;
|
||||
}
|
||||
}
|
|
@ -1,30 +0,0 @@
|
|||
package com.god.base.common.response;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class FenceResponse {
|
||||
/** 电子围栏ID */
|
||||
private Integer fenceId ;
|
||||
/** 围栏名称 */
|
||||
private String fenceName ;
|
||||
/** 围栏经纬度 */
|
||||
private String fenceLat ;
|
||||
/** 激活状态 */
|
||||
private Integer fenceStatus ;
|
||||
/** 操作时间 */
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
|
||||
private Date fenceTime ;
|
||||
/** 操作者 */
|
||||
private Integer createBy ;
|
||||
}
|
|
@ -1,2 +0,0 @@
|
|||
Spring Boot Version: ${spring-boot.version}
|
||||
Spring Application Name: ${spring.application.name}
|
|
@ -1,28 +0,0 @@
|
|||
# Tomcat
|
||||
server:
|
||||
port: 9802
|
||||
|
||||
# Spring
|
||||
spring:
|
||||
application:
|
||||
# 应用名称
|
||||
name: god-car-base
|
||||
profiles:
|
||||
# 环境配置
|
||||
active: dev
|
||||
cloud:
|
||||
nacos:
|
||||
discovery:
|
||||
# 服务注册地址
|
||||
server-addr: nacos.god.com:8848
|
||||
config:
|
||||
# 配置中心地址
|
||||
server-addr: nacos.god.com:8848
|
||||
# 配置文件格式
|
||||
file-extension: yml
|
||||
# 共享配置
|
||||
shared-configs:
|
||||
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
|
||||
logging:
|
||||
level:
|
||||
com.god.system.mapper: DEBUG
|
|
@ -1,74 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<configuration scan="true" scanPeriod="60 seconds" debug="false">
|
||||
<!-- 日志存放路径 -->
|
||||
<property name="log.path" value="./logs/god-car-base"/>
|
||||
<!-- 日志输出格式 -->
|
||||
<property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n"/>
|
||||
|
||||
<!-- 控制台输出 -->
|
||||
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<encoder>
|
||||
<pattern>${log.pattern}</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- 系统日志输出 -->
|
||||
<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>${log.path}/info.log</file>
|
||||
<!-- 循环政策:基于时间创建日志文件 -->
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<!-- 日志文件名格式 -->
|
||||
<fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern>
|
||||
<!-- 日志最大的历史 60天 -->
|
||||
<maxHistory>60</maxHistory>
|
||||
</rollingPolicy>
|
||||
<encoder>
|
||||
<pattern>${log.pattern}</pattern>
|
||||
</encoder>
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||
<!-- 过滤的级别 -->
|
||||
<level>INFO</level>
|
||||
<!-- 匹配时的操作:接收(记录) -->
|
||||
<onMatch>ACCEPT</onMatch>
|
||||
<!-- 不匹配时的操作:拒绝(不记录) -->
|
||||
<onMismatch>DENY</onMismatch>
|
||||
</filter>
|
||||
</appender>
|
||||
|
||||
<appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>${log.path}/error.log</file>
|
||||
<!-- 循环政策:基于时间创建日志文件 -->
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<!-- 日志文件名格式 -->
|
||||
<fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern>
|
||||
<!-- 日志最大的历史 60天 -->
|
||||
<maxHistory>60</maxHistory>
|
||||
</rollingPolicy>
|
||||
<encoder>
|
||||
<pattern>${log.pattern}</pattern>
|
||||
</encoder>
|
||||
<filter class="ch.qos.logback.classic.filter.LevelFilter">
|
||||
<!-- 过滤的级别 -->
|
||||
<level>ERROR</level>
|
||||
<!-- 匹配时的操作:接收(记录) -->
|
||||
<onMatch>ACCEPT</onMatch>
|
||||
<!-- 不匹配时的操作:拒绝(不记录) -->
|
||||
<onMismatch>DENY</onMismatch>
|
||||
</filter>
|
||||
</appender>
|
||||
|
||||
<!-- 系统模块日志级别控制 -->
|
||||
<logger name="com.god" level="info"/>
|
||||
<!-- Spring日志级别控制 -->
|
||||
<logger name="org.springframework" level="warn"/>
|
||||
|
||||
<root level="info">
|
||||
<appender-ref ref="console"/>
|
||||
</root>
|
||||
|
||||
<!--系统操作日志-->
|
||||
<root level="info">
|
||||
<appender-ref ref="file_info"/>
|
||||
<appender-ref ref="file_error"/>
|
||||
</root>
|
||||
</configuration>
|
|
@ -60,8 +60,14 @@
|
|||
<artifactId>mysql-connector-j</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.baomidou</groupId>
|
||||
<artifactId>mybatis-plus-boot-starter</artifactId>
|
||||
<version>3.4.2</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
|
||||
<build>
|
||||
<finalName>${project.artifactId}</finalName>
|
||||
<plugins>
|
||||
|
|
|
@ -1,71 +1,113 @@
|
|||
package com.god.base.server.controller;
|
||||
|
||||
/**
|
||||
* @ClassName FenceController
|
||||
* @Author Lou-Zs
|
||||
* @Date 2023/11/19 20:00
|
||||
* @Version 1.0
|
||||
* @Description TODO
|
||||
**/
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.alibaba.nacos.api.model.v2.Result;
|
||||
import com.god.base.common.Fence;
|
||||
import com.god.base.common.response.FenceResponse;
|
||||
import com.god.base.common.domain.Fence;
|
||||
import com.god.base.common.domain.request.FenceAddRequest;
|
||||
import com.god.base.common.domain.request.FenceQueryRequest;
|
||||
import com.god.base.server.service.FenceService;
|
||||
import com.god.common.core.web.page.TableDataInfo;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* base围栏操作
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/fence")
|
||||
@RequestMapping("/baseFence")
|
||||
@Log4j2
|
||||
public class FenceController {
|
||||
|
||||
@Autowired
|
||||
private HttpServletRequest request;
|
||||
@Autowired
|
||||
private FenceService fenceService;
|
||||
private HttpServletRequest request;
|
||||
|
||||
|
||||
// 电子围栏列表
|
||||
@GetMapping("/fencingList")
|
||||
public Result<List<FenceResponse>> fencingList(){
|
||||
log.info("功能名称:电子围栏,请求URL:【{}】,请求方法:【{}】",request.getRequestURI(),
|
||||
request.getMethod());
|
||||
Result<List<FenceResponse>> result = fenceService.fencingList();
|
||||
log.info("功能名称:电子围栏,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(),
|
||||
request.getMethod(), JSONObject.toJSONString(result));
|
||||
return result;
|
||||
}
|
||||
/**
|
||||
* 增添电子围栏
|
||||
* @param fenceAddRequest
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/insertFence")
|
||||
public Result<String> insertFence(@RequestBody @Validated FenceAddRequest fenceAddRequest){
|
||||
log.info("功能介绍新增电子围栏,请求方式;{},请求路径:{},请求参数:{}",
|
||||
request.getMethod(),
|
||||
request.getRequestURL(),
|
||||
JSONObject.toJSONString(fenceAddRequest));
|
||||
|
||||
// 添加电子围栏
|
||||
@PostMapping("/addfencing")
|
||||
public Result addfencing(@RequestBody Fence fence){
|
||||
log.info("功能名称:添加电子围栏,请求URL:【{}】,请求方法:【{}】,请求参数:【{}】",request.getRequestURI(),
|
||||
request.getMethod(),fence);
|
||||
fenceService.addfencing(fence);
|
||||
Result result = Result.success();
|
||||
log.info("功能名称:添加电子围栏,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(),
|
||||
request.getMethod(), JSONObject.toJSONString(result));
|
||||
return result;
|
||||
//围栏添加
|
||||
fenceService.save(Fence.fenceBuildAdd(fenceAddRequest));
|
||||
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
|
||||
// 删除围栏
|
||||
@PostMapping("/deleteFencingById/{fencingId}")
|
||||
public Result deleteFencingById(@PathVariable Integer fencingId){
|
||||
log.info("功能名称:获取编号删除围栏,请求URL:【{}】,请求方法:【{}】,请求参数:【{}】",request.getRequestURI(),
|
||||
request.getMethod(),fencingId);
|
||||
Result result = fenceService.deleteFencingById(fencingId);
|
||||
log.info("功能名称:获取编号删除围栏,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(),
|
||||
request.getMethod(), JSONObject.toJSONString(result));
|
||||
return result;
|
||||
/**
|
||||
* 根据围栏编号编辑围栏信息
|
||||
* @param fence
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/updateFence")
|
||||
public Result<String> updateFence(@RequestBody @Validated Fence fence){
|
||||
log.info("功能介绍:编辑围栏信息,请求方式:{},请求路径:{},请求参数:{}",
|
||||
request.getMethod(),
|
||||
request.getRequestURL(),
|
||||
JSONObject.toJSONString(fence));
|
||||
|
||||
//编辑电子围栏信息
|
||||
fenceService.updateById(fence);
|
||||
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
|
||||
// 修改围栏
|
||||
@PostMapping("/updateFencing")
|
||||
public Result updateFencing(@RequestBody Fence fence){
|
||||
log.info("功能名称:修改围栏,请求URL:【{}】,请求方法:【{}】,请求参数:【{}】",request.getRequestURI(),
|
||||
request.getMethod(),fence);
|
||||
Result result = fenceService.updateFencing(fence);
|
||||
log.info("功能名称:修改围栏,请求URL:【{}】,请求方法:【{}】,响应结果:【{}】",request.getRequestURI(),
|
||||
request.getMethod(), JSONObject.toJSONString(result));
|
||||
return result;
|
||||
/**
|
||||
* 根据围栏编号删除围栏
|
||||
* @param fenceId
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/deleteFence/{fenceId}")
|
||||
public Result<String> deleteFence(@RequestParam("fenceId") String fenceId){
|
||||
log.info("功能介绍:通过围栏编号删除围栏,请求方式:{},请求路径:{},请求参数:{}",
|
||||
request.getMethod(),
|
||||
request.getRequestURL(),
|
||||
JSONObject.toJSONString(fenceId));
|
||||
|
||||
//根据围栏编号删除围栏
|
||||
fenceService.removeById(fenceId);
|
||||
|
||||
return Result.success();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 分页查询电子围栏列表
|
||||
* @param fenceQueryRequest
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/fenceListAndPage")
|
||||
public Result<TableDataInfo<Fence>> fenceListAndPage(@RequestBody FenceQueryRequest fenceQueryRequest){
|
||||
log.info("功能介绍:查询围栏列表,请求方式:{},请求路径:{},请求参数:{}",
|
||||
request.getMethod(),
|
||||
request.getRequestURL(),
|
||||
JSONObject.toJSONString(fenceQueryRequest));
|
||||
|
||||
//分页查询围栏列表
|
||||
TableDataInfo<Fence> dataInfo = fenceService.fenceListAndPage(fenceQueryRequest);
|
||||
|
||||
return Result.success(dataInfo);
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,18 +1,17 @@
|
|||
package com.god.base.server.mapper;
|
||||
|
||||
import com.god.base.common.Fence;
|
||||
import com.god.base.common.response.FenceResponse;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.god.base.common.domain.Fence;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @ClassName FenceMapper
|
||||
* @Author Lou-Zs
|
||||
* @Date 2023/11/19 20:28
|
||||
* @Version 1.0
|
||||
* @Description TODO
|
||||
**/
|
||||
@Mapper
|
||||
public interface FenceMapper {
|
||||
List<FenceResponse> fencingList();
|
||||
public interface FenceMapper extends BaseMapper<Fence> {
|
||||
|
||||
void addfencing(Fence fence);
|
||||
|
||||
int deleteFencingById(Integer fencingId);
|
||||
|
||||
int updateFencing(Fence fence);
|
||||
}
|
||||
|
|
|
@ -1,17 +1,24 @@
|
|||
package com.god.base.server.service;
|
||||
|
||||
import com.alibaba.nacos.api.model.v2.Result;
|
||||
import com.god.base.common.Fence;
|
||||
import com.god.base.common.response.FenceResponse;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.god.base.common.domain.Fence;
|
||||
import com.god.base.common.domain.request.FenceQueryRequest;
|
||||
import com.god.common.core.web.page.TableDataInfo;
|
||||
|
||||
import java.util.List;
|
||||
/**
|
||||
* @ClassName FenceService
|
||||
* @Author Lou-Zs
|
||||
* @Date 2023/11/19 22:26
|
||||
* @Version 1.0
|
||||
* @Description TODO
|
||||
**/
|
||||
public interface FenceService extends IService<Fence> {
|
||||
|
||||
public interface FenceService {
|
||||
Result<List<FenceResponse>> fencingList();
|
||||
|
||||
void addfencing(Fence fence);
|
||||
|
||||
Result deleteFencingById(Integer fencingId);
|
||||
|
||||
Result updateFencing(Fence fence);
|
||||
/**
|
||||
* 分页查询电子围栏列表
|
||||
* @param fenceQueryRequest
|
||||
* @return
|
||||
*/
|
||||
TableDataInfo<Fence> fenceListAndPage(FenceQueryRequest fenceQueryRequest);
|
||||
}
|
||||
|
|
|
@ -1,51 +1,111 @@
|
|||
package com.god.base.server.service.impl;
|
||||
|
||||
import com.alibaba.nacos.api.model.v2.Result;
|
||||
import com.god.base.common.Fence;
|
||||
import com.god.base.common.response.FenceResponse;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.god.base.common.domain.Fence;
|
||||
import com.god.base.common.domain.request.FenceQueryRequest;
|
||||
import com.god.base.server.mapper.FenceMapper;
|
||||
import com.god.base.server.service.FenceService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import com.god.common.core.web.page.TableDataInfo;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.poi.util.StringUtil;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* @ClassName FenceServiceImpl
|
||||
* @Author Lou-Zs
|
||||
* @Date 2023/11/19 22:26
|
||||
* @Version 1.0
|
||||
* @Description TODO
|
||||
**/
|
||||
@Service
|
||||
public class FenceServiceImpl implements FenceService {
|
||||
@Autowired
|
||||
private FenceMapper fenceMapper;
|
||||
@Log4j2
|
||||
public class FenceServiceImpl extends ServiceImpl<FenceMapper , Fence> implements FenceService {
|
||||
|
||||
|
||||
// 围栏列表
|
||||
/**
|
||||
* 增添电子围栏
|
||||
* @param entity
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Result<List<FenceResponse>> fencingList() {
|
||||
List<FenceResponse> list=fenceMapper.fencingList();
|
||||
return Result.success(list);
|
||||
public boolean save(Fence entity) {
|
||||
boolean save = super.save(entity);
|
||||
if (!save){
|
||||
log.warn("增加围栏:[/-{}-/]失败! 请求参数:{}",
|
||||
entity.getFenceName(),
|
||||
JSONObject.toJSONString(entity));
|
||||
throw new RuntimeException("增添围栏失败!");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// 添加围栏
|
||||
/**
|
||||
* 根据围栏编号编辑围栏信息
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void addfencing(Fence fence) {
|
||||
Date date = new Date();
|
||||
fence.setFenceTime(date);
|
||||
fenceMapper.addfencing(fence);
|
||||
|
||||
public boolean removeById(Serializable id) {
|
||||
boolean remove = super.removeById(id);
|
||||
if (!remove){
|
||||
log.warn("删除围栏编号:[/-{}-/]失败!",
|
||||
id);
|
||||
throw new RuntimeException("删除围栏失败!");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// 删除围栏
|
||||
/**
|
||||
* 根据围栏编号删除围栏
|
||||
* @param entity
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Result deleteFencingById(Integer fencingId) {
|
||||
int i=fenceMapper.deleteFencingById(fencingId);
|
||||
return i>0?Result.success("围栏已成功删除"):Result.failure("删除失败");
|
||||
public boolean updateById(Fence entity) {
|
||||
boolean update = super.updateById(entity);
|
||||
if (!update){
|
||||
log.warn("编辑围栏[/-{}-/]未成功! 请求参数:{}",
|
||||
entity.getFenceName(),
|
||||
JSONObject.toJSONString(entity));
|
||||
throw new RuntimeException("编辑围栏失败!");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// 删除围栏
|
||||
|
||||
/**
|
||||
* 分页查询电子围栏列表
|
||||
* @param fenceQueryRequest
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public Result updateFencing(Fence fence) {
|
||||
Date date = new Date();
|
||||
fence.setFenceTime(date);
|
||||
int i=fenceMapper.updateFencing(fence);
|
||||
return i>0?Result.success("围栏已成功拦截"):Result.failure("拦截失败");
|
||||
public TableDataInfo<Fence> fenceListAndPage(FenceQueryRequest fenceQueryRequest) {
|
||||
LambdaQueryWrapper<Fence> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
//判断查询围栏是否为空
|
||||
if (StringUtils.isNotEmpty(fenceQueryRequest.getFenceName())){
|
||||
//模糊查询
|
||||
lambdaQueryWrapper.like(Fence::getFenceName,fenceQueryRequest.getFenceName());
|
||||
}
|
||||
//判断激活状态是否为空
|
||||
if (null != fenceQueryRequest.getFenceStatus()){
|
||||
//精确查询
|
||||
lambdaQueryWrapper.eq(Fence::getFenceStatus,fenceQueryRequest.getFenceStatus());
|
||||
}
|
||||
//判断行驶状态是否为空
|
||||
if (null != fenceQueryRequest.getDriveStatus()){
|
||||
//精确查询
|
||||
lambdaQueryWrapper.eq(Fence::getDriveStatus,fenceQueryRequest.getDriveStatus());
|
||||
}
|
||||
Page<Fence> page = this.page(fenceQueryRequest.buildPage(), lambdaQueryWrapper);
|
||||
return TableDataInfo.<Fence>builder()
|
||||
.rows(page.getRecords())
|
||||
.total(page.getTotal())
|
||||
.build();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,36 +0,0 @@
|
|||
<?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.god.base.server.mapper.FenceMapper">
|
||||
<insert id="addfencing">
|
||||
insert into(
|
||||
fence_id,
|
||||
fence_name,
|
||||
fence_lat,
|
||||
fence_status,
|
||||
fence_time,
|
||||
create_by) values(
|
||||
#{fenceId},
|
||||
#{fenceName},
|
||||
#{fenceLat},
|
||||
#{fenceStatus},
|
||||
#{fenceTime},
|
||||
#{createBy})
|
||||
</insert>
|
||||
|
||||
<update id="updateFencing">
|
||||
update t_fence set
|
||||
fence_name=#{fenceName},
|
||||
fence_lat=#{fenceLat},
|
||||
fence_status=#{fenceStatus},
|
||||
fence_time=#{fenceTime},
|
||||
create_By=#{createBy} where fence_id=#{fenceId}
|
||||
</update>
|
||||
<delete id="deleteFencingById">
|
||||
delete from t_fence where fence_id=#{fenceId}
|
||||
</delete>
|
||||
|
||||
|
||||
<select id="fencingList" resultType="com.god.base.common.response.FenceResponse">
|
||||
select * from t_fence
|
||||
</select>
|
||||
</mapper>
|
Loading…
Reference in New Issue