Commit 8340db88 by 雷紫添

添加系统功能日志

parent 8431b44a
......@@ -50,5 +50,24 @@ public class IpADressLock {
return false;
}
public String getAddressIp(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for");
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("WL-Proxy-Client-IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_CLIENT_IP");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("HTTP_X_FORWARDED_FOR");
}
if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getRemoteAddr();
}
return ip;
}
}
package com.founder.common;
import java.lang.reflect.Method;
import java.util.HashMap;
import java.util.Map;
public class LogsUtil {
/**
* @Author Axu 获取类中的非空字段
* @Date 10:45 2019/11/15
* @Param [sourceObject]
* @return java.util.Map<java.lang.String,java.lang.Object>
**/
public static Map<String, Object> getNotEmptyFiled(Object sourceObject){
Map<String, Object> notEmptyFiled = new HashMap<>();
Class sourceClass = sourceObject.getClass();
Method[] sourceMethods = sourceClass.getDeclaredMethods();
for(int i = 0; i < sourceMethods.length; i ++){
String methodName = sourceMethods[i].getName();
if(methodName != null && methodName.startsWith("get")){
try{
Object returnSource = sourceMethods[i].invoke(sourceObject);
if(returnSource != null && !returnSource.equals("")){
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(Character.toLowerCase(methodName.split("get")[1].charAt(0))).append(methodName.split("get")[1].substring(1));
String key = stringBuilder.toString();
notEmptyFiled.put(key, returnSource);
}
}catch (Exception e){
e.printStackTrace();
}
}
}
return notEmptyFiled;
}
}
package com.founder.controller;
import com.founder.common.IpADdress;
import com.founder.common.IpADressLock;
import com.founder.common.LogsUtil;
import com.founder.model.*;
import com.founder.service.SysGnsyrzOpenApiService;
import com.founder.service.XxcxService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
......@@ -21,13 +24,15 @@ public class XxcxController {
@Value("${xxcx.author}")
private String author;
@Autowired
private SysGnsyrzOpenApiService sysGnsyrzOpenApiService;
@Autowired
private XxcxService xxcxService;
@Autowired
private IpADressLock ipADressLock;
@ResponseBody
@RequestMapping("/ajxxcx")
public Result queryAsjxx(@RequestBody TbStAsjView tbStAsjView ){
public Result queryAsjxx(HttpServletRequest requestIp,@RequestBody TbStAsjView tbStAsjView ){
Result reslt = new Result();
HttpServletRequest request = IpADdress.getRequest();
......@@ -54,6 +59,7 @@ public class XxcxController {
tbStAsjView1 = xxcxService.queryTbStAsjByJjdbh(jjdbh);
}
reslt.setData(tbStAsjView1 );
sysGnsyrzOpenApiService.insertGNSYRZOPENAPI("01","基础信息-案件表基本信息",LogsUtil.getNotEmptyFiled(tbStAsjView1).toString(),"","","460000000000","海南电诈平台","", ipADressLock.getAddressIp(requestIp),"1");
reslt.setMsg("案件信息查询成功");
reslt.setStatus("success");
} catch (Exception e) {
......
package com.founder.dao;
import com.founder.model.SysGnsyrzOpenApi;
import com.founder.model.SysLogJccjXxbs;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Component;
@Component
@Mapper
public interface SysGnsyrzOpenApiDao {
int insertLog(SysLogJccjXxbs sysLogJccjXxbs);
void saveSysgnsyrz(SysGnsyrzOpenApi var1);
}
package com.founder.model;
import java.util.Date;
public class SysGnsyrzOpenApi {
private String rzlsh;
private Date fwsj;
private String yymcJyqk;
private String yhGmsfhm;
private String yhIp;
private String yhdwGajgjgdm;
private String yhdwGajgmc;
private String czlxdm;
private String czxxJyqk;
private String xxscPdbz;
private String xxdjdwGajgjgdm;
private String xxdjdwGajgmc;
private String xxdjryXm;
private String xxdjryGmsfhm;
private String xxdjryLxdh;
private Date djsj;
private String xxczdwGajgjgdm;
private String xxczdwGajgmc;
private String xxczryXm;
private String xxczryGmsfhm;
private Date gxsj;
private String xxlyms;
public SysGnsyrzOpenApi(){}
public String getRzlsh() {
return rzlsh;
}
public void setRzlsh(String rzlsh) {
this.rzlsh = rzlsh;
}
public Date getFwsj() {
return fwsj;
}
public void setFwsj(Date fwsj) {
this.fwsj = fwsj;
}
public String getYymcJyqk() {
return yymcJyqk;
}
public void setYymcJyqk(String yymcJyqk) {
this.yymcJyqk = yymcJyqk;
}
public String getYhGmsfhm() {
return yhGmsfhm;
}
public void setYhGmsfhm(String yhGmsfhm) {
this.yhGmsfhm = yhGmsfhm;
}
public String getYhIp() {
return yhIp;
}
public void setYhIp(String yhIp) {
this.yhIp = yhIp;
}
public String getYhdwGajgjgdm() {
return yhdwGajgjgdm;
}
public void setYhdwGajgjgdm(String yhdwGajgjgdm) {
this.yhdwGajgjgdm = yhdwGajgjgdm;
}
public String getYhdwGajgmc() {
return yhdwGajgmc;
}
public void setYhdwGajgmc(String yhdwGajgmc) {
this.yhdwGajgmc = yhdwGajgmc;
}
public String getCzlxdm() {
return czlxdm;
}
public void setCzlxdm(String czlxdm) {
this.czlxdm = czlxdm;
}
public String getCzxxJyqk() {
return czxxJyqk;
}
public void setCzxxJyqk(String czxxJyqk) {
this.czxxJyqk = czxxJyqk;
}
public String getXxscPdbz() {
return xxscPdbz;
}
public void setXxscPdbz(String xxscPdbz) {
this.xxscPdbz = xxscPdbz;
}
public String getXxdjdwGajgjgdm() {
return xxdjdwGajgjgdm;
}
public void setXxdjdwGajgjgdm(String xxdjdwGajgjgdm) {
this.xxdjdwGajgjgdm = xxdjdwGajgjgdm;
}
public String getXxdjdwGajgmc() {
return xxdjdwGajgmc;
}
public void setXxdjdwGajgmc(String xxdjdwGajgmc) {
this.xxdjdwGajgmc = xxdjdwGajgmc;
}
public String getXxdjryXm() {
return xxdjryXm;
}
public void setXxdjryXm(String xxdjryXm) {
this.xxdjryXm = xxdjryXm;
}
public String getXxdjryGmsfhm() {
return xxdjryGmsfhm;
}
public void setXxdjryGmsfhm(String xxdjryGmsfhm) {
this.xxdjryGmsfhm = xxdjryGmsfhm;
}
public String getXxdjryLxdh() {
return xxdjryLxdh;
}
public void setXxdjryLxdh(String xxdjryLxdh) {
this.xxdjryLxdh = xxdjryLxdh;
}
public Date getDjsj() {
return djsj;
}
public void setDjsj(Date djsj) {
this.djsj = djsj;
}
public String getXxczdwGajgjgdm() {
return xxczdwGajgjgdm;
}
public void setXxczdwGajgjgdm(String xxczdwGajgjgdm) {
this.xxczdwGajgjgdm = xxczdwGajgjgdm;
}
public String getXxczdwGajgmc() {
return xxczdwGajgmc;
}
public void setXxczdwGajgmc(String xxczdwGajgmc) {
this.xxczdwGajgmc = xxczdwGajgmc;
}
public String getXxczryXm() {
return xxczryXm;
}
public void setXxczryXm(String xxczryXm) {
this.xxczryXm = xxczryXm;
}
public String getXxczryGmsfhm() {
return xxczryGmsfhm;
}
public void setXxczryGmsfhm(String xxczryGmsfhm) {
this.xxczryGmsfhm = xxczryGmsfhm;
}
public Date getGxsj() {
return gxsj;
}
public void setGxsj(Date gxsj) {
this.gxsj = gxsj;
}
public String getXxlyms() {
return xxlyms;
}
public void setXxlyms(String xxlyms) {
this.xxlyms = xxlyms;
}
}
package com.founder.service.impl;
import com.founder.dao.LogDao;
import com.founder.dao.SysGnsyrzOpenApiDao;
import com.founder.model.Rycj;
import com.founder.model.SysGnsyrzOpenApi;
import com.founder.model.SysLogJccjXxbs;
import com.founder.service.LogService;
import com.founder.service.SysGnsyrzOpenApiService;
import org.apache.ibatis.session.SqlSession;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.UUID;
@Service
public class SysGnsyrzOpenApiServiceImpl implements SysGnsyrzOpenApiService {
@Autowired
private SysGnsyrzOpenApiDao sysGnsyrzOpenApiDao;
public String getRzlsh(String unitCode) {
String qlw = unitCode.substring(0, 6);
SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
String sjdate = formatter.format(new Date());
String lsh = this.getOrderIdByUUId();
String yrzlsh = qlw + sjdate + lsh;
String rzlsh = yrzlsh.replace(" ", "");
return rzlsh;
}
private String getOrderIdByUUId() {
int machineId = 1;
int hashCodeV = UUID.randomUUID().toString().hashCode();
if (hashCodeV < 0) {
hashCodeV = -hashCodeV;
}
return machineId + String.format("%015d", hashCodeV);
}
public String insertGNSYRZOPENAPI(String type, String yymc, String cxcs, String userId, String userName, String unitCode, String unitName, String lxdh, String ip, String sjly) {
String rzlsh = null;
rzlsh = this.getRzlsh(unitCode);
String cznr = "";
if (cxcs != null && !"".equals(cxcs)) {
cxcs = cxcs.replace(" ", ",");
}
if ("01".equals(type)) {
cznr = "执行[查询]动作,参数为:" + cxcs;
} else if ("02".equals(type)) {
cznr = "执行[新建]动作";
} else if ("03".equals(type)) {
cznr = "执行[修改]动作,参数为:" + cxcs;
} else if ("04".equals(type)) {
cznr = "执行[删除]动作,参数为:" + cxcs;
} else if ("05".equals(type)) {
cznr = "执行[点击访问]动作,参数为:" + cxcs;
} else {
cznr = "执行[未知]操作,参数为:" + cxcs + ",类型为:" + type;
}
Date now = new Date();
SysGnsyrzOpenApi gnsyrz = new SysGnsyrzOpenApi();
gnsyrz.setYhGmsfhm(userId);
gnsyrz.setYhIp(ip);
gnsyrz.setYhdwGajgjgdm(unitCode);
gnsyrz.setYhdwGajgmc(unitName);
gnsyrz.setRzlsh(rzlsh);
gnsyrz.setDjsj(now);
gnsyrz.setGxsj(now);
gnsyrz.setFwsj(now);
gnsyrz.setXxdjdwGajgjgdm(unitCode);
gnsyrz.setXxdjdwGajgmc(unitName);
gnsyrz.setXxscPdbz("0");
gnsyrz.setXxdjryXm(userName);
gnsyrz.setXxdjryGmsfhm(userId);
gnsyrz.setXxdjryLxdh(lxdh);
gnsyrz.setXxczdwGajgjgdm(unitCode);
gnsyrz.setXxczdwGajgmc(unitName);
gnsyrz.setXxczryGmsfhm(userId);
gnsyrz.setXxczryXm(userName);
gnsyrz.setCzlxdm(type);
gnsyrz.setCzxxJyqk(cznr);
gnsyrz.setYymcJyqk(yymc);
gnsyrz.setXxlyms("系统功能日志");
sysGnsyrzOpenApiDao.saveSysgnsyrz(gnsyrz);
return rzlsh;
}
}
<?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.founder.dao.SysGnsyrzOpenApiDao">
<insert id="saveSysgnsyrz" parameterType="com.founder.model.SysGnsyrzOpenApi">
INSERT INTO SYS_GNSYRZ_OPENAPI (
RZLSH
,FWSJ
,YYMC_JYQK
,YH_GMSFHM
,YH_IP
,YHDW_GAJGJGDM
,YHDW_GAJGMC
,CZLXDM
,CZXX_JYQK
,XXSC_PDBZ
,XXDJDW_GAJGJGDM
,XXDJDW_GAJGMC
,XXDJRY_XM
,XXDJRY_GMSFHM
,XXDJRY_LXDH
,DJSJ
,XXCZDW_GAJGJGDM
,XXCZDW_GAJGMC
,XXCZRY_XM
,XXCZRY_GMSFHM
,GXSJ
,XXLYMS
)
VALUES(
#{ rzlsh , jdbcType=VARCHAR }
,#{ fwsj , jdbcType=TIMESTAMP }
,#{ yymcJyqk , jdbcType=VARCHAR }
,#{ yhGmsfhm , jdbcType=VARCHAR }
,#{ yhIp , jdbcType=VARCHAR }
,#{ yhdwGajgjgdm , jdbcType=VARCHAR }
,#{ yhdwGajgmc , jdbcType=VARCHAR }
,#{ czlxdm , jdbcType=VARCHAR }
,#{ czxxJyqk , jdbcType=VARCHAR }
,#{ xxscPdbz , jdbcType=VARCHAR }
,#{ xxdjdwGajgjgdm , jdbcType=VARCHAR }
,#{ xxdjdwGajgmc , jdbcType=VARCHAR }
,#{ xxdjryXm , jdbcType=VARCHAR }
,#{ xxdjryGmsfhm , jdbcType=VARCHAR }
,#{ xxdjryLxdh , jdbcType=VARCHAR }
,#{ djsj , jdbcType=TIMESTAMP }
,#{ xxczdwGajgjgdm , jdbcType=VARCHAR }
,#{ xxczdwGajgmc , jdbcType=VARCHAR }
,#{ xxczryXm , jdbcType=VARCHAR }
,#{ xxczryGmsfhm , jdbcType=VARCHAR }
,#{ gxsj , jdbcType=TIMESTAMP }
,#{ xxlyms , jdbcType=VARCHAR }
)
</insert>
</mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment