From f27b14dc335d5fd1594d0bdd9e0d81e2316ffc30 Mon Sep 17 00:00:00 2001
From: WeiRan <2392355487@qq.com>
Date: Sun, 29 Sep 2024 17:51:53 +0800
Subject: [PATCH 01/10] =?UTF-8?q?=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../cloud-modules-enterprise-common/pom.xml | 4 +
.../src/main/java/com/muyu/domain/Firm.java | 40 +++++
.../main/java/com/muyu/domain/SysUser.java | 119 +++++++++++++++
.../java/com/muyu/domain/req/FirmListReq.java | 37 +++++
.../com/muyu/domain/resp/FirmListResp.java | 138 ++++++++++++++++++
.../muyu/domain/resp/FirmTotalListResp.java | 36 +++++
.../controller/FirmManageController.java | 47 ++++++
.../muyu/server/mapper/FirmManageMapper.java | 23 +++
.../com/muyu/server/mapper/FirmMapper.java | 17 +++
.../muyu/server/service/DataBaseCreator.java | 16 ++
.../server/service/FirmManageService.java | 26 ++++
.../com/muyu/server/service/FirmService.java | 20 +++
.../service/impl/DataBaseCreatorImpl.java | 51 +++++++
.../service/impl/FirmManageServiceImpl.java | 54 +++++++
.../server/service/impl/FirmServiceImpl.java | 32 ++++
.../service/impl/SysUserServiceImpl.java | 2 +
16 files changed, 662 insertions(+)
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/Firm.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/SysUser.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/req/FirmListReq.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/resp/FirmListResp.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/resp/FirmTotalListResp.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/FirmManageController.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/FirmManageMapper.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/FirmMapper.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/DataBaseCreator.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmManageService.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmService.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/DataBaseCreatorImpl.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmManageServiceImpl.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmServiceImpl.java
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/pom.xml b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/pom.xml
index 2d3421d..68857c5 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/pom.xml
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/pom.xml
@@ -54,5 +54,9 @@
fastjson
1.2.83
+
+ com.muyu
+ cloud-common-system
+
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/Firm.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/Firm.java
new file mode 100644
index 0000000..eb5d0b7
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/Firm.java
@@ -0,0 +1,40 @@
+package com.muyu.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import lombok.experimental.SuperBuilder;
+
+/**
+ * 企业名称
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.domain
+ * @Project:cloud-server-8
+ * @name:Firm
+ * @Date:2024/9/27 12:29
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@SuperBuilder
+public class Firm {
+
+ /**
+ * 企业ID
+ */
+ @TableId(value = "firm_id")
+ private Long firmId;
+ /**
+ * 企业名称
+ */
+ @TableField(exist = false)
+ private String firmName;
+ /**
+ * 数据库名称
+ */
+ private String databaseName;
+
+
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/SysUser.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/SysUser.java
new file mode 100644
index 0000000..64014c2
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/SysUser.java
@@ -0,0 +1,119 @@
+package com.muyu.domain;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.muyu.common.core.web.domain.BaseEntity;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.experimental.SuperBuilder;
+
+import java.util.Date;
+
+/**
+ * 用户信息
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.domain
+ * @Project:cloud-server-8
+ * @name:SysUser
+ * @Date:2024/9/28 22:37
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@SuperBuilder
+@Tag(name = "用户信息")
+@TableName("sys_user")
+public class SysUser extends BaseEntity {
+ /**
+ * 用户ID
+ */
+ @TableId(value = "user_id")
+ private Long userId;
+
+ /**
+ * 部门ID
+ */
+ private Long deptId;
+
+ /**
+ * 用户账号
+ */
+ private String userName;
+
+ /**
+ * 用户昵称
+ */
+ private String nickName;
+
+ /**
+ * 用户类型(00系统用户)
+ */
+ private String userType;
+
+ /**
+ * 用户邮箱
+ */
+ private String email;
+
+ /**
+ * 手机号码
+ */
+ private String phonenumber;
+
+ /**
+ * 用户性别(0男 1女 2未知)
+ */
+ private Integer sex;
+
+ /**
+ * 头像地址
+ */
+ private String avatar;
+
+ /**
+ * 密码
+ */
+ private String password;
+
+ /**
+ * 帐号状态(0正常 1停用)
+ */
+ private Integer status;
+
+ /**
+ * 删除标志(0代表存在 2代表删除)
+ */
+ private String delFlag;
+
+ /**
+ * 最后登录IP
+ */
+ private String loginIp;
+
+ /**
+ * 最后登录时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date loginDate;
+
+ /**
+ * 数据库名称
+ */
+ private String databaseName;
+
+ /**
+ * 企业ID
+ */
+ private Long firmId;
+ /**
+ * 企业名称
+ */
+ @TableField(exist = false)
+ private String firmName;
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/req/FirmListReq.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/req/FirmListReq.java
new file mode 100644
index 0000000..ccc7e0a
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/req/FirmListReq.java
@@ -0,0 +1,37 @@
+package com.muyu.domain.req;
+
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * 公司信息请求对象
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.domain.req
+ * @Project:cloud-server-8
+ * @name:FirmListReq
+ * @Date:2024/9/27 19:19
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+@Tag(name = "公司信息请求对象",description = "公司信息请求对象")
+public class FirmListReq {
+
+ /**
+ * 公司名称
+ */
+ private String firmName;
+ /**
+ * 页码,从1开始
+ */
+ private Integer pageNum=1;
+ /**
+ * 每页大小
+ */
+ private Integer pageSize=10;
+
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/resp/FirmListResp.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/resp/FirmListResp.java
new file mode 100644
index 0000000..2f64e8b
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/resp/FirmListResp.java
@@ -0,0 +1,138 @@
+package com.muyu.domain.resp;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.muyu.domain.SysUser;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.Date;
+
+/**
+ * 企业信息响应对象
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.domain.resp
+ * @Project:cloud-server-8
+ * @name:FirmListResp
+ * @Date:2024/9/27 19:33
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+@Tag(name="企业信息响应对象",description = "企业信息响应对象")
+public class FirmListResp {
+ /**
+ * 用户ID
+ */
+ private Long userId;
+
+ /**
+ * 部门ID
+ */
+ private Long deptId;
+
+ /**
+ * 用户账号
+ */
+ private String userName;
+
+ /**
+ * 用户昵称
+ */
+ private String nickName;
+
+ /**
+ * 用户类型(00系统用户)
+ */
+ private String userType;
+
+ /**
+ * 用户邮箱
+ */
+ private String email;
+
+ /**
+ * 手机号码
+ */
+ private String phonenumber;
+
+ /**
+ * 用户性别(0男 1女 2未知)
+ */
+ private Integer sex;
+
+ /**
+ * 头像地址
+ */
+ private String avatar;
+
+ /**
+ * 密码
+ */
+ private String password;
+
+ /**
+ * 帐号状态(0正常 1停用)
+ */
+ private Integer status;
+
+ /**
+ * 删除标志(0代表存在 2代表删除)
+ */
+ private String delFlag;
+
+ /**
+ * 最后登录IP
+ */
+ private String loginIp;
+
+ /**
+ * 最后登录时间
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date loginDate;
+
+ /**
+ * 数据库名称
+ */
+ private String databaseName;
+
+ /**
+ * 企业ID
+ */
+ private Long firmId;
+ /**
+ * 企业名称
+ */
+ @TableField(exist = false)
+ private String firmName;
+
+ /**
+ * 数据库对象构建为返回结果对象
+ */
+ public static FirmListResp firmListResp(SysUser sysUser){
+ return FirmListResp.builder()
+ .userId(sysUser.getUserId())
+ .deptId(sysUser.getDeptId())
+ .userName(sysUser.getUserName())
+ .nickName(sysUser.getNickName())
+ .userType((sysUser.getUserType()))
+ .email(sysUser.getEmail())
+ .phonenumber(sysUser.getPhonenumber())
+ .sex(sysUser.getSex())
+ .avatar(sysUser.getAvatar())
+ .password(sysUser.getPassword())
+ .status(sysUser.getStatus())
+ .delFlag(sysUser.getDelFlag())
+ .loginDate(sysUser.getLoginDate())
+ .databaseName(sysUser.getDatabaseName())
+ .firmId(sysUser.getFirmId())
+ .build();
+ }
+
+
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/resp/FirmTotalListResp.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/resp/FirmTotalListResp.java
new file mode 100644
index 0000000..e3e1e84
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/resp/FirmTotalListResp.java
@@ -0,0 +1,36 @@
+package com.muyu.domain.resp;
+
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.util.List;
+
+/**
+ * 公司数据总数响应对象
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.domain.resp.firmlist
+ * @Project:cloud-server-8
+ * @name:FirmTotalListResp
+ * @Date:2024/9/27 19:42
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@Builder
+@Tag(name = "公司数据总数列表",description = "数据总数响应")
+public class FirmTotalListResp {
+
+ private List firmListRespList;
+
+ private long total;
+
+ public static FirmTotalListResp firmTotalListResp(List firmListRespList,long toal){
+ FirmTotalListResp firmTotalListResp = new FirmTotalListResp();
+ firmTotalListResp.setFirmListRespList(firmListRespList);
+ firmTotalListResp.setTotal(toal);
+ return firmTotalListResp;
+ }
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/FirmManageController.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/FirmManageController.java
new file mode 100644
index 0000000..47f9004
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/FirmManageController.java
@@ -0,0 +1,47 @@
+package com.muyu.server.controller;
+
+import com.muyu.common.core.domain.Result;
+import com.muyu.domain.req.FirmListReq;
+import com.muyu.domain.resp.FirmTotalListResp;
+import com.muyu.server.service.FirmManageService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 企业信息控制层
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.controller
+ * @Project:cloud-server-8
+ * @name:FirmManageController
+ * @Date:2024/9/27 12:27
+ */
+@RestController
+@RequestMapping("/firmmanage")
+@Tag(name = "公司相关事务",description = "公司相关事务操作")
+public class FirmManageController {
+
+ @Autowired
+ private FirmManageService firmManageService;
+
+
+ /**
+ * 公司列表信息展示
+ * @param firmListReq
+ * @return
+ */
+ @PostMapping("/firmmessageList")
+ @Operation(summary = "公司信息列表展示",description = "展示公司信息的列表")
+ public Result firmmessageList(@Validated @RequestBody FirmListReq firmListReq){
+ FirmTotalListResp firmTotalListResp = firmManageService.firmmessageList(firmListReq);
+ return Result.success(firmTotalListResp);
+ }
+
+
+
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/FirmManageMapper.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/FirmManageMapper.java
new file mode 100644
index 0000000..ed33d65
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/FirmManageMapper.java
@@ -0,0 +1,23 @@
+package com.muyu.server.mapper;
+
+import com.github.yulichang.base.MPJBaseMapper;
+import com.muyu.domain.Firm;
+import com.muyu.domain.SysUser;
+import com.muyu.domain.req.FirmListReq;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 公司+员工持久层
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.mapper
+ * @Project:cloud-server-8
+ * @name:FirmManageMapper
+ * @Date:2024/9/27 12:28
+ */
+@Mapper
+public interface FirmManageMapper extends MPJBaseMapper {
+
+ List firmmessageList(FirmListReq firmListReq);
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/FirmMapper.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/FirmMapper.java
new file mode 100644
index 0000000..a1ee530
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/FirmMapper.java
@@ -0,0 +1,17 @@
+package com.muyu.server.mapper;
+
+import com.github.yulichang.base.MPJBaseMapper;
+import com.muyu.domain.Firm;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+ * 公司表持久层
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.mapper
+ * @Project:cloud-server-8
+ * @name:FirmMapper
+ * @Date:2024/9/29 16:56
+ */
+@Mapper
+public interface FirmMapper extends MPJBaseMapper {
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/DataBaseCreator.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/DataBaseCreator.java
new file mode 100644
index 0000000..5283a8d
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/DataBaseCreator.java
@@ -0,0 +1,16 @@
+package com.muyu.server.service;
+
+import com.muyu.common.system.domain.SysUser;
+
+/**
+ * @Author:weiran
+ * @Package:com.muyu.system.service
+ * @Project:cloud-server-8
+ * @name:DataBaseCreator
+ * @Date:2024/9/26 20:40
+ */
+public interface DataBaseCreator {
+
+
+ String createDatbase(SysUser user);
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmManageService.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmManageService.java
new file mode 100644
index 0000000..1831e27
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmManageService.java
@@ -0,0 +1,26 @@
+package com.muyu.server.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.muyu.domain.SysUser;
+import com.muyu.domain.req.FirmListReq;
+import com.muyu.domain.resp.FirmTotalListResp;
+
+import java.util.List;
+
+/**
+ * 公司+员工业务层
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.service
+ * @Project:cloud-server-8
+ * @name:FirmManageService
+ * @Date:2024/9/27 12:28
+ */
+public interface FirmManageService extends IService {
+
+ /**
+ * 公司列表信息展示
+ * @param firmListReq
+ * @return
+ */
+ FirmTotalListResp firmmessageList(FirmListReq firmListReq);
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmService.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmService.java
new file mode 100644
index 0000000..2898850
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmService.java
@@ -0,0 +1,20 @@
+package com.muyu.server.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.muyu.firmmanage.domain.Firm;
+
+/**
+ * 公司业务层
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.service
+ * @Project:cloud-server-8
+ * @name:FirmService
+ * @Date:2024/9/29 16:57
+ */
+public interface FirmService extends IService {
+ /**
+ * 查询公司数目
+ * @return
+ */
+ long findcount();
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/DataBaseCreatorImpl.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/DataBaseCreatorImpl.java
new file mode 100644
index 0000000..2e8d6d7
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/DataBaseCreatorImpl.java
@@ -0,0 +1,51 @@
+package com.muyu.server.service.impl;
+
+import cn.hutool.core.util.RandomUtil;
+import com.muyu.common.system.domain.SysUser;
+import com.muyu.server.service.DataBaseCreator;
+import org.springframework.stereotype.Service;
+
+import java.sql.Connection;
+import java.sql.DriverManager;
+import java.sql.Statement;
+
+/**
+ * @Author:weiran
+ * @Package:com.muyu.system.service.impl
+ * @Project:cloud-server-8
+ * @name:DataBaseCreatorImpl
+ * @Date:2024/9/26 20:40
+ */
+@Service
+public class DataBaseCreatorImpl implements DataBaseCreator {
+
+
+ private static final String DB_URL="jdbc:mysql://159.75.188.178:3306?useSSL=false";
+ private static final String USER="root";
+ private static final String PASS="bwie-8666";
+
+
+ @Override
+ public String createDatbase(SysUser user) {
+ try {
+ Connection conn = DriverManager.getConnection(DB_URL, USER, PASS);
+ Statement statement = conn.createStatement();
+ String datbaseName="company"+RandomUtil.randomString(10000);
+ //创建数据库
+ String sql="CREATE DATABASE IF NOT EXISTS "+datbaseName;
+ statement.execute(sql);
+ //使用数据库
+ sql="USE "+datbaseName;
+ statement.execute(sql);
+ //创建表
+ sql="CREATE TABLE user ("+
+ "user_id INT AUTO_INCREMENT PRIMARY KEY,"+
+ "user_name VARCHAR(50) NOT NULL )";
+ statement.execute(sql);
+ return datbaseName;
+ }catch (Exception e){
+ e.printStackTrace();
+ }
+ return null;
+ }
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmManageServiceImpl.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmManageServiceImpl.java
new file mode 100644
index 0000000..6878416
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmManageServiceImpl.java
@@ -0,0 +1,54 @@
+package com.muyu.server.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import com.muyu.common.core.utils.StringUtils;
+import com.muyu.firmmanage.domain.Firm;
+import com.muyu.firmmanage.domain.SysUser;
+import com.muyu.firmmanage.domain.req.FirmListReq;
+import com.muyu.firmmanage.domain.resp.firmlist.FirmListResp;
+import com.muyu.firmmanage.domain.resp.firmlist.FirmTotalListResp;
+import com.muyu.firmmanage.mapper.FirmManageMapper;
+import com.muyu.firmmanage.service.FirmManageService;
+import com.muyu.firmmanage.service.FirmService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 公司+员工业务实现层
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.service.impl
+ * @Project:cloud-server-8
+ * @name:FirmManageServiceImpl
+ * @Date:2024/9/27 12:28
+ */
+@Service
+public class FirmManageServiceImpl extends ServiceImpl implements FirmManageService {
+ @Autowired
+ private FirmManageMapper firmManageMapper;
+ @Autowired
+ private FirmService firmService;
+ /**
+ * 公司列表信息展示
+ * @param firmListReq
+ * @return
+ */
+ @Override
+ public FirmTotalListResp firmmessageList(FirmListReq firmListReq) {
+ long findcount = firmService.findcount();
+ MPJLambdaWrapper wrapper = new MPJLambdaWrapper<>();
+ wrapper.selectAll(SysUser.class)
+ .selectAll(Firm.class)
+ .leftJoin(Firm.class,Firm::getFirmId,SysUser::getFirmId)
+ .eq(StringUtils.isNotEmpty(firmListReq.getFirmName()),
+ Firm::getFirmName, firmListReq.getFirmName());
+ wrapper.last("LIMIT "+((firmListReq.getPageNum()-1)*firmListReq.getPageSize())+","+firmListReq.getPageSize());
+ List firmListResps = firmManageMapper.selectJoinList(FirmListResp.class, wrapper);
+ return FirmTotalListResp.firmTotalListResp(firmListResps,findcount);
+
+ }
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmServiceImpl.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmServiceImpl.java
new file mode 100644
index 0000000..5a8da61
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmServiceImpl.java
@@ -0,0 +1,32 @@
+package com.muyu.server.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.muyu.firmmanage.domain.Firm;
+import com.muyu.firmmanage.mapper.FirmMapper;
+import com.muyu.firmmanage.service.FirmService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 公司业务实现层
+ * @Author:weiran
+ * @Package:com.muyu.firmmanage.service.impl
+ * @Project:cloud-server-8
+ * @name:FirmServiceImpl
+ * @Date:2024/9/29 16:57
+ */
+@Service
+public class FirmServiceImpl extends ServiceImpl implements FirmService {
+
+ /**
+ * 查询公司数目
+ * @return
+ */
+ @Override
+ public long findcount() {
+ LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>();
+ long count = this.count(queryWrapper);
+ return count;
+
+ }
+}
diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysUserServiceImpl.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysUserServiceImpl.java
index 7e17f2c..bc70e84 100644
--- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysUserServiceImpl.java
+++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysUserServiceImpl.java
@@ -254,6 +254,8 @@ public class SysUserServiceImpl extends ServiceImpl impl
*/
@Override
public boolean registerUser (SysUser user) {
+
+
return userMapper.insertUser(user) > 0;
}
From 3bf6f0d929d6aff2bf5612d4d338ffdfd58437a2 Mon Sep 17 00:00:00 2001
From: WeiRan <2392355487@qq.com>
Date: Sun, 29 Sep 2024 22:18:34 +0800
Subject: [PATCH 02/10] =?UTF-8?q?=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/com/muyu/auth/form/RegisterBody.java | 6 ++++-
.../muyu/auth/service/SysLoginService.java | 10 +++++++-
cloud-auth/src/main/resources/bootstrap.yml | 2 +-
.../muyu/common/system/domain/SysUser.java | 7 +++++-
.../src/main/resources/bootstrap.yml | 2 +-
.../com/muyu/server/service/FirmService.java | 3 ++-
.../impl/CarInformationServiceImpl.java | 1 +
.../service/impl/FaultRuleServiceImpl.java | 4 ++++
.../service/impl/FirmManageServiceImpl.java | 19 +++++++--------
.../server/service/impl/FirmServiceImpl.java | 6 ++---
.../src/main/resources/bootstrap.yml | 2 +-
.../src/main/resources/bootstrap.yml | 2 +-
.../src/main/resources/bootstrap.yml | 2 +-
.../com/muyu/system/mapper/SysUserMapper.java | 7 ++++++
.../muyu/system}/service/DataBaseCreator.java | 2 +-
.../service/impl/DataBaseCreatorImpl.java | 22 ++++++++---------
.../service/impl/SysUserServiceImpl.java | 24 ++++++++++++++++---
.../src/main/resources/bootstrap.yml | 2 +-
.../resources/mapper/system/SysUserMapper.xml | 5 ++++
.../src/main/resources/bootstrap.yml | 2 +-
20 files changed, 90 insertions(+), 40 deletions(-)
rename cloud-modules/{cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server => cloud-modules-system/src/main/java/com/muyu/system}/service/DataBaseCreator.java (89%)
rename cloud-modules/{cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server => cloud-modules-system/src/main/java/com/muyu/system}/service/impl/DataBaseCreatorImpl.java (66%)
diff --git a/cloud-auth/src/main/java/com/muyu/auth/form/RegisterBody.java b/cloud-auth/src/main/java/com/muyu/auth/form/RegisterBody.java
index a3d1251..b9fa745 100644
--- a/cloud-auth/src/main/java/com/muyu/auth/form/RegisterBody.java
+++ b/cloud-auth/src/main/java/com/muyu/auth/form/RegisterBody.java
@@ -30,6 +30,10 @@ public class RegisterBody extends LoginBody {
/**
* 手机号
*/
- private String phoneNumber;
+ private String phonenumber;
+ /**
+ * 公司注册人名称
+ */
+ private String nickName;
}
diff --git a/cloud-auth/src/main/java/com/muyu/auth/service/SysLoginService.java b/cloud-auth/src/main/java/com/muyu/auth/service/SysLoginService.java
index e49b481..6233ff5 100644
--- a/cloud-auth/src/main/java/com/muyu/auth/service/SysLoginService.java
+++ b/cloud-auth/src/main/java/com/muyu/auth/service/SysLoginService.java
@@ -127,10 +127,18 @@ public class SysLoginService {
// 注册用户信息
SysUser sysUser = new SysUser();
+ //公司账号
sysUser.setUserName(registerBody.getUsername());
+ //公司邮箱
sysUser.setEmail(registerBody.getEmail());
- sysUser.setPhonenumber(registerBody.getPhoneNumber());
+ //公司号码
+ sysUser.setPhonenumber(registerBody.getPhonenumber());
+ //密码
sysUser.setPassword(SecurityUtils.encryptPassword(registerBody.getPassword()));
+ //公司注册人名称
+ sysUser.setNickName(registerBody.getNickName());
+ //企业名称
+ sysUser.setFirmName(registerBody.getFirmName());
Result> registerResult = remoteUserService.registerUserInfo(sysUser, SecurityConstants.INNER);
if (Result.FAIL == registerResult.getCode()) {
diff --git a/cloud-auth/src/main/resources/bootstrap.yml b/cloud-auth/src/main/resources/bootstrap.yml
index 9a56e49..1cdb12c 100644
--- a/cloud-auth/src/main/resources/bootstrap.yml
+++ b/cloud-auth/src/main/resources/bootstrap.yml
@@ -4,7 +4,7 @@ server:
# nacos线上地址
nacos:
- addr: 127.0.0.1:8848
+ addr: 159.75.188.178:8848
user-name: nacos
password: nacos
namespace: eight
diff --git a/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/domain/SysUser.java b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/domain/SysUser.java
index 7633bca..3efe4cc 100644
--- a/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/domain/SysUser.java
+++ b/cloud-common/cloud-common-system/src/main/java/com/muyu/common/system/domain/SysUser.java
@@ -87,7 +87,6 @@ public class SysUser extends BaseEntity {
* 企业ID
*/
private Integer firmId;
-
/**
* 所属数据库
*/
@@ -145,6 +144,12 @@ public class SysUser extends BaseEntity {
*/
private Long roleId;
+ /**
+ * 公司名称
+ * @param userId
+ */
+ private String firmName;
+
public SysUser (Long userId) {
this.userId = userId;
}
diff --git a/cloud-gateway/src/main/resources/bootstrap.yml b/cloud-gateway/src/main/resources/bootstrap.yml
index a9335ac..7f67420 100644
--- a/cloud-gateway/src/main/resources/bootstrap.yml
+++ b/cloud-gateway/src/main/resources/bootstrap.yml
@@ -4,7 +4,7 @@ server:
# nacos线上地址
nacos:
- addr: 127.0.0.1:8848
+ addr: 159.75.188.178:8848
user-name: nacos
password: nacos
namespace: eight
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmService.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmService.java
index 2898850..3483947 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmService.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/FirmService.java
@@ -1,7 +1,8 @@
package com.muyu.server.service;
+
import com.baomidou.mybatisplus.extension.service.IService;
-import com.muyu.firmmanage.domain.Firm;
+import com.muyu.domain.Firm;
/**
* 公司业务层
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java
index 5bf9428..0e80867 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java
@@ -152,4 +152,5 @@ public class CarInformationServiceImpl
});
return carInformationResps;
}
+
}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultRuleServiceImpl.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultRuleServiceImpl.java
index 58a4697..d379880 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultRuleServiceImpl.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultRuleServiceImpl.java
@@ -9,6 +9,7 @@ import com.muyu.server.mapper.CarFenceMapper;
import com.muyu.server.mapper.CarInformationMapper;
import com.muyu.server.mapper.FaultConditionMapper;
import com.muyu.server.mapper.FaultRuleMapper;
+import com.muyu.server.service.CarInformationService;
import com.muyu.server.service.FaultRuleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -29,6 +30,8 @@ import java.util.List;
@Service
public class FaultRuleServiceImpl extends ServiceImpl implements FaultRuleService {
+ @Autowired
+ private CarInformationService carInformationService;
@Autowired
private CarInformationMapper carInformationMapper;
@Autowired
@@ -45,6 +48,7 @@ public class FaultRuleServiceImpl extends ServiceImpl faultConditionResps = faultConditionMapper.selectJoinList(FaultConditionResp.class, new MPJLambdaWrapper()
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmManageServiceImpl.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmManageServiceImpl.java
index 6878416..e4f3501 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmManageServiceImpl.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmManageServiceImpl.java
@@ -1,18 +1,17 @@
package com.muyu.server.service.impl;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.muyu.common.core.utils.StringUtils;
-import com.muyu.firmmanage.domain.Firm;
-import com.muyu.firmmanage.domain.SysUser;
-import com.muyu.firmmanage.domain.req.FirmListReq;
-import com.muyu.firmmanage.domain.resp.firmlist.FirmListResp;
-import com.muyu.firmmanage.domain.resp.firmlist.FirmTotalListResp;
-import com.muyu.firmmanage.mapper.FirmManageMapper;
-import com.muyu.firmmanage.service.FirmManageService;
-import com.muyu.firmmanage.service.FirmService;
+import com.muyu.domain.Firm;
+import com.muyu.domain.SysUser;
+import com.muyu.domain.req.FirmListReq;
+import com.muyu.domain.resp.FirmListResp;
+import com.muyu.domain.resp.FirmTotalListResp;
+import com.muyu.server.mapper.FirmManageMapper;
+import com.muyu.server.service.FirmManageService;
+import com.muyu.server.service.FirmService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmServiceImpl.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmServiceImpl.java
index 5a8da61..0ba35c7 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmServiceImpl.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FirmServiceImpl.java
@@ -2,9 +2,9 @@ package com.muyu.server.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.muyu.firmmanage.domain.Firm;
-import com.muyu.firmmanage.mapper.FirmMapper;
-import com.muyu.firmmanage.service.FirmService;
+import com.muyu.domain.Firm;
+import com.muyu.server.mapper.FirmMapper;
+import com.muyu.server.service.FirmService;
import org.springframework.stereotype.Service;
/**
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/resources/bootstrap.yml b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/resources/bootstrap.yml
index 574393e..0616949 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/resources/bootstrap.yml
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/resources/bootstrap.yml
@@ -4,7 +4,7 @@ server:
# nacos线上地址
nacos:
- addr: 127.0.0.1:8848
+ addr: 159.75.188.178:8848
user-name: nacos
password: nacos
namespace: eight
diff --git a/cloud-modules/cloud-modules-file/src/main/resources/bootstrap.yml b/cloud-modules/cloud-modules-file/src/main/resources/bootstrap.yml
index 2863945..a02fcfb 100644
--- a/cloud-modules/cloud-modules-file/src/main/resources/bootstrap.yml
+++ b/cloud-modules/cloud-modules-file/src/main/resources/bootstrap.yml
@@ -4,7 +4,7 @@ server:
# nacos线上地址
nacos:
- addr: 127.0.0.1:8848
+ addr: 159.75.188.178:8848
user-name: nacos
password: nacos
namespace: eight
diff --git a/cloud-modules/cloud-modules-gen/src/main/resources/bootstrap.yml b/cloud-modules/cloud-modules-gen/src/main/resources/bootstrap.yml
index 5735ae2..4663d03 100644
--- a/cloud-modules/cloud-modules-gen/src/main/resources/bootstrap.yml
+++ b/cloud-modules/cloud-modules-gen/src/main/resources/bootstrap.yml
@@ -4,7 +4,7 @@ server:
# nacos线上地址
nacos:
- addr: 127.0.0.1:8848
+ addr: 159.75.188.178:8848
user-name: nacos
password: nacos
namespace: eight
diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/mapper/SysUserMapper.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/mapper/SysUserMapper.java
index fa92973..6775a94 100644
--- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/mapper/SysUserMapper.java
+++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/mapper/SysUserMapper.java
@@ -142,4 +142,11 @@ public interface SysUserMapper extends BaseMapper {
List companyList();
+ /**
+ * 添加公司名称
+ * @param firmName
+ * @param datbaseName
+ * @return
+ */
+ Integer insertFirm(@Param("firmName") String firmName, @Param("datbaseName") String datbaseName);
}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/DataBaseCreator.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/DataBaseCreator.java
similarity index 89%
rename from cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/DataBaseCreator.java
rename to cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/DataBaseCreator.java
index 5283a8d..47b2206 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/DataBaseCreator.java
+++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/DataBaseCreator.java
@@ -1,4 +1,4 @@
-package com.muyu.server.service;
+package com.muyu.system.service;
import com.muyu.common.system.domain.SysUser;
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/DataBaseCreatorImpl.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/DataBaseCreatorImpl.java
similarity index 66%
rename from cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/DataBaseCreatorImpl.java
rename to cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/DataBaseCreatorImpl.java
index 2e8d6d7..850d44d 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/DataBaseCreatorImpl.java
+++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/DataBaseCreatorImpl.java
@@ -1,8 +1,8 @@
-package com.muyu.server.service.impl;
+package com.muyu.system.service.impl;
import cn.hutool.core.util.RandomUtil;
import com.muyu.common.system.domain.SysUser;
-import com.muyu.server.service.DataBaseCreator;
+import com.muyu.system.service.DataBaseCreator;
import org.springframework.stereotype.Service;
import java.sql.Connection;
@@ -30,22 +30,20 @@ public class DataBaseCreatorImpl implements DataBaseCreator {
try {
Connection conn = DriverManager.getConnection(DB_URL, USER, PASS);
Statement statement = conn.createStatement();
- String datbaseName="company"+RandomUtil.randomString(10000);
+ String datbaseName="company"+RandomUtil.randomNumbers(5);
//创建数据库
- String sql="CREATE DATABASE IF NOT EXISTS "+datbaseName;
- statement.execute(sql);
- //使用数据库
- sql="USE "+datbaseName;
- statement.execute(sql);
- //创建表
- sql="CREATE TABLE user ("+
+ String sqlCreateDatabase ="CREATE DATABASE IF NOT EXISTS "+datbaseName;
+ String sqlUseDatabase="USE "+datbaseName;
+ String sqlCreateTable="CREATE TABLE user ("+
"user_id INT AUTO_INCREMENT PRIMARY KEY,"+
"user_name VARCHAR(50) NOT NULL )";
- statement.execute(sql);
+ statement.execute(sqlCreateDatabase);
+ statement.execute(sqlUseDatabase);
+ statement.execute(sqlCreateTable);
return datbaseName;
}catch (Exception e){
e.printStackTrace();
+ throw new RuntimeException("数据库创建失败");
}
- return null;
}
}
diff --git a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysUserServiceImpl.java b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysUserServiceImpl.java
index bc70e84..fd58fb7 100644
--- a/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysUserServiceImpl.java
+++ b/cloud-modules/cloud-modules-system/src/main/java/com/muyu/system/service/impl/SysUserServiceImpl.java
@@ -14,6 +14,7 @@ import com.muyu.system.domain.SysPost;
import com.muyu.system.domain.SysUserPost;
import com.muyu.system.domain.SysUserRole;
import com.muyu.system.mapper.*;
+import com.muyu.system.service.DataBaseCreator;
import com.muyu.system.service.SysUserService;
import com.muyu.system.service.SysConfigService;
import jakarta.validation.Validator;
@@ -50,6 +51,8 @@ public class SysUserServiceImpl extends ServiceImpl impl
private SysUserPostMapper userPostMapper;
@Autowired
private SysConfigService configService;
+ @Autowired
+ private DataBaseCreator baseCreator;
/**
* 根据条件分页查询用户列表
@@ -254,9 +257,24 @@ public class SysUserServiceImpl extends ServiceImpl impl
*/
@Override
public boolean registerUser (SysUser user) {
-
-
- return userMapper.insertUser(user) > 0;
+ //根据新注册的用户创建对应数据库
+ String datbaseName = baseCreator.createDatbase(user);
+ //添加公司名称
+ userMapper.insertFirm(user.getFirmName(),datbaseName);
+ Integer firmId = user.getFirmId();
+ user.setFirmId(firmId);
+ //添加用户表
+ int i = userMapper.insertUser(user);
+ List userList = userMapper.selectUserList(user);
+ Long userId = userList.get(0).getUserId();
+ ArrayList list = new ArrayList<>();
+ //将用户和角色进行关联
+ SysUserRole userRole = new SysUserRole();
+ userRole.setUserId(userId);
+ userRole.setRoleId(2L);
+ list.add(userRole);
+ userRoleMapper.batchUserRole(list);
+ return i > 0;
}
/**
diff --git a/cloud-modules/cloud-modules-system/src/main/resources/bootstrap.yml b/cloud-modules/cloud-modules-system/src/main/resources/bootstrap.yml
index a0052fd..91799f9 100644
--- a/cloud-modules/cloud-modules-system/src/main/resources/bootstrap.yml
+++ b/cloud-modules/cloud-modules-system/src/main/resources/bootstrap.yml
@@ -4,7 +4,7 @@ server:
# nacos线上地址
nacos:
- addr: 127.0.0.1:8848
+ addr: 159.75.188.178:8848
user-name: nacos
password: nacos
namespace: eight
diff --git a/cloud-modules/cloud-modules-system/src/main/resources/mapper/system/SysUserMapper.xml b/cloud-modules/cloud-modules-system/src/main/resources/mapper/system/SysUserMapper.xml
index 6ea2ddd..16baeea 100644
--- a/cloud-modules/cloud-modules-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/cloud-modules/cloud-modules-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -222,6 +222,11 @@
sysdate()
)
+
+ INSERT INTO `eight`.`firm`
+ (`firm_id`, `firm_name`, `database_name`) VALUES
+ (0, #{firmName}, #{datbaseName});
+
update sys_user
diff --git a/cloud-visual/cloud-visual-monitor/src/main/resources/bootstrap.yml b/cloud-visual/cloud-visual-monitor/src/main/resources/bootstrap.yml
index 10e7fb8..ae51cac 100644
--- a/cloud-visual/cloud-visual-monitor/src/main/resources/bootstrap.yml
+++ b/cloud-visual/cloud-visual-monitor/src/main/resources/bootstrap.yml
@@ -4,7 +4,7 @@ server:
# nacos线上地址
nacos:
- addr: 127.0.0.1:8848
+ addr: 159.75.188.178:8848
user-name: nacos
password: nacos
namespace: eight
From 4aebd67ebc14e4c1bd3e278b82cd821791baeb82 Mon Sep 17 00:00:00 2001
From: WeiRan <2392355487@qq.com>
Date: Sun, 29 Sep 2024 22:46:04 +0800
Subject: [PATCH 03/10] =?UTF-8?q?=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/main/java/com/muyu/domain/CarInformation.java | 4 ++--
.../main/java/com/muyu/domain/req/CarInformationAddReq.java | 2 +-
.../muyu/server/service/impl/CarInformationServiceImpl.java | 4 ++--
.../com/muyu/server/service/impl/FaultLogServiceImpl.java | 2 +-
.../com/muyu/server/service/impl/FaultRuleServiceImpl.java | 2 +-
5 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/CarInformation.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/CarInformation.java
index d5ac309..313f32c 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/CarInformation.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/CarInformation.java
@@ -44,7 +44,7 @@ public class CarInformation {
*/
// @TableName(value = "car_information_VIN")
@TableField(value = "car_information_VIN")
- private String carInformationVin;
+ private String carInformationVIN;
/**
* 车牌号
*/
@@ -133,7 +133,7 @@ public class CarInformation {
public static CarInformation carInformationAddBuilder(CarInformationAddReq carInformation) {
return CarInformation.builder()
- .carInformationVin(carInformation.getCarInformationVin())
+ .carInformationVIN(carInformation.getCarInformationVIN())
.carInformationLicensePlate(carInformation.getCarInformationLicensePlate())
.carInformationBrand(carInformation.getCarInformationBrand())
.carInformationColor(carInformation.getCarInformationColor())
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/req/CarInformationAddReq.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/req/CarInformationAddReq.java
index 78ff170..ac596f9 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/req/CarInformationAddReq.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-common/src/main/java/com/muyu/domain/req/CarInformationAddReq.java
@@ -21,7 +21,7 @@ public class CarInformationAddReq {
/**
* 车辆唯一VIN
*/
- private String carInformationVin;
+ private String carInformationVIN;
/**
* 车牌号
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java
index b7ba9f6..372800d 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarInformationServiceImpl.java
@@ -65,7 +65,7 @@ public class CarInformationServiceImpl
.leftJoin(CarType.class, CarType::getCarTypeId, CarInformation::getCarInformationType)
.eq(StringUtils.isNotEmpty(carInformationListReq.getCarInformationVIN())
- ,CarInformation::getCarInformationVin
+ ,CarInformation::getCarInformationVIN
, carInformationListReq.getCarInformationVIN())
.eq(StringUtils.isNotNull(carInformationListReq.getCarTypeId())
,CarType::getCarTypeId, carInformationListReq.getCarTypeId())
@@ -76,7 +76,7 @@ public class CarInformationServiceImpl
,CarInformation::getCarInformationState
, carInformationListReq.getCarInformationState())
.like(StringUtils.isNotEmpty(carInformationListReq.getCarInformationVIN())
- ,CarInformation::getCarInformationVin
+ ,CarInformation::getCarInformationVIN
, carInformationListReq.getCarInformationVIN())
.eq(StringUtils.isNotEmpty( carInformationListReq.getCarInformationMotorModel())
,CarInformation::getCarInformationMotorModel
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultLogServiceImpl.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultLogServiceImpl.java
index 4e7ac48..3ba09e9 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultLogServiceImpl.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultLogServiceImpl.java
@@ -47,7 +47,7 @@ public class FaultLogServiceImpl extends ServiceImpl i
FaultLog::getStartwarningTime,
FaultLog::getEndwarningTime)
.select(FaultCode::getFaultcodeNumber)
- .select(CarInformation::getCarInformationVin)
+ .select(CarInformation::getCarInformationVIN)
.leftJoin(FaultCode.class,FaultCode::getFaultcodeId,FaultLog::getFaultcodeId)
.leftJoin(CarInformation.class,CarInformation::getCarInformationId,FaultLog::getCarInformationId)
.eq(StringUtils.isNotEmpty(faultLogListReq.getCarVin()),
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultRuleServiceImpl.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultRuleServiceImpl.java
index bb211bf..3502d65 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultRuleServiceImpl.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/FaultRuleServiceImpl.java
@@ -52,7 +52,7 @@ public class FaultRuleServiceImpl extends ServiceImpl carInformationList = carInformationMapper.selectList(
new LambdaQueryWrapper()
- .eq(CarInformation::getCarInformationVin, carFaultRule.getVin()));
+ .eq(CarInformation::getCarInformationVIN, carFaultRule.getVin()));
//根据车辆类型,查询表获取对应的类型的故障规则
Integer carInformationType = null;
for (CarInformation carInformation : carInformationList) {
From 6f52789cc04433d56967eb9692769ea0410d9b1b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=BC=A0=E8=85=BE?= <3467447354@qq.com>
Date: Mon, 30 Sep 2024 09:03:17 +0800
Subject: [PATCH 04/10] commit()yml
---
cloud-modules/cloud-modules-carData/pom.xml | 4 +++
.../com/muyu/carData/CarDataApplication.java | 6 ++--
.../config/kafkaconfig/KafkaConfig.java | 2 +-
.../carData/consumer/MyKafkaConsumer.java | 2 +-
.../CacheController.java | 2 +-
.../IotDBController.java | 4 ++-
.../KafkaProducerController.java | 21 +++++---------
.../com/muyu/carData/event/EsSaveEvent.java | 22 ++++++++++++++
.../carData/listener/CustomEventListener.java | 22 ++++++++++++++
.../com/muyu/carData/listener/MyListener.java | 20 +++++++++++++
.../pulisher/CustomEventPublisher.java | 29 +++++++++++++++++++
11 files changed, 115 insertions(+), 19 deletions(-)
rename cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/{testcontroller => controller}/CacheController.java (97%)
rename cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/{testcontroller => controller}/IotDBController.java (97%)
rename cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/{testcontroller => controller}/KafkaProducerController.java (68%)
create mode 100644 cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/event/EsSaveEvent.java
create mode 100644 cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/CustomEventListener.java
create mode 100644 cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/MyListener.java
create mode 100644 cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/pulisher/CustomEventPublisher.java
diff --git a/cloud-modules/cloud-modules-carData/pom.xml b/cloud-modules/cloud-modules-carData/pom.xml
index c1ab988..53d679b 100644
--- a/cloud-modules/cloud-modules-carData/pom.xml
+++ b/cloud-modules/cloud-modules-carData/pom.xml
@@ -92,5 +92,9 @@
iotdb-session
0.13.1
+
+ com.muyu
+ cloud-common-rabbit
+
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/CarDataApplication.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/CarDataApplication.java
index 6ee448e..50b42da 100644
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/CarDataApplication.java
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/CarDataApplication.java
@@ -1,5 +1,6 @@
package com.muyu.carData;
+import com.muyu.carData.listener.MyListener;
import com.muyu.common.security.annotation.EnableMyFeignClients;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@@ -19,7 +20,8 @@ import javax.swing.*;
public class CarDataApplication {
public static void main(String[] args) {
- SpringApplication.run(CarDataApplication.class,args);
- System.out.println("caused: Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: java.nio.ByteBuffer.flip()Ljava/nio/ByteBuffer;;caused: java.nio.ByteBuffer.flip()Ljava/nio/ByteBuffer;");
+ SpringApplication application = new SpringApplication(CarDataApplication.class);
+ application.addListeners(new MyListener());
+ application.run(args);
}
}
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/config/kafkaconfig/KafkaConfig.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/config/kafkaconfig/KafkaConfig.java
index 23b395b..bcf8999 100644
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/config/kafkaconfig/KafkaConfig.java
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/config/kafkaconfig/KafkaConfig.java
@@ -28,7 +28,7 @@ public class KafkaConfig {
//生产者可用于缓冲等待发送到服务器的记录的总内存字节数
configs.put("buffer-memory",3554432);
/**
- *生产者producer要求leader节点在考虑完成请求之前收到的确认数,用于控制发送记录在服务端的持久化
+ * ,用于控制发送记录在服务端的持久化
*acks=0,设置为0,则生产者producer将不会等待来自服务器的任何确认.该记录将立即添加到套接字(socket)缓冲区并视为已发送
* .在这种情况下,无法保证服务器已收到记录,并且重试配置(retries)将不会生效(因为客户端通常不会知道任何故障),每条记录返回的偏移量始终设置为-1.
*acks=1,设置为1,leader节点会把记录写入本地日志,不需要等待所有follower节点完全确认就会立即应答producer.在这种情况下,
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java
index 7e6fcb9..a661bfc 100644
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java
@@ -15,7 +15,7 @@ import org.springframework.stereotype.Component;
import java.time.Duration;
import java.util.Collection;
-/**
+/**卡夫卡消费者
* @Author:张腾
* @Package:com.muyu.carData.consumer
* @Project:cloud-server-8
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/testcontroller/CacheController.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/controller/CacheController.java
similarity index 97%
rename from cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/testcontroller/CacheController.java
rename to cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/controller/CacheController.java
index 436c63f..f2d2c53 100644
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/testcontroller/CacheController.java
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/controller/CacheController.java
@@ -1,4 +1,4 @@
-package com.muyu.carData.testcontroller;
+package com.muyu.carData.controller;
import com.github.benmanes.caffeine.cache.Cache;
import com.muyu.carData.config.cacheconfig.CaffeineConfig;
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/testcontroller/IotDBController.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/controller/IotDBController.java
similarity index 97%
rename from cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/testcontroller/IotDBController.java
rename to cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/controller/IotDBController.java
index d93c8d3..0becba4 100644
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/testcontroller/IotDBController.java
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/controller/IotDBController.java
@@ -1,4 +1,4 @@
-package com.muyu.carData.testcontroller;
+package com.muyu.carData.controller;
import com.muyu.carData.config.lotdbconfig.IotDBSessionConfig;
import lombok.extern.log4j.Log4j2;
@@ -44,11 +44,13 @@ public class IotDBController {
@GetMapping("/insertData/{insertSize}/{count}")
public String insert(@PathVariable(name = "insertSize") int insertSize,@PathVariable(name = "count") int count) throws IoTDBConnectionException, StatementExecutionException {
Session session = iotDBSessionConfig.iotSession();
+ //schemaList 属性及类型
List schemaList = new ArrayList<>();
schemaList.add(new MeasurementSchema("id", TSDataType.INT32));
schemaList.add(new MeasurementSchema("name", TSDataType.TEXT));
schemaList.add(new MeasurementSchema("sex", TSDataType.TEXT));
+ //tablet 封装数据
Tablet tablet = new Tablet("root.yang.baling", schemaList);
//以当前时间戳作为插入的起始时间戳
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/testcontroller/KafkaProducerController.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/controller/KafkaProducerController.java
similarity index 68%
rename from cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/testcontroller/KafkaProducerController.java
rename to cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/controller/KafkaProducerController.java
index 2dc6bb9..b167ef7 100644
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/testcontroller/KafkaProducerController.java
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/controller/KafkaProducerController.java
@@ -1,7 +1,6 @@
-package com.muyu.carData.testcontroller;
+package com.muyu.carData.controller;
import com.alibaba.fastjson.JSONObject;
-import com.muyu.carData.pojo.Student;
import lombok.extern.log4j.Log4j2;
import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.ProducerRecord;
@@ -25,21 +24,15 @@ public class KafkaProducerController {
@Autowired
private KafkaProducer kafkaProducer;
- private final String topicName = "test";
+ private final String topicName = "carJsons";
- @GetMapping("/produceTest")
- public String produceTest() {
+ @GetMapping("/producer")
+ public String produceTest(JSONObject data) {
try {
- Student stu = Student.builder().id(2)
- .name("杨闪闪")
- .sex("男")
- .build();
- String stuStr = JSONObject.toJSONString(stu);
log.info("Topic:{}", topicName);
- log.info("Java对象:{}",stu);
- log.info("转换为JSON:{}",stuStr);
+ log.info("转换为JSON:{}",data);
//使用KafkaProducer发送消息
- ProducerRecord stringProducerRecord = new ProducerRecord<>(topicName, stuStr);
+ ProducerRecord stringProducerRecord = new ProducerRecord(topicName, data);
kafkaProducer.send(stringProducerRecord);
}catch (Exception e){
log.error("Producer写入Topic异常,异常信息是:{}",e.getMessage());
@@ -47,4 +40,6 @@ public class KafkaProducerController {
return "消息发送成功";
}
+
+
}
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/event/EsSaveEvent.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/event/EsSaveEvent.java
new file mode 100644
index 0000000..f4d689f
--- /dev/null
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/event/EsSaveEvent.java
@@ -0,0 +1,22 @@
+package com.muyu.carData.event;
+
+import com.alibaba.fastjson.JSONObject;
+import org.springframework.context.ApplicationEvent;
+
+/**自定义事件
+ * @Author:张腾
+ * @Package:com.muyu.carData.event
+ * @Project:cloud-server-8
+ * @name:EsSaveEvent
+ * @Date:2024/9/29 21:15
+ */
+public class EsSaveEvent extends ApplicationEvent {
+
+ private JSONObject data;
+
+
+ public EsSaveEvent(JSONObject source) {
+ super(source);
+ this.data = source;
+ }
+}
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/CustomEventListener.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/CustomEventListener.java
new file mode 100644
index 0000000..4d63af0
--- /dev/null
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/CustomEventListener.java
@@ -0,0 +1,22 @@
+package com.muyu.carData.listener;
+
+import com.muyu.carData.event.EsSaveEvent;
+import org.springframework.context.event.EventListener;
+import org.springframework.stereotype.Component;
+
+/**
+ * @Author:张腾
+ * @Package:com.muyu.carData.listener
+ * @Project:cloud-server-8
+ * @name:CustomEventListener
+ * @Date:2024/9/29 23:49
+ */
+@Component
+public class CustomEventListener {
+
+ @EventListener
+ public void handMyEvent(EsSaveEvent event){
+ //处理事件详情
+
+ }
+}
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/MyListener.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/MyListener.java
new file mode 100644
index 0000000..5bfcb26
--- /dev/null
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/listener/MyListener.java
@@ -0,0 +1,20 @@
+package com.muyu.carData.listener;
+
+import com.muyu.carData.event.EsSaveEvent;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.context.ApplicationListener;
+
+/**自定义监听器
+ * @Author:张腾
+ * @Package:com.muyu.carData.listener
+ * @Project:cloud-server-8
+ * @name:MyListener
+ * @Date:2024/9/29 21:18
+ */
+@Log4j2
+public class MyListener implements ApplicationListener {
+ @Override
+ public void onApplicationEvent(EsSaveEvent event) {
+ log.info("监听到自定义事件........");
+ }
+}
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/pulisher/CustomEventPublisher.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/pulisher/CustomEventPublisher.java
new file mode 100644
index 0000000..2a32391
--- /dev/null
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/pulisher/CustomEventPublisher.java
@@ -0,0 +1,29 @@
+package com.muyu.carData.pulisher;
+
+import com.alibaba.fastjson.JSONObject;
+import com.muyu.carData.event.EsSaveEvent;
+import lombok.AllArgsConstructor;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.context.ApplicationEventPublisher;
+import org.springframework.stereotype.Component;
+
+/**事件发布测试
+ * @Author:张腾
+ * @Package:com.muyu.carData.pulisher
+ * @Project:cloud-server-8
+ * @name:CustomEventPublisher
+ * @Date:2024/9/29 23:51
+ */
+@Log4j2
+@Component
+@AllArgsConstructor
+public class CustomEventPublisher {
+
+ private ApplicationEventPublisher applicationEventPublisher;
+
+ public void publish(JSONObject data){
+ EsSaveEvent esSaveEvent = new EsSaveEvent(data);
+ applicationEventPublisher.publishEvent(esSaveEvent);
+ log.info("事件发布成功 - 消息是:{}",data);
+ }
+}
From 5ab005839cde0939141444360ebb78532cd51546 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=BC=A0=E8=85=BE?= <3467447354@qq.com>
Date: Mon, 30 Sep 2024 09:03:40 +0800
Subject: [PATCH 05/10] commit()yml
---
.../src/main/resources/banner.txt | 2 +
.../src/main/resources/bootstrap.yml | 63 +++++++++++++++
.../src/main/resources/logback/dev.xml | 74 +++++++++++++++++
.../src/main/resources/logback/prod.xml | 81 +++++++++++++++++++
.../src/main/resources/logback/test.xml | 81 +++++++++++++++++++
5 files changed, 301 insertions(+)
create mode 100644 cloud-modules/cloud-modules-carData/src/main/resources/banner.txt
create mode 100644 cloud-modules/cloud-modules-carData/src/main/resources/bootstrap.yml
create mode 100644 cloud-modules/cloud-modules-carData/src/main/resources/logback/dev.xml
create mode 100644 cloud-modules/cloud-modules-carData/src/main/resources/logback/prod.xml
create mode 100644 cloud-modules/cloud-modules-carData/src/main/resources/logback/test.xml
diff --git a/cloud-modules/cloud-modules-carData/src/main/resources/banner.txt b/cloud-modules/cloud-modules-carData/src/main/resources/banner.txt
new file mode 100644
index 0000000..0dd5eee
--- /dev/null
+++ b/cloud-modules/cloud-modules-carData/src/main/resources/banner.txt
@@ -0,0 +1,2 @@
+Spring Boot Version: ${spring-boot.version}
+Spring Application Name: ${spring.application.name}
diff --git a/cloud-modules/cloud-modules-carData/src/main/resources/bootstrap.yml b/cloud-modules/cloud-modules-carData/src/main/resources/bootstrap.yml
new file mode 100644
index 0000000..8bc6afd
--- /dev/null
+++ b/cloud-modules/cloud-modules-carData/src/main/resources/bootstrap.yml
@@ -0,0 +1,63 @@
+# Tomcat
+server:
+ port: 9702
+
+# nacos线上地址
+nacos:
+ addr: 159.75.188.178:8848
+ user-name: nacos
+ password: nacos
+ namespace: eight
+# SPRING_AMQP_DESERIALIZATION_TRUST_ALL=true spring.amqp.deserialization.trust.all
+# Spring
+spring:
+ iotdb:
+ username: root
+ password: root
+ ip: 60.204.221.52
+ port: 6667
+ maxSize: 100
+ fetchSize: 10000
+ main:
+ allow-bean-definition-overriding: true
+ application:
+ # 应用名称
+ name: cloud-carData
+ profiles:
+ # 环境配置
+ active: dev
+ cloud:
+ nacos:
+ discovery:
+ # 服务注册地址
+ server-addr: ${nacos.addr}
+ # nacos用户名
+ username: ${nacos.user-name}
+ # nacos密码
+ password: ${nacos.password}
+ # 命名空间
+ namespace: ${nacos.namespace}
+ config:
+ # 服务注册地址
+ server-addr: ${nacos.addr}
+ # nacos用户名
+ username: ${nacos.user-name}
+ # nacos密码
+ password: ${nacos.password}
+ # 命名空间
+ namespace: ${nacos.namespace}
+ # 配置文件格式
+ file-extension: yml
+ # 共享配置
+ shared-configs:
+ # 系统共享配置
+ - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
+ # 系统环境Config共享配置
+ - application-config-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
+ # xxl-job 配置文件
+ - application-xxl-config-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
+ # rabbit 配置文件
+ - application-rabbit-config-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
+logging:
+ level:
+ com.muyu.system.mapper: DEBUG
diff --git a/cloud-modules/cloud-modules-carData/src/main/resources/logback/dev.xml b/cloud-modules/cloud-modules-carData/src/main/resources/logback/dev.xml
new file mode 100644
index 0000000..8f19f70
--- /dev/null
+++ b/cloud-modules/cloud-modules-carData/src/main/resources/logback/dev.xml
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+ ${log.pattern}
+
+
+
+
+
+ ${log.path}/info.log
+
+
+
+ ${log.path}/info.%d{yyyy-MM-dd}.log
+
+ 60
+
+
+ ${log.pattern}
+
+
+
+ INFO
+
+ ACCEPT
+
+ DENY
+
+
+
+
+ ${log.path}/error.log
+
+
+
+ ${log.path}/error.%d{yyyy-MM-dd}.log
+
+ 60
+
+
+ ${log.pattern}
+
+
+
+ ERROR
+
+ ACCEPT
+
+ DENY
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/cloud-modules/cloud-modules-carData/src/main/resources/logback/prod.xml b/cloud-modules/cloud-modules-carData/src/main/resources/logback/prod.xml
new file mode 100644
index 0000000..260f145
--- /dev/null
+++ b/cloud-modules/cloud-modules-carData/src/main/resources/logback/prod.xml
@@ -0,0 +1,81 @@
+
+
+
+
+
+
+
+
+
+
+
+ ${log.sky.pattern}
+
+
+
+
+
+ ${log.path}/info.log
+
+
+
+ ${log.path}/info.%d{yyyy-MM-dd}.log
+
+ 60
+
+
+
+
+ INFO
+
+ ACCEPT
+
+ DENY
+
+
+
+
+ ${log.path}/error.log
+
+
+
+ ${log.path}/error.%d{yyyy-MM-dd}.log
+
+ 60
+
+
+
+
+ ERROR
+
+ ACCEPT
+
+ DENY
+
+
+
+
+
+
+
+ ${log.sky.pattern}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/cloud-modules/cloud-modules-carData/src/main/resources/logback/test.xml b/cloud-modules/cloud-modules-carData/src/main/resources/logback/test.xml
new file mode 100644
index 0000000..260f145
--- /dev/null
+++ b/cloud-modules/cloud-modules-carData/src/main/resources/logback/test.xml
@@ -0,0 +1,81 @@
+
+
+
+
+
+
+
+
+
+
+
+ ${log.sky.pattern}
+
+
+
+
+
+ ${log.path}/info.log
+
+
+
+ ${log.path}/info.%d{yyyy-MM-dd}.log
+
+ 60
+
+
+
+
+ INFO
+
+ ACCEPT
+
+ DENY
+
+
+
+
+ ${log.path}/error.log
+
+
+
+ ${log.path}/error.%d{yyyy-MM-dd}.log
+
+ 60
+
+
+
+
+ ERROR
+
+ ACCEPT
+
+ DENY
+
+
+
+
+
+
+
+ ${log.sky.pattern}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
From 7a88f1da1492b022febbf0dc699db9eccc0523e4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=B0=A2=E6=AC=A3=E6=82=A6?= <2289014031@qq.com>
Date: Mon, 30 Sep 2024 10:11:40 +0800
Subject: [PATCH 06/10] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=8A=A5=E9=94=99?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
cloud-common/pom.xml | 1 +
.../cloud-modules-enterprise-server/pom.xml | 22 ++++
.../controller/CarFenceClazzController.java | 2 +
.../server/controller/CarFenceController.java | 5 +
.../com/muyu/server/feign/KafkaClient.java | 18 +++
.../server/mapper/CarInformationMapper.java | 10 ++
.../main/java/com/muyu/server/mqtt/Demo.java | 105 ++++++++++++++++++
.../server/service/CarMessageService.java | 18 ++-
.../service/impl/CarMessageServiceImpl.java | 98 ++++++++++++++++
9 files changed, 278 insertions(+), 1 deletion(-)
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/feign/KafkaClient.java
create mode 100644 cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mqtt/Demo.java
diff --git a/cloud-common/pom.xml b/cloud-common/pom.xml
index 79c42b6..eead750 100644
--- a/cloud-common/pom.xml
+++ b/cloud-common/pom.xml
@@ -22,6 +22,7 @@
cloud-common-rabbit
cloud-common-saas
cloud-common-wechat
+ cloud-common-kafka
cloud-common
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/pom.xml b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/pom.xml
index e0e09eb..b7bfbc8 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/pom.xml
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/pom.xml
@@ -33,6 +33,22 @@
com.alibaba.cloud
spring-cloud-starter-alibaba-nacos-config
+
+
+ org.apache.kafka
+ kafka-clients
+
+
+
+ org.springframework.cloud
+ spring-cloud-starter-openfeign
+
+
+
+ org.eclipse.paho
+ org.eclipse.paho.client.mqttv3
+ 1.2.2
+
com.alibaba.cloud
@@ -83,6 +99,12 @@
pagehelper
6.0.0
+
+ com.muyu
+ cloud-common-kafka
+ 3.6.3
+ compile
+
cloud-electronic
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/CarFenceClazzController.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/CarFenceClazzController.java
index 8b350cd..67609f3 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/CarFenceClazzController.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/CarFenceClazzController.java
@@ -37,7 +37,9 @@ public class CarFenceClazzController {
@Operation(summary = "查询数据",description = "查询数据")
public Result> selectConnect(){
List connects = carFenceClazzService.list();
+ log.info("查询数据成功");
return Result.success(
+
connects, "操作成功"
);
}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/CarFenceController.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/CarFenceController.java
index bb4599f..eb25bc3 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/CarFenceController.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/controller/CarFenceController.java
@@ -43,6 +43,7 @@ public class CarFenceController {
@Validated @RequestBody CarFenceReq req
){
Page connects = carFenceService.selectCarFence(req);
+ log.info("查询数据:"+ connects);
return Result.success(
connects, "操作成功"
);
@@ -57,11 +58,13 @@ public class CarFenceController {
@Validated @RequestBody CarFence carFence
){
Boolean connects = carFenceService.addCarFence(carFence);
+ log.info("shd");
return connects?Result.success(
null, "操作成功"
):Result.success(
null, "操作失败"
);
+
}
/**
@@ -73,6 +76,8 @@ public class CarFenceController {
@Validated @RequestBody CarGroupReq req
){
Boolean connects = carFenceService.addCarGroup(req);
+ log.info("添加数据:"+ connects);
+
return connects?Result.success(
null, "操作成功"
):Result.success(
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/feign/KafkaClient.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/feign/KafkaClient.java
new file mode 100644
index 0000000..24e4999
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/feign/KafkaClient.java
@@ -0,0 +1,18 @@
+//package com.muyu.server.feign;
+//
+//import org.springframework.cloud.openfeign.FeignClient;
+//import org.springframework.web.bind.annotation.GetMapping;
+//
+//@FeignClient(name = "cloud-modules-carData",value = "KafkaProducerController")
+//public abstract class KafkaClient {
+// /**
+// * 处理"/produceTest"的GET请求,用于执行特定的测试任务
+// * 此方法的具体实现将在子类中定义
+// * @return 返回类型为String,表示该方法的执行结果
+// * @return
+// */
+// @GetMapping("/produceTest")
+// public abstract String produceTest();
+//
+//
+//}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/CarInformationMapper.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/CarInformationMapper.java
index 1e08ebc..3cf4ba0 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/CarInformationMapper.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mapper/CarInformationMapper.java
@@ -9,6 +9,8 @@ import com.muyu.domain.req.CarInformationListReq;
import com.muyu.domain.req.CarInformationUpdReq;
import com.muyu.domain.resp.CarInformationResp;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
import java.util.List;
@@ -18,4 +20,12 @@ import java.util.List;
@Mapper
public interface CarInformationMapper extends MPJBaseMapper {
+
+ /**
+ * 根据车辆VIN码获取车辆类型(报文模板分类用的值)
+ * @param carInformationVIN
+ * @return
+ */
+ @Select("SELECT `car_information`.car_Information_Type FROM `car_information` WHERE `car_information`.car_information_VIN = #{carInformationVIN}")
+ Long selectcarMessageCartype(@Param("carInformationVIN") String carInformationVIN);
}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mqtt/Demo.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mqtt/Demo.java
new file mode 100644
index 0000000..007c82e
--- /dev/null
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/mqtt/Demo.java
@@ -0,0 +1,105 @@
+package com.muyu.server.mqtt;
+
+import com.alibaba.fastjson.JSONObject;
+
+import com.muyu.common.kafka.constants.KafkaConstants;
+import com.muyu.domain.CarMessage;
+import com.muyu.server.service.CarMessageService;
+import jakarta.annotation.PostConstruct;
+import org.apache.kafka.clients.producer.KafkaProducer;
+import org.apache.kafka.clients.producer.ProducerRecord;
+import org.eclipse.paho.client.mqttv3.*;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.concurrent.CompletableFuture;
+
+
+@Component
+public class Demo {
+ @Resource
+ private CarMessageService service;
+ @Resource
+ private KafkaProducer kafkaProducer;
+ @PostConstruct
+ public void test() {
+
+ String topic = "vehicle";
+ String content = "Message from MqttPublishSample";
+ int qos = 2;
+ String broker = "tcp://106.15.136.7:1883";
+ String clientId = "JavaSample";
+
+ try {
+ // 第三个参数为空,默认持久化策略
+ MqttClient sampleClient = new MqttClient(broker, clientId);
+ MqttConnectOptions connOpts = new MqttConnectOptions();
+ connOpts.setCleanSession(true);
+ System.out.println("Connecting to broker: "+broker);
+ sampleClient.connect(connOpts);
+ sampleClient.subscribe(topic,0);
+ sampleClient.setCallback(new MqttCallback() {
+ // 连接丢失
+ @Override
+ public void connectionLost(Throwable throwable) {
+
+ }
+ // 连接成功
+ @Override
+ public void messageArrived(String s, MqttMessage mqttMessage) throws Exception {
+
+ List list= service.selectCarMessageList(1,2);
+ String str = new String( mqttMessage.getPayload() );
+ System.out.println(str);
+ String[] test = str.split(" ");
+ String[] results = new String[list.size()];
+ List> futures = new ArrayList<>();
+ for (CarMessage carmsg : list) {
+ futures.add(CompletableFuture.supplyAsync(() -> {
+ int startIndex = Integer.parseInt(String.valueOf(carmsg.getCarMessageStartIndex())) - 1;
+ int endIndex = Integer.parseInt(String.valueOf(carmsg.getCarMessageEndIndex()));
+ StringBuilder hexBuilder = new StringBuilder();
+ for (int j = startIndex; j < endIndex; j++) {
+ hexBuilder.append(test[j]);
+ }
+ // 创建16进制的对象
+ String hex = hexBuilder.toString();
+ // 转橙字符数组
+ char[] result = new char[hex.length() / 2];
+ for (int x = 0; x < hex.length(); x += 2) {
+ // 先转十进制
+ int high = Character.digit(hex.charAt(x), 16);
+ // 转二进制
+ int low = Character.digit(hex.charAt(x + 1), 16);
+ // 转字符
+ result[x / 2] = (char) ((high << 4) + low);
+ }
+ return new String(result);
+ }));
+ }
+ for (int i = 0; i < futures.size(); i++) {
+ results[i] = futures.get(i).get();
+ }
+ String jsonString = JSONObject.toJSONString( results );
+ ProducerRecord producerRecord = new ProducerRecord<>( KafkaConstants.KafkaTopic, jsonString);
+ kafkaProducer.send(producerRecord);
+ }
+ // 接收信息
+ @Override
+ public void deliveryComplete(IMqttDeliveryToken iMqttDeliveryToken) {
+
+ }
+ });
+ } catch(MqttException me) {
+ System.out.println("reason "+me.getReasonCode());
+ System.out.println("msg "+me.getMessage());
+ System.out.println("loc "+me.getLocalizedMessage());
+ System.out.println("cause "+me.getCause());
+ System.out.println("excep "+me);
+ me.printStackTrace();
+ }
+ }
+
+}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/CarMessageService.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/CarMessageService.java
index 3199524..598f6f7 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/CarMessageService.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/CarMessageService.java
@@ -1,8 +1,9 @@
package com.muyu.server.service;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.IService;
-import com.muyu.common.core.domain.Result;
import com.muyu.domain.CarMessage;
+import com.muyu.domain.resp.CarInformationResp;
import com.muyu.domain.resp.CarMessageResp;
import java.util.List;
@@ -44,4 +45,19 @@ public interface CarMessageService extends IService {
*/
List selectJoinList(Long id);
+
+ //报文切割
+ /**
+ * 分割字符串
+ * 解析字符
+ * 获取报文最终信息
+ */
+ JSONObject inciseCarMessage(String testString);
+
+
+ List selectCarMessageList(int i, int i1);
+
+
+
+
}
diff --git a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarMessageServiceImpl.java b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarMessageServiceImpl.java
index 4044570..404db2d 100644
--- a/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarMessageServiceImpl.java
+++ b/cloud-modules/cloud-modules-enterprise/cloud-modules-enterprise-server/src/main/java/com/muyu/server/service/impl/CarMessageServiceImpl.java
@@ -1,5 +1,8 @@
package com.muyu.server.service.impl;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.muyu.common.core.utils.StringUtils;
@@ -7,15 +10,21 @@ import com.muyu.domain.CarMessage;
import com.muyu.domain.CarMessageType;
import com.muyu.domain.CarType;
import com.muyu.domain.resp.CarMessageResp;
+import com.muyu.server.mapper.CarInformationMapper;
import com.muyu.server.mapper.CarMessageMapper;
import com.muyu.server.service.CarMessageService;
+import lombok.extern.log4j.Log4j2;
+import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
+import java.util.Collection;
import java.util.List;
+import java.util.Objects;
/**
* 报文模板展示列表业务实现层
*/
+@Log4j2
@Service
public class CarMessageServiceImpl
extends ServiceImpl
@@ -23,6 +32,11 @@ public class CarMessageServiceImpl
@Resource
private CarMessageMapper carMessageMapper;
+ @Resource
+ private CarInformationMapper carInformationMapper;
+
+
+
/**
* 根据所属车类别 解析 车辆报文模板
* @param
@@ -91,5 +105,89 @@ public class CarMessageServiceImpl
.eq(StringUtils.isNotNull(id),CarMessage::getCarMessageCartype, id));
}
+ @Override
+ public JSONObject inciseCarMessage(String testString) {
+ return null;
+ }
+
+ @Override
+ public List selectCarMessageList(int id, int modelCode) {
+ LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>();
+ queryWrapper.eq(CarMessage::getCarMessageId, id);
+ queryWrapper.eq(CarMessage::getCarMessageType, modelCode);
+ return this.list(queryWrapper);
+ }
+
+
+
+ //报文处理
+// @Resource
+// private RedisTemplate redisTemplate;
+//
+// /**
+// * 报文解析
+// * @param testString
+// * @return
+// */
+// @Override
+// public JSONObject inciseCarMessage(String testString) {
+// //根据空格拆分切割数据字符串
+// String[] split = testString.split(" ");
+// StringBuilder stringBuilder = new StringBuilder();
+// for (String conversion : split) {
+// //将16进制字符串转换为对应的10进制
+// int inciseindex = Integer.parseInt(conversion, 16);
+// // 将10进制转换为对应的字符
+// stringBuilder.append((char) inciseindex);
+// }
+// //切取车辆VIN
+// String substring = stringBuilder.substring(1, 18);
+// log.info("车辆的VIN码:" + substring);
+// //根据给定的vehicleVin(车辆VIN号)获取对应的模板车辆分类carMessageCartype
+// String selectcared = carInformationMapper.selectcarMessageCartype(substring);
+// //创建接受数据的数组
+// List messagesList ;
+//
+// try{
+// String redisKey = "carMessageList" + selectcared;
+//
+// if (redisTemplate.hasKey(redisKey)){
+// List list = redisTemplate.opsForList().range(redisKey , 0, -1);
+// messagesList = list.stream()
+// .map(objects -> JSON.parseObject(objects.toString(), CarMessage.class))
+// .toList();
+// log.info("Redis缓存查询成功");
+// }else {
+// messagesList = carInformationMapper.selectcarMessageCartype(selectcared);
+//
+// messagesList.forEach(
+// listReq -> redisTemplate.opsForList().rightPushAll(redisKey, JSON.toString(listReq) )
+// );
+// log.info("数据库查询成功");
+// }
+// }catch(Exception e){
+// throw new RuntimeException("获取报文模板失败");
+// }
+// //判断报文模板 列表 不为空
+// if(messagesList.isEmpty()){
+// throw new RuntimeException("报文模版为空");
+// }
+// //存储报文模板解析后的数据
+// JSONObject jsonObject = new JSONObject();
+// for (CarMessage carMessage : messagesList) {
+// //起始位下标
+// Integer startIndex = carMessage.getCarMessageStartIndex();
+// //结束位下标
+// Integer endIndex = carMessage.getCarMessageEndIndex();
+// //根据报文模板获取保温截取位置
+// String value = stringBuilder.substring(startIndex, endIndex);
+// //存入数据
+// jsonObject.put(carMessage.getMessageTypeName(), value);
+//
+// }
+// return jsonObject;
+//
+// }
+
}
From af798f18e5be83e40197e8358586dc04b8c3742f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=BC=A0=E8=85=BE?= <3467447354@qq.com>
Date: Mon, 30 Sep 2024 16:52:26 +0800
Subject: [PATCH 07/10] =?UTF-8?q?feat():=E7=BC=96=E8=BE=91=E5=8D=A1?=
=?UTF-8?q?=E5=A4=AB=E5=8D=A1=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../main/java/com/muyu/carData/CarDataApplication.java | 3 ---
.../java/com/muyu/carData/consumer/MyKafkaConsumer.java | 8 ++++++--
pom.xml | 2 +-
3 files changed, 7 insertions(+), 6 deletions(-)
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/CarDataApplication.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/CarDataApplication.java
index 50b42da..b4c997b 100644
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/CarDataApplication.java
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/CarDataApplication.java
@@ -4,9 +4,6 @@ import com.muyu.carData.listener.MyListener;
import com.muyu.common.security.annotation.EnableMyFeignClients;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.openfeign.EnableFeignClients;
-
-import javax.swing.*;
/**
* @Author:张腾
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java
index a661bfc..58f4b6e 100644
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java
@@ -16,7 +16,7 @@ import java.time.Duration;
import java.util.Collection;
/**卡夫卡消费者
- * @Author:张腾
+ * @Author:张腾臭狗熊
* @Package:com.muyu.carData.consumer
* @Project:cloud-server-8
* @name:MyKafkaConsumer
@@ -29,7 +29,7 @@ public class MyKafkaConsumer implements InitializingBean {
@Autowired
private KafkaConsumer kafkaConsumer;
- private final String topicName = "test";
+ private final String topicName = "carJsons";
@Override
public void afterPropertiesSet() throws Exception {
@@ -51,5 +51,9 @@ public class MyKafkaConsumer implements InitializingBean {
}
});
thread.start();
+
+ log.info("启动线程结束监听topic:{}",topicName);
+
+
}
}
diff --git a/pom.xml b/pom.xml
index b30f0df..b0ebadf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -10,7 +10,7 @@
muyu
http://www.muyu.vip
- 若依微服务系统
+ 智能车联系统
3.6.3
From 87b3eccff57300d73bc24b73511b2f5ad1fe14e6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=BC=A0=E8=85=BE?= <3467447354@qq.com>
Date: Wed, 2 Oct 2024 09:12:44 +0800
Subject: [PATCH 08/10] =?UTF-8?q?feat():=E6=9B=B4=E6=96=B0=E6=9C=80?=
=?UTF-8?q?=E6=96=B0=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
cloud-common/cloud-common-kafka/pom.xml | 27 +++++++++++++++++++
.../com/muyu}/kafkaconfig/KafkaConfig.java | 2 +-
...ot.autoconfigure.AutoConfiguration.imports | 1 +
cloud-common/pom.xml | 1 +
cloud-modules/cloud-modules-carData/pom.xml | 6 ++---
.../carData/consumer/MyKafkaConsumer.java | 7 ++---
6 files changed, 35 insertions(+), 9 deletions(-)
create mode 100644 cloud-common/cloud-common-kafka/pom.xml
rename {cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/config => cloud-common/cloud-common-kafka/src/main/java/com/muyu}/kafkaconfig/KafkaConfig.java (98%)
create mode 100644 cloud-common/cloud-common-kafka/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
diff --git a/cloud-common/cloud-common-kafka/pom.xml b/cloud-common/cloud-common-kafka/pom.xml
new file mode 100644
index 0000000..6bd82ac
--- /dev/null
+++ b/cloud-common/cloud-common-kafka/pom.xml
@@ -0,0 +1,27 @@
+
+
+ 4.0.0
+
+ com.muyu
+ cloud-common
+ 3.6.3
+
+
+ cloud-common-kafka
+
+
+ 17
+ 17
+ UTF-8
+
+
+
+
+ org.apache.kafka
+ kafka-clients
+ 3.0.0
+
+
+
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/config/kafkaconfig/KafkaConfig.java b/cloud-common/cloud-common-kafka/src/main/java/com/muyu/kafkaconfig/KafkaConfig.java
similarity index 98%
rename from cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/config/kafkaconfig/KafkaConfig.java
rename to cloud-common/cloud-common-kafka/src/main/java/com/muyu/kafkaconfig/KafkaConfig.java
index bcf8999..393ccbb 100644
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/config/kafkaconfig/KafkaConfig.java
+++ b/cloud-common/cloud-common-kafka/src/main/java/com/muyu/kafkaconfig/KafkaConfig.java
@@ -1,4 +1,4 @@
-package com.muyu.carData.config.kafkaconfig;
+package com.muyu.kafkaconfig;
import org.apache.kafka.clients.consumer.KafkaConsumer;
import org.apache.kafka.clients.producer.KafkaProducer;
diff --git a/cloud-common/cloud-common-kafka/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/cloud-common/cloud-common-kafka/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
new file mode 100644
index 0000000..24563f7
--- /dev/null
+++ b/cloud-common/cloud-common-kafka/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -0,0 +1 @@
+com.muyu.kafkaconfig.KafkaConfig
diff --git a/cloud-common/pom.xml b/cloud-common/pom.xml
index a7a40be..60e1c14 100644
--- a/cloud-common/pom.xml
+++ b/cloud-common/pom.xml
@@ -21,6 +21,7 @@
cloud-common-xxl
cloud-common-rabbit
cloud-common-saas
+ cloud-common-kafka
cloud-common
diff --git a/cloud-modules/cloud-modules-carData/pom.xml b/cloud-modules/cloud-modules-carData/pom.xml
index 53d679b..9824751 100644
--- a/cloud-modules/cloud-modules-carData/pom.xml
+++ b/cloud-modules/cloud-modules-carData/pom.xml
@@ -83,9 +83,9 @@
2.9.3
- org.apache.kafka
- kafka-clients
- 3.0.0
+ com.muyu
+ cloud-common-kafka
+ 3.6.3
org.apache.iotdb
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java
index 58f4b6e..8d0aecc 100644
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java
+++ b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/consumer/MyKafkaConsumer.java
@@ -16,7 +16,7 @@ import java.time.Duration;
import java.util.Collection;
/**卡夫卡消费者
- * @Author:张腾臭狗熊
+ * @Author:张腾
* @Package:com.muyu.carData.consumer
* @Project:cloud-server-8
* @name:MyKafkaConsumer
@@ -43,10 +43,7 @@ public class MyKafkaConsumer implements InitializingBean {
for (ConsumerRecord consumerRecord : consumerRecords) {
//从consumerRecord中获取消费数据
String value = consumerRecord.value();
- log.info("从Kafka中消费的原始数据:{}",value);
- //转换为java对象
- Student stu = JSONUtil.toBean(value, Student.class);
- log.info("消费数据转换为Java对象:{}",stu);
+ log.info("从Kafka中消费的原始数据===============>>:{}",value);
}
}
});
From a17d1b45574e4eac8e1622b82e193c40045ac0f8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=BC=A0=E8=85=BE?= <3467447354@qq.com>
Date: Wed, 2 Oct 2024 09:38:43 +0800
Subject: [PATCH 09/10] =?UTF-8?q?feat():=E4=BF=AE=E5=A4=8D=E5=90=88?=
=?UTF-8?q?=E5=B9=B6=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
cloud-modules/cloud-modules-carData/pom.xml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/cloud-modules/cloud-modules-carData/pom.xml b/cloud-modules/cloud-modules-carData/pom.xml
index 9824751..7e7c80b 100644
--- a/cloud-modules/cloud-modules-carData/pom.xml
+++ b/cloud-modules/cloud-modules-carData/pom.xml
@@ -11,6 +11,10 @@
cloud-modules-carData
+
+ 数据处理模块
+
+
17
17
From 614ddceebcdd940420540aa430900b31a891c27f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=BC=A0=E8=85=BE?= <3467447354@qq.com>
Date: Wed, 2 Oct 2024 09:43:00 +0800
Subject: [PATCH 10/10] =?UTF-8?q?=E5=88=A0=E9=99=A4=E4=BA=86IoTDB=E7=9B=B8?=
=?UTF-8?q?=E5=85=B3=E7=9A=84=E5=AE=9E=E4=BD=93=E7=B1=BB=E3=80=81=E6=8E=A5?=
=?UTF-8?q?=E5=8F=A3=E5=92=8C=E6=B3=A8=E8=A7=A3=E3=80=82=E8=BF=99=E4=BA=9B?=
=?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=8F=AF=E8=83=BD=E5=B7=B2=E7=BB=8F=E7=A7=BB?=
=?UTF-8?q?=E5=8A=A8=E5=88=B0=E5=8F=A6=E4=B8=80=E4=B8=AA=E4=BD=8D=E7=BD=AE?=
=?UTF-8?q?=E6=88=96=E8=80=85=E4=B8=8D=E5=86=8D=E9=9C=80=E8=A6=81=E8=BF=99?=
=?UTF-8?q?=E4=BA=9B=E7=BB=93=E6=9E=84=E3=80=82=E5=8F=97=E5=BD=B1=E5=93=8D?=
=?UTF-8?q?=E7=9A=84=E4=BB=A3=E7=A0=81=E5=8C=85=E6=8B=AC=EF=BC=9A=20-=20?=
=?UTF-8?q?=E5=88=A0=E9=99=A4=E4=BA=86`com.muyu.carData.domain.IoTDBRecord?=
=?UTF-8?q?`=E5=AE=9E=E4=BD=93=E7=B1=BB=EF=BC=8C=E5=AE=83=E7=94=A8?=
=?UTF-8?q?=E4=BA=8E=E5=AE=9A=E4=B9=89IoT=E6=95=B0=E6=8D=AE=E5=BA=93?=
=?UTF-8?q?=E8=AE=B0=E5=BD=95=E3=80=82=20-=20=E5=88=A0=E9=99=A4=E4=BA=86`c?=
=?UTF-8?q?om.muyu.carData.interfaces.IoTDBRecordable`=E6=8E=A5=E5=8F=A3?=
=?UTF-8?q?=EF=BC=8C=E5=AE=83=E5=AE=9A=E4=B9=89=E4=BA=86=E5=A6=82=E4=BD=95?=
=?UTF-8?q?=E5=B0=86=E5=AF=B9=E8=B1=A1=E8=BD=AC=E6=8D=A2=E4=B8=BAIoTDBReco?=
=?UTF-8?q?rd=E3=80=82=20-=20=E5=88=A0=E9=99=A4=E4=BA=86`com.muyu.carData.?=
=?UTF-8?q?annotation.IoTTableName`=E6=B3=A8=E8=A7=A3=EF=BC=8C=E5=AE=83?=
=?UTF-8?q?=E7=94=A8=E4=BA=8E=E6=A0=87=E8=AE=B0=E7=B1=BB=E5=AF=B9=E5=BA=94?=
=?UTF-8?q?IoT=E6=95=B0=E6=8D=AE=E5=BA=93=E8=A1=A8=E7=9A=84=E5=90=8D?=
=?UTF-8?q?=E7=A7=B0=E3=80=82=20-=20=E5=88=A0=E9=99=A4=E4=BA=86`com.muyu.c?=
=?UTF-8?q?arData.constract.IoTDBTableParam`=E7=B1=BB=EF=BC=8C=E5=AE=83?=
=?UTF-8?q?=E5=8C=85=E5=90=ABIoT=E6=95=B0=E6=8D=AE=E5=BA=93=E8=A1=A8?=
=?UTF-8?q?=E5=8F=82=E6=95=B0=E7=9A=84=E5=B8=B8=E9=87=8F=E5=AE=9A=E4=B9=89?=
=?UTF-8?q?=E3=80=82?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../muyu/carData/annotation/IoTTableName.java | 18 -------
.../carData/constract/IoTDBTableParam.java | 13 -----
.../com/muyu/carData/domain/IoTDBRecord.java | 47 ----------------
.../carData/interfaces/IoTDBRecordable.java | 53 -------------------
4 files changed, 131 deletions(-)
delete mode 100644 cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/annotation/IoTTableName.java
delete mode 100644 cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/constract/IoTDBTableParam.java
delete mode 100644 cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/domain/IoTDBRecord.java
delete mode 100644 cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/interfaces/IoTDBRecordable.java
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/annotation/IoTTableName.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/annotation/IoTTableName.java
deleted file mode 100644
index 64b4a1f..0000000
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/annotation/IoTTableName.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package com.muyu.carData.annotation;
-
-import java.lang.annotation.*;
-
-/**
- * @Author:张腾
- * @Package:com.muyu.carData.annotation
- * @Project:cloud-server-8
- * @name:IoTTableName
- * @Date:2024/9/27 19:29
- */
-@Documented
-@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.TYPE, ElementType.ANNOTATION_TYPE})
-public @interface IoTTableName {
-
- String value() default "";
-}
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/constract/IoTDBTableParam.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/constract/IoTDBTableParam.java
deleted file mode 100644
index e03e8ed..0000000
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/constract/IoTDBTableParam.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.muyu.carData.constract;
-
-/**
- * @Author:张腾
- * @Package:com.muyu.carData.constract
- * @Project:cloud-server-8
- * @name:IoTDBTableParam
- * @Date:2024/9/27 20:02
- */
-public class IoTDBTableParam {
-
- public static final String SYSLOG_IOT_TABLE = "student";
-}
diff --git a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/domain/IoTDBRecord.java b/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/domain/IoTDBRecord.java
deleted file mode 100644
index 00af674..0000000
--- a/cloud-modules/cloud-modules-carData/src/main/java/com/muyu/carData/domain/IoTDBRecord.java
+++ /dev/null
@@ -1,47 +0,0 @@
-package com.muyu.carData.domain;
-
-import lombok.AllArgsConstructor;
-import lombok.Builder;
-import lombok.Data;
-import lombok.NoArgsConstructor;
-
-import java.util.List;
-
-/**
- * @Author:张腾
- * @Package:com.muyu.carData.domain
- * @Project:cloud-server-8
- * @name:IoTDBRecord
- * @Date:2024/9/27 19:25
- */
-@Data
-@Builder
-@AllArgsConstructor
-@NoArgsConstructor
-public class IoTDBRecord {
-
- /**
- * 节点路径
- */
- private String deviceId;
-
- /**
- * 时间戳
- */
- private long time = System.currentTimeMillis();
-
- /**
- * 属性
- */
- private List measurementList;
-
- /**
- * 属性值
- */
- private List