diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/Fence.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/Fence.java new file mode 100644 index 0000000..09c04b0 --- /dev/null +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/Fence.java @@ -0,0 +1,64 @@ +package com.zhilian.business.domain; + +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 com.zhilian.common.core.annotation.Excel; +import com.zhilian.common.core.web.domain.BaseEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import lombok.experimental.SuperBuilder; + +import java.util.List; + +/** + * @ClassName Fence + * @Description 电子围栏实体类 + * @Author ZeJinG.Su + * @Date 15:28 2024/4/8 + */ + +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@TableName("business_fence") +public class Fence extends BaseEntity { + private static final long serialVersionUID = 1L; + /** + * 电子围栏编号 + */ + @Excel(name = "参数主键", cellType = Excel.ColumnType.NUMERIC) + @TableId(value = "fence_id", type = IdType.AUTO) + private Long fenceId; + /** + * 电子围栏名称 + */ + @Excel(name = "电子围栏名称") + @TableField("fence_name") + private String fenceName; + /** + * 电子围栏类型编号 + */ + @Excel(name = "电子围栏类型编号") + @TableField("fence_type_id") + private Long fenceTypeId; + /** + * 电子围栏状态 + */ + @Excel(name = "电子围栏状态") + @TableField("fence_state") + private Long fenceState; + /** + * 电子围栏经纬度信息 + */ + @Excel(name = "电子围栏经纬度信息") + @TableField("fence_message") + private String fenceMessage; + @TableField(exist = false) + List markersList; +} diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/Markers.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/Markers.java new file mode 100644 index 0000000..b89c946 --- /dev/null +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/Markers.java @@ -0,0 +1,35 @@ +package com.zhilian.business.domain; + +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 com.zhilian.common.core.annotation.Excel; +import com.zhilian.common.core.web.domain.BaseEntity; +import lombok.*; +import lombok.experimental.SuperBuilder; + +import java.util.List; + +@Data +@ToString +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@TableName("business_markers") +public class Markers extends BaseEntity { + + @TableId(value = "markers_id", type = IdType.AUTO) + @Excel(name = "标识编号") + private Long markersId; + + @TableField("markers_name") + @Excel(name = "标识名称") + private String markersName; + + + @TableField(exist = false) + List fenceIds; + +} diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/Vehicle.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/Vehicle.java new file mode 100644 index 0000000..f422402 --- /dev/null +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/Vehicle.java @@ -0,0 +1,71 @@ +package com.zhilian.business.domain; + +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 com.zhilian.common.core.annotation.Excel; +import com.zhilian.common.core.web.domain.BaseEntity; +import lombok.*; +import lombok.experimental.SuperBuilder; + +import java.util.List; + +/** + * 车辆信息对象 business_vehicle + */ +@Data +@ToString +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode(callSuper = true) +@TableName("business_vehicle") +public class Vehicle extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 车辆ID + */ + @Excel(name = "车辆ID",cellType = Excel.ColumnType.NUMERIC) + @TableId(value = "vehicle_id",type = IdType.AUTO) + private Long vehicleId; + /** + * 车辆VIN + */ + @TableField("vehicle_vin") + private String vehicleVIN; + /** + * 车辆类型编号 + */ + private Long vehicleTypeId; + + + @TableField(exist = false) + private Long vehicleTypeName; + + /** + * 电机厂商 + */ + private String vehicleMotor; + /** + * 电池厂商 + */ + private String vehicleBattery; + /** + * 电机ID + */ + private String motorId; + /** + * 电池ID + */ + private String batteryId; + + /** + * 车辆状态 + */ + private Long vehicleState; + + @TableField(exist = false) + private List markersIds; +} diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/VehicleType.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/VehicleType.java new file mode 100644 index 0000000..2d4ef73 --- /dev/null +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/VehicleType.java @@ -0,0 +1,29 @@ +package com.zhilian.business.domain; + +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 com.zhilian.common.core.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.ToString; +import lombok.experimental.SuperBuilder; + +@Data +@SuperBuilder +@NoArgsConstructor +@AllArgsConstructor +@ToString +@TableName(value = "business_vehicle_type") +public class VehicleType { + + @TableId(value = "vehicle_type_id", type = IdType.AUTO) + @Excel(name = "车型ID") + private Long vehicleTypeId; + + @Excel(name = "车型名称") + @TableField(value = "vehicle_type_name") + private String vehicleTypeName; +} diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/middle/MarkersFence.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/middle/MarkersFence.java new file mode 100644 index 0000000..d4a732e --- /dev/null +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/middle/MarkersFence.java @@ -0,0 +1,34 @@ +package com.zhilian.business.domain.middle; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.ToString; + +@Data +@ToString +@TableName("business_markers_fence") +public class MarkersFence { + /** + * 车辆标识编号 + */ + @TableId(value = "markers_id",type = IdType.INPUT) + private Long markerId; + @TableField(value = "fence_id",insertStrategy = FieldStrategy.IGNORED) + private Long fenceId; + + public Long getMarkerId() { + return markerId; + } + + public void setMarkerId(Long markerId) { + this.markerId = markerId; + } + + public Long getFenceId() { + return fenceId; + } + + public void setFenceId(Long fenceId) { + this.fenceId = fenceId; + } +} diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/middle/VehicleMarkers.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/middle/VehicleMarkers.java new file mode 100644 index 0000000..ca25e31 --- /dev/null +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/middle/VehicleMarkers.java @@ -0,0 +1,38 @@ +package com.zhilian.business.domain.middle; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.ToString; + +@Data +@ToString +@TableName("business_vehicle_markers") +public class VehicleMarkers { + /** + * 车辆编号 + */ + @TableId(value = "vehicle_id",type = IdType.INPUT) + private Long vehicleId; + /** + * 车辆标识编号 + */ + @TableField(value = "markers_id",insertStrategy = FieldStrategy.IGNORED) + private Long markersId; + + public Long getVehicleId() { + return vehicleId; + } + + public void setVehicleId(Long vehicleId) { + this.vehicleId = vehicleId; + } + + public Long getMarkersId() { + return markersId; + } + + public void setMarkersId(Long markersId) { + this.markersId = markersId; + } + +} diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/vo/MarkersVo.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/vo/MarkersVo.java new file mode 100644 index 0000000..b58a1d7 --- /dev/null +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/vo/MarkersVo.java @@ -0,0 +1,8 @@ +package com.zhilian.business.domain.vo; + +import lombok.Data; + +@Data +public class MarkersVo { + +} diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/vo/VehicleVo.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/vo/VehicleVo.java new file mode 100644 index 0000000..0d351f9 --- /dev/null +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/domain/vo/VehicleVo.java @@ -0,0 +1,37 @@ +package com.zhilian.business.domain.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.zhilian.common.core.annotation.Excel; +import lombok.Data; + +@Data +public class VehicleVo { + /** + * 车辆VIN + */ + private String vehicleVIN; + /** + * 车辆类型编号 + */ + private Long vehicleTypeId; + /** + * 电子围栏编号 + */ + private Long fenceId; + /** + * 电机厂商 + */ + private String motorBusiness; + /** + * 电池厂商 + */ + private String batteryBusiness; + /** + * 电机ID + */ + private String motorID; + /** + * 电池ID + */ + private String batteryID; +} diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/remote/RemoteFenceService.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/remote/RemoteFenceService.java new file mode 100644 index 0000000..9fd5a94 --- /dev/null +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/remote/RemoteFenceService.java @@ -0,0 +1,7 @@ +package com.zhilian.business.remote; + +import org.springframework.stereotype.Component; + +@Component +public interface RemoteFenceService { +} diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/remote/factory/RemoteFenceFallbackFactory.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/remote/factory/RemoteFenceFallbackFactory.java new file mode 100644 index 0000000..3ba9998 --- /dev/null +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/business/remote/factory/RemoteFenceFallbackFactory.java @@ -0,0 +1,8 @@ +package com.zhilian.business.remote.factory; + +import com.zhilian.common.core.constant.ServiceNameConstants; +import org.springframework.cloud.openfeign.FeignClient; + +//@FeignClient(contextId = "remoteFileService", value = ServiceNameConstants.FILE_SERVICE, fallbackFactory = RemoteFileFallbackFactory.class) +public class RemoteFenceFallbackFactory { +} diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/common/business/domain/Fence.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/common/business/domain/Fence.java index 705b5f4..245159e 100644 --- a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/common/business/domain/Fence.java +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/common/business/domain/Fence.java @@ -13,12 +13,14 @@ import lombok.NoArgsConstructor; import lombok.experimental.SuperBuilder; import java.util.List; + /** * @ClassName Fence * @Description 电子围栏实体类 * @Author ZeJinG.Su * @Date 15:28 2024/4/8 */ + @Data @SuperBuilder @NoArgsConstructor diff --git a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/common/business/domain/vo/FenceVo.java b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/common/business/domain/vo/FenceVo.java index 7c30a75..55ea650 100644 --- a/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/common/business/domain/vo/FenceVo.java +++ b/zhilian-common/zhilian-common-business/src/main/java/com/zhilian/common/business/domain/vo/FenceVo.java @@ -1,3 +1,4 @@ + package com.zhilian.common.business.domain.vo; import lombok.AllArgsConstructor; diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/controller/BreakController.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/controller/BreakController.java new file mode 100644 index 0000000..320e71c --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/controller/BreakController.java @@ -0,0 +1,102 @@ +package com.zhilian.business.controller; + +import com.zhilian.business.domain.Break; +import com.zhilian.business.domain.BreakVo; +import com.zhilian.business.service.BreakService; +import com.zhilian.common.core.domain.Result; +import com.zhilian.common.core.web.page.PageResult; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +/** + * @ClassName BreakController + * @Description 故障业务实现 + * @Author YuanYongH + * @Date 2024/4/4 9:40 + */ +@RestController +public class BreakController { + + @Autowired + private BreakService breakService; + + /** + * @Description // 故障列表 + * @Date 2024/4/4 + * @param breakVo + * @return com.zhilian.common.core.domain.Result> + **/ + @PostMapping("breakList") + public Result> breakList(@RequestBody BreakVo breakVo) { + PageResult pageResult = breakService.breakList(breakVo); + return Result.success(pageResult); + } + + /** + * @Description // 故障添加 + * @Date 2024/4/4 + * @param break1 + * @return com.zhilian.common.core.domain.Result + **/ + @PostMapping("breakAdd") + public Result breakAdd(@RequestBody Break break1) { + int i = breakService.breakAdd(break1); + Result success = Result.success(i); + return success; + } + + /** + * @Description // 故障修改 + * @Date 2024/4/4 + * @param break1 + * @return com.zhilian.common.core.domain.Result + **/ + @PostMapping("breakUpd") + public Result breadUpd(@RequestBody Break break1) { + int i = breakService.breakUpd(break1); + Result success = Result.success(i); + return success; + } + + /** + * @Description // 故障删除 + * @Date 2024/4/4 + * @param breakId + * @return com.zhilian.common.core.domain.Result + **/ + @PostMapping("breakDel/{breakId}") + public Result delFirm(@PathVariable Integer breakId){ + int i = breakService.breakDel(breakId); + Result success = Result.success(i); + return success; + } +} + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/controller/BreakLogController.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/controller/BreakLogController.java new file mode 100644 index 0000000..c72bb04 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/controller/BreakLogController.java @@ -0,0 +1,31 @@ +package com.zhilian.business.controller; + +import com.zhilian.business.domain.BreakLog; +import com.zhilian.business.service.BreakLogService; +import com.zhilian.common.core.domain.Result; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @ClassName BreakLogController + * @Description TODO + * @Author YuanYongH + * @Date 2024/4/8 20:48 + */ +@RestController +public class BreakLogController { + + @Autowired + private BreakLogService breakLogService; + + @PostMapping("log") + public Result> breakLog() { + List list = breakLogService.breakLog(); + Result> success = Result.success(list); + return success; + } + +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/controller/BusinessBreakController.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/controller/BusinessBreakController.java new file mode 100644 index 0000000..4da3305 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/controller/BusinessBreakController.java @@ -0,0 +1,117 @@ +package com.zhilian.business.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; + +import com.zhilian.business.domain.BreakLog; +import com.zhilian.business.domain.request.BreakReq; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.zhilian.common.log.annotation.Log; +import com.zhilian.common.log.enums.BusinessType; +import com.zhilian.common.security.annotation.RequiresPermissions; +import com.zhilian.business.domain.BusinessBreak; +import com.zhilian.business.service.IBusinessBreakService; +import com.zhilian.common.core.web.controller.BaseController; +import com.zhilian.common.core.domain.Result; +import com.zhilian.common.core.utils.poi.ExcelUtil; +import com.zhilian.common.core.web.page.*; + +/** + * 故障Controller + * + * @author Yy + * @date 2024-04-07 + */ +@RestController +@RequestMapping("/break") +public class BusinessBreakController extends BaseController +{ + @Autowired + private IBusinessBreakService businessBreakService; + + /** + * 查询故障列表 + */ +// @RequiresPermissions("business:break:list") + @GetMapping("/list") + public Result> list(BreakReq breakReq) + { + startPage(); + List list = businessBreakService.selectBusinessBreakList(breakReq); + return getDataTable(list); + } + + /** + * 导出故障列表 + */ + @RequiresPermissions("business:break:export") + @Log(title = "故障", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BreakReq breakReq) + { + List list = businessBreakService.selectBusinessBreakList(breakReq); + ExcelUtil util = new ExcelUtil(BusinessBreak.class); + util.exportExcel(response, list, "故障数据"); + } + + /** + * 获取故障详细信息 + */ + @RequiresPermissions("business:break:query") + @GetMapping(value = "/{breakId}") + public Result getInfo(@PathVariable("breakId") Long breakId) + { + return success(businessBreakService.selectBusinessBreakByBreakId(breakId)); + } + + /** + * 新增故障 + */ + @RequiresPermissions("business:break:add") + @Log(title = "故障", businessType = BusinessType.INSERT) + @PostMapping + public Result add(@RequestBody BusinessBreak businessBreak) + { + return toAjax(businessBreakService.insertBusinessBreak(businessBreak)); + } + + /** + * 修改故障 + */ + @RequiresPermissions("business:break:edit") + @Log(title = "故障", businessType = BusinessType.UPDATE) + @PutMapping + public Result edit(@RequestBody BusinessBreak businessBreak) + { + return toAjax(businessBreakService.updateBusinessBreak(businessBreak)); + } + + /** + * 删除故障 + */ + @RequiresPermissions("business:break:remove") + @Log(title = "故障", businessType = BusinessType.DELETE) + @DeleteMapping("/{breakIds}") + public Result remove(@PathVariable Long[] breakIds) + { + return toAjax(businessBreakService.deleteBusinessBreakByBreakIds(breakIds)); + } + + /** + * 故障日志 + */ + @PostMapping("breakLog") + public Result> breakLog(){ + List list = businessBreakService.breakLog(); + Result> success = Result.success(list); + return success; + } +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/Break.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/Break.java new file mode 100644 index 0000000..425d1a2 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/Break.java @@ -0,0 +1,44 @@ +package com.zhilian.business.domain; + +import io.swagger.models.auth.In; +import lombok.Data; + +import java.util.Date; + +/** + * @ClassName Break + * @Description 故障实体类 + * @Author YuanYongH + * @Date 2024/4/4 9:40 + */ +@Data +public class Break { + /** + * 故障id + **/ + private Integer breakId; + /** + * 故障码 + **/ + private String breakCode; + /** + * 车辆VIN + **/ + private String breakVin; + /** + * 开始报警时间 + **/ + private Date breakDate; + /** + * 结束报警时间 + **/ + private Date breakTime; + /** + * 故障类型 + **/ + private String breakType; + /** + * 故障状态 是否警告 + **/ + private Integer breakState; +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/BreakLog.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/BreakLog.java new file mode 100644 index 0000000..068c39d --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/BreakLog.java @@ -0,0 +1,30 @@ +package com.zhilian.business.domain; + +import com.zhilian.common.core.web.page.PageResult; +import io.swagger.models.auth.In; +import lombok.Data; + +/** + * @ClassName BreakLog + * @Description TODO + * @Author YuanYongH + * @Date 2024/4/8 15:07 + */ +@Data +public class BreakLog { + + /** 故障日志id */ + private Integer breakLogId; + /** 故障码 */ + private String breakCode; + /** 车辆VIN */ + private String breakVin; + /** 故障类型 */ + private String breakType; + /** 结束报警时间 */ + private String breakTime; + /** 开始报警时间 */ + private String breakDate; + /** 是否报警 */ + private String breakState; +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/BreakVo.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/BreakVo.java new file mode 100644 index 0000000..56dfb5d --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/BreakVo.java @@ -0,0 +1,33 @@ +package com.zhilian.business.domain; + +import io.swagger.models.auth.In; +import lombok.Data; + +/** + * @ClassName BreakVo + * @Description TODO + * @Author YuanYongH + * @Date 2024/4/4 9:51 + */ +@Data +public class BreakVo { + /** + * 故障id + **/ + private Integer breakId; + /** + * 车辆VIN码 + **/ + private String breakVin; + /** + * 故障状态 + **/ + private Integer breakState; + + + /** + * 分页 + **/ + private Integer pageNum = 1; + private Integer pageSize = 3; +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/BusinessBreak.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/BusinessBreak.java new file mode 100644 index 0000000..e902cf1 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/BusinessBreak.java @@ -0,0 +1,112 @@ +package com.zhilian.business.domain; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.zhilian.common.core.annotation.Excel; +import com.zhilian.common.core.web.domain.BaseEntity; + +/** + * 故障对象 business_break + * + * @author Yy + * @date 2024-04-07 + */ +@Data +public class BusinessBreak extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + private Long breakId; + + /** 故障码 */ + @Excel(name = "故障码") + private String breakCode; + + /** 车辆VIN */ + @Excel(name = "车辆VIN") + private String breakVin; + + /** 结束报警时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "结束报警时间", width = 30, dateFormat = "yyyy-MM-dd") + private String breakTime; + + /** 故障类型 */ + @Excel(name = "故障类型") + private String breakType; + + /** 开始报警时间 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "开始报警时间", width = 30, dateFormat = "yyyy-MM-dd") + private String breakDate; + + /** 是否警告 */ + @Excel(name = "是否警告") + private String breakState; + + public void setBreakId(Long breakId) + { + this.breakId = breakId; + } + + public Long getBreakId() + { + return breakId; + } + public void setBreakCode(String breakCode) + { + this.breakCode = breakCode; + } + + public String getBreakCode() + { + return breakCode; + } + public void setBreakVin(String breakVin) + { + this.breakVin = breakVin; + } + + public String getBreakVin() + { + return breakVin; + } + + + public void setBreakType(String breakType) + { + this.breakType = breakType; + } + + public String getBreakType() + { + return breakType; + } + + public void setBreakState(String breakState) + { + this.breakState = breakState; + } + + public String getBreakState() + { + return breakState; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("breakId", getBreakId()) + .append("breakCode", getBreakCode()) + .append("breakVin", getBreakVin()) + .append("breakTime", getBreakTime()) + .append("breakType", getBreakType()) + .append("breakDate", getBreakDate()) + .append("breakState", getBreakState()) + .toString(); + } +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/request/BreakReq.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/request/BreakReq.java new file mode 100644 index 0000000..a0ec734 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/domain/request/BreakReq.java @@ -0,0 +1,28 @@ +package com.zhilian.business.domain.request; + +import io.swagger.models.auth.In; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * @ClassName BreakReq + * @Description TODO + * @Author YuanYongH + * @Date 2024/4/8 15:28 + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class BreakReq { + /** 故障id */ + private Integer breakId; + /** 故障码 */ + private String breakCode; + /** 车辆VIN */ + private String breakVin; + /** 故障类型 */ + private String breakType; +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/mapper/BreakLogMapper.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/mapper/BreakLogMapper.java new file mode 100644 index 0000000..0da85db --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/mapper/BreakLogMapper.java @@ -0,0 +1,18 @@ +package com.zhilian.business.mapper; + +import com.zhilian.business.domain.BreakLog; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * @ClassName BreakLogMapper + * @Description TODO + * @Author YuanYongH + * @Date 2024/4/8 20:49 + */ +@Mapper +public interface BreakLogMapper { + List breakLog(); + +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/mapper/BreakMapper.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/mapper/BreakMapper.java new file mode 100644 index 0000000..2d959d4 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/mapper/BreakMapper.java @@ -0,0 +1,27 @@ +package com.zhilian.business.mapper; + +import com.zhilian.business.domain.Break; +import com.zhilian.business.domain.BreakVo; +import org.apache.ibatis.annotations.Mapper; + +import java.util.Date; +import java.util.List; + +/** + * @ClassName BreakMapper + * @Description TODO + * @Author YuanYongH + * @Date 2024/4/4 9:59 + */ +@Mapper +public interface BreakMapper { + List breakList(BreakVo breakVo); + + int breakAdd(Break break1); + + int breakUpd(Break break1); + + int breakDel(Integer breakId); + + Integer addBreak(String breakCode, String breakVin, Date breakTime, Date breakDate, String breakType, Integer breakState); +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/mapper/BusinessBreakMapper.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/mapper/BusinessBreakMapper.java new file mode 100644 index 0000000..65409ba --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/mapper/BusinessBreakMapper.java @@ -0,0 +1,67 @@ +package com.zhilian.business.mapper; + +import java.util.List; + +import com.zhilian.business.domain.BreakLog; +import com.zhilian.business.domain.BusinessBreak; +import com.zhilian.business.domain.request.BreakReq; + +/** + * 故障Mapper接口 + * + * @author Yy + * @date 2024-04-07 + */ +public interface BusinessBreakMapper +{ + /** + * 查询故障 + * + * @param breakId 故障主键 + * @return 故障 + */ + public BusinessBreak selectBusinessBreakByBreakId(Long breakId); + + /** + * 查询故障列表 + * + * @param breakReq 故障 + * @return 故障集合 + */ + public List selectBusinessBreakList(BreakReq breakReq); + + /** + * 新增故障 + * + * @param businessBreak 故障 + * @return 结果 + */ + public int insertBusinessBreak(BusinessBreak businessBreak); + + /** + * 修改故障 + * + * @param businessBreak 故障 + * @return 结果 + */ + public int updateBusinessBreak(BusinessBreak businessBreak); + + /** + * 删除故障 + * + * @param breakId 故障主键 + * @return 结果 + */ + public int deleteBusinessBreakByBreakId(Long breakId); + + /** + * 批量删除故障 + * + * @param breakIds 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteBusinessBreakByBreakIds(Long[] breakIds); + + List breakLog(); + +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/BreakLogService.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/BreakLogService.java new file mode 100644 index 0000000..a2c9dc0 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/BreakLogService.java @@ -0,0 +1,16 @@ +package com.zhilian.business.service; + +import com.zhilian.business.domain.BreakLog; + +import java.util.List; + +/** + * @ClassName BreakLogService + * @Description TODO + * @Author YuanYongH + * @Date 2024/4/8 20:49 + */ +public interface BreakLogService { + List breakLog(); + +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/BreakService.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/BreakService.java new file mode 100644 index 0000000..9f8b663 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/BreakService.java @@ -0,0 +1,21 @@ +package com.zhilian.business.service; + +import com.zhilian.business.domain.Break; +import com.zhilian.business.domain.BreakVo; +import com.zhilian.common.core.web.page.PageResult; + +/** + * @ClassName BreakService + * @Description TODO + * @Author YuanYongH + * @Date 2024/4/4 9:54 + */ +public interface BreakService { + PageResult breakList(BreakVo breakVo); + + int breakAdd(Break break1); + + int breakUpd(Break break1); + + int breakDel(Integer breakId); +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/IBusinessBreakService.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/IBusinessBreakService.java new file mode 100644 index 0000000..b49d544 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/IBusinessBreakService.java @@ -0,0 +1,67 @@ +package com.zhilian.business.service; + +import java.util.List; + +import com.zhilian.business.domain.BreakLog; +import com.zhilian.business.domain.BusinessBreak; +import com.zhilian.business.domain.request.BreakReq; + +/** + * 故障Service接口 + * + * @author Yy + * @date 2024-04-07 + */ +public interface IBusinessBreakService +{ + /** + * 查询故障 + * + * @param breakId 故障主键 + * @return 故障 + */ + public BusinessBreak selectBusinessBreakByBreakId(Long breakId); + + /** + * 查询故障列表 + * + * @param breakReq 故障 + * @return 故障集合 + */ + public List selectBusinessBreakList(BreakReq breakReq); + + /** + * 新增故障 + * + * @param businessBreak 故障 + * @return 结果 + */ + public int insertBusinessBreak(BusinessBreak businessBreak); + + /** + * 修改故障 + * + * @param businessBreak 故障 + * @return 结果 + */ + public int updateBusinessBreak(BusinessBreak businessBreak); + + /** + * 批量删除故障 + * + * @param breakIds 需要删除的故障主键集合 + * @return 结果 + */ + public int deleteBusinessBreakByBreakIds(Long[] breakIds); + + /** + * 删除故障信息 + * + * @param breakId 故障主键 + * @return 结果 + */ + public int deleteBusinessBreakByBreakId(Long breakId); + + List breakLog(); + +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/impl/BreakLogServiceImpl.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/impl/BreakLogServiceImpl.java new file mode 100644 index 0000000..d373650 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/impl/BreakLogServiceImpl.java @@ -0,0 +1,67 @@ +package com.zhilian.business.service.impl; + +import com.zhilian.business.domain.BreakLog; +import com.zhilian.business.mapper.BreakLogMapper; +import com.zhilian.business.service.BreakLogService; +import lombok.extern.log4j.Log4j2; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.autoconfigure.data.redis.RedisProperties; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @ClassName BreakLogServiceImpl + * @Description 定时扫描故障状态 + * @Author YuanYongH + * @Date 2024/4/8 20:49 + */ +@Service +@Log4j2 +public class BreakLogServiceImpl implements BreakLogService { + @Autowired + private BreakLogMapper breakLogMapper; + + @Autowired + private RedisTemplate redisTemplate; + + + @Override + public List breakLog() { + BreakLog breakLog = new BreakLog(); + // 10秒 + final long timeInterval = 10000; + Runnable runnable = new Runnable() { + @Override + public void run() { + while (true){ + breakLogMapper.breakLog(); + log.info("扫描故障状态"); + String breakState = breakLog.getBreakState(); + if (breakState != null){ + // 判断故障状态 + if (breakLog.getBreakState().equals("0")){ + log.info("正常"); + }else if (breakLog.getBreakState().equals("1")){ + log.info("故障"); + }else { + log.info("未知"); + } + + } + try { + Thread.sleep(timeInterval); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } + } + }; + // 开启线程 + Thread thread = new Thread(runnable); + thread.start(); + // 返回故障日志 + return breakLogMapper.breakLog(); + } +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/impl/BreakServiceImpl.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/impl/BreakServiceImpl.java new file mode 100644 index 0000000..2cbd72a --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/impl/BreakServiceImpl.java @@ -0,0 +1,51 @@ +package com.zhilian.business.service.impl; + +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import com.zhilian.business.domain.Break; +import com.zhilian.business.domain.BreakVo; +import com.zhilian.business.mapper.BreakMapper; +import com.zhilian.business.service.BreakService; +import com.zhilian.common.core.web.page.PageResult; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @ClassName BreakServiceImpl + * @Description TODO + * @Author YuanYongH + * @Date 2024/4/4 9:54 + */ +@Service +public class BreakServiceImpl implements BreakService { + @Autowired + private BreakMapper breakMapper; + @Override + public PageResult breakList(BreakVo breakVo) { + PageHelper.startPage(breakVo.getPageNum(),breakVo.getPageSize()); + List list = breakMapper.breakList(breakVo); + PageInfo info = new PageInfo<>(list); + return PageResult.toResult(info.getTotal(),list).getData(); + } + + @Override + public int breakAdd(Break break1) { + int i = breakMapper.breakAdd(break1); + if (i>0){ + breakMapper.addBreak(break1.getBreakCode(),break1.getBreakVin(),break1.getBreakTime(),break1.getBreakDate(),break1.getBreakType(),break1.getBreakState()); + } + return i; + } + + @Override + public int breakUpd(Break break1) { + return breakMapper.breakUpd(break1); + } + + @Override + public int breakDel(Integer breakId) { + return breakMapper.breakDel(breakId); + } +} diff --git a/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/impl/BusinessBreakServiceImpl.java b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/impl/BusinessBreakServiceImpl.java new file mode 100644 index 0000000..90be7e5 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/java/com/zhilian/business/service/impl/BusinessBreakServiceImpl.java @@ -0,0 +1,101 @@ +package com.zhilian.business.service.impl; + +import java.util.List; + +import com.zhilian.business.domain.BreakLog; +import com.zhilian.business.domain.request.BreakReq; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhilian.business.mapper.BusinessBreakMapper; +import com.zhilian.business.domain.BusinessBreak; +import com.zhilian.business.service.IBusinessBreakService; + +/** + * 故障Service业务层处理 + * + * @author Yy + * @date 2024-04-07 + */ +@Service +public class BusinessBreakServiceImpl implements IBusinessBreakService +{ + @Autowired + private BusinessBreakMapper businessBreakMapper; + + /** + * 查询故障 + * + * @param breakId 故障主键 + * @return 故障 + */ + @Override + public BusinessBreak selectBusinessBreakByBreakId(Long breakId) + { + return businessBreakMapper.selectBusinessBreakByBreakId(breakId); + } + + /** + * 查询故障列表 + * + * @param breakReq 故障 + * @return 故障 + */ + @Override + public List selectBusinessBreakList(BreakReq breakReq) + { + return businessBreakMapper.selectBusinessBreakList(breakReq); + } + + /** + * 新增故障 + * + * @param businessBreak 故障 + * @return 结果 + */ + @Override + public int insertBusinessBreak(BusinessBreak businessBreak) + { + return businessBreakMapper.insertBusinessBreak(businessBreak); + } + + /** + * 修改故障 + * + * @param businessBreak 故障 + * @return 结果 + */ + @Override + public int updateBusinessBreak(BusinessBreak businessBreak) + { + return businessBreakMapper.updateBusinessBreak(businessBreak); + } + + /** + * 批量删除故障 + * + * @param breakIds 需要删除的故障主键 + * @return 结果 + */ + @Override + public int deleteBusinessBreakByBreakIds(Long[] breakIds) + { + return businessBreakMapper.deleteBusinessBreakByBreakIds(breakIds); + } + + /** + * 删除故障信息 + * + * @param breakId 故障主键 + * @return 结果 + */ + @Override + public int deleteBusinessBreakByBreakId(Long breakId) + { + return businessBreakMapper.deleteBusinessBreakByBreakId(breakId); + } + + @Override + public List breakLog() { + return businessBreakMapper.breakLog(); + } +} diff --git a/zhilian-modules/zhilian-business/src/main/resources/mapper/BreakLogMapper.xml b/zhilian-modules/zhilian-business/src/main/resources/mapper/BreakLogMapper.xml new file mode 100644 index 0000000..34de1ea --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/resources/mapper/BreakLogMapper.xml @@ -0,0 +1,10 @@ + + + + + + diff --git a/zhilian-modules/zhilian-business/src/main/resources/mapper/BreakMapper.xml b/zhilian-modules/zhilian-business/src/main/resources/mapper/BreakMapper.xml new file mode 100644 index 0000000..4f805b1 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/resources/mapper/BreakMapper.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + delete from business_breakdown where break_id = #{breakId} + + + diff --git a/zhilian-modules/zhilian-business/src/main/resources/mapper/BusinessBreakMapper.xml b/zhilian-modules/zhilian-business/src/main/resources/mapper/BusinessBreakMapper.xml new file mode 100644 index 0000000..0379105 --- /dev/null +++ b/zhilian-modules/zhilian-business/src/main/resources/mapper/BusinessBreakMapper.xml @@ -0,0 +1,81 @@ + + + + + + + + + + + + + + + + select break_id, break_code, break_vin, break_time, break_type, break_date, break_state from business_break + + + + + + + + + insert into business_break + + break_code, + break_vin, + break_time, + break_type, + break_date, + break_state, + + + #{breakCode}, + #{breakVin}, + #{breakTime}, + #{breakType}, + #{breakDate}, + #{breakState}, + + + + + update business_break + + break_code = #{breakCode}, + break_vin = #{breakVin}, + break_time = #{breakTime}, + break_type = #{breakType}, + break_date = #{breakDate}, + break_state = #{breakState}, + + where break_id = #{breakId} + + + + delete from business_break where break_id = #{breakId} + + + + delete from business_break where break_id in + + #{breakId} + + + diff --git a/zhilian-modules/zhilian-online/src/main/java/com/zhilian/online/config/MqttxConfig.java b/zhilian-modules/zhilian-online/src/main/java/com/zhilian/online/config/MqttxConfig.java index 15948f0..f84cdf1 100644 --- a/zhilian-modules/zhilian-online/src/main/java/com/zhilian/online/config/MqttxConfig.java +++ b/zhilian-modules/zhilian-online/src/main/java/com/zhilian/online/config/MqttxConfig.java @@ -140,31 +140,31 @@ public class MqttxConfig { public void messageArrived(String s, MqttMessage mqttMessage) throws Exception { log.info("消息到达,接受消息主题{},接受消息Qos{},接受消息内容{}", topic, mqttMessage.getQos(), new String(mqttMessage.getPayload())); - HashSet strings = new HashSet<>(); - strings.add("malfunction"); - strings.add("event-storage"); - strings.add("geofence"); - - redisService.setCacheSet("vehicle-event:" + "VIN123456789DIJE4",strings); - Set cacheSet = redisService.getCacheSet("vehicle-event:" + "VIN123456789DIJE4"); - - if (redisService.hasKey("vehicle-event:" + "VIN123456789DIJE4")){ - //有事件 - Set cacheSet1 = redisService.getCacheSet("vehicle-event:" + "VIN123456789DIJE4"); - Set events = cacheSet1.stream().map(item -> { - return String.valueOf(item); - }).collect(Collectors.toSet()); - if (events.contains("geofence")){ - //包含围栏事件 - - }else { - //不包含围栏事件 - redisService.setCacheSet("vehicle-event:" + "VIN123456789DIJE4","geofence"); - redisService.deleteCacheSet("vehicle-event:" + "VIN123456789DIJE4"); - events.add("geofence"); - redisService.setCacheSet("vehicle-event:" + "VIN123456789DIJE4",events); - } - } +// HashSet strings = new HashSet<>(); +// strings.add("malfunction"); +// strings.add("event-storage"); +// strings.add("geofence"); +// +// redisService.setCacheSet("vehicle-event:" + "VIN123456789DIJE4",strings); +// Set cacheSet = redisService.getCacheSet("vehicle-event:" + "VIN123456789DIJE4"); +// +// if (redisService.hasKey("vehicle-event:" + "VIN123456789DIJE4")){ +// //有事件 +// Set cacheSet1 = redisService.getCacheSet("vehicle-event:" + "VIN123456789DIJE4"); +// Set events = cacheSet1.stream().map(item -> { +// return String.valueOf(item); +// }).collect(Collectors.toSet()); +// if (events.contains("geofence")){ +// //包含围栏事件 +// +// }else { +// //不包含围栏事件 +// redisService.setCacheSet("vehicle-event:" + "VIN123456789DIJE4","geofence"); +// redisService.deleteCacheSet("vehicle-event:" + "VIN123456789DIJE4"); +// events.add("geofence"); +// redisService.setCacheSet("vehicle-event:" + "VIN123456789DIJE4",events); +// } +// } //将接受到的车辆报文存储到kafka中 executorService.execute(() -> { diff --git a/zhilian-modules/zhilian-resolver/src/main/java/com/zhilian/resolver/ZhiLianResolverApplication.java b/zhilian-modules/zhilian-resolver/src/main/java/com/zhilian/resolver/ZhiLianResolverApplication.java index f01ea12..6a606ac 100644 --- a/zhilian-modules/zhilian-resolver/src/main/java/com/zhilian/resolver/ZhiLianResolverApplication.java +++ b/zhilian-modules/zhilian-resolver/src/main/java/com/zhilian/resolver/ZhiLianResolverApplication.java @@ -1,5 +1,7 @@ package com.zhilian.resolver; + +import com.zhilian.common.security.annotation.EnableCustomConfig; import com.zhilian.common.security.annotation.EnableMyFeignClients; import com.zhilian.common.swagger.annotation.EnableCustomSwagger2; import org.mybatis.spring.annotation.MapperScan; @@ -7,6 +9,13 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.scheduling.annotation.EnableScheduling; +/** + * @ClassName ZhiLianResolverApplication + * @Description TODO + * @Author YuanYongH + * @Date 2024/4/8 17:25 + */ +@EnableCustomConfig @EnableCustomSwagger2 @EnableScheduling @EnableMyFeignClients @@ -14,6 +23,6 @@ import org.springframework.scheduling.annotation.EnableScheduling; @SpringBootApplication public class ZhiLianResolverApplication { public static void main(String[] args) { - SpringApplication.run(ZhiLianResolverApplication.class, args); + SpringApplication.run(ZhiLianResolverApplication.class,args); } } diff --git a/zhilian-modules/zhilian-resolver/src/main/java/com/zhilian/resolver/service/impl/eventGeofence/GeofenceEventServiceImpl.java b/zhilian-modules/zhilian-resolver/src/main/java/com/zhilian/resolver/service/impl/eventGeofence/GeofenceEventServiceImpl.java index c60ae48..8a139bb 100644 --- a/zhilian-modules/zhilian-resolver/src/main/java/com/zhilian/resolver/service/impl/eventGeofence/GeofenceEventServiceImpl.java +++ b/zhilian-modules/zhilian-resolver/src/main/java/com/zhilian/resolver/service/impl/eventGeofence/GeofenceEventServiceImpl.java @@ -4,7 +4,6 @@ import com.zhilian.common.business.domain.vo.FenceVo; import com.zhilian.common.resolver.domain.ResolverReportData; import com.zhilian.resolver.service.ResolverEventService; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.Arrays; diff --git a/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/controller/BusinessBreakController.java b/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/controller/BusinessBreakController.java new file mode 100644 index 0000000..887754e --- /dev/null +++ b/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/controller/BusinessBreakController.java @@ -0,0 +1,103 @@ +package com.zhilian.system.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.zhilian.common.log.annotation.Log; +import com.zhilian.common.log.enums.BusinessType; +import com.zhilian.common.security.annotation.RequiresPermissions; +import com.zhilian.system.domain.BusinessBreak; +import com.zhilian.system.service.IBusinessBreakService; +import com.zhilian.common.core.web.controller.BaseController; +import com.zhilian.common.core.domain.Result; +import com.zhilian.common.core.utils.poi.ExcelUtil; +import com.zhilian.common.core.web.page.TableDataInfo; + +/** + * + * @author y + * @date 2024-04-07 + */ +@RestController +@RequestMapping("/break") +public class BusinessBreakController extends BaseController +{ + @Autowired + private IBusinessBreakService businessBreakService; + + /** + * 查询列表 + */ + @RequiresPermissions("system:break:list") + @GetMapping("/list") + public Result> list(BusinessBreak businessBreak) + { + startPage(); + List list = businessBreakService.selectBusinessBreakList(businessBreak); + return getDataTable(list); + } + + /** + * 导出列表 + */ + @RequiresPermissions("system:break:export") + @Log(title = "", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, BusinessBreak businessBreak) + { + List list = businessBreakService.selectBusinessBreakList(businessBreak); + ExcelUtil util = new ExcelUtil(BusinessBreak.class); + util.exportExcel(response, list, "故障码数据"); + } + + /** + * 获取详细信息 + */ + @RequiresPermissions("system:break:query") + @GetMapping(value = "/{breakId}") + public Result getInfo(@PathVariable("breakId") Long breakId) + { + return success(businessBreakService.selectBusinessBreakByBreakId(breakId)); + } + + /** + * 新增 + */ + @RequiresPermissions("system:break:add") + @Log(title = "", businessType = BusinessType.INSERT) + @PostMapping + public Result add(@RequestBody BusinessBreak businessBreak) + { + return toAjax(businessBreakService.insertBusinessBreak(businessBreak)); + } + + /** + * 修改 + */ + @RequiresPermissions("system:break:edit") + @Log(title = "", businessType = BusinessType.UPDATE) + @PutMapping + public Result edit(@RequestBody BusinessBreak businessBreak) + { + return toAjax(businessBreakService.updateBusinessBreak(businessBreak)); + } + + /** + * 删除 + */ + @RequiresPermissions("system:break:remove") + @Log(title = "", businessType = BusinessType.DELETE) + @DeleteMapping("/{breakIds}") + public Result remove(@PathVariable Long[] breakIds) + { + return toAjax(businessBreakService.deleteBusinessBreakByBreakIds(breakIds)); + } +} diff --git a/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/domain/BusinessBreak.java b/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/domain/BusinessBreak.java new file mode 100644 index 0000000..235a476 --- /dev/null +++ b/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/domain/BusinessBreak.java @@ -0,0 +1,150 @@ +package com.zhilian.system.domain; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.zhilian.common.core.annotation.Excel; +import com.zhilian.common.core.web.domain.BaseEntity; + +/** + * + * @author zhilian + * @date 2024-04-07 + */ +public class BusinessBreak extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long breakId; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private String breakCar; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private String breakVin; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private Date breakTime; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private String breakType; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private String breakRank; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private String breakState; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private String breakDevice; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private String breakDesc; + + public void setBreakId(Long breakId) + { + this.breakId = breakId; + } + + public Long getBreakId() + { + return breakId; + } + public void setBreakCar(String breakCar) + { + this.breakCar = breakCar; + } + + public String getBreakCar() + { + return breakCar; + } + public void setBreakVin(String breakVin) + { + this.breakVin = breakVin; + } + + public String getBreakVin() + { + return breakVin; + } + public void setBreakTime(Date breakTime) + { + this.breakTime = breakTime; + } + + public Date getBreakTime() + { + return breakTime; + } + public void setBreakType(String breakType) + { + this.breakType = breakType; + } + + public String getBreakType() + { + return breakType; + } + public void setBreakRank(String breakRank) + { + this.breakRank = breakRank; + } + + public String getBreakRank() + { + return breakRank; + } + public void setBreakState(String breakState) + { + this.breakState = breakState; + } + + public String getBreakState() + { + return breakState; + } + public void setBreakDevice(String breakDevice) + { + this.breakDevice = breakDevice; + } + + public String getBreakDevice() + { + return breakDevice; + } + public void setBreakDesc(String breakDesc) + { + this.breakDesc = breakDesc; + } + + public String getBreakDesc() + { + return breakDesc; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("breakId", getBreakId()) + .append("breakCar", getBreakCar()) + .append("breakVin", getBreakVin()) + .append("breakTime", getBreakTime()) + .append("breakType", getBreakType()) + .append("breakRank", getBreakRank()) + .append("breakState", getBreakState()) + .append("breakDevice", getBreakDevice()) + .append("breakDesc", getBreakDesc()) + .toString(); + } +} diff --git a/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/mapper/BusinessBreakMapper.java b/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/mapper/BusinessBreakMapper.java new file mode 100644 index 0000000..5ec33dd --- /dev/null +++ b/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/mapper/BusinessBreakMapper.java @@ -0,0 +1,30 @@ +package com.zhilian.system.mapper; + +import java.util.List; +import com.zhilian.system.domain.BusinessBreak; + +/** + * + * @author zhilian + * @date 2024-04-07 + */ +public interface BusinessBreakMapper +{ + + public BusinessBreak selectBusinessBreakByBreakId(Long breakId); + + + public List selectBusinessBreakList(BusinessBreak businessBreak); + + + public int insertBusinessBreak(BusinessBreak businessBreak); + + + public int updateBusinessBreak(BusinessBreak businessBreak); + + + public int deleteBusinessBreakByBreakId(Long breakId); + + + public int deleteBusinessBreakByBreakIds(Long[] breakIds); +} diff --git a/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/service/IBusinessBreakService.java b/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/service/IBusinessBreakService.java new file mode 100644 index 0000000..4f58306 --- /dev/null +++ b/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/service/IBusinessBreakService.java @@ -0,0 +1,25 @@ +package com.zhilian.system.service; + +import java.util.List; +import com.zhilian.system.domain.BusinessBreak; + + +public interface IBusinessBreakService +{ + + public BusinessBreak selectBusinessBreakByBreakId(Long breakId); + + + public List selectBusinessBreakList(BusinessBreak businessBreak); + + + public int insertBusinessBreak(BusinessBreak businessBreak); + + public int updateBusinessBreak(BusinessBreak businessBreak); + + + public int deleteBusinessBreakByBreakIds(Long[] breakIds); + + + public int deleteBusinessBreakByBreakId(Long breakId); +} diff --git a/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/service/impl/BusinessBreakServiceImpl.java b/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/service/impl/BusinessBreakServiceImpl.java new file mode 100644 index 0000000..f32215e --- /dev/null +++ b/zhilian-modules/zhilian-system/src/main/java/com/zhilian/system/service/impl/BusinessBreakServiceImpl.java @@ -0,0 +1,58 @@ +package com.zhilian.system.service.impl; + +import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.zhilian.system.mapper.BusinessBreakMapper; +import com.zhilian.system.domain.BusinessBreak; +import com.zhilian.system.service.IBusinessBreakService; + + +@Service +public class BusinessBreakServiceImpl implements IBusinessBreakService +{ + @Autowired + private BusinessBreakMapper businessBreakMapper; + + + @Override + public BusinessBreak selectBusinessBreakByBreakId(Long breakId) + { + return businessBreakMapper.selectBusinessBreakByBreakId(breakId); + } + + + @Override + public List selectBusinessBreakList(BusinessBreak businessBreak) + { + return businessBreakMapper.selectBusinessBreakList(businessBreak); + } + + + @Override + public int insertBusinessBreak(BusinessBreak businessBreak) + { + return businessBreakMapper.insertBusinessBreak(businessBreak); + } + + + @Override + public int updateBusinessBreak(BusinessBreak businessBreak) + { + return businessBreakMapper.updateBusinessBreak(businessBreak); + } + + + @Override + public int deleteBusinessBreakByBreakIds(Long[] breakIds) + { + return businessBreakMapper.deleteBusinessBreakByBreakIds(breakIds); + } + + + @Override + public int deleteBusinessBreakByBreakId(Long breakId) + { + return businessBreakMapper.deleteBusinessBreakByBreakId(breakId); + } +} diff --git a/zhilian-modules/zhilian-system/src/main/resources/mapper/system/BusinessBreakMapper.xml b/zhilian-modules/zhilian-system/src/main/resources/mapper/system/BusinessBreakMapper.xml new file mode 100644 index 0000000..cfdf33e --- /dev/null +++ b/zhilian-modules/zhilian-system/src/main/resources/mapper/system/BusinessBreakMapper.xml @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + select break_id, break_car, break_vin, break_time, break_type, break_rank, break_state, break_device, break_desc from business_break + + + + + + + + insert into business_break + + break_car, + break_vin, + break_time, + break_type, + break_rank, + break_state, + break_device, + break_desc, + + + #{breakCar}, + #{breakVin}, + #{breakTime}, + #{breakType}, + #{breakRank}, + #{breakState}, + #{breakDevice}, + #{breakDesc}, + + + + + update business_break + + break_car = #{breakCar}, + break_vin = #{breakVin}, + break_time = #{breakTime}, + break_type = #{breakType}, + break_rank = #{breakRank}, + break_state = #{breakState}, + break_device = #{breakDevice}, + break_desc = #{breakDesc}, + + where break_id = #{breakId} + + + + delete from business_break where break_id = #{breakId} + + + + delete from business_break where break_id in + + #{breakId} + + +