Browse Source

Merge remote-tracking branch 'origin/master'

wzy 10 months ago
parent
commit
2b503d4e2a

+ 1 - 1
mjava-demo/src/main/resources/logback-spring.xml

@@ -52,7 +52,7 @@
 
     <!-- 日志输出级别 -->
     <logger name="org.springframework" level="debug"  additivity="false"/>
-    <logger name="com.zitoo.connecter" level="debug"/>
+    <logger name="com.malk.connecter" level="debug"/>
     <root level="INFO">
         <appender-ref ref="stdout"/>
         <appender-ref ref="appLogAppender"/>

+ 1 - 1
mjava-jiangshi/src/main/resources/logback-spring.xml

@@ -52,7 +52,7 @@
 
     <!-- 日志输出级别 -->
     <logger name="org.springframework" level="debug"  additivity="false"/>
-    <logger name="com.zitoo.connecter" level="debug"/>
+    <logger name="com.malk.connecter" level="debug"/>
     <root level="INFO">
         <appender-ref ref="stdout"/>
         <appender-ref ref="appLogAppender"/>

+ 1 - 1
mjava-kabeiyi/src/main/resources/logback-spring.xml

@@ -52,7 +52,7 @@
 
     <!-- 日志输出级别 -->
     <logger name="org.springframework" level="debug"  additivity="false"/>
-    <logger name="com.zitoo.connecter" level="debug"/>
+    <logger name="com.malk.connecter" level="debug"/>
     <root level="INFO">
         <appender-ref ref="stdout"/>
         <appender-ref ref="appLogAppender"/>

+ 8 - 5
mjava-kuaikeli/src/main/java/com/malk/kuaikeli/service/impl/KKLImplService.java

@@ -11,19 +11,18 @@ import com.malk.server.common.McR;
 import com.malk.server.dingtalk.DDR_New;
 import com.malk.service.aliwork.YDClient;
 import com.malk.service.aliwork.YDService;
-import com.malk.utils.PublicUtil;
-import com.malk.utils.UtilMap;
-import com.malk.utils.UtilMc;
-import com.malk.utils.UtilNumber;
+import com.malk.utils.*;
 import lombok.SneakyThrows;
 import lombok.Synchronized;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringEscapeUtils;
 import org.apache.logging.log4j.util.Strings;
+import org.apache.xmlbeans.impl.xb.xsdschema.Public;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 
+import java.time.LocalDateTime;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -356,6 +355,7 @@ public class KKLImplService implements KKLService {
         String cost3 = UtilMap.getString(data,"timeLimit");
         String cost4 = UtilMap.getString(data,"packNumber");// 包装数量
         String cost5 = UtilMap.getString(data,"packUnit");// 包装单位
+        String cost6 = UtilMap.getString(data,"state");// 原材料状态
 
         //todo2: 服务执行, 周日凌晨更新价格前, 是否重新匹配数据?
         List<Map> dataList = ydService.queryFormData_all(YDParam.builder()
@@ -373,8 +373,11 @@ public class KKLImplService implements KKLService {
             double price1 = UtilNumber.formatPrecisionValue(cost1 * (rate + 100) / 100f);
             double price2 = UtilNumber.formatPrecisionValue(cost2 * (100 + rate2) / 100f);
 
+
+            String state= cost6.equals("已启用") && Long.parseLong(cost3) > UtilDateTime.getLocalDateTimeTimeStamp()?"已启用":"已停用";
+
             Map update = UtilMap.map("numberField_llkknd6h, numberField_lpalgz0a", price1, price2);
-            update.putAll(UtilMap.map("numberField_llkknd6g, numberField_lpalgz05, dateField_lm4lxur7, numberField_lnrzzg03, textField_lnrzzg04", cost1, cost2, cost3, cost4, cost5 ));
+            update.putAll(UtilMap.map("numberField_llkknd6g, numberField_lpalgz05, dateField_lm4lxur7, numberField_lnrzzg03, textField_lnrzzg04,textField_lm4lxur8", cost1, cost2, cost3, cost4, cost5,state ));
             ydClient.operateData(YDParam.builder()
                     .formInstanceId(String.valueOf(record.get("formInstanceId")))
                     .updateFormDataJson(JSON.toJSONString(update))

+ 1 - 1
mjava-kuaikeli/src/main/resources/logback-spring.xml

@@ -52,7 +52,7 @@
 
     <!-- 日志输出级别 -->
     <logger name="org.springframework" level="debug"  additivity="false"/>
-    <logger name="com.zitoo.connecter" level="debug"/>
+    <logger name="com.malk.connecter" level="debug"/>
     <root level="INFO">
         <appender-ref ref="stdout"/>
         <appender-ref ref="appLogAppender"/>

+ 1 - 1
mjava-lingmingguangzi/src/main/resources/logback-spring.xml

@@ -52,7 +52,7 @@
 
     <!-- 日志输出级别 -->
     <logger name="org.springframework" level="debug"  additivity="false"/>
-    <logger name="com.zitoo.connecter" level="debug"/>
+    <logger name="com.malk.connecter" level="debug"/>
     <root level="INFO">
         <appender-ref ref="stdout"/>
         <appender-ref ref="appLogAppender"/>

+ 4 - 0
mjava-mc/pom.xml

@@ -21,6 +21,10 @@
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-aop</artifactId>
+        </dependency>
         <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-test</artifactId>

+ 92 - 0
mjava-mc/src/main/java/com/malk/mc/aspect/RequestLoggingAspect.java

@@ -0,0 +1,92 @@
+package com.malk.mc.aspect;
+
+import com.alibaba.fastjson.JSONObject;
+import com.malk.mc.entity.McRequestRecord;
+import com.malk.mc.mapper.McRequestRecordMapper;
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.ProceedingJoinPoint;
+import org.aspectj.lang.annotation.Around;
+import org.aspectj.lang.annotation.Aspect;
+import org.aspectj.lang.reflect.MethodSignature;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.LocalVariableTableParameterNameDiscoverer;
+import org.springframework.core.ParameterNameDiscoverer;
+import org.springframework.stereotype.Component;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.context.request.RequestContextHolder;
+import org.springframework.web.context.request.ServletRequestAttributes;
+
+import javax.servlet.http.HttpServletRequest;
+import java.io.BufferedReader;
+import java.lang.reflect.Method;
+import java.time.LocalDateTime;
+import java.util.HashMap;
+import java.util.Map;
+
+@Aspect
+@Component
+public class RequestLoggingAspect {
+
+    @Autowired
+    private McRequestRecordMapper mcRequestRecordMapper;
+
+    private ParameterNameDiscoverer parameterNameDiscoverer = new LocalVariableTableParameterNameDiscoverer();
+
+    @Around("execution(* com.malk.mc.controller..*(..))")
+    public Object logAround(ProceedingJoinPoint joinPoint) throws Throwable {
+        HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.currentRequestAttributes()).getRequest();
+        long startTime = System.currentTimeMillis();
+
+        // 捕获请求参数
+//        Map<String, String[]> parameterMap = request.getParameterMap();
+        // 获取请求参数
+        MethodSignature signature = (MethodSignature) joinPoint.getSignature();
+        Method method = signature.getMethod();
+        Map<String, Object> parameterMap = getParameters(joinPoint, method);
+        String parameters=JSONObject.toJSONString(parameterMap);
+//        String parameters = parameterMap.entrySet().stream()
+//                .map(e -> e.getKey() + "=" + String.join(",", e.getValue()))
+//                .reduce((a, b) -> a + ", " + b).orElse("");
+
+        Object result = joinPoint.proceed();
+
+        long endTime = System.currentTimeMillis();
+        long duration = endTime - startTime;
+
+        // 创建请求记录对象
+        McRequestRecord requestRecord = new McRequestRecord();
+        requestRecord.setRequestUri(request.getRequestURI());
+        requestRecord.setRequestMethod(request.getMethod());
+        requestRecord.setRequestBody(parameters);
+        requestRecord.setResponseBody(JSONObject.toJSONString(result));
+        requestRecord.setTimestamp(LocalDateTime.now());
+        requestRecord.setDuration(duration);
+        requestRecord.setPid(request.getHeader("pid"));
+
+        // 保存请求记录
+        mcRequestRecordMapper.insert(requestRecord);
+
+        return result;
+    }
+
+    private Map<String, Object> getParameters(JoinPoint joinPoint, Method method) {
+        Object[] args = joinPoint.getArgs();
+        Map<String, Object> params = new HashMap<>();
+
+        // 获取方法参数名称
+        String[] paramNames = parameterNameDiscoverer.getParameterNames(method);
+
+        for (int i = 0; i < paramNames.length; i++) {
+            if (method.isAnnotationPresent(RequestBody.class)) {
+                // 如果方法上有 @RequestBody 注解,则获取请求体参数
+                if (i == 0) { // 假设只有一个 @RequestBody 参数
+                    params.put(paramNames[i], args[i]);
+                }
+            } else {
+                // 如果方法上没有 @RequestBody 注解,则获取普通参数
+                params.put(paramNames[i], args[i]);
+            }
+        }
+        return params;
+    }
+}

+ 37 - 0
mjava-mc/src/main/java/com/malk/mc/controller/McProjectController.java

@@ -1,19 +1,30 @@
 package com.malk.mc.controller;
 
 import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.malk.core.McProject;
+import com.malk.mc.entity.McRequestRecord;
+import com.malk.mc.mapper.McRequestRecordMapper;
 import com.malk.mc.service.McProjectService;
 import com.malk.server.common.McR;
 import com.malk.utils.PublicUtil;
+import org.apache.ibatis.annotations.Param;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.format.annotation.DateTimeFormat;
 import org.springframework.web.bind.annotation.*;
 
+import java.time.LocalDateTime;
+import java.util.List;
+
 @RestController
 @RequestMapping("/project/")
 public class McProjectController {
 
     @Autowired
     private McProjectService mcProjectService;
+    @Autowired
+    private McRequestRecordMapper mcRequestRecordMapper;
 
     @PostMapping("add")
     public McR add(@RequestBody JSONObject param){
@@ -41,5 +52,31 @@ public class McProjectController {
         return McR.success(McProject.getYida());
     }
 
+    @GetMapping("logs")
+    public McR getLog(@RequestParam(required = false, defaultValue = "0") int currentPage,
+                      @RequestParam(required = false, defaultValue = "0") int pageSize,
+                      @RequestParam(required = false) String pid,
+                      @RequestParam(required = false) String uri,
+                      @RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime startDate,
+                      @RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime endDate){
+        Page<McRequestRecord> page = new Page<>(currentPage, pageSize);
+        QueryWrapper<McRequestRecord> queryWrapper = new QueryWrapper<>();
+        if(!PublicUtil.isNull(pid)){
+            queryWrapper.eq("pid", pid);
+        }
+        if(!PublicUtil.isNull(uri)){
+            queryWrapper.like("request_uri", uri);
+        }
+        if (startDate != null && endDate != null) {
+            queryWrapper.between("timestamp", startDate, endDate);
+        }
+        mcRequestRecordMapper.selectPage(page,queryWrapper);
+        return McR.success(page);
+    }
+
+    @PostMapping("test")
+    public McR test(@RequestBody JSONObject param){
+        return McR.success(LocalDateTime.now()+JSONObject.toJSONString(param));
+    }
 
 }

+ 24 - 0
mjava-mc/src/main/java/com/malk/mc/entity/McRequestRecord.java

@@ -0,0 +1,24 @@
+package com.malk.mc.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+@Data
+@TableName("t_mc_req_record")
+public class McRequestRecord {
+
+    @TableId(type= IdType.AUTO)
+    private Long id;
+    private String requestUri;
+    private String requestMethod;
+    private String requestBody;
+    private String responseBody;
+    private Long duration;
+    private String pid;
+    private LocalDateTime timestamp;
+
+}

+ 9 - 0
mjava-mc/src/main/java/com/malk/mc/mapper/McRequestRecordMapper.java

@@ -0,0 +1,9 @@
+package com.malk.mc.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.malk.mc.entity.McRequestRecord;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface McRequestRecordMapper extends BaseMapper<McRequestRecord> {
+}

+ 1 - 1
mjava-pake/src/main/resources/logback-spring.xml

@@ -52,7 +52,7 @@
 
     <!-- 日志输出级别 -->
     <logger name="org.springframework" level="debug"  additivity="false"/>
-    <logger name="com.zitoo.connecter" level="debug"/>
+    <logger name="com.malk.connecter" level="debug"/>
     <root level="INFO">
         <appender-ref ref="stdout"/>
         <appender-ref ref="appLogAppender"/>

+ 1 - 1
mjava-ruisi/src/main/resources/application-dev.yml

@@ -9,7 +9,7 @@ logging:
   config: classpath:logback-spring.xml
   path: /home/server/connect/canrui/log/
   level:
-    com.zitoo.connect.*: debug
+    com.malk.connect.*: debug
 
 # dingtalk
 dingtalk:

+ 1 - 1
mjava-ruisi/src/main/resources/logback-spring.xml

@@ -52,7 +52,7 @@
 
     <!-- 日志输出级别 -->
     <logger name="org.springframework" level="debug"  additivity="false"/>
-    <logger name="com.zitoo.connecter" level="debug"/>
+    <logger name="com.malk.connecter" level="debug"/>
     <root level="INFO">
         <appender-ref ref="stdout"/>
         <appender-ref ref="appLogAppender"/>

+ 1 - 1
mjava-shantai/src/main/resources/logback-spring.xml

@@ -52,7 +52,7 @@
 
     <!-- 日志输出级别 -->
     <logger name="org.springframework" level="debug"  additivity="false"/>
-    <logger name="com.zitoo.connecter" level="debug"/>
+    <logger name="com.malk.connecter" level="debug"/>
     <root level="INFO">
         <appender-ref ref="stdout"/>
         <appender-ref ref="appLogAppender"/>