2022-03-31初始化
This commit is contained in:
17
yyd-log/pom.xml
Normal file
17
yyd-log/pom.xml
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<artifactId>ttvictory</artifactId>
|
||||
<groupId>com.yyd</groupId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<packaging>pom</packaging>
|
||||
<artifactId>yyd-log</artifactId>
|
||||
<modules>
|
||||
<module>yyd-log-api</module>
|
||||
<module>yyd-log-biz</module>
|
||||
</modules>
|
||||
</project>
|
||||
46
yyd-log/yyd-log-api/pom.xml
Normal file
46
yyd-log/yyd-log-api/pom.xml
Normal file
@@ -0,0 +1,46 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<artifactId>yyd-log</artifactId>
|
||||
<groupId>com.yyd</groupId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<artifactId>yyd-log-api</artifactId>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>io.swagger</groupId>
|
||||
<artifactId>swagger-models</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.cloud</groupId>
|
||||
<artifactId>spring-cloud-starter-openfeign</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
<artifactId>lombok</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.baomidou</groupId>
|
||||
<artifactId>mybatis-plus-boot-starter</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.baomidou</groupId>
|
||||
<artifactId>mybatis-plus-annotation</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>jakarta.validation</groupId>
|
||||
<artifactId>jakarta.validation-api</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.yyd</groupId>
|
||||
<artifactId>yyd-base-common</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
@@ -0,0 +1,44 @@
|
||||
package com.yyd.log.api;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.yyd.base.common.domain.BaseEntity;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* Project: anrui_portal(门户建设) <br/>
|
||||
* File: SystemLog.java <br/>
|
||||
* Class: com.yxt.anrui.portal.api.systemlog.SystemLog <br/>
|
||||
* Description: 系统日志表. <br/>
|
||||
* Copyright: Copyright (c) 2011 <br/>
|
||||
* Company: https://gitee.com/liuzp315 <br/>
|
||||
* Makedate: 2021-08-03 00:24:30 <br/>
|
||||
*
|
||||
* @author liupopo
|
||||
* @version 1.0
|
||||
* @since 1.0
|
||||
*/
|
||||
@ApiModel(value = "系统日志表", description = "系统日志表")
|
||||
@TableName("system_log")
|
||||
@Data
|
||||
public class SystemLog extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
@ApiModelProperty("事件名称或类别")
|
||||
private String eventName;
|
||||
|
||||
@ApiModelProperty("事件内容")
|
||||
private String eventContent;
|
||||
|
||||
@ApiModelProperty("事件url")
|
||||
private String eventUrl;
|
||||
|
||||
@ApiModelProperty("用户sid")
|
||||
private String userSid;
|
||||
|
||||
@ApiModelProperty("用户名")
|
||||
private String userName;
|
||||
|
||||
@ApiModelProperty("用户iP")
|
||||
private String userIp;
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package com.yyd.log.api;
|
||||
|
||||
|
||||
import com.yyd.base.common.dto.Dto;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* Project: anrui_portal(门户建设) <br/>
|
||||
* File: SystemLogDto.java <br/>
|
||||
* Class: com.yxt.anrui.portal.api.systemlog.SystemLogDto <br/>
|
||||
* Description: 系统日志表 数据传输对象. <br/>
|
||||
* Copyright: Copyright (c) 2011 <br/>
|
||||
* Company: https://gitee.com/liuzp315 <br/>
|
||||
* Makedate: 2021-08-03 00:24:30 <br/>
|
||||
*
|
||||
* @author liupopo
|
||||
* @version 1.0
|
||||
* @since 1.0
|
||||
*/
|
||||
@Builder
|
||||
@ApiModel(value = "系统日志表 数据传输对象", description = "系统日志表 数据传输对象")
|
||||
@Data
|
||||
public class SystemLogDto implements Dto {
|
||||
|
||||
|
||||
@ApiModelProperty("事件名称或类别")
|
||||
private String eventName;
|
||||
|
||||
@ApiModelProperty("事件内容")
|
||||
private String eventContent;
|
||||
|
||||
@ApiModelProperty("事件url")
|
||||
private String eventUrl;
|
||||
|
||||
@ApiModelProperty("用户sid")
|
||||
private String userSid;
|
||||
|
||||
@ApiModelProperty("用户名")
|
||||
private String userName;
|
||||
|
||||
@ApiModelProperty("用户iP")
|
||||
private String userIp;
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
package com.yyd.log.api;
|
||||
|
||||
import com.yyd.base.common.query.PagerQuery;
|
||||
import com.yyd.base.common.result.ResultBean;
|
||||
import com.yyd.base.common.vo.PagerVo;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* Project: anrui_portal(门户建设) <br/>
|
||||
* File: SystemLogFeign.java <br/>
|
||||
* Class: com.yxt.anrui.portal.api.systemlog.SystemLogFeign <br/>
|
||||
* Description: 系统日志表. <br/>
|
||||
* Copyright: Copyright (c) 2011 <br/>
|
||||
* Company: https://gitee.com/liuzp315 <br/>
|
||||
* Makedate: 2021-08-03 00:24:30 <br/>
|
||||
*
|
||||
* @author liupopo
|
||||
* @version 1.0
|
||||
* @since 1.0
|
||||
*/
|
||||
@Api(tags = "系统日志表")
|
||||
@FeignClient(
|
||||
contextId = "yyd-log",
|
||||
name = "yyd-log",
|
||||
path = "v1/systemlog",
|
||||
fallback = SystemLogFeignFallback.class)
|
||||
public interface SystemLogFeign {
|
||||
|
||||
@ApiOperation("根据条件分页查询数据的列表")
|
||||
@PostMapping("/listPage")
|
||||
public ResultBean<PagerVo<SystemLogVo>> listPage(@RequestBody PagerQuery<SystemLogQuery> pq);
|
||||
|
||||
@ApiOperation("根据条件查询所有数据列表")
|
||||
@PostMapping("/listAll")
|
||||
public ResultBean<List<SystemLogVo>> listAll(@RequestBody SystemLogQuery query);
|
||||
|
||||
@ApiOperation("所有数据列表")
|
||||
@GetMapping("/list")
|
||||
public ResultBean<List<SystemLogVo>> list();
|
||||
|
||||
@ApiOperation("新增保存")
|
||||
@PostMapping("/save")
|
||||
public ResultBean save(@RequestBody SystemLogDto dto);
|
||||
|
||||
@ApiOperation("修改保存")
|
||||
@PostMapping("/update/{sid}")
|
||||
public ResultBean update(@RequestBody SystemLogDto dto,@PathVariable("sid") String sid);
|
||||
|
||||
@ApiOperation("删除记录")
|
||||
@GetMapping("/del/{ids}")
|
||||
public ResultBean del(@PathVariable("ids") String ids);
|
||||
|
||||
@ApiOperation("获取一条记录")
|
||||
@GetMapping("/fetch/{id}")
|
||||
public ResultBean<SystemLogVo> fetch(@PathVariable("id") String id);
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.yyd.log.api;
|
||||
|
||||
import com.yyd.base.common.query.PagerQuery;
|
||||
import com.yyd.base.common.result.ResultBean;
|
||||
import com.yyd.base.common.vo.PagerVo;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Project: anrui_portal(门户建设) <br/>
|
||||
* File: SystemLogFeignFallback.java <br/>
|
||||
* Class: com.yxt.anrui.portal.api.systemlog.SystemLogFeignFallback <br/>
|
||||
* Description: 系统日志表. <br/>
|
||||
* Copyright: Copyright (c) 2011 <br/>
|
||||
* Company: https://gitee.com/liuzp315 <br/>
|
||||
* Makedate: 2021-08-03 00:24:30 <br/>
|
||||
*
|
||||
* @author liupopo
|
||||
* @version 1.0
|
||||
* @since 1.0
|
||||
*/
|
||||
@Component
|
||||
public class SystemLogFeignFallback implements SystemLogFeign {
|
||||
|
||||
@Override
|
||||
public ResultBean<PagerVo<SystemLogVo>> listPage(PagerQuery<SystemLogQuery> pq){
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
return rb.setMsg("接口anrui_portal/systemlog/listPage无法访问");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean<List<SystemLogVo>> listAll(SystemLogQuery query){
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
return rb.setMsg("接口anrui_portal/systemlog/listAll无法访问");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean<List<SystemLogVo>> list(){
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
return rb.setMsg("接口anrui_portal/systemlog/list无法访问");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean save(SystemLogDto dto){
|
||||
return ResultBean.fireFail().setMsg("接口anrui_portal/systemlog/save无法访问");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean update(SystemLogDto dto, String sid){
|
||||
return ResultBean.fireFail().setMsg("接口anrui_portal/systemlog/update无法访问");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean del(String ids){
|
||||
return ResultBean.fireFail().setMsg("接口anrui_portal/systemlog/del无法访问");
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean<SystemLogVo> fetch(String id){
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
return rb.setMsg("接口anrui_portal/systemlog/fetch无法访问");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package com.yyd.log.api;
|
||||
|
||||
|
||||
import com.yyd.base.common.query.Query;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* Project: anrui_portal(门户建设) <br/>
|
||||
* File: SystemLogQuery.java <br/>
|
||||
* Class: com.yxt.anrui.portal.api.systemlog.SystemLogQuery <br/>
|
||||
* Description: 系统日志表 查询条件. <br/>
|
||||
* Copyright: Copyright (c) 2011 <br/>
|
||||
* Company: https://gitee.com/liuzp315 <br/>
|
||||
* Makedate: 2021-08-03 00:24:30 <br/>
|
||||
*
|
||||
* @author liupopo
|
||||
* @version 1.0
|
||||
* @since 1.0
|
||||
*/
|
||||
@ApiModel(value = "系统日志表 查询条件", description = "系统日志表 查询条件")
|
||||
@Data
|
||||
public class SystemLogQuery implements Query {
|
||||
|
||||
|
||||
@ApiModelProperty("事件名称或类别")
|
||||
private String eventName;
|
||||
|
||||
@ApiModelProperty("事件内容")
|
||||
private String eventContent;
|
||||
|
||||
@ApiModelProperty("事件url")
|
||||
private String eventUrl;
|
||||
|
||||
@ApiModelProperty("用户sid")
|
||||
private String userSid;
|
||||
|
||||
@ApiModelProperty("用户名")
|
||||
private String userName;
|
||||
|
||||
@ApiModelProperty("用户iP")
|
||||
private String userIp;
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package com.yyd.log.api;
|
||||
|
||||
|
||||
import com.yyd.base.common.vo.Vo;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* Project: anrui_portal(门户建设) <br/>
|
||||
* File: SystemLogVo.java <br/>
|
||||
* Class: com.yxt.anrui.portal.api.systemlog.SystemLogVo <br/>
|
||||
* Description: 系统日志表 视图数据对象. <br/>
|
||||
* Copyright: Copyright (c) 2011 <br/>
|
||||
* Company: https://gitee.com/liuzp315 <br/>
|
||||
* Makedate: 2021-08-03 00:24:30 <br/>
|
||||
*
|
||||
* @author liupopo
|
||||
* @version 1.0
|
||||
* @since 1.0
|
||||
*/
|
||||
@ApiModel(value = "系统日志表 视图数据对象", description = "系统日志表 视图数据对象")
|
||||
@Data
|
||||
public class SystemLogVo implements Vo {
|
||||
|
||||
|
||||
@ApiModelProperty("事件名称或类别")
|
||||
private String eventName;
|
||||
|
||||
@ApiModelProperty("事件内容")
|
||||
private String eventContent;
|
||||
|
||||
@ApiModelProperty("事件url")
|
||||
private String eventUrl;
|
||||
|
||||
@ApiModelProperty("用户sid")
|
||||
private String userSid;
|
||||
|
||||
@ApiModelProperty("用户名")
|
||||
private String userName;
|
||||
|
||||
@ApiModelProperty("用户iP")
|
||||
private String userIp;
|
||||
}
|
||||
80
yyd-log/yyd-log-biz/pom.xml
Normal file
80
yyd-log/yyd-log-biz/pom.xml
Normal file
@@ -0,0 +1,80 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<artifactId>yyd-log</artifactId>
|
||||
<groupId>com.yyd</groupId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<artifactId>yyd-log-biz</artifactId>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.yyd</groupId>
|
||||
<artifactId>yyd-base-common</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
<artifactId>lombok</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.yyd</groupId>
|
||||
<artifactId>yyd-base-jdbc</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.kafka</groupId>
|
||||
<artifactId>spring-kafka</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.kafka</groupId>
|
||||
<artifactId>kafka-clients</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.alibaba.cloud</groupId>
|
||||
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
|
||||
</dependency>
|
||||
<!--mysql-->
|
||||
<dependency>
|
||||
<groupId>mysql</groupId>
|
||||
<artifactId>mysql-connector-java</artifactId>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>junit</groupId>
|
||||
<artifactId>junit</artifactId>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.servlet</groupId>
|
||||
<artifactId>javax.servlet-api</artifactId>
|
||||
<version>4.0.1</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.xiaoymin</groupId>
|
||||
<artifactId>knife4j-spring-boot-starter</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>net.dongliu</groupId>
|
||||
<artifactId>apk-parser</artifactId>
|
||||
<version>2.6.10</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-web</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.yyd</groupId>
|
||||
<artifactId>yyd-log-api</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.yyd.log;
|
||||
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
|
||||
import org.springframework.cloud.openfeign.EnableFeignClients;
|
||||
|
||||
@SpringBootApplication(scanBasePackages = {
|
||||
"com.yyd.log.*"
|
||||
})
|
||||
@EnableDiscoveryClient
|
||||
@EnableFeignClients(basePackages = {"com.yyd.log.*","com.yyd.base.*"})
|
||||
public class LogApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(LogApplication.class, args);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
package com.yyd.log.biz;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.yyd.log.api.SystemLog;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.kafka.clients.consumer.Consumer;
|
||||
import org.apache.kafka.clients.consumer.ConsumerRecord;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.kafka.annotation.KafkaListener;
|
||||
import org.springframework.kafka.support.Acknowledgment;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
/**
|
||||
* KafkaConsumerService
|
||||
*/
|
||||
@Slf4j
|
||||
@Component
|
||||
public class KafkaConsumerService {
|
||||
@Autowired
|
||||
private SystemLogService systemLogService;
|
||||
@KafkaListener(groupId = "group02", topics = "kafka_log_topic")
|
||||
public void onMessage(ConsumerRecord<String, Object> record, Acknowledgment acknowledgment, Consumer<?, ?> consumer) {
|
||||
// log.info("消费端接收消息: {}", record.value());
|
||||
JSONObject jsonObject = JSONObject.parseObject( record.value().toString());
|
||||
JSONObject message=null;
|
||||
try{
|
||||
message = JSONObject.parseObject(jsonObject.get("message").toString());
|
||||
SystemLog log=new SystemLog();
|
||||
if(message.get("routeId")!=null){
|
||||
log.setEventName(message.get("routeId").toString());
|
||||
}else {
|
||||
log.setEventName("");
|
||||
}
|
||||
/* log.setEventContent(jsonObject.get("heads").toString());*/
|
||||
if(message.get("params")!=null){
|
||||
log.setEventContent(message.get("params").toString());
|
||||
}else{
|
||||
log.setEventContent("");
|
||||
}
|
||||
if(message.get("uri")!=null){
|
||||
log.setEventUrl(message.get("uri").toString());
|
||||
}else{
|
||||
log.setEventUrl("");
|
||||
}
|
||||
if(message.get("userName")!=null){
|
||||
|
||||
log.setUserName(message.get("userName").toString());
|
||||
}else{
|
||||
log.setUserName("");
|
||||
|
||||
}
|
||||
if(message.get("ip")!=null){
|
||||
|
||||
log.setUserIp(message.get("ip").toString());
|
||||
}else{
|
||||
log.setUserIp("");
|
||||
}
|
||||
systemLogService.save(log);
|
||||
}catch (Exception e){
|
||||
message=new JSONObject();
|
||||
}
|
||||
// 手工签收机制
|
||||
acknowledgment.acknowledge();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
package com.yyd.log.biz;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.Wrapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||
import com.yyd.log.api.SystemLog;
|
||||
import com.yyd.log.api.SystemLogVo;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Project: anrui_portal(门户建设) <br/>
|
||||
* File: SystemLogMapper.java <br/>
|
||||
* Class: com.yxt.anrui.portal.biz.systemlog.SystemLogMapper <br/>
|
||||
* Description: 系统日志表. <br/>
|
||||
* Copyright: Copyright (c) 2011 <br/>
|
||||
* Company: https://gitee.com/liuzp315 <br/>
|
||||
* Makedate: 2021-08-03 00:24:30 <br/>
|
||||
*
|
||||
* @author liupopo
|
||||
* @version 1.0
|
||||
* @since 1.0
|
||||
*/
|
||||
@Mapper
|
||||
public interface SystemLogMapper extends BaseMapper<SystemLog> {
|
||||
|
||||
//@Update("update system_log set name=#{msg} where id=#{id}")
|
||||
//IPage<SystemLogVo> voPage(IPage<SystemLog> page, @Param(Constants.WRAPPER) QueryWrapper<SystemLog> qw);
|
||||
|
||||
IPage<SystemLogVo> selectPageVo(IPage<SystemLog> page, @Param(Constants.WRAPPER) Wrapper<SystemLog> qw);
|
||||
|
||||
List<SystemLogVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<SystemLog> qw);
|
||||
|
||||
@Select("select * from system_log")
|
||||
List<SystemLogVo> selectListVo();
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.yyd.log.consumer.systemlog.biz.SystemLogMapper">
|
||||
<!-- <where> ${ew.sqlSegment} </where>-->
|
||||
<!-- ${ew.customSqlSegment} -->
|
||||
<select id="selectPageVo" resultType="com.yyd.log.consumer.systemlog.api.SystemLogVo">
|
||||
SELECT * FROM system_log <where> ${ew.sqlSegment} </where>
|
||||
</select>
|
||||
|
||||
<select id="selectListAllVo" resultType="com.yyd.log.consumer.systemlog.api.SystemLogVo">
|
||||
SELECT * FROM system_log <where> ${ew.sqlSegment} </where>
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -0,0 +1,103 @@
|
||||
package com.yyd.log.biz;
|
||||
|
||||
import com.yyd.base.common.query.PagerQuery;
|
||||
import com.yyd.base.common.result.ResultBean;
|
||||
import com.yyd.base.common.vo.PagerVo;
|
||||
import com.yyd.log.api.SystemLogDto;
|
||||
import com.yyd.log.api.SystemLogFeign;
|
||||
import com.yyd.log.api.SystemLogQuery;
|
||||
import com.yyd.log.api.SystemLogVo;
|
||||
import io.swagger.annotations.Api;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* Project: anrui_portal(门户建设) <br/>
|
||||
* File: SystemLogFeignFallback.java <br/>
|
||||
* Class: com.yxt.anrui.portal.biz.systemlog.SystemLogRest <br/>
|
||||
* Description: 系统日志表. <br/>
|
||||
* Copyright: Copyright (c) 2011 <br/>
|
||||
* Company: https://gitee.com/liuzp315 <br/>
|
||||
* Makedate: 2021-08-03 00:24:30 <br/>
|
||||
*
|
||||
* @author liupopo
|
||||
* @version 1.0
|
||||
* @since 1.0
|
||||
*/
|
||||
@Api(tags = "系统日志表")
|
||||
@RestController
|
||||
@RequestMapping("v1/systemlog")
|
||||
public class SystemLogRest implements SystemLogFeign {
|
||||
|
||||
@Resource
|
||||
private SystemLogService systemLogService;
|
||||
|
||||
@Override
|
||||
public ResultBean<PagerVo<SystemLogVo>> listPage(@RequestBody PagerQuery<SystemLogQuery> pq){
|
||||
/*SystemLogDto systemLogDto = SystemLogDto.builder()
|
||||
.userIp(WebUtil.getIp())
|
||||
.eventContent("日志列表查询")
|
||||
.eventName("日志列表查询")
|
||||
.eventUrl("/v1/systemlog/listPage")
|
||||
.userName("")
|
||||
.userSid("")
|
||||
.build();*/
|
||||
/*systemLogService.saveOrUpdateDto(systemLogDto);*/
|
||||
/* SystemLog log=new SystemLog();
|
||||
log.setEventName("日志列表查询");
|
||||
log.setEventContent("日志列表查询");
|
||||
log.setUserName("");
|
||||
log.setUserIp("0.0.0.0");
|
||||
systemLogService.save(log);*/
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
PagerVo<SystemLogVo> pv = systemLogService.listPageVo(pq);
|
||||
return rb.success().setData(pv);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean<List<SystemLogVo>> listAll(@RequestBody SystemLogQuery query){
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
List<SystemLogVo> list = systemLogService.listAllVo(query);
|
||||
return rb.success().setData(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean<List<SystemLogVo>> list(){
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
List<SystemLogVo> list = systemLogService.listVo();
|
||||
return rb.success().setData(list);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean save(SystemLogDto dto){
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
systemLogService.saveOrUpdateDto(dto);
|
||||
return rb.success();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean update(SystemLogDto dto,String sid){
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
systemLogService.updateBySid(dto.toMap(),sid);
|
||||
return rb.success();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean del(String ids){
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
systemLogService.delByIds(ids);
|
||||
return rb.success();
|
||||
}
|
||||
|
||||
@Override
|
||||
public ResultBean<SystemLogVo> fetch(String id){
|
||||
ResultBean rb = ResultBean.fireFail();
|
||||
SystemLogVo vo = systemLogService.fetchByIdVo(id);
|
||||
return rb.success().setData(vo);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,109 @@
|
||||
package com.yyd.log.biz;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.yyd.base.common.query.PagerQuery;
|
||||
import com.yyd.base.common.utils.PagerUtil;
|
||||
import com.yyd.base.common.vo.PagerVo;
|
||||
import com.yyd.base.jdbc.service.MybatisBaseService;
|
||||
import com.yyd.log.api.SystemLog;
|
||||
import com.yyd.log.api.SystemLogDto;
|
||||
import com.yyd.log.api.SystemLogQuery;
|
||||
import com.yyd.log.api.SystemLogVo;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* Project: anrui_portal(门户建设) <br/>
|
||||
* File: SystemLogService.java <br/>
|
||||
* Class: com.yxt.anrui.portal.biz.systemlog.SystemLogService <br/>
|
||||
* Description: 系统日志表 业务逻辑. <br/>
|
||||
* Copyright: Copyright (c) 2011 <br/>
|
||||
* Company: https://gitee.com/liuzp315 <br/>
|
||||
* Makedate: 2021-08-03 00:24:30 <br/>
|
||||
*
|
||||
* @author liupopo
|
||||
* @version 1.0
|
||||
* @since 1.0
|
||||
*/
|
||||
@Service
|
||||
public class SystemLogService extends MybatisBaseService<SystemLogMapper, SystemLog> {
|
||||
public PagerVo<SystemLog> listPage(PagerQuery<SystemLogQuery> pq) {
|
||||
SystemLogQuery query = pq.getParams();
|
||||
QueryWrapper<SystemLog> qw = createQueryWrapper(query);
|
||||
IPage<SystemLog> page = PagerUtil.queryToPage(pq);
|
||||
IPage<SystemLog> pagging = baseMapper.selectPage(page, qw);
|
||||
PagerVo<SystemLog> p = PagerUtil.pageToVo(pagging, null);
|
||||
return p;
|
||||
}
|
||||
public List<SystemLog> listAll(SystemLogQuery query) {
|
||||
QueryWrapper<SystemLog> qw = createQueryWrapper(query);
|
||||
return baseMapper.selectList(qw);
|
||||
}
|
||||
private QueryWrapper<SystemLog> createQueryWrapper(SystemLogQuery query) {
|
||||
// todo: 这里根据具体业务调整查询条件
|
||||
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
||||
QueryWrapper<SystemLog> qw = new QueryWrapper<>();
|
||||
|
||||
|
||||
if (StringUtils.isNotBlank(query.getEventName())) {
|
||||
qw.eq("eventName", query.getEventName());
|
||||
}
|
||||
|
||||
if (StringUtils.isNotBlank(query.getEventContent())) {
|
||||
qw.eq("eventContent", query.getEventContent());
|
||||
}
|
||||
|
||||
if (StringUtils.isNotBlank(query.getEventUrl())) {
|
||||
qw.eq("eventUrl", query.getEventUrl());
|
||||
}
|
||||
|
||||
if (StringUtils.isNotBlank(query.getUserSid())) {
|
||||
qw.eq("userSid", query.getUserSid());
|
||||
}
|
||||
|
||||
if (StringUtils.isNotBlank(query.getUserName())) {
|
||||
qw.eq("userName", query.getUserName());
|
||||
}
|
||||
|
||||
if (StringUtils.isNotBlank(query.getUserIp())) {
|
||||
qw.eq("userIp", query.getUserIp());
|
||||
}
|
||||
return qw;
|
||||
}
|
||||
|
||||
public PagerVo<SystemLogVo> listPageVo(PagerQuery<SystemLogQuery> pq) {
|
||||
SystemLogQuery query = pq.getParams();
|
||||
QueryWrapper<SystemLog> qw = createQueryWrapper(query);
|
||||
IPage<SystemLog> page = PagerUtil.queryToPage(pq);
|
||||
IPage<SystemLogVo> pagging = baseMapper.selectPageVo(page, qw);
|
||||
PagerVo<SystemLogVo> p = PagerUtil.pageToVo(pagging, null);
|
||||
return p;
|
||||
}
|
||||
|
||||
public List<SystemLogVo> listAllVo(SystemLogQuery query) {
|
||||
QueryWrapper<SystemLog> qw = createQueryWrapper(query);
|
||||
return baseMapper.selectListAllVo(qw);
|
||||
}
|
||||
|
||||
public List<SystemLogVo> listVo() {
|
||||
return baseMapper.selectListVo();
|
||||
}
|
||||
|
||||
public void saveOrUpdateDto(SystemLogDto dto){
|
||||
SystemLog entity = new SystemLog();
|
||||
dto.fillEntity(entity);
|
||||
this.saveOrUpdate(entity);
|
||||
}
|
||||
|
||||
public SystemLogVo fetchByIdVo(String id){
|
||||
SystemLog entity = this.fetchById(id);
|
||||
SystemLogVo vo = new SystemLogVo();
|
||||
BeanUtil.copyProperties(entity, vo);
|
||||
return vo;
|
||||
}
|
||||
}
|
||||
32
yyd-log/yyd-log-biz/src/main/resources/application-devv.yml
Normal file
32
yyd-log/yyd-log-biz/src/main/resources/application-devv.yml
Normal file
@@ -0,0 +1,32 @@
|
||||
spring:
|
||||
datasource:
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
url: jdbc:mysql://127.0.0.1:3306/anrui_portal?serverTimezone=GMT%2B8&autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&nullCatalogMeansCurrent=true
|
||||
username: root
|
||||
password: root
|
||||
cloud:
|
||||
nacos:
|
||||
discovery:
|
||||
server-addr: 127.0.0.1:8848
|
||||
redis:
|
||||
database: 3 # Redis数据库索引(默认为0)
|
||||
host: 127.0.0.1
|
||||
jedis:
|
||||
pool:
|
||||
max-active: -1 #连接池最大连接数(使用负值表示没有限制)
|
||||
max-idle: 8 #连接池中的最大空闲连接
|
||||
max-wait: -1 # 连接池最大阻塞等待时间(使用负值表示没有限制)
|
||||
min-idle: 0 # 连接池中的最小空闲连接
|
||||
password: 123456
|
||||
port: 6379
|
||||
timeout: 0 # 连接超时时间(毫秒)
|
||||
|
||||
image:
|
||||
upload:
|
||||
path: D:\\anrui\\upload\\
|
||||
url:
|
||||
prefix: http://127.0.0.1:7003/upload/
|
||||
login:
|
||||
path: D:\\images\\pic-click
|
||||
|
||||
|
||||
30
yyd-log/yyd-log-biz/src/main/resources/application-pro.yml
Normal file
30
yyd-log/yyd-log-biz/src/main/resources/application-pro.yml
Normal file
@@ -0,0 +1,30 @@
|
||||
spring:
|
||||
datasource:
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
url: jdbc:mysql://120.46.131.15:3306/anrui_portal?serverTimezone=GMT%2B8&autoReconnect=true&useUnicode=true&characterEncoding=UTF-8
|
||||
username: root
|
||||
password: anrui_@root
|
||||
cloud:
|
||||
nacos:
|
||||
discovery:
|
||||
server-addr: 127.0.0.1:8848
|
||||
redis:
|
||||
database: 3 # Redis数据库索引(默认为0)
|
||||
host: 127.0.0.1
|
||||
jedis:
|
||||
pool:
|
||||
max-active: -1 #连接池最大连接数(使用负值表示没有限制)
|
||||
max-idle: 8 #连接池中的最大空闲连接
|
||||
max-wait: -1 # 连接池最大阻塞等待时间(使用负值表示没有限制)
|
||||
min-idle: 0 # 连接池中的最小空闲连接
|
||||
password: 123456
|
||||
port: 6379
|
||||
timeout: 0 # 连接超时时间(毫秒)
|
||||
|
||||
image:
|
||||
upload:
|
||||
path: D:\anrui\upload\
|
||||
url:
|
||||
prefix: http://120.46.131.15:8111/upload/
|
||||
login:
|
||||
path: D:\images\pic-click
|
||||
30
yyd-log/yyd-log-biz/src/main/resources/application-test.yml
Normal file
30
yyd-log/yyd-log-biz/src/main/resources/application-test.yml
Normal file
@@ -0,0 +1,30 @@
|
||||
spring:
|
||||
datasource:
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
url: jdbc:mysql://39.104.142.192:3306/anrui_portal?serverTimezone=GMT%2B8&autoReconnect=true&useUnicode=true&characterEncoding=UTF-8&nullCatalogMeansCurrent=true
|
||||
username: root
|
||||
password: 123456
|
||||
cloud:
|
||||
nacos:
|
||||
discovery:
|
||||
server-addr: 127.0.0.1:8848
|
||||
redis:
|
||||
database: 3 # Redis数据库索引(默认为0)
|
||||
host: 127.0.0.1
|
||||
jedis:
|
||||
pool:
|
||||
max-active: -1 #连接池最大连接数(使用负值表示没有限制)
|
||||
max-idle: 8 #连接池中的最大空闲连接
|
||||
max-wait: -1 # 连接池最大阻塞等待时间(使用负值表示没有限制)
|
||||
min-idle: 0 # 连接池中的最小空闲连接
|
||||
password:
|
||||
port: 6379
|
||||
timeout: 0 # 连接超时时间(毫秒)
|
||||
image:
|
||||
upload:
|
||||
path: D:\\anrui\\upload\\
|
||||
url:
|
||||
prefix: http://127.0.0.1:7003/upload/
|
||||
login:
|
||||
path: D:\\images\\pic-click
|
||||
|
||||
55
yyd-log/yyd-log-biz/src/main/resources/application.yml
Normal file
55
yyd-log/yyd-log-biz/src/main/resources/application.yml
Normal file
@@ -0,0 +1,55 @@
|
||||
spring:
|
||||
application:
|
||||
name: yyd-log
|
||||
profiles:
|
||||
active: devv
|
||||
messages:
|
||||
# 国际化资源文件路径
|
||||
basename: i18n/messages
|
||||
servlet:
|
||||
#上传文件
|
||||
multipart:
|
||||
max-file-size: 50MB
|
||||
max-request-size: 100MB
|
||||
devtools:
|
||||
restart:
|
||||
# 热部署开关
|
||||
enabled: true
|
||||
mvc:
|
||||
async:
|
||||
request-timeout: 20000
|
||||
kafka:
|
||||
bootstrap-servers: 127.0.0.1:9092
|
||||
listener:
|
||||
missing-topics-fatal: false
|
||||
ack-mode: manual
|
||||
concurrency: 5
|
||||
consumer:
|
||||
enable-auto-commit: false
|
||||
auto-offset-reset: earliest
|
||||
key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
|
||||
value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
|
||||
server:
|
||||
port: 8002
|
||||
servlet:
|
||||
context-path: /consumser
|
||||
max-http-header-size: 102400
|
||||
undertow:
|
||||
max-http-post-size: -1
|
||||
#mybatis
|
||||
mybatis-plus:
|
||||
# 配置mapper的扫描,找到所有的mapper.xml映射文件
|
||||
mapper-locations: classpath*:**Mapper.xml
|
||||
global-config:
|
||||
refresh: true
|
||||
db-config:
|
||||
#定义生成ID的类型
|
||||
id-type: Auto
|
||||
db-type: mysql
|
||||
configuration:
|
||||
map-underscore-to-camel-case: false
|
||||
cache-enabled: true
|
||||
call-setters-on-nulls: true
|
||||
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
|
||||
|
||||
|
||||
50
yyd-log/yyd-log-biz/src/main/resources/logback-spring.xml
Normal file
50
yyd-log/yyd-log-biz/src/main/resources/logback-spring.xml
Normal file
@@ -0,0 +1,50 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<configuration>
|
||||
|
||||
<property name="log.base" value="logs/yyd-demo" />
|
||||
|
||||
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<encoder>
|
||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 :
|
||||
|%blue(%thread) 线程 如 :DiscoveryClient-CacheRefreshExecutor-0-->
|
||||
<!--<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>-->
|
||||
<pattern>%yellow(%date{yyyy-MM-dd HH:mm:ss}) |%highlight(%-5level) |%green(%logger:%line) |%blue(%msg%n)
|
||||
</pattern>
|
||||
<!--<charset>UTF-8</charset> -->
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<!-- 彩色日志 -->
|
||||
<!-- 彩色日志依赖的渲染类 -->
|
||||
<conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" />
|
||||
<conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />
|
||||
<conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />
|
||||
<!-- 彩色日志格式 -->
|
||||
<property name="CONSOLE_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>
|
||||
|
||||
<appender name="FILEOUT"
|
||||
class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>${log.base}.log</file>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
|
||||
<fileNamePattern>${log.base}.%d{yyyyMMdd}.%i.log.zip
|
||||
</fileNamePattern>
|
||||
<!-- 当文件大小超过10MB时触发滚动 -->
|
||||
<timeBasedFileNamingAndTriggeringPolicy
|
||||
class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
|
||||
<maxFileSize>1MB</maxFileSize>
|
||||
</timeBasedFileNamingAndTriggeringPolicy>
|
||||
</rollingPolicy>
|
||||
<encoder>
|
||||
<!--<pattern>%date [%thread] %-5level %logger{35} - %msg%n</pattern>-->
|
||||
<Pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}
|
||||
-%msg%n</Pattern>
|
||||
<!--<charset>UTF-8</charset> -->
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<root level="INFO">
|
||||
<appender-ref ref="STDOUT" />
|
||||
<appender-ref ref="FILEOUT" />
|
||||
</root>
|
||||
|
||||
</configuration>
|
||||
Reference in New Issue
Block a user