优化日志记录
This commit is contained in:
@@ -9,6 +9,7 @@ import com.jsh.erp.datasource.vo.DepotHeadVo4InOutMCount;
|
|||||||
import com.jsh.erp.datasource.vo.DepotHeadVo4List;
|
import com.jsh.erp.datasource.vo.DepotHeadVo4List;
|
||||||
import com.jsh.erp.datasource.vo.DepotHeadVo4StatementAccount;
|
import com.jsh.erp.datasource.vo.DepotHeadVo4StatementAccount;
|
||||||
import com.jsh.erp.service.depotHead.DepotHeadService;
|
import com.jsh.erp.service.depotHead.DepotHeadService;
|
||||||
|
import com.jsh.erp.service.log.LogService;
|
||||||
import com.jsh.erp.utils.BaseResponseInfo;
|
import com.jsh.erp.utils.BaseResponseInfo;
|
||||||
import com.jsh.erp.utils.ErpInfo;
|
import com.jsh.erp.utils.ErpInfo;
|
||||||
import com.jsh.erp.utils.StringUtil;
|
import com.jsh.erp.utils.StringUtil;
|
||||||
@@ -39,6 +40,9 @@ public class DepotHeadController {
|
|||||||
@Resource
|
@Resource
|
||||||
private DepotHeadService depotHeadService;
|
private DepotHeadService depotHeadService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private LogService logService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 批量设置状态-审核或者反审核
|
* 批量设置状态-审核或者反审核
|
||||||
* @param status
|
* @param status
|
||||||
@@ -441,9 +445,10 @@ public class DepotHeadController {
|
|||||||
@RequestMapping(value = "/addDepotHeadAndDetail")
|
@RequestMapping(value = "/addDepotHeadAndDetail")
|
||||||
public Object addDepotHeadAndDetail(@RequestParam("info") String beanJson,@RequestParam("inserted") String inserted,
|
public Object addDepotHeadAndDetail(@RequestParam("info") String beanJson,@RequestParam("inserted") String inserted,
|
||||||
@RequestParam("deleted") String deleted,
|
@RequestParam("deleted") String deleted,
|
||||||
@RequestParam("updated") String updated) throws Exception{
|
@RequestParam("updated") String updated, HttpServletRequest request) throws Exception{
|
||||||
JSONObject result = ExceptionConstants.standardSuccess();
|
JSONObject result = ExceptionConstants.standardSuccess();
|
||||||
depotHeadService.addDepotHeadAndDetail(beanJson,inserted,deleted,updated);
|
depotHeadService.addDepotHeadAndDetail(beanJson,inserted,deleted,updated);
|
||||||
|
logService.insertLog("depotHead", "新增", request);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import com.jsh.erp.constants.BusinessConstants;
|
|||||||
import com.jsh.erp.datasource.entities.Log;
|
import com.jsh.erp.datasource.entities.Log;
|
||||||
import com.jsh.erp.datasource.entities.User;
|
import com.jsh.erp.datasource.entities.User;
|
||||||
import com.jsh.erp.datasource.mappers.LogMapper;
|
import com.jsh.erp.datasource.mappers.LogMapper;
|
||||||
|
import com.jsh.erp.service.log.LogService;
|
||||||
import com.jsh.erp.utils.StringUtil;
|
import com.jsh.erp.utils.StringUtil;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
@@ -27,7 +28,7 @@ public class CommonQueryManager {
|
|||||||
private InterfaceContainer container;
|
private InterfaceContainer container;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private LogMapper logMapper;
|
private LogService logService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询单条
|
* 查询单条
|
||||||
@@ -77,7 +78,7 @@ public class CommonQueryManager {
|
|||||||
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
|
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
|
||||||
public int insert(String apiName, String beanJson, HttpServletRequest request) {
|
public int insert(String apiName, String beanJson, HttpServletRequest request) {
|
||||||
if (StringUtil.isNotEmpty(apiName)) {
|
if (StringUtil.isNotEmpty(apiName)) {
|
||||||
insertLog(apiName, "新增", request);
|
logService.insertLog(apiName, "新增", request);
|
||||||
return container.getCommonQuery(apiName).insert(beanJson, request);
|
return container.getCommonQuery(apiName).insert(beanJson, request);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
@@ -93,7 +94,7 @@ public class CommonQueryManager {
|
|||||||
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
|
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
|
||||||
public int update(String apiName, String beanJson, Long id, HttpServletRequest request) {
|
public int update(String apiName, String beanJson, Long id, HttpServletRequest request) {
|
||||||
if (StringUtil.isNotEmpty(apiName)) {
|
if (StringUtil.isNotEmpty(apiName)) {
|
||||||
insertLog(apiName, "更新,id:" + id, request);
|
logService.insertLog(apiName, "更新,id:" + id, request);
|
||||||
return container.getCommonQuery(apiName).update(beanJson, id);
|
return container.getCommonQuery(apiName).update(beanJson, id);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
@@ -108,7 +109,7 @@ public class CommonQueryManager {
|
|||||||
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
|
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
|
||||||
public int delete(String apiName, Long id, HttpServletRequest request) {
|
public int delete(String apiName, Long id, HttpServletRequest request) {
|
||||||
if (StringUtil.isNotEmpty(apiName)) {
|
if (StringUtil.isNotEmpty(apiName)) {
|
||||||
insertLog(apiName, "删除,id:" + id, request);
|
logService.insertLog(apiName, "删除,id:" + id, request);
|
||||||
return container.getCommonQuery(apiName).delete(id);
|
return container.getCommonQuery(apiName).delete(id);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
@@ -123,7 +124,7 @@ public class CommonQueryManager {
|
|||||||
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
|
@Transactional(value = "transactionManager", rollbackFor = Exception.class)
|
||||||
public int batchDelete(String apiName, String ids, HttpServletRequest request) {
|
public int batchDelete(String apiName, String ids, HttpServletRequest request) {
|
||||||
if (StringUtil.isNotEmpty(apiName)) {
|
if (StringUtil.isNotEmpty(apiName)) {
|
||||||
insertLog(apiName, "批量删除,id集:" + ids, request);
|
logService.insertLog(apiName, "批量删除,id集:" + ids, request);
|
||||||
return container.getCommonQuery(apiName).batchDelete(ids);
|
return container.getCommonQuery(apiName).batchDelete(ids);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
@@ -143,78 +144,9 @@ public class CommonQueryManager {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取用户id
|
|
||||||
* @param request
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public Long getUserId(HttpServletRequest request) {
|
|
||||||
Object userInfo = request.getSession().getAttribute("user");
|
|
||||||
if(userInfo!=null) {
|
|
||||||
User user = (User) userInfo;
|
|
||||||
return user.getId();
|
|
||||||
} else {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public String getModule(String apiName){
|
|
||||||
String moduleName = null;
|
|
||||||
switch (apiName) {
|
|
||||||
case "user":
|
|
||||||
moduleName = "用户"; break;
|
|
||||||
case "role":
|
|
||||||
moduleName = "角色"; break;
|
|
||||||
case "app":
|
|
||||||
moduleName = "应用"; break;
|
|
||||||
case "depot":
|
|
||||||
moduleName = "仓库"; break;
|
|
||||||
case "functions":
|
|
||||||
moduleName = "功能"; break;
|
|
||||||
case "inOutItem":
|
|
||||||
moduleName = "收支项目"; break;
|
|
||||||
case "unit":
|
|
||||||
moduleName = "计量单位"; break;
|
|
||||||
case "person":
|
|
||||||
moduleName = "经手人"; break;
|
|
||||||
case "userBusiness":
|
|
||||||
moduleName = "关联关系"; break;
|
|
||||||
case "systemConfig":
|
|
||||||
moduleName = "系统配置"; break;
|
|
||||||
case "materialProperty":
|
|
||||||
moduleName = "商品属性"; break;
|
|
||||||
case "account":
|
|
||||||
moduleName = "账户"; break;
|
|
||||||
case "supplier":
|
|
||||||
moduleName = "商家"; break;
|
|
||||||
case "materialCategory":
|
|
||||||
moduleName = "商品类型"; break;
|
|
||||||
case "material":
|
|
||||||
moduleName = "商品"; break;
|
|
||||||
case "depotHead":
|
|
||||||
moduleName = "单据表头"; break;
|
|
||||||
case "depotItem":
|
|
||||||
moduleName = "单据明细"; break;
|
|
||||||
case "accountHead":
|
|
||||||
moduleName = "财务表头"; break;
|
|
||||||
case "accountItem":
|
|
||||||
moduleName = "财务明细"; break;
|
|
||||||
}
|
|
||||||
return moduleName;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void insertLog(String apiName, String type, HttpServletRequest request){
|
|
||||||
Log log = new Log();
|
|
||||||
log.setUserid(getUserId(request));
|
|
||||||
log.setOperation(getModule(apiName));
|
|
||||||
log.setClientip(getLocalIp(request));
|
|
||||||
log.setCreatetime(new Date());
|
|
||||||
Byte status = 0;
|
|
||||||
log.setStatus(status);
|
|
||||||
log.setContentdetails(type + getModule(apiName));
|
|
||||||
log.setRemark(type + getModule(apiName));
|
|
||||||
logMapper.insertSelective(log);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -3,6 +3,7 @@ package com.jsh.erp.service.log;
|
|||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.jsh.erp.datasource.entities.Log;
|
import com.jsh.erp.datasource.entities.Log;
|
||||||
import com.jsh.erp.datasource.entities.LogExample;
|
import com.jsh.erp.datasource.entities.LogExample;
|
||||||
|
import com.jsh.erp.datasource.entities.User;
|
||||||
import com.jsh.erp.datasource.mappers.LogMapper;
|
import com.jsh.erp.datasource.mappers.LogMapper;
|
||||||
import com.jsh.erp.datasource.mappers.LogMapperEx;
|
import com.jsh.erp.datasource.mappers.LogMapperEx;
|
||||||
import com.jsh.erp.datasource.vo.LogVo4List;
|
import com.jsh.erp.datasource.vo.LogVo4List;
|
||||||
@@ -18,8 +19,11 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import java.security.NoSuchAlgorithmException;
|
import java.security.NoSuchAlgorithmException;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import static com.jsh.erp.utils.Tools.getLocalIp;
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class LogService {
|
public class LogService {
|
||||||
private Logger logger = LoggerFactory.getLogger(LogService.class);
|
private Logger logger = LoggerFactory.getLogger(LogService.class);
|
||||||
@@ -75,4 +79,77 @@ public class LogService {
|
|||||||
return logMapper.deleteByExample(example);
|
return logMapper.deleteByExample(example);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取用户id
|
||||||
|
* @param request
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public Long getUserId(HttpServletRequest request) {
|
||||||
|
Object userInfo = request.getSession().getAttribute("user");
|
||||||
|
if(userInfo!=null) {
|
||||||
|
User user = (User) userInfo;
|
||||||
|
return user.getId();
|
||||||
|
} else {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getModule(String apiName){
|
||||||
|
String moduleName = null;
|
||||||
|
switch (apiName) {
|
||||||
|
case "user":
|
||||||
|
moduleName = "用户"; break;
|
||||||
|
case "role":
|
||||||
|
moduleName = "角色"; break;
|
||||||
|
case "app":
|
||||||
|
moduleName = "应用"; break;
|
||||||
|
case "depot":
|
||||||
|
moduleName = "仓库"; break;
|
||||||
|
case "functions":
|
||||||
|
moduleName = "功能"; break;
|
||||||
|
case "inOutItem":
|
||||||
|
moduleName = "收支项目"; break;
|
||||||
|
case "unit":
|
||||||
|
moduleName = "计量单位"; break;
|
||||||
|
case "person":
|
||||||
|
moduleName = "经手人"; break;
|
||||||
|
case "userBusiness":
|
||||||
|
moduleName = "关联关系"; break;
|
||||||
|
case "systemConfig":
|
||||||
|
moduleName = "系统配置"; break;
|
||||||
|
case "materialProperty":
|
||||||
|
moduleName = "商品属性"; break;
|
||||||
|
case "account":
|
||||||
|
moduleName = "账户"; break;
|
||||||
|
case "supplier":
|
||||||
|
moduleName = "商家"; break;
|
||||||
|
case "materialCategory":
|
||||||
|
moduleName = "商品类型"; break;
|
||||||
|
case "material":
|
||||||
|
moduleName = "商品"; break;
|
||||||
|
case "depotHead":
|
||||||
|
moduleName = "单据"; break;
|
||||||
|
case "depotItem":
|
||||||
|
moduleName = "单据明细"; break;
|
||||||
|
case "accountHead":
|
||||||
|
moduleName = "财务"; break;
|
||||||
|
case "accountItem":
|
||||||
|
moduleName = "财务明细"; break;
|
||||||
|
}
|
||||||
|
return moduleName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void insertLog(String apiName, String type, HttpServletRequest request){
|
||||||
|
Log log = new Log();
|
||||||
|
log.setUserid(getUserId(request));
|
||||||
|
log.setOperation(getModule(apiName));
|
||||||
|
log.setClientip(getLocalIp(request));
|
||||||
|
log.setCreatetime(new Date());
|
||||||
|
Byte status = 0;
|
||||||
|
log.setStatus(status);
|
||||||
|
log.setContentdetails(type + getModule(apiName));
|
||||||
|
log.setRemark(type + getModule(apiName));
|
||||||
|
logMapper.insertSelective(log);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user