From cf9a5039e6db9d1d5963e3fe1a37d00169ec2ef7 Mon Sep 17 00:00:00 2001
From: whyclxw <810412026@qq.com>
Date: 星期三, 25 六月 2025 11:18:22 +0800
Subject: [PATCH] 验收报告修改

---
 src/main/java/com/whyc/service/DocLogService.java |   83 +++++++++++++++++++++++++++++++++++++++--
 1 files changed, 79 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/whyc/service/DocLogService.java b/src/main/java/com/whyc/service/DocLogService.java
index 908ee20..b90d448 100644
--- a/src/main/java/com/whyc/service/DocLogService.java
+++ b/src/main/java/com/whyc/service/DocLogService.java
@@ -1,6 +1,7 @@
 package com.whyc.service;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.github.pagehelper.PageHelper;
 import com.github.pagehelper.PageInfo;
 import com.whyc.constant.UserOperation;
@@ -13,10 +14,10 @@
 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import org.springframework.web.bind.annotation.RequestParam;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
 
@@ -34,6 +35,22 @@
         docLog.setTerminalIp(terminalIp);
         docLog.setOprateMsg(operationMsg);
         docLog.setOperationDetail(operationDetail);
+        mapper.insert(docLog);
+    }
+    //涓嬭浇涓撳睘鏃ュ織璁板綍
+    public void recordOperationLogDownLoad(Long uId,String name, Integer operationType, Date operationTime, String terminalIp
+            , String operationMsg, String operationDetail,String oprateReason,String oprateInfo,String oprateVersion) {
+        DocLog docLog=new DocLog();
+        docLog.setId(uId.intValue());
+        docLog.setName(name);
+        docLog.setOprateType(operationType);
+        docLog.setOprateDay(operationTime);
+        docLog.setTerminalIp(terminalIp);
+        docLog.setOprateMsg(operationMsg);
+        docLog.setOperationDetail(operationDetail);
+        docLog.setOprateReason(oprateReason);
+        docLog.setOprateInfo(oprateInfo);
+        docLog.setOprateVersion(oprateVersion);
         mapper.insert(docLog);
     }
     public PageInfo<DocLog> getPage(int pageNum, int pageSize, DocLog docLog) {
@@ -81,7 +98,14 @@
 
     public void record(long uId,String name, int operationType, String msg,String msgDetail) {
         DocLog docLog = new DocLog();
-        docLog.setTerminalIp(ActionUtil.getRequest().getRemoteAddr());
+        HttpServletRequest request = ActionUtil.getRequest();
+        String remoteAddr;
+        if(request!=null) {
+            remoteAddr = request.getRemoteAddr();
+        }else{
+            remoteAddr = "127.0.0.1";
+        }
+        docLog.setTerminalIp(remoteAddr);
         docLog.setOprateDay(new Date());
         docLog.setId((int)(uId));
         docLog.setName(name);
@@ -136,10 +160,11 @@
         return new Response().setII(1,true,UserOperation.values(),"鏁版嵁杩斿洖");
     }
     //鏌ヨ涓嬭浇鏃ュ織(DownLoadNew)
-    public Response getDownLoadNew() {
+    public Response getDownLoadNew(int type, String oprateInfo) {
         QueryWrapper wrapper=new QueryWrapper();
         wrapper.ne("id", 0);
-        wrapper.eq("oprate_type",UserOperation.TYPE_DOWNLOAD_NEW.getType());
+        wrapper.eq("oprate_type", type);
+        wrapper.eq("oprate_info", oprateInfo);
         wrapper.orderByDesc("oprate_day");
         List<DocLog> list=mapper.selectList(wrapper);
         list.stream().forEach(dlog->{
@@ -147,4 +172,54 @@
         });
         return new Response().setII(1,list.size()>0,list,"鏁版嵁杩斿洖");
     }
+
+    public List<DocLog> getListOfToday() {
+        Calendar startTime = Calendar.getInstance();
+
+        startTime.set(Calendar.HOUR_OF_DAY,0);
+        startTime.set(Calendar.MINUTE,0);
+        startTime.set(Calendar.SECOND,0);
+
+        Calendar endTime = Calendar.getInstance();
+        endTime.set(Calendar.HOUR_OF_DAY,23);
+        endTime.set(Calendar.MINUTE,59);
+        endTime.set(Calendar.SECOND,59);
+
+        QueryWrapper<DocLog> query = Wrappers.query();
+        query.ge("oprate_day",startTime.getTime());
+        query.le("oprate_day",endTime.getTime());
+        query.ne("oprate_type",10);
+        query.orderByDesc("num");
+
+        List<DocLog> logList = mapper.selectList(query);
+        logList.forEach(log->{
+            Integer operateType = log.getOprateType();
+            switch (operateType){
+                case 1: log.setOperateTypeName(UserOperation.TYPE_LOGIN.getTypeName());break;
+                case 2: log.setOperateTypeName(UserOperation.TYPE_LOGOUT.getTypeName());break;
+                case 3: log.setOperateTypeName(UserOperation.TYPE_ADD.getTypeName());break;
+                case 4: log.setOperateTypeName(UserOperation.TYPE_UPDATE.getTypeName());break;
+                case 5: log.setOperateTypeName(UserOperation.TYPE_DELETE.getTypeName());break;
+                case 7: log.setOperateTypeName(UserOperation.TYPE_CANCEL.getTypeName());break;
+                case 9: log.setOperateTypeName(UserOperation.TYPE_STOP.getTypeName());break;
+                case 11: log.setOperateTypeName(UserOperation.TYPE_DOWNLOAD.getTypeName());break;
+                case 12: log.setOperateTypeName(UserOperation.TYPE_DOWNLOAD_PRODUCT.getTypeName());break;
+                case 13: log.setOperateTypeName(UserOperation.TYPE_DOWNLOAD_MATERIAL.getTypeName());break;
+                case 14: log.setOperateTypeName(UserOperation.TYPE_DOWNLOAD_SOFWARE.getTypeName());break;
+                case -1: log.setOperateTypeName(UserOperation.TYPE_UNRECOGNIZED.getTypeName());break;
+                case 20: log.setOperateTypeName(UserOperation.TYPE_UNAUTHORIZED_ACCESS.getTypeName());break;
+                case 21: log.setOperateTypeName(UserOperation.TYPE_EXCEPTION.getTypeName());break;
+                case 31: log.setOperateTypeName(UserOperation.TYPE_LOGIN_FAIL.getTypeName());break;
+                case 32: log.setOperateTypeName(UserOperation.TYPE_PARAM_CHANGE.getTypeName());break;
+                case 33: log.setOperateTypeName(UserOperation.TYPE_PASSWORD_CHANGE.getTypeName());break;
+                case 34: log.setOperateTypeName(UserOperation.TYPE_LOGIN_TIMEOUT.getTypeName());break;
+                case 35: log.setOperateTypeName(UserOperation.TYPE_LOGIN_NO_PASS.getTypeName());break;
+                case 41: log.setOperateTypeName(UserOperation.TYPE_SEND_MAIL.getTypeName());break;
+                default: log.setOperateTypeName(UserOperation.TYPE_UNRECOGNIZED.getTypeName());break;
+            }
+        });
+
+        return logList;
+
+    }
 }

--
Gitblit v1.9.1