From 7b3737e83bffe2e1b8c31cecb3374813e4f486d1 Mon Sep 17 00:00:00 2001
From: Yangwl <1726150332@qq.com>
Date: Tue, 11 Apr 2023 13:57:49 +0800
Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=96=87=E4=BB=B6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
ruoyi-basetyre/pom.xml | 1 +
.../controller/BaseDeviceController.java | 5 +
.../BaseElectronicFenceController.java | 109 ++++++++++++
.../controller/BaseTyreController.java | 8 +-
.../basetyre/controller/ReportController.java | 44 +++++
.../basetyre/domain/BaseElectronicFence.java | 155 ++++++++++++++++++
.../com/ruoyi/basetyre/domain/BaseTyre.java | 9 +
.../basetyre/domain/CollectTyresDetail.java | 12 +-
.../com/ruoyi/basetyre/domain/vo/Alarm.java | 27 +++
.../ruoyi/basetyre/domain/vo/CarTyres.java | 2 +
.../domain/vo/PatternTextureReport.java | 6 +-
.../basetyre/mapper/BaseDeviceMapper.java | 2 +
.../mapper/BaseElectronicFenceMapper.java | 61 +++++++
.../basetyre/service/IBaseDeviceService.java | 2 +
.../service/IBaseElectronicFenceService.java | 61 +++++++
.../basetyre/service/IBaseTyreService.java | 4 +
.../service/impl/BaseCarQueueServiceImpl.java | 3 +
.../service/impl/BaseCarServiceImpl.java | 2 +
.../service/impl/BaseCarTypeServiceImpl.java | 2 +
.../service/impl/BaseDeviceServiceImpl.java | 14 ++
.../impl/BaseElectronicFenceServiceImpl.java | 95 +++++++++++
.../service/impl/BaseTyreServiceImpl.java | 72 ++++++--
.../mapper/basetyre/BaseCarMapper.xml | 12 +-
.../mapper/basetyre/BaseCarQueueMapper.xml | 17 +-
.../mapper/basetyre/BaseCarTypeMapper.xml | 9 +-
.../mapper/basetyre/BaseDeviceMapper.xml | 14 +-
.../basetyre/BaseElectronicFenceMapper.xml | 105 ++++++++++++
.../basetyre/BaseFireSetRecordMapper.xml | 2 +-
.../BaseTyreHistoricalRecordsMapper.xml | 4 +-
.../mapper/basetyre/BaseTyreMapper.xml | 8 +-
.../basetyre/CollectMachineGpsMapper.xml | 2 +-
ruoyi-common/pom.xml | 5 +
.../common}/websocket/SemaphoreUtils.java | 5 +-
.../common/websocket/WebSocketClient.java | 28 ++++
.../common/websocket/WebSocketConfig.java | 20 +++
.../common}/websocket/WebSocketServer.java | 51 +++++-
.../common}/websocket/WebSocketUsers.java | 19 ++-
ruoyi-framework/pom.xml | 5 +-
.../framework/config/SecurityConfig.java | 2 +-
.../web/service/SysLoginService.java | 6 +
.../framework/websocket/WebSocketConfig.java | 39 -----
ruoyi-ui/.env.production | 2 +-
ruoyi-ui/src/api/report/report.js | 8 +
.../src/layout/components/TagsView/index.vue | 5 +
.../src/views/deviceManagement/info/index.vue | 9 +-
ruoyi-ui/src/views/index.vue | 31 +++-
ruoyi-ui/src/views/login.vue | 4 +
.../src/views/tireManagement/info/index.vue | 1 +
48 files changed, 1010 insertions(+), 99 deletions(-)
create mode 100644 ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseElectronicFenceController.java
create mode 100644 ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/ReportController.java
create mode 100644 ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/BaseElectronicFence.java
create mode 100644 ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/mapper/BaseElectronicFenceMapper.java
create mode 100644 ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseElectronicFenceService.java
create mode 100644 ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseElectronicFenceServiceImpl.java
create mode 100644 ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseElectronicFenceMapper.xml
rename {ruoyi-framework/src/main/java/com/ruoyi/framework => ruoyi-common/src/main/java/com/ruoyi/common}/websocket/SemaphoreUtils.java (96%)
create mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketClient.java
create mode 100644 ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketConfig.java
rename {ruoyi-framework/src/main/java/com/ruoyi/framework => ruoyi-common/src/main/java/com/ruoyi/common}/websocket/WebSocketServer.java (61%)
rename {ruoyi-framework/src/main/java/com/ruoyi/framework => ruoyi-common/src/main/java/com/ruoyi/common}/websocket/WebSocketUsers.java (86%)
delete mode 100644 ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/WebSocketConfig.java
diff --git a/ruoyi-basetyre/pom.xml b/ruoyi-basetyre/pom.xml
index fd7afa7..089066c 100644
--- a/ruoyi-basetyre/pom.xml
+++ b/ruoyi-basetyre/pom.xml
@@ -27,6 +27,7 @@
1.6.2
compile
+
com.ruoyi
ruoyi-system
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseDeviceController.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseDeviceController.java
index d96c534..d52b3d3 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseDeviceController.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseDeviceController.java
@@ -3,6 +3,7 @@ package com.ruoyi.basetyre.controller;
import com.ruoyi.basetyre.domain.BaseDevice;
import com.ruoyi.basetyre.service.IBaseDeviceService;
import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
@@ -71,6 +72,10 @@ public class BaseDeviceController extends BaseController
@PostMapping
public AjaxResult add(@RequestBody BaseDevice baseDevice)
{
+ if (UserConstants.NOT_UNIQUE.equals(baseDeviceService.checkBaseDeviceUnique(baseDevice)))
+ {
+ return error("新增设备'" + baseDevice.getInternetThingsNo()+ "'失败,设备已存在");
+ }
return toAjax(baseDeviceService.insertBaseDevice(baseDevice));
}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseElectronicFenceController.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseElectronicFenceController.java
new file mode 100644
index 0000000..cad2037
--- /dev/null
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseElectronicFenceController.java
@@ -0,0 +1,109 @@
+package com.ruoyi.basetyre.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+import org.springframework.security.access.prepost.PreAuthorize;
+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.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.basetyre.domain.BaseElectronicFence;
+import com.ruoyi.basetyre.service.IBaseElectronicFenceService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.page.TableDataInfo;
+
+/**
+ * 电子围栏Controller
+ *
+ * @author Yangwl
+ * @date 2023-04-07
+ */
+@RestController
+@RequestMapping("/basetyre/fence")
+public class BaseElectronicFenceController extends BaseController
+{
+ @Autowired
+ private IBaseElectronicFenceService baseElectronicFenceService;
+
+ /**
+ * 查询电子围栏列表
+ */
+ @PreAuthorize("@ss.hasPermi('basetyre:fence:list')")
+ @GetMapping("/list")
+ public TableDataInfo list(BaseElectronicFence baseElectronicFence)
+ {
+ startPage();
+ List list = baseElectronicFenceService.selectBaseElectronicFenceList(baseElectronicFence);
+ return getDataTable(list);
+ }
+
+ /**
+ * 导出电子围栏列表
+ */
+ @PreAuthorize("@ss.hasPermi('basetyre:fence:export')")
+ @Log(title = "电子围栏", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, BaseElectronicFence baseElectronicFence)
+ {
+ List list = baseElectronicFenceService.selectBaseElectronicFenceList(baseElectronicFence);
+ ExcelUtil util = new ExcelUtil(BaseElectronicFence.class);
+ util.exportExcel(response, list, "电子围栏数据");
+ }
+
+ /**
+ * 获取电子围栏详细信息
+ */
+ @PreAuthorize("@ss.hasPermi('basetyre:fence:query')")
+ @GetMapping(value = "/{id}")
+ public AjaxResult getInfo(@PathVariable("id") String id)
+ {
+ return success(baseElectronicFenceService.selectBaseElectronicFenceById(id));
+ }
+
+ /**
+ * 新增电子围栏
+ */
+ @PreAuthorize("@ss.hasPermi('basetyre:fence:add')")
+ @Log(title = "电子围栏", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(List baseElectronicFenceList)
+ {
+ for (BaseElectronicFence baseElectronicFence:
+ baseElectronicFenceList ) {
+ baseElectronicFenceService.insertBaseElectronicFence(baseElectronicFence);
+ }
+
+ return null;
+ }
+
+ /**
+ * 修改电子围栏
+ */
+ @PreAuthorize("@ss.hasPermi('basetyre:fence:edit')")
+ @Log(title = "电子围栏", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody BaseElectronicFence baseElectronicFence)
+ {
+ return toAjax(baseElectronicFenceService.updateBaseElectronicFence(baseElectronicFence));
+ }
+
+ /**
+ * 删除电子围栏
+ */
+ @PreAuthorize("@ss.hasPermi('basetyre:fence:remove')")
+ @Log(title = "电子围栏", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{ids}")
+ public AjaxResult remove(@PathVariable String[] ids)
+ {
+ return toAjax(baseElectronicFenceService.deleteBaseElectronicFenceByIds(ids));
+ }
+}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseTyreController.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseTyreController.java
index 02a2869..305df6d 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseTyreController.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/BaseTyreController.java
@@ -1,6 +1,7 @@
package com.ruoyi.basetyre.controller;
import com.ruoyi.basetyre.domain.BaseTyre;
+import com.ruoyi.basetyre.domain.CollectTyresDetail;
import com.ruoyi.basetyre.domain.vo.CarTyres;
import com.ruoyi.basetyre.service.IBaseTyreService;
import com.ruoyi.common.annotation.Log;
@@ -19,6 +20,7 @@ import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
import java.util.List;
import java.util.Map;
@@ -194,7 +196,9 @@ public class BaseTyreController extends BaseController
public AjaxResult TyreMileage(@RequestBody CarTyres carTyres){
return baseTyreService.TyreMileage(carTyres);
}
+ @PostMapping("/TyreWarring")
+ public AjaxResult TyreWarring(@RequestBody CollectTyresDetail collectTyresDetail) throws IOException {
-
-
+ return baseTyreService.TyreWaringReprt(collectTyresDetail);
+ }
}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/ReportController.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/ReportController.java
new file mode 100644
index 0000000..2c54ac3
--- /dev/null
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/controller/ReportController.java
@@ -0,0 +1,44 @@
+package com.ruoyi.basetyre.controller;
+
+import com.ruoyi.basetyre.domain.BaseCar;
+import com.ruoyi.basetyre.domain.BaseTyre;
+import com.ruoyi.basetyre.service.IBaseCarService;
+import com.ruoyi.basetyre.service.IBaseTyreService;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+@RestController
+@RequestMapping("/report")
+public class ReportController {
+ @Autowired
+ private IBaseCarService iBaseCarService;
+ @Autowired
+ private IBaseTyreService iBaseTyreService;
+ @PostMapping("/indexreport")
+ public AjaxResult indexreport()
+ {
+ Map map=new HashMap();
+ List baseCarList=iBaseCarService.selectBaseCarList(new BaseCar());
+ map.put("carMap",baseCarList);
+ map.put("carTotal",baseCarList.size());
+ baseCarList=baseCarList.stream().filter(item-> !StringUtils.isBlank(item.getDeviceId())).collect(Collectors.toList());
+ map.put("carBindGps",baseCarList.size());
+ List baseTyreList =iBaseTyreService.selectBaseTyreList(new BaseTyre());
+ map.put("tyreTotal",baseTyreList.size());
+ baseTyreList=baseTyreList.stream().filter(item-> !StringUtils.isBlank(item.getSensorId())).collect(Collectors.toList());
+ map.put("tyreBindSensor",baseTyreList.size());
+
+ return AjaxResult.success(map);
+ }
+}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/BaseElectronicFence.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/BaseElectronicFence.java
new file mode 100644
index 0000000..5a872b9
--- /dev/null
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/BaseElectronicFence.java
@@ -0,0 +1,155 @@
+package com.ruoyi.basetyre.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.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 电子围栏对象 base_electronic_fence
+ *
+ * @author Yangwl
+ * @date 2023-04-07
+ */
+public class BaseElectronicFence extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+ /** 主键 */
+ private String id;
+
+ /** 车辆id */
+ @Excel(name = "车辆id")
+ private String carId;
+
+ /** 维度 */
+ @Excel(name = "维度")
+ private Long latitude;
+
+ /** 经度 */
+ @Excel(name = "经度")
+ private Long longitude;
+
+ /** 创建人姓名 */
+ @Excel(name = "创建人姓名")
+ private String createName;
+
+ /** 编辑时间 */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "编辑时间", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date modifyTime;
+
+ /** 编辑人 */
+ @Excel(name = "编辑人")
+ private String modifyBy;
+
+ /** $column.columnComment */
+ @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+ private String other1;
+
+ /** $column.columnComment */
+ @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+ private String other2;
+
+ public void setId(String id)
+ {
+ this.id = id;
+ }
+
+ public String getId()
+ {
+ return id;
+ }
+ public void setCarId(String carId)
+ {
+ this.carId = carId;
+ }
+
+ public String getCarId()
+ {
+ return carId;
+ }
+ public void setLatitude(Long latitude)
+ {
+ this.latitude = latitude;
+ }
+
+ public Long getLatitude()
+ {
+ return latitude;
+ }
+ public void setLongitude(Long longitude)
+ {
+ this.longitude = longitude;
+ }
+
+ public Long getLongitude()
+ {
+ return longitude;
+ }
+ public void setCreateName(String createName)
+ {
+ this.createName = createName;
+ }
+
+ public String getCreateName()
+ {
+ return createName;
+ }
+ public void setModifyTime(Date modifyTime)
+ {
+ this.modifyTime = modifyTime;
+ }
+
+ public Date getModifyTime()
+ {
+ return modifyTime;
+ }
+ public void setModifyBy(String modifyBy)
+ {
+ this.modifyBy = modifyBy;
+ }
+
+ public String getModifyBy()
+ {
+ return modifyBy;
+ }
+ public void setOther1(String other1)
+ {
+ this.other1 = other1;
+ }
+
+ public String getOther1()
+ {
+ return other1;
+ }
+ public void setOther2(String other2)
+ {
+ this.other2 = other2;
+ }
+
+ public String getOther2()
+ {
+ return other2;
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+ .append("id", getId())
+ .append("carId", getCarId())
+ .append("latitude", getLatitude())
+ .append("longitude", getLongitude())
+ .append("createTime", getCreateTime())
+ .append("createBy", getCreateBy())
+ .append("createName", getCreateName())
+ .append("modifyTime", getModifyTime())
+ .append("modifyBy", getModifyBy())
+ .append("remark", getRemark())
+ .append("other1", getOther1())
+ .append("other2", getOther2())
+ .toString();
+ }
+}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/BaseTyre.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/BaseTyre.java
index 3c87a1b..00048e3 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/BaseTyre.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/BaseTyre.java
@@ -210,8 +210,17 @@ public class BaseTyre extends BaseEntity
private String temperature;
//压力
private String pressure;
+ //企业编码
+ @Excel(name = "企业")
+ private String companyCode;
+ public String getCompanyCode() {
+ return companyCode;
+ }
+ public void setCompanyCode(String companyCode) {
+ this.companyCode = companyCode;
+ }
public String getTemperature() {
return temperature;
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/CollectTyresDetail.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/CollectTyresDetail.java
index 7707e9a..be75879 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/CollectTyresDetail.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/CollectTyresDetail.java
@@ -128,7 +128,17 @@ public class CollectTyresDetail extends BaseEntity
@Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
private Long longitude;
- public void setId(String id)
+ private String reportTime;
+
+ public String getReportTime() {
+ return reportTime;
+ }
+
+ public void setReportTime(String reportTime) {
+ this.reportTime = reportTime;
+ }
+
+ public void setId(String id)
{
this.id = id;
}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/Alarm.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/Alarm.java
index 84da525..f197a56 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/Alarm.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/Alarm.java
@@ -14,9 +14,36 @@ public class Alarm extends BaseEntity{
private String size;
private String pressvalue;
private String temperaturevalue;
+ private String ispowerinvalue;
private String ispresshigh;
private String ispresslower;
private String istemperaturehigh;
+ private String tyrePosition;
+ private String reportTime;
+
+ public String getReportTime() {
+ return reportTime;
+ }
+
+ public void setReportTime(String reportTime) {
+ this.reportTime = reportTime;
+ }
+
+ public String getIspowerinvalue() {
+ return ispowerinvalue;
+ }
+
+ public void setIspowerinvalue(String ispowerinvalue) {
+ this.ispowerinvalue = ispowerinvalue;
+ }
+
+ public String getTyrePosition() {
+ return tyrePosition;
+ }
+
+ public void setTyrePosition(String tyrePosition) {
+ this.tyrePosition = tyrePosition;
+ }
public String getSensorid() {
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/CarTyres.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/CarTyres.java
index eed482c..16fa111 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/CarTyres.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/CarTyres.java
@@ -28,6 +28,8 @@ public class CarTyres {
private BigDecimal currentTextureDepth;
//操作类型 1,上胎 2,换胎 3,卸胎 4,花纹变更
private String type;
+ //里程表读数
+ private int carOnlineMileage;
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/PatternTextureReport.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/PatternTextureReport.java
index ca1b7cc..96fd60f 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/PatternTextureReport.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/domain/vo/PatternTextureReport.java
@@ -1,10 +1,14 @@
package com.ruoyi.basetyre.domain.vo;
+import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
+import java.util.Date;
+
@Data
public class PatternTextureReport {
private double textureDepth;
private int course;
- private Data time;
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date createTime;
}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/mapper/BaseDeviceMapper.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/mapper/BaseDeviceMapper.java
index 462e60e..7528c8c 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/mapper/BaseDeviceMapper.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/mapper/BaseDeviceMapper.java
@@ -60,4 +60,6 @@ public interface BaseDeviceMapper
public int deleteBaseDeviceByIds(String[] ids);
BaseDevice selectBaseDeviceByno(BaseDevice baseDevice);
+
+ BaseDevice checkBaseDeviceUnique(String internetThingsNo);
}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/mapper/BaseElectronicFenceMapper.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/mapper/BaseElectronicFenceMapper.java
new file mode 100644
index 0000000..cb3aa68
--- /dev/null
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/mapper/BaseElectronicFenceMapper.java
@@ -0,0 +1,61 @@
+package com.ruoyi.basetyre.mapper;
+
+import java.util.List;
+import com.ruoyi.basetyre.domain.BaseElectronicFence;
+
+/**
+ * 电子围栏Mapper接口
+ *
+ * @author Yangwl
+ * @date 2023-04-07
+ */
+public interface BaseElectronicFenceMapper
+{
+ /**
+ * 查询电子围栏
+ *
+ * @param id 电子围栏主键
+ * @return 电子围栏
+ */
+ public BaseElectronicFence selectBaseElectronicFenceById(String id);
+
+ /**
+ * 查询电子围栏列表
+ *
+ * @param baseElectronicFence 电子围栏
+ * @return 电子围栏集合
+ */
+ public List selectBaseElectronicFenceList(BaseElectronicFence baseElectronicFence);
+
+ /**
+ * 新增电子围栏
+ *
+ * @param baseElectronicFence 电子围栏
+ * @return 结果
+ */
+ public int insertBaseElectronicFence(BaseElectronicFence baseElectronicFence);
+
+ /**
+ * 修改电子围栏
+ *
+ * @param baseElectronicFence 电子围栏
+ * @return 结果
+ */
+ public int updateBaseElectronicFence(BaseElectronicFence baseElectronicFence);
+
+ /**
+ * 删除电子围栏
+ *
+ * @param id 电子围栏主键
+ * @return 结果
+ */
+ public int deleteBaseElectronicFenceById(String id);
+
+ /**
+ * 批量删除电子围栏
+ *
+ * @param ids 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int deleteBaseElectronicFenceByIds(String[] ids);
+}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseDeviceService.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseDeviceService.java
index 71fe627..964f036 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseDeviceService.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseDeviceService.java
@@ -58,4 +58,6 @@ public interface IBaseDeviceService
* @return 结果
*/
public int deleteBaseDeviceById(String id);
+
+ String checkBaseDeviceUnique(BaseDevice baseDevice);
}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseElectronicFenceService.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseElectronicFenceService.java
new file mode 100644
index 0000000..7c7db2c
--- /dev/null
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseElectronicFenceService.java
@@ -0,0 +1,61 @@
+package com.ruoyi.basetyre.service;
+
+import java.util.List;
+import com.ruoyi.basetyre.domain.BaseElectronicFence;
+
+/**
+ * 电子围栏Service接口
+ *
+ * @author Yangwl
+ * @date 2023-04-07
+ */
+public interface IBaseElectronicFenceService
+{
+ /**
+ * 查询电子围栏
+ *
+ * @param id 电子围栏主键
+ * @return 电子围栏
+ */
+ public BaseElectronicFence selectBaseElectronicFenceById(String id);
+
+ /**
+ * 查询电子围栏列表
+ *
+ * @param baseElectronicFence 电子围栏
+ * @return 电子围栏集合
+ */
+ public List selectBaseElectronicFenceList(BaseElectronicFence baseElectronicFence);
+
+ /**
+ * 新增电子围栏
+ *
+ * @param baseElectronicFence 电子围栏
+ * @return 结果
+ */
+ public int insertBaseElectronicFence(BaseElectronicFence baseElectronicFence);
+
+ /**
+ * 修改电子围栏
+ *
+ * @param baseElectronicFence 电子围栏
+ * @return 结果
+ */
+ public int updateBaseElectronicFence(BaseElectronicFence baseElectronicFence);
+
+ /**
+ * 批量删除电子围栏
+ *
+ * @param ids 需要删除的电子围栏主键集合
+ * @return 结果
+ */
+ public int deleteBaseElectronicFenceByIds(String[] ids);
+
+ /**
+ * 删除电子围栏信息
+ *
+ * @param id 电子围栏主键
+ * @return 结果
+ */
+ public int deleteBaseElectronicFenceById(String id);
+}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseTyreService.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseTyreService.java
index 62e512b..c7e256c 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseTyreService.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/IBaseTyreService.java
@@ -1,9 +1,11 @@
package com.ruoyi.basetyre.service;
+import java.io.IOException;
import java.util.List;
import com.ruoyi.basetyre.domain.BaseTyre;
+import com.ruoyi.basetyre.domain.CollectTyresDetail;
import com.ruoyi.basetyre.domain.vo.CarTyres;
import com.ruoyi.common.core.domain.AjaxResult;
@@ -82,4 +84,6 @@ public interface IBaseTyreService
AjaxResult TyreMileage(CarTyres carTyres);
AjaxResult EditPatternTextureDepth(CarTyres carTyres);
+
+ AjaxResult TyreWaringReprt(CollectTyresDetail collectTyresDetail) throws IOException;
}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarQueueServiceImpl.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarQueueServiceImpl.java
index 4712b55..1749819 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarQueueServiceImpl.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarQueueServiceImpl.java
@@ -4,6 +4,7 @@ import java.util.List;
import java.util.UUID;
import com.ruoyi.basetyre.domain.BaseCarQueue;
+import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.utils.DateUtils;
@@ -45,6 +46,7 @@ public class BaseCarQueueServiceImpl implements IBaseCarQueueService
* @return 车队信息管理
*/
@Override
+ @DataScope(deptAlias = "d", userAlias = "u")
public List selectBaseCarQueueList(BaseCarQueue baseCarQueue)
{
return baseCarQueueMapper.selectBaseCarQueueList(baseCarQueue);
@@ -108,6 +110,7 @@ public class BaseCarQueueServiceImpl implements IBaseCarQueueService
}
@Override
+ @DataScope(deptAlias = "d", userAlias = "u")
public List carQueuelist(BaseCarQueue baseCarQueue) {
return baseCarQueueMapper.carQueuelist(baseCarQueue);
}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarServiceImpl.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarServiceImpl.java
index 2528790..bf26272 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarServiceImpl.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarServiceImpl.java
@@ -9,6 +9,7 @@ import com.ruoyi.basetyre.domain.BaseTyreGpsRecord;
import com.ruoyi.basetyre.domain.BaseTyreHistoricalRecords;
import com.ruoyi.basetyre.domain.vo.CarTyres;
import com.ruoyi.basetyre.mapper.BaseTyreHistoricalRecordsMapper;
+import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.utils.DateUtils;
@@ -61,6 +62,7 @@ public class BaseCarServiceImpl implements IBaseCarService
}
@Override
+ @DataScope(deptAlias = "d", userAlias = "u")
public List queryList(BaseCar baseCar) {
return baseCarMapper.queryList(baseCar);
}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarTypeServiceImpl.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarTypeServiceImpl.java
index 45d2455..452ca46 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarTypeServiceImpl.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseCarTypeServiceImpl.java
@@ -3,6 +3,7 @@ package com.ruoyi.basetyre.service.impl;
import java.util.List;
import java.util.UUID;
+import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.utils.DateUtils;
@@ -45,6 +46,7 @@ public class BaseCarTypeServiceImpl implements IBaseCarTypeService
* @return 车辆类型
*/
@Override
+ @DataScope(deptAlias = "d", userAlias = "u")
public List selectBaseCarTypeList(BaseCarType baseCarType)
{
return baseCarTypeMapper.selectBaseCarTypeList(baseCarType);
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseDeviceServiceImpl.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseDeviceServiceImpl.java
index 871b993..e6f7d27 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseDeviceServiceImpl.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseDeviceServiceImpl.java
@@ -3,9 +3,12 @@ package com.ruoyi.basetyre.service.impl;
import java.util.List;
import java.util.UUID;
+import com.ruoyi.common.annotation.DataScope;
+import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.common.utils.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.basetyre.mapper.BaseDeviceMapper;
@@ -43,6 +46,7 @@ public class BaseDeviceServiceImpl implements IBaseDeviceService
* @return 设备管理
*/
@Override
+ @DataScope(deptAlias = "d", userAlias = "u")
public List selectBaseDeviceList(BaseDevice baseDevice)
{
return baseDeviceMapper.selectBaseDeviceList(baseDevice);
@@ -100,4 +104,14 @@ public class BaseDeviceServiceImpl implements IBaseDeviceService
{
return baseDeviceMapper.deleteBaseDeviceById(id);
}
+
+ @Override
+ public String checkBaseDeviceUnique(BaseDevice baseDevice) {
+ BaseDevice info = baseDeviceMapper.checkBaseDeviceUnique(baseDevice.getInternetThingsNo());
+ if (StringUtils.isNotNull(info) && baseDevice.getInternetThingsNo().equals(info.getInternetThingsNo()))
+ {
+ return UserConstants.NOT_UNIQUE;
+ }
+ return UserConstants.UNIQUE;
+ }
}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseElectronicFenceServiceImpl.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseElectronicFenceServiceImpl.java
new file mode 100644
index 0000000..5dfaabf
--- /dev/null
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseElectronicFenceServiceImpl.java
@@ -0,0 +1,95 @@
+package com.ruoyi.basetyre.service.impl;
+
+import java.util.List;
+import com.ruoyi.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.ruoyi.basetyre.mapper.BaseElectronicFenceMapper;
+import com.ruoyi.basetyre.domain.BaseElectronicFence;
+import com.ruoyi.basetyre.service.IBaseElectronicFenceService;
+
+/**
+ * 电子围栏Service业务层处理
+ *
+ * @author Yangwl
+ * @date 2023-04-07
+ */
+@Service
+public class BaseElectronicFenceServiceImpl implements IBaseElectronicFenceService
+{
+ @Autowired
+ private BaseElectronicFenceMapper baseElectronicFenceMapper;
+
+ /**
+ * 查询电子围栏
+ *
+ * @param id 电子围栏主键
+ * @return 电子围栏
+ */
+ @Override
+ public BaseElectronicFence selectBaseElectronicFenceById(String id)
+ {
+ return baseElectronicFenceMapper.selectBaseElectronicFenceById(id);
+ }
+
+ /**
+ * 查询电子围栏列表
+ *
+ * @param baseElectronicFence 电子围栏
+ * @return 电子围栏
+ */
+ @Override
+ public List selectBaseElectronicFenceList(BaseElectronicFence baseElectronicFence)
+ {
+ return baseElectronicFenceMapper.selectBaseElectronicFenceList(baseElectronicFence);
+ }
+
+ /**
+ * 新增电子围栏
+ *
+ * @param baseElectronicFence 电子围栏
+ * @return 结果
+ */
+ @Override
+ public int insertBaseElectronicFence(BaseElectronicFence baseElectronicFence)
+ {
+ baseElectronicFence.setCreateTime(DateUtils.getNowDate());
+ return baseElectronicFenceMapper.insertBaseElectronicFence(baseElectronicFence);
+ }
+
+ /**
+ * 修改电子围栏
+ *
+ * @param baseElectronicFence 电子围栏
+ * @return 结果
+ */
+ @Override
+ public int updateBaseElectronicFence(BaseElectronicFence baseElectronicFence)
+ {
+ return baseElectronicFenceMapper.updateBaseElectronicFence(baseElectronicFence);
+ }
+
+ /**
+ * 批量删除电子围栏
+ *
+ * @param ids 需要删除的电子围栏主键
+ * @return 结果
+ */
+ @Override
+ public int deleteBaseElectronicFenceByIds(String[] ids)
+ {
+ return baseElectronicFenceMapper.deleteBaseElectronicFenceByIds(ids);
+ }
+
+ /**
+ * 删除电子围栏信息
+ *
+ * @param id 电子围栏主键
+ * @return 结果
+ */
+ @Override
+ public int deleteBaseElectronicFenceById(String id)
+ {
+ return baseElectronicFenceMapper.deleteBaseElectronicFenceById(id);
+ }
+}
diff --git a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseTyreServiceImpl.java b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseTyreServiceImpl.java
index b85e482..967bcf5 100644
--- a/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseTyreServiceImpl.java
+++ b/ruoyi-basetyre/src/main/java/com/ruoyi/basetyre/service/impl/BaseTyreServiceImpl.java
@@ -1,41 +1,41 @@
package com.ruoyi.basetyre.service.impl;
+import java.io.IOException;
import java.util.*;
-import java.util.stream.Collectors;
-import com.ruoyi.basetyre.domain.BaseDevice;
-import com.ruoyi.basetyre.domain.BaseTyreHistoricalRecords;
+import com.alibaba.fastjson2.JSONObject;
+import com.ruoyi.basetyre.domain.*;
+import com.ruoyi.basetyre.domain.vo.Alarm;
import com.ruoyi.basetyre.domain.vo.CarTyres;
import com.ruoyi.basetyre.domain.vo.TyresLife;
import com.ruoyi.basetyre.domain.vo.TyresLifeInfo;
+import com.ruoyi.basetyre.mapper.BaseCarMapper;
import com.ruoyi.basetyre.mapper.BaseDeviceMapper;
import com.ruoyi.basetyre.mapper.BaseTyreHistoricalRecordsMapper;
-import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.websocket.WebSocketServer;
+import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.bean.BeanValidators;
+import com.ruoyi.common.websocket.WebSocketUsers;
import com.ruoyi.system.service.ISysConfigService;
-import com.ruoyi.system.service.impl.SysUserServiceImpl;
-import com.sun.org.apache.bcel.internal.generic.IF_ACMPEQ;
import org.apache.ibatis.session.SqlSessionFactory;
-import org.checkerframework.checker.units.qual.A;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.basetyre.mapper.BaseTyreMapper;
-import com.ruoyi.basetyre.domain.BaseTyre;
import com.ruoyi.basetyre.service.IBaseTyreService;
+import org.springframework.web.socket.client.WebSocketClient;
import javax.annotation.Resource;
import javax.validation.Validator;
+import javax.websocket.Session;
/**
* 轮胎基础Service业务层处理
@@ -62,6 +62,10 @@ public class BaseTyreServiceImpl implements IBaseTyreService
@Autowired
protected Validator validator;
+ @Autowired
+ private BaseCarMapper baseCarMapper;
+
+
/**
* 查询轮胎基础
@@ -82,6 +86,7 @@ public class BaseTyreServiceImpl implements IBaseTyreService
* @return 轮胎基础
*/
@Override
+ @DataScope(deptAlias = "d", userAlias = "u")
public List selectBaseTyreList(BaseTyre baseTyre)
{
baseTyre.setIsDelete((long) 0);
@@ -301,6 +306,7 @@ public class BaseTyreServiceImpl implements IBaseTyreService
baseTyreHistoricalRecords.setCarId(carTyres.getCarId());
baseTyreHistoricalRecords.setCarLicense(carTyres.getCarLicense());
baseTyreHistoricalRecords.setType(String.valueOf(type));
+ baseTyreHistoricalRecords.setCarOnlineMileage(carTyres.getCarOnlineMileage());
baseTyreHistoricalRecords.setTextureDepth(carTyres.getCurrentTextureDepth());
baseTyreHistoricalRecords.setCreateTime(DateUtils.getNowDate());
baseTyreHistoricalRecordsMapper.insertBaseTyreHistoricalRecords(baseTyreHistoricalRecords);
@@ -335,6 +341,7 @@ public class BaseTyreServiceImpl implements IBaseTyreService
baseTyreHistoricalRecords.setCarId(carTyres.getCarId());
baseTyreHistoricalRecords.setCarLicense(carTyres.getCarLicense());
baseTyreHistoricalRecords.setType(String.valueOf(carTyres.getType()));
+ baseTyreHistoricalRecords.setCarOnlineMileage(carTyres.getCarOnlineMileage());
baseTyreHistoricalRecords.setTextureDepth(carTyres.getCurrentTextureDepth());
baseTyreHistoricalRecords.setCreateTime(DateUtils.getNowDate());
baseTyreHistoricalRecordsMapper.insertBaseTyreHistoricalRecords(baseTyreHistoricalRecords);
@@ -474,7 +481,7 @@ public class BaseTyreServiceImpl implements IBaseTyreService
@Override
public AjaxResult EditPatternTextureDepth(CarTyres carTyres) {
- if (carTyres.getType().equals(4)){
+ if (carTyres.getType().equals("4")){
//更新车辆最新的花纹深度
BaseTyre baseTyre = new BaseTyre();
baseTyre.setId(carTyres.getTyreId());
@@ -482,8 +489,49 @@ public class BaseTyreServiceImpl implements IBaseTyreService
baseTyreMapper.updateBaseTyre(baseTyre);
//插入一条新记录
BaseTyreHistoricalRecords baseTyreHistoricalRecords=new BaseTyreHistoricalRecords();
+ baseTyreHistoricalRecords.setId(UUID.randomUUID().toString());
+ baseTyreHistoricalRecords.setTyreId(carTyres.getTyreId());
+ baseTyreHistoricalRecords.setTyrePosition(carTyres.getTyrePosition());
+ baseTyreHistoricalRecords.setTyrePositionNum(Long.valueOf(carTyres.getTyrePosition().substring(carTyres.getTyrePosition().lastIndexOf("-")+1)));
+ baseTyreHistoricalRecords.setCarId(carTyres.getCarId());
+ baseTyreHistoricalRecords.setCarLicense(carTyres.getCarLicense());
+ baseTyreHistoricalRecords.setType(String.valueOf(carTyres.getType()));
+ baseTyreHistoricalRecords.setTextureDepth(carTyres.getCurrentTextureDepth());
+ baseTyreHistoricalRecords.setCarOnlineMileage(carTyres.getCarOnlineMileage());
+ baseTyreHistoricalRecords.setCreateTime(DateUtils.getNowDate());
+ return AjaxResult.success(baseTyreHistoricalRecordsMapper.insertBaseTyreHistoricalRecords(baseTyreHistoricalRecords));
+ }
+ return AjaxResult.error("操作错误!");
+ }
+ /**
+ * 报警业务逻辑处理
+ * @param collectTyresDetail
+ * @return
+ */
+ @Override
+ public AjaxResult TyreWaringReprt(CollectTyresDetail collectTyresDetail) throws IOException {
+ /**
+ * 1、Websocket 通讯通知前台报警
+ * 2、发消息给微信小程序端log
+ */
+ if (!StringUtils.isBlank(collectTyresDetail.getCarId())){
+ BaseTyre baseTyre=baseTyreMapper.selectBaseTyreById(collectTyresDetail.getTyreId());
+ BaseCar baseCar =baseCarMapper.selectBaseCarById(collectTyresDetail.getCarId());
+ Alarm alarm=new Alarm();
+ alarm.setCarLicense(baseCar.getCarLicense());
+ alarm.setTyrePosition(baseTyre.getTyrePosition());
+ alarm.setIspowerinvalue(collectTyresDetail.getIspowerinvalue().toString());
+ alarm.setIspresshigh(collectTyresDetail.getIspresshigh().toString());
+ alarm.setIspresslower(collectTyresDetail.getIspresslower().toString());
+ alarm.setIstemperaturehigh(collectTyresDetail.getIstemperaturehigh().toString());
+ alarm.setReportTime(collectTyresDetail.getReportTime());
+ WebSocketServer.sendMessage(baseTyre.getCompanyCode(), JSONObject.toJSONString(alarm));
}
+// Session session= WebSocketServer.USER_SESSIONS.get(loginUser.getUserId().toString());
+// if (session !=null){
+// session.getBasicRemote().sendText("报警了");
+// }
return null;
}
@@ -493,6 +541,4 @@ public class BaseTyreServiceImpl implements IBaseTyreService
return baseTyreMapper.getTyreInfoById(outerTireNumber);
}
-
-
}
diff --git a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseCarMapper.xml b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseCarMapper.xml
index 2581b0b..b10fa70 100644
--- a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseCarMapper.xml
+++ b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseCarMapper.xml
@@ -79,11 +79,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
base_car bc
LEFT JOIN base_car_queue bcq ON bc.car_queue_id = bcq.id
LEFT JOIN base_car_type bct ON bct.id = bc.car_type_id
+ left join sys_user_role ur on bc.create_by = ur.user_id
+ left join sys_user u on u.user_id = ur.user_id
+ left join sys_dept d on u.dept_id = d.dept_id
- bc.is_delete != '1'
and bc.id = #{id}
and bc.car_license like concat('%', #{carLicense}, '%')
+
+ ${params.dataScope}
+
diff --git a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseCarTypeMapper.xml b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseCarTypeMapper.xml
index 39fe65a..3c906cd 100644
--- a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseCarTypeMapper.xml
+++ b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseCarTypeMapper.xml
@@ -26,11 +26,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- select id, tyre_fac_code, company_code, code, title, state, axle_total, tyre_total, is_delete, create_time, create_id, create_by, create_name, modify_time, modify_id, modify_by, modify__name, trailer_num from base_car_type
+ select id, tyre_fac_code, company_code, code, title, state, axle_total, tyre_total, is_delete, create_time, create_id, create_by, create_name, modify_time, modify_id, modify_by, modify__name, trailer_num from base_car_type bct
-
+ select id, tyre_fac_code, company_code, code, title, state, axle_total, tyre_total, is_delete, bct.create_time, create_id, bct.create_by, bct.create_name, bct.modify_time, bct.modify_id, bct.modify_by, bct.modify__name, trailer_num from base_car_type bct
+ left join sys_user_role ur on bct.create_by = ur.user_id
+ left join sys_user u on u.user_id = ur.user_id
+ left join sys_dept d on u.dept_id = d.dept_id
and tyre_fac_code = #{tyreFacCode}
and company_code = #{companyCode}
@@ -47,6 +50,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and modify_by = #{modifyBy}
and modify__name like concat('%', #{modifyName}, '%')
and trailer_num = #{trailerNum}
+
+ ${params.dataScope}
diff --git a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseDeviceMapper.xml b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseDeviceMapper.xml
index e843990..e37fb7c 100644
--- a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseDeviceMapper.xml
+++ b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseDeviceMapper.xml
@@ -26,16 +26,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- select id, tyre_fac_code, company_code, internet_things_no, sim_code, device_type, state, active_time, last_run_time, is_delete, create_time, create_id, create_by, create_name, modify_time, modify_id, modify_by, modify__name from base_device
+ select id, tyre_fac_code, company_code, internet_things_no, sim_code, device_type, state, active_time, last_run_time, is_delete, bd.create_time, create_id, bd.create_by, bd.create_name, bd.modify_time, bd.modify_id, bd.modify_by, bd.modify__name from base_device bd
+ left join sys_user_role ur on bd.create_by = ur.user_id
+ left join sys_user u on u.user_id = ur.user_id
+ left join sys_dept d on u.dept_id = d.dept_id
and tyre_fac_code = #{tyreFacCode}
and company_code = #{companyCode}
and internet_things_no like concat('%', #{internetThingsNo}, '%')
- and sim_code = #{simCode}
+ and sim_code like concat('%', #{simCode}, '%')
and device_type = #{deviceType}
and state = #{state}
and active_time = #{activeTime}
@@ -47,6 +50,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and modify_id = #{modifyId}
and modify_by = #{modifyBy}
and modify__name like concat('%', #{modifyName}, '%')
+
+ ${params.dataScope}
@@ -58,6 +63,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where internet_things_no = #{internetThingsNo}
+
+ select id, internet_things_no as internetThingsNo
+ from base_device
+ where internet_things_no = #{internetThingsNo}
+
insert into base_device
diff --git a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseElectronicFenceMapper.xml b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseElectronicFenceMapper.xml
new file mode 100644
index 0000000..c57eba1
--- /dev/null
+++ b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseElectronicFenceMapper.xml
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select id, car_id, latitude, longitude, create_time, create_by, create_name, modify_time, modify_by, remark, other1, other2 from base_electronic_fence
+
+
+
+
+
+ and car_id = #{carId}
+ and latitude = #{latitude}
+ and longitude = #{longitude}
+ and create_name like concat('%', #{createName}, '%')
+ and modify_time = #{modifyTime}
+ and modify_by = #{modifyBy}
+ and other1 = #{other1}
+ and other2 = #{other2}
+
+
+
+
+
+ where id = #{id}
+
+
+
+ insert into base_electronic_fence
+
+ id,
+ car_id,
+ latitude,
+ longitude,
+ create_time,
+ create_by,
+ create_name,
+ modify_time,
+ modify_by,
+ remark,
+ other1,
+ other2,
+
+
+ #{id},
+ #{carId},
+ #{latitude},
+ #{longitude},
+ #{createTime},
+ #{createBy},
+ #{createName},
+ #{modifyTime},
+ #{modifyBy},
+ #{remark},
+ #{other1},
+ #{other2},
+
+
+
+
+ update base_electronic_fence
+
+ car_id = #{carId},
+ latitude = #{latitude},
+ longitude = #{longitude},
+ create_time = #{createTime},
+ create_by = #{createBy},
+ create_name = #{createName},
+ modify_time = #{modifyTime},
+ modify_by = #{modifyBy},
+ remark = #{remark},
+ other1 = #{other1},
+ other2 = #{other2},
+
+ where id = #{id}
+
+
+
+ delete from base_electronic_fence where id = #{id}
+
+
+
+ delete from base_electronic_fence where id in
+
+ #{id}
+
+
+
\ No newline at end of file
diff --git a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseFireSetRecordMapper.xml b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseFireSetRecordMapper.xml
index f512cdf..23f3479 100644
--- a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseFireSetRecordMapper.xml
+++ b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseFireSetRecordMapper.xml
@@ -37,7 +37,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-
+
SELECT top 1 * FROM [dbo].[base_fire_set_record]
where car_id = #{carId}
ORDER BY create_time desc
diff --git a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseTyreHistoricalRecordsMapper.xml b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseTyreHistoricalRecordsMapper.xml
index 0e18045..94ed43d 100644
--- a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseTyreHistoricalRecordsMapper.xml
+++ b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseTyreHistoricalRecordsMapper.xml
@@ -61,7 +61,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT
bthr.car_online_mileage AS course,
bthr.texture_depth AS textureDepth,
- bthr.create_time AS TIME
+ bthr.create_time AS createTime
FROM
base_tyre_historical_records bthr
LEFT JOIN base_tyre bt ON bt.id= bthr.tyre_id
@@ -83,6 +83,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
car_license,
type,
texture_depth,
+ car_online_mileage,
create_time,
@@ -94,6 +95,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{carLicense},
#{type},
#{textureDepth},
+ #{textureDepth},
#{createTime},
diff --git a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseTyreMapper.xml b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseTyreMapper.xml
index 43dc6b7..8b52bbf 100644
--- a/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseTyreMapper.xml
+++ b/ruoyi-basetyre/src/main/resources/mapper/basetyre/BaseTyreMapper.xml
@@ -54,14 +54,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+
- select id, tyre_factory, outer_tire_number, material_code, material_name, quality_status, unit, material_type, material_group, product_group, brand, category, size, pattern, cons_pattern, hierarchy, speed_level, load_index, rim_size, weight, section_width, outer_diameter, flattening, enhanced, inner_tube, pattern_depth, ctn, type, cert_info, customs_spe, fe_code, fe_desc, produce_factory, car_id, car_license, tyre_position, sensor_id, current_texture_depth, state, is_delete, create_time, create_id, create_by, create_name, modify_time, modify_id, modify_by, modify__name, remark from base_tyre
+ select id, tyre_factory, outer_tire_number, material_code, material_name, quality_status, unit, material_type, material_group, product_group, brand, category, size, pattern, cons_pattern, hierarchy, speed_level, load_index, rim_size, weight, section_width, outer_diameter, flattening, enhanced, inner_tube, pattern_depth, ctn, type, cert_info, customs_spe, fe_code, fe_desc, produce_factory, car_id, car_license, tyre_position, sensor_id, current_texture_depth, state, is_delete, bt.create_time, bt.create_id, bt.create_by, bt.create_name, bt.modify_time, bt.modify_id, bt.modify_by, bt.modify__name, bt.remark,company_code from base_tyre bt
+ left join sys_user u on u.user_name=bt.company_code
+ left join sys_user_role ur on u.user_id = ur.user_id
+ left join sys_dept d on u.dept_id = d.dept_id
and tyre_factory like concat('%', #{tyreFactory}, '%')
and outer_tire_number like concat('%', #{outerTireNumber}, '%')
@@ -109,6 +113,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and modify_id = #{modifyId}
and modify_by = #{modifyBy}
and modify__name like concat('%', #{modifyName}, '%')
+
+ ${params.dataScope}
diff --git a/ruoyi-basetyre/src/main/resources/mapper/basetyre/CollectMachineGpsMapper.xml b/ruoyi-basetyre/src/main/resources/mapper/basetyre/CollectMachineGpsMapper.xml
index b2a7751..71d2800 100644
--- a/ruoyi-basetyre/src/main/resources/mapper/basetyre/CollectMachineGpsMapper.xml
+++ b/ruoyi-basetyre/src/main/resources/mapper/basetyre/CollectMachineGpsMapper.xml
@@ -63,7 +63,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and d_l_isencryption = #{dLIsencryption}
and speed = #{speed}
and course = #{course}
- and createtime = #{createTime}
+ and createtime BETWEEN #{params.beginTime} AND #{params.endTime}
and gps_intensity = #{gpsIntensity}
and gps_satellites = #{gpsSatellites}
and gps_mileage = #{gpsMileage}
diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml
index 0ba11fa..bcb8af1 100644
--- a/ruoyi-common/pom.xml
+++ b/ruoyi-common/pom.xml
@@ -154,6 +154,11 @@
4.3.5
+
+ org.springframework.boot
+ spring-boot-starter-websocket
+
+
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/SemaphoreUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/websocket/SemaphoreUtils.java
similarity index 96%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/SemaphoreUtils.java
rename to ruoyi-common/src/main/java/com/ruoyi/common/websocket/SemaphoreUtils.java
index 57567f3..e7e382f 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/SemaphoreUtils.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/websocket/SemaphoreUtils.java
@@ -1,9 +1,10 @@
-package com.ruoyi.framework.websocket;
+package com.ruoyi.common.websocket;
-import java.util.concurrent.Semaphore;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.util.concurrent.Semaphore;
+
/**
* 信号量相关处理
*
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketClient.java b/ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketClient.java
new file mode 100644
index 0000000..0ecb8db
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketClient.java
@@ -0,0 +1,28 @@
+package com.ruoyi.common.websocket;
+
+import javax.websocket.Session;
+
+public class WebSocketClient {
+ // 与某个客户端的连接会话,需要通过它来给客户端发送数据
+ private Session session;
+
+ //连接的uri
+ private String uri;
+
+ public Session getSession() {
+ return session;
+ }
+
+ public void setSession(Session session) {
+ this.session = session;
+ }
+
+ public String getUri() {
+ return uri;
+ }
+
+ public void setUri(String uri) {
+ this.uri = uri;
+ }
+
+}
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketConfig.java b/ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketConfig.java
new file mode 100644
index 0000000..7c5932b
--- /dev/null
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketConfig.java
@@ -0,0 +1,20 @@
+package com.ruoyi.common.websocket;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.socket.server.standard.ServerEndpointExporter;
+
+/**
+ * websocket 配置
+ *
+ * @author ruoyi
+ */
+@Configuration
+public class WebSocketConfig
+{
+ @Bean
+ public ServerEndpointExporter serverEndpointExporter()
+ {
+ return new ServerEndpointExporter();
+ }
+}
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/WebSocketServer.java b/ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketServer.java
similarity index 61%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/WebSocketServer.java
rename to ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketServer.java
index ba2ad28..183dc12 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/WebSocketServer.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketServer.java
@@ -1,16 +1,20 @@
-package com.ruoyi.framework.websocket;
+package com.ruoyi.common.websocket;
-import java.util.ArrayList;
-import java.util.List;
+import java.io.IOException;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.Semaphore;
import javax.websocket.OnClose;
import javax.websocket.OnError;
import javax.websocket.OnMessage;
import javax.websocket.OnOpen;
import javax.websocket.Session;
+import javax.websocket.server.PathParam;
import javax.websocket.server.ServerEndpoint;
-import io.netty.buffer.ByteBuf;
+import com.ruoyi.common.core.domain.model.LoginUser;
+import com.ruoyi.common.utils.SecurityUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
@@ -21,7 +25,7 @@ import org.springframework.stereotype.Component;
* @author ruoyi
*/
@Component
-@ServerEndpoint("/websocket/message")
+@ServerEndpoint("/websocket/message/{userName}")
public class WebSocketServer
{
/**
@@ -35,13 +39,22 @@ public class WebSocketServer
public static int socketMaxOnlineCount = 100;
private static Semaphore socketSemaphore = new Semaphore(socketMaxOnlineCount);
+ private static ConcurrentHashMap webSocketMap = new ConcurrentHashMap<>();
+ /**与某个客户端的连接会话,需要通过它来给客户端发送数据*/
+ private Session session;
+ /**接收userName*/
+ private String userName="";
/**
* 连接建立成功调用的方法
*/
@OnOpen
- public void onOpen(Session session) throws Exception
+ public void onOpen(@PathParam("userName") String userName, Session session) throws Exception
{
+ //获取登陆用户信息
+ //USER_SESSIONS.put(loginUser.getUserId().toString(),session);
+// this.session = session;
+// websockets.put(id, this); //将ID作为key,当前的对象作为Value
boolean semaphoreFlag = false;
// 尝试获取信号量
semaphoreFlag = SemaphoreUtils.tryAcquire(socketSemaphore);
@@ -56,9 +69,17 @@ public class WebSocketServer
{
// 添加用户
WebSocketUsers.put(session.getId(), session);
+
+ this.session = session;
+ this.userName= userName;
+ WebSocketClient client = new WebSocketClient();
+ client.setSession(session);
+ client.setUri(session.getRequestURI().toString());
+ webSocketMap.put(userName, client);
+
LOGGER.info("\n 建立连接 - {}", session);
LOGGER.info("\n 当前人数 - {}", WebSocketUsers.getUsers().size());
- WebSocketUsers.sendMessageToUserByText(session, "连接成功");
+ WebSocketUsers.sendMessageToUserByText(session, "连接成功session:"+session);
}
}
@@ -104,5 +125,21 @@ public class WebSocketServer
String msg = message.replace("你", "我").replace("吗", "");
WebSocketUsers.sendMessageToUserByText(session, msg);
}
+ /**
+ * 向指定客户端发送消息
+ * @param userName
+ * @param message
+ */
+ public static void sendMessage(String userName,String message){
+ try {
+ WebSocketClient webSocketClient = webSocketMap.get(userName);
+ if(webSocketClient!=null){
+ webSocketClient.getSession().getBasicRemote().sendText(message);
+ }
+ } catch (IOException e) {
+ e.printStackTrace();
+ throw new RuntimeException(e.getMessage());
+ }
+ }
}
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/WebSocketUsers.java b/ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketUsers.java
similarity index 86%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/WebSocketUsers.java
rename to ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketUsers.java
index 81e549e..b6f2ecd 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/WebSocketUsers.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/websocket/WebSocketUsers.java
@@ -1,13 +1,15 @@
-package com.ruoyi.framework.websocket;
+package com.ruoyi.common.websocket;
import java.io.IOException;
import java.util.Collection;
+import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import javax.websocket.Session;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.springframework.web.socket.client.WebSocketClient;
/**
* websocket 客户端用户集
@@ -116,7 +118,7 @@ public class WebSocketUsers
/**
* 发送文本消息
*
- * @param userName 自己的用户名
+ * @param session 自己的用户名
* @param message 消息内容
*/
public static void sendMessageToUserByText(Session session, String message)
@@ -137,4 +139,17 @@ public class WebSocketUsers
LOGGER.info("\n[你已离线]");
}
}
+
+
+// public void sendMessage(String message, String userId){
+// try {
+// if (USERS.get(userId)!=null){
+//
+// }
+//
+// }catch (Exception e){
+// e.printStackTrace();
+// throw new RuntimeException(e.getMessage());
+// }
+// }
}
diff --git a/ruoyi-framework/pom.xml b/ruoyi-framework/pom.xml
index 9a81f39..82af743 100644
--- a/ruoyi-framework/pom.xml
+++ b/ruoyi-framework/pom.xml
@@ -60,10 +60,7 @@
ruoyi-system
-
- org.springframework.boot
- spring-boot-starter-websocket
-
+
com.ruoyi
ruoyi-basetyre
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
index ec95137..c83906f 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
@@ -111,7 +111,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
// 过滤请求
.authorizeRequests()
// 对于登录login 注册register 验证码captchaImage 允许匿名访问
- .antMatchers("/login", "/register", "/captchaImage","/system/language/change","/websocket/**").permitAll()
+ .antMatchers("/login", "/register", "/captchaImage","/system/language/change","/websocket/**","/basetyre/tyre/TyreWarring").permitAll()
// 静态资源,可匿名访问
.antMatchers(HttpMethod.GET, "/", "/*.html", "/**/*.html", "/**/*.css", "/**/*.js", "/profile/**").permitAll()
.antMatchers("/swagger-ui.html", "/swagger-resources/**", "/webjars/**", "/*/api-docs", "/druid/**").permitAll()
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java
index 192d9be..8fdf4e8 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/SysLoginService.java
@@ -1,6 +1,8 @@
package com.ruoyi.framework.web.service;
import javax.annotation.Resource;
+import javax.websocket.Session;
+
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.MessageSource;
import org.springframework.context.i18n.LocaleContextHolder;
@@ -29,6 +31,9 @@ import com.ruoyi.framework.security.context.AuthenticationContextHolder;
import com.ruoyi.system.service.ISysConfigService;
import com.ruoyi.system.service.ISysUserService;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
/**
* 登录校验方法
*
@@ -54,6 +59,7 @@ public class SysLoginService
@Autowired
private MessageSource messageSource;
+
/**
* 登录验证
*
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/WebSocketConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/WebSocketConfig.java
deleted file mode 100644
index 7442ef3..0000000
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/websocket/WebSocketConfig.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.ruoyi.framework.websocket;
-
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.web.socket.server.standard.ServerEndpointExporter;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.net.ServerSocket;
-import java.net.Socket;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-
-/**
- * websocket 配置
- *
- * @author ruoyi
- */
-@Configuration
-public class WebSocketConfig
-{
-
-
- @Bean
- public ServerEndpointExporter serverEndpointExporter()
- {
- return new ServerEndpointExporter();
- }
-// @Bean
-// public EchoSocketServer echoSocketServer(){
-// return new EchoSocketServer(8691);
-// }
-
-
-
-}
diff --git a/ruoyi-ui/.env.production b/ruoyi-ui/.env.production
index e0cb11f..5875ff4 100644
--- a/ruoyi-ui/.env.production
+++ b/ruoyi-ui/.env.production
@@ -6,6 +6,6 @@ VITE_APP_ENV = 'production'
# 若依管理系统/生产环境
#VITE_APP_BASE_API = 'http://10.11.41.249:8080/dev-api'
-VITE_APP_BASE_API = 'http://47.94.93.46:80/dev-api'
+VITE_APP_BASE_API = 'https://ticptest.tercelo.com/dev-api'
# 是否在打包时开启压缩,支持 gzip 和 brotli
VITE_BUILD_COMPRESS = gzip
\ No newline at end of file
diff --git a/ruoyi-ui/src/api/report/report.js b/ruoyi-ui/src/api/report/report.js
index ff0836c..f5d6efa 100644
--- a/ruoyi-ui/src/api/report/report.js
+++ b/ruoyi-ui/src/api/report/report.js
@@ -7,4 +7,12 @@ export function getTempdata(query) {
method: 'get',
params: query
})
+}
+// 首页看板
+export function getIndexdata(query) {
+ return request({
+ url: '/report/indexreport',
+ method: 'post',
+ params: query
+ })
}
\ No newline at end of file
diff --git a/ruoyi-ui/src/layout/components/TagsView/index.vue b/ruoyi-ui/src/layout/components/TagsView/index.vue
index 385b1d1..c6bf940 100644
--- a/ruoyi-ui/src/layout/components/TagsView/index.vue
+++ b/ruoyi-ui/src/layout/components/TagsView/index.vue
@@ -45,6 +45,7 @@
+
diff --git a/ruoyi-ui/src/views/tireManagement/info/index.vue b/ruoyi-ui/src/views/tireManagement/info/index.vue
index 1a5eaf1..af25afc 100644
--- a/ruoyi-ui/src/views/tireManagement/info/index.vue
+++ b/ruoyi-ui/src/views/tireManagement/info/index.vue
@@ -141,6 +141,7 @@
+