Commit bc9172df by yangyang

常口、机主、车主、卡口、民航、火车轨迹、周边案件提交(西藏)

parent 4a810fd8
package com.founder.commonutils.model.newPublicEntity;
import lombok.Data;
/**
* 车主信息
*
* @author szLi
* @date 2021/9/24 11:56
*/
@Data
public class Carowner {
private String id;
private String ceco;//证件号码
private String cety;//证件类型
private String copl;
private String coun;
private String daso;
private String deid;
private String dtc ;
private String fitm;
private String imtm;
private String latm;
private String nm ;//姓名
private String remr;//备注
private String rver;
private String sele;
private String veco;//车辆号码
private String sexc;//性别
private String ofad;//常住地
private String orpl;//籍贯
private String birt;//出生日期
}
package com.founder.commonutils.model.newPublicEntity.CodeYymc;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
* sk_code_yymc(字典表)
*/
@Data
@ApiModel("sk_code_yymc")
public class SkCodeYymc implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(type = IdType.INPUT)
@ApiModelProperty("主键")
private String id;
@ApiModelProperty("编码")
private String code;
/**
* 名称
*/
@ApiModelProperty("名称")
private String name;
/**
* 是否有子节点(1有0无)
*/
@ApiModelProperty("是否有子节点(1有0无)")
private String isparent;
/**
* 操作类型代码,code_czlx
*/
@ApiModelProperty("操作类型代码,code_czlx")
private String czlxdm;
/**
* 操作类型
*/
@ApiModelProperty("操作类型")
private String czlx;
/**
* 级别
*/
@ApiModelProperty("级别")
private String lev;
/**
* 一级代码
*/
@ApiModelProperty("一级代码")
private String codeLev1;
/**
* 一级名称
*/
@ApiModelProperty("一级名称")
private String dscLev1;
/**
* 二级代码
*/
@ApiModelProperty("二级代码")
private String codeLev2;
/**
* 二级名称
*/
@ApiModelProperty("二级名称")
private String dscLev2;
/**
* 三级代码
*/
@ApiModelProperty("三级代码")
private String codeLev3;
/**
* 三级名称
*/
@ApiModelProperty("三级名称")
private String dscLev3;
/**
* 四级代码
*/
@ApiModelProperty("四级代码")
private String codeLev4;
/**
* 四级名称
*/
@ApiModelProperty("四级名称")
private String dscLev4;
/**
* 五级代码
*/
@ApiModelProperty("五级代码")
private String codeLev5;
/**
* 五级名称
*/
@ApiModelProperty("五级名称")
private String dscLev5;
@ApiModelProperty("是否删除")
private String isDeleted;
@ApiModelProperty(value = "录入时间")
@DateTimeFormat(pattern = "yyyy-MM-ss HH:mm:ss")
private Date lrsj;
@ApiModelProperty(value = "改写时间")
@DateTimeFormat(pattern = "yyyy-MM-ss HH:mm:ss")
private Date gxsj;
@ApiModelProperty(value = "开始时间")
@TableField(exist = false)
private String startTime;
@ApiModelProperty(value = "结束时间")
@TableField(exist = false)
private String endTime;
@ApiModelProperty(value = "当前第几页")
@TableField(exist = false)
private int page;
@ApiModelProperty(value = "每页多少行")
@TableField(exist = false)
private int limit;
}
\ No newline at end of file
package com.founder.commonutils.model.newPublicEntity.CodeYymc;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* sys_yhczrz(记录日志实体)
*/
@Data
public class SysYhczrz implements Serializable {
@ApiModelProperty("用户身份证号")
private String yhGmsfhm;
@ApiModelProperty("用户单位代码")
private String yhdwGajgjgdm;
@ApiModelProperty("用户单位名称")
private String yhdwGajgmc;
@ApiModelProperty("用户姓名")
private String yhXm;
@ApiModelProperty("用户ip")
private String yhIp;
@ApiModelProperty("应用名称")
private String yymcJyqk;
@ApiModelProperty("应用类型代码")
private String yymcdm;
@ApiModelProperty("操作类型代码")
private String czlxdm;
@ApiModelProperty("操作参数")
private String czxxParam;
@ApiModelProperty("操作类型")
private String czlx;
@ApiModelProperty("登记人姓名")
private String xxdjryXm;
@ApiModelProperty("信息操作人员_公民身份号码")
private String xxczryGmsfhm;
@ApiModelProperty("信息登记人员_公民身份号码")
private String xxdjryGmsfhm;
@ApiModelProperty("信息操作人员_姓名")
private String xxczryXm;
@ApiModelProperty("信息操作单位_公安机关机构代码")
private String xxczdwGajgjgdm;
@ApiModelProperty("信息操作单位_公安机关名称")
private String xxczdwGajgmc;
@ApiModelProperty("信息登记人员_联系电话")
private String xxdjryLxdh;
@ApiModelProperty("信息登记单位_公安机关名称")
private String xxdjdwGajgmc;
@ApiModelProperty("信息登记单位_公安机关机构代码")
private String xxdjdwGajgjgdm;
}
package com.founder.commonutils.model.newPublicEntity;
import lombok.Data;
/**
* 手机注册信息
*
* @author szLi
* @date 2021/9/23 17:25
*/
@Data
public class Mobilereg {
private String id;
private String ar;//国籍
private String cety;//证件类型
private String ceco;//证件号码
private String cecoS;//证件号码
private String imsi;//IMSI
private String msis;//手机号码
private String copl;//采集地
private String cole;//计算机水平
private String rgad;//户口所在地
private String ofad;//现居住址_家庭住址
private String coun;//发现次数
private String unit;//工作单位
private String daso;//数据来源名称
private String nm; //姓名
private String sexc;//性别
private String age;//年龄
private String nati;//民族
private String orpl;//籍贯
private String educ;//文化程度
private String poaf;//政治面貌
private String emp;//职务
private String orna;//涉嫌组织
private String cote;//其他联系电话
private String iwde;//管辖地网安部门
private String nasp;//姓名拼音
private String fitm;//首次采集时间
private String latm;//最近采集时间
private String opne;//所属网络
private String ssoc;//网安专用产品厂家组织机构代码
private String stid;//人工研判记录ID
private String sele;//敏感级别
private String debug;//调试信息
private String dast;//DATA_STATUS
private String deid;//前端设备ID
private String imtm;//入库时间
private String sspr;//安全管理软件产品名称
private String ouid;//对象
private String rspr;//所属项目
private String ower;//所属用户
private String reti;//入网时间
private String rema;//摘要/备注
private String remr;//摘要/备注
private String stat;//状态
private String exti;//失效时间
private String tcno;//呼叫转移号码
private String acda;//激活日期
private String hada;//停机日期
private String hare;//停机原因
private String siid;//sim_id
private String sipn;//sim卡pin码
private String sipk;//sim卡puk码
}
package com.founder.commonutils.model.newPublicEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
import java.util.Map;
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("sk_service_cache")
@ApiModel(value="时空缓存表", description="")
public class SkServiceCache implements Serializable {
@TableId(type = IdType.INPUT)
@ApiModelProperty(value = "主键编号")
@TableField("xxzjbh")
private String xxzjbh;
@ApiModelProperty(value = "登陆者证件号")
@TableField("ypmc")
private String ypmc;
@ApiModelProperty(value = "研判号码")
@TableField("objectvalue")
private String objectvalue;
@ApiModelProperty(value = "类型字典")
@TableField("objecttype")
private String objecttype;
@ApiModelProperty(value = "号码类型")
@TableField("objectname")
private String objectname;
@ApiModelProperty(value = "研判时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date ypsj;
@ApiModelProperty(value = "证件号码")
@TableField("zjhm")
private String zjhm;
@ApiModelProperty(value = "用户名")
@TableField("name")
private String name;
@ApiModelProperty(value = "数据json")
@TableField("yptj")
private String yptjStringJson;
@ApiModelProperty(value = "数据json")
@TableField(exist = false)
private Map<Object,Object> yptj;
@ApiModelProperty(value = "研判开始时间")
@TableField(exist = false)
private String ypsjkssj;
@ApiModelProperty(value = "研判结束时间")
@TableField(exist = false)
private String ypsjjssj;
@ApiModelProperty(value = "当前页")
@TableField(exist = false)
private int page;
@ApiModelProperty(value = "每页数")
@TableField(exist = false)
private int pageSize;
}
......@@ -397,4 +397,34 @@ public class HttpUtil {
public static boolean ckeckEmpty(String string) {
return (null == string) || ("".equals(string));
}
public static String doPostJson(String url, String json,String token) {
// 创建Httpclient对象
CloseableHttpClient httpClient = HttpClients.createDefault();
CloseableHttpResponse response = null;
String resultString = "";
try {
// 创建Http Post请求
HttpPost httpPost = new HttpPost(url);
// 创建请求内容
StringEntity entity = new StringEntity(json, ContentType.APPLICATION_JSON);
httpPost.setEntity(entity);
httpPost.setHeader("founder.authorization", token);
// 执行http请求
response = httpClient.execute(httpPost);
resultString = EntityUtils.toString(response.getEntity(), "utf-8");
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
response.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return resultString;
}
}
......@@ -66,5 +66,19 @@ public class KeyUtilNaotu {
String asd = str+dateNowStr+ String.valueOf(num).substring(0,9);
System.out.println(asd);
}
/**
*
* @Description: 生成唯一的主键 格式:
*/
public static synchronized String getJzKey1(String str) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
Date date = new Date();
String dateNowStr = sdf.format(date);
int num = UUID.randomUUID().toString().replaceAll("-","").hashCode();
num = num < 0 ? -num:num;
String substring = String.valueOf(num).substring(0, 6);
String asd = str+substring;
return asd;
}
}
package com.founder.servicebase.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.api.ApiController;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.founder.commonutils.model.newPublicEntity.MapRestResult;
import com.founder.commonutils.model.newPublicEntity.SkServiceCache;
import com.founder.commonutils.model.newPublicEntity.SysUser;
import com.founder.commonutils.util.ExportExcelUtil;
import com.founder.commonutils.util.KeyUtil;
import com.founder.servicebase.logs.OperLog;
import com.founder.servicebase.logs.OperationType;
import com.founder.servicebase.mapper.mysqlMapper.SysDictitemAllMapper;
import com.founder.servicebase.service.SkCacheService;
import com.founder.servicebase.service.SkDictionaryService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
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 javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 时空服务列表表控制层
*
* @author yangyang
* @since 2022-10-14
*/
@RestController
@RequestMapping("SkService")
@Api(tags = "SK服务信息")
public class SkServiceCacheController extends ApiController {
@Resource
private SkCacheService skCacheService;
@Resource
SysDictitemAllMapper sysDictitemAllMapper;
@Autowired
private SkDictionaryService skDictionaryService;
@PostMapping("saveSkCache")
@ApiOperation(value = "时空_新增可视化缓存记录")
@OperLog(message = "时空_新增可视化缓存记录", operation = OperationType.ADD)
public MapRestResult saveKsh(@RequestBody SkServiceCache skServiceCache, HttpServletRequest request) {
SysUser user = (SysUser)request.getAttribute("user");
skServiceCache.setXxzjbh(KeyUtil.getUUIDKey("SK"));
skServiceCache.setZjhm(user.getIdentitycard());
skServiceCache.setName(user.getTrueName());
skServiceCache.setYptjStringJson(JSONObject.toJSON(skServiceCache.getYptj()).toString());
boolean save = skCacheService.save(skServiceCache);
if (save) {
return new MapRestResult();
} else {
return new MapRestResult().error("保存失败");
}
}
@PostMapping("deleteSkCache")
@ApiOperation(value = "时空_删除缓存服务信息")
@OperLog(message = "时空_删除缓存服务信息", operation = OperationType.DELETE)
public MapRestResult deleteKshCacheById(String xxzjbh) {
int delete = skCacheService.deleteKshCacheById(xxzjbh);
if (delete>0) {
return new MapRestResult();
} else {
return new MapRestResult(200,"无此xxzjbh",null);
}
}
@PostMapping("querySkCache")
@ApiOperation(value = "时空_查询缓存服务列表信息")
@OperLog(message = "时空_查询缓存服务列表信息", operation = OperationType.QUERY)
public MapRestResult KshCache(@RequestBody SkServiceCache skServiceCache, HttpServletRequest request) {
SysUser user = (SysUser)request.getAttribute("user");
//分页
Page page = new Page(skServiceCache.getPage(), skServiceCache.getPageSize());
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("zjhm", user.getIdentitycard());
if (skServiceCache.getYpmc()!=null&& !"".equals(skServiceCache.getYpmc())){ // 研判名称
queryWrapper.like("ypmc",skServiceCache.getYpmc());
}
if (skServiceCache.getObjecttype()!=null&& !"".equals(skServiceCache.getObjecttype())){ // 研判类型
queryWrapper.like("objecttype",skServiceCache.getObjecttype());
}
//时间
if (skServiceCache.getYpsjkssj() != null) {
queryWrapper.ge("str_to_date(ypsj,'%Y-%m-%d %H:%i:%s')", skServiceCache.getYpsjkssj());
}
if (skServiceCache.getYpsjjssj() != null) {
queryWrapper.le("str_to_date(ypsj,'%Y-%m-%d %H:%i:%s')", skServiceCache.getYpsjjssj());
}
queryWrapper.orderByDesc("ypsj");
IPage page1 = skCacheService.page(page, queryWrapper);
List<SkServiceCache> listResult = page1.getRecords();
listResult.stream().forEach(q->{
Map<Object,Object> map = JSON.parseObject(q.getYptjStringJson(), Map.class);
map.forEach((k, v) -> {
// 代码翻译
if(k.equals("区域")){
if("1".equals(v)){
map.put(k,"所属分局");
}else if("2".equals(v)){
map.put(k,"所属派出所");
}
}else if(k.equals("标签")){
List<String> bqs = (List<String>) v;
if (bqs!=null && bqs.size()>0) {
List<String> names = sysDictitemAllMapper.getNameByCodeBq(bqs);
map.put(k, names);
}
}else if(k.equals("轨迹类型")){
map.put(k,skDictionaryService.findDmmcByDmAndDmlx((String) v,"GJ"));
}
});
q.setYptj(map);
});
return new MapRestResult(200, "OK", page1.getTotal(), page1.getRecords());
}
@PostMapping("xslbExport")
@ApiOperation(value = "线索列表导出")
@OperLog(message = "线索列表导出", operation = OperationType.QUERY)
public void xslbExport(HttpServletResponse response, @RequestBody SkServiceCache skServiceCache, HttpServletRequest request) throws Exception {
SysUser user = (SysUser)request.getAttribute("user");
//分页
Page page = new Page(skServiceCache.getPage(), skServiceCache.getPageSize());
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("zjhm", user.getIdentitycard());
if (skServiceCache.getYpmc()!=null&& !"".equals(skServiceCache.getYpmc())){ // 研判名称
queryWrapper.like("ypmc",skServiceCache.getYpmc());
}
if (skServiceCache.getObjecttype()!=null&& !"".equals(skServiceCache.getObjecttype())){ // 研判类型
queryWrapper.like("objecttype",skServiceCache.getObjecttype());
}
//时间
if (skServiceCache.getYpsjkssj() != null) {
queryWrapper.ge("str_to_date(ypsj,'%Y-%m-%d %H:%i:%s')", skServiceCache.getYpsjkssj());
}
if (skServiceCache.getYpsjjssj() != null) {
queryWrapper.le("str_to_date(ypsj,'%Y-%m-%d %H:%i:%s')", skServiceCache.getYpsjjssj());
}
queryWrapper.orderByDesc("ypsj");
IPage page1 = skCacheService.page(page, queryWrapper);
List<SkServiceCache> listResult = page1.getRecords();
listResult.stream().forEach(q->{
Map<Object,Object> map = JSON.parseObject(q.getYptjStringJson(), Map.class);
map.forEach((k, v) -> {
// 代码翻译
if(k.equals("区域")){
if("1".equals(v)){
map.put(k,"所属分局");
}else if("2".equals(v)){
map.put(k,"所属派出所");
}
}else if(k.equals("标签")){
List<String> bqs = (List<String>) v;
if (bqs!=null && bqs.size()>0){
List<String> names = sysDictitemAllMapper.getNameByCodeBq(bqs);
map.put(k,names);
}
}else if(k.equals("轨迹类型")){
map.put(k,skDictionaryService.findDmmcByDmAndDmlx((String) v,"GJ"));
}
});
q.setYptj(map);
});
ExportExcelUtil<SkServiceCache> exportExcelUtil = new ExportExcelUtil<>();
String[] headersName = {"研判名称","研判号码","研判时间","研判条件"};
String[] headersField = {"ypmc","objectvalue","ypsj","yptj"};
exportExcelUtil.exportExcel("DataStatistics", headersName, headersField, page1.getRecords(), response,"线索列表信息");
}
}
package com.founder.servicebase.interceptor;
import org.springframework.stereotype.Component;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
/**
* 解决拦截器 I/O error while reading input message; nested exception is java.io.IOException: Stream closed 问题
*/
@Component
public class AntiSqlInjectionfilter implements Filter {
public void destroy() {
// TODO Auto-generated method stub
}
public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) servletRequest;
//取Body数据
RepeatedlyReadRequestWrapper requestWrapper = new RepeatedlyReadRequestWrapper(request);
//TODO something
filterChain.doFilter(requestWrapper != null ? requestWrapper : request, servletResponse);
}
}
\ No newline at end of file
package com.founder.servicebase.interceptor;
import javax.servlet.ReadListener;
import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
import java.io.*;
/**
* 解决拦截器 getReader() has already been called for this request
* HttpServletRequest只能被读取一次 重写getInputStream和getReader
*/
public class RepeatedlyReadRequestWrapper extends HttpServletRequestWrapper {
private final String body;
public RepeatedlyReadRequestWrapper(HttpServletRequest request) throws IOException{
super(request);
StringBuilder sb = new StringBuilder();
InputStream ins = request.getInputStream();
BufferedReader isr = null;
try{
if(ins != null){
isr = new BufferedReader(new InputStreamReader(ins));
char[] charBuffer = new char[128];
int readCount;
while((readCount = isr.read(charBuffer)) != -1){
sb.append(charBuffer,0,readCount);
}
}
}catch (IOException e){
throw e;
}finally {
if(isr != null) {
isr.close();
}
}
sb.toString();
body = sb.toString();
}
public String getBody() {
System.out.println(body);
return this.body;
}
@Override
public BufferedReader getReader() {
return new BufferedReader(new InputStreamReader(this.getInputStream()));
}
@Override
public ServletInputStream getInputStream() {
final ByteArrayInputStream byteArrayIns = new ByteArrayInputStream(body.getBytes());
ServletInputStream servletIns = new ServletInputStream() {
@Override
public boolean isFinished() {
return false;
}
@Override
public boolean isReady() {
return false;
}
@Override
public void setReadListener(ReadListener readListener) {
}
@Override
public int read() {
return byteArrayIns.read();
}
};
return servletIns;
}
}
\ No newline at end of file
......@@ -3,25 +3,31 @@ package com.founder.servicebase.interceptor;
import cn.hutool.json.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.founder.commonutils.Exception.TokenException;
import com.founder.commonutils.model.newPublicEntity.*;
import com.founder.commonutils.model.newPublicEntity.CodeYymc.SkCodeYymc;
import com.founder.commonutils.model.newPublicEntity.CodeYymc.SysYhczrz;
import com.founder.commonutils.util.HttpUtil;
import com.founder.commonutils.util.JwtUser;
import com.founder.commonutils.util.NetworkUtil;
import com.founder.commonutils.util.ResultUtil;
import com.founder.servicebase.mapper.mysqlMapper.CodeYymcMapper;
import com.founder.servicebase.service.SkServiceApplyService;
import com.founder.servicebase.service.SkServiceService;
import com.founder.servicebase.service.SysUserService;
import io.jsonwebtoken.Claims;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.io.IOException;
import java.util.*;
/**
* @author jlt
......@@ -37,6 +43,16 @@ public class TokenInterceptor implements HandlerInterceptor {
@Autowired
private SkServiceService service;
@Value("${logUrl}")
private String URL ;
@Value("${logtoken}")
private String token ;
@Value("${xzxtlog}")
private String xzxtlog ;
@Autowired
CodeYymcMapper codeYymcMapper;
private JwtUser jwtUser = new JwtUser();
private boolean flag = true;//true代表用户登录,false代表第三方登录
......@@ -61,6 +77,14 @@ public class TokenInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {
//支持跨域请求
response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
response.setHeader("Access-Control-Allow-Methods", "*");
//是否支持cookie跨域
response.setHeader("Access-Control-Allow-Credentials", "true");
//Origin, X-Requested-With, Content-Type, Accept,Access-Token
response.setHeader("Access-Control-Allow-Headers",
"Authorization,Origin, X-Requested-With, Content-Type, Accept,Access-Token,founder.token,authorization");
String thirdauthorization = JwtUser.getHeadToken(request, "thirdauthorization");
String str = "";
System.out.println(request.getRequestURL());
......@@ -74,7 +98,7 @@ public class TokenInterceptor implements HandlerInterceptor {
JSONObject object = new JSONObject(sub);
ThirdToken token = new ThirdToken(object);
System.out.println(token);
str = verifyToken(token);
str = verifyToken(request,token);
if (str.equals("")) {
name = token.getServiceName();
return true;
......@@ -106,7 +130,18 @@ public class TokenInterceptor implements HandlerInterceptor {
Token token = new Token(object);
System.out.println(token);
str = verifyToken(request,token);
if (request.getRequestURL().toString().contains("/code/codeAdd") || request.getRequestURL().toString().contains("/code/yymcSelect")){
return true;
}
if (str.equals("")) {
Enumeration<String> headerNames = request.getHeaderNames();
while(headerNames.hasMoreElements()){//如果请求头中还有key
if(headerNames.nextElement().equals("logcode")){
if (xzxtlog.equals("true") && !request.getHeader("logcode").equals("") && request.getHeader("logcode")!=null){
savaYhczrz(request);
}
}
}
return true;
} else {//账号、密码不匹配
Map<String, Object> map = getMap(401, str);
......@@ -155,11 +190,15 @@ public class TokenInterceptor implements HandlerInterceptor {
/**
* 校验第三方token
*/
public String verifyToken(ThirdToken token) {
public String verifyToken(HttpServletRequest request,ThirdToken token) {
String str = "";
// ip验证
if(!token.getIp().contains(NetworkUtil.getIpAddr(request))){
return "ip限制!";
}
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq("applyGs", token.getGsNama());
queryWrapper.eq("applyUrl", token.getIp());
queryWrapper.like("applyUrl", token.getIp());
queryWrapper.eq("status", "1");
List<SkServiceApply> list = skServiceApplyService.list(queryWrapper);
if (list == null || list.size() == 0) {
......@@ -167,6 +206,7 @@ public class TokenInterceptor implements HandlerInterceptor {
} else {
QueryWrapper queryWrapper1 = new QueryWrapper();
queryWrapper1.eq("serviceName", token.getServiceName());
queryWrapper1.like("serviceUrl", request.getRequestURI());
List<String> serviceIds = getServiceIds(list);
queryWrapper1.in("xxzjbh", serviceIds);
List<SkService> list1 = service.list(queryWrapper1);
......@@ -196,4 +236,80 @@ public class TokenInterceptor implements HandlerInterceptor {
map.put("msg", msg);
return map;
}
/**
* 记录日志接口 http://10.142.16.177:9026/yhczrz/savaYhczrz
*/
public void savaYhczrz(HttpServletRequest request){
String logcode = request.getHeader("logcode");
System.out.println(logcode);
// 根据code去查询对应名称;
QueryWrapper wrapper = new QueryWrapper<>();
wrapper.eq("code",logcode);
SkCodeYymc skCodeYymc = codeYymcMapper.selectOne(wrapper);
SysUser user = (SysUser)request.getAttribute("user");
SysYhczrz sysYhczrz = new SysYhczrz();
sysYhczrz.setYhGmsfhm(user.getIdentitycard());
sysYhczrz.setYhdwGajgjgdm(user.getUnitcode());
sysYhczrz.setYhdwGajgmc(user.getUnitname());
sysYhczrz.setYhXm(user.getTrueName());
sysYhczrz.setYhIp(NetworkUtil.getIpAddr(request));// IP使用真实ip
sysYhczrz.setYymcJyqk(skCodeYymc.getName());
sysYhczrz.setYymcdm(logcode);
sysYhczrz.setCzlxdm(skCodeYymc.getCzlxdm());
try {
if (skCodeYymc.getCzlxdm().equals("05")){
sysYhczrz.setCzxxParam(null);
}
//get 或者 post multipart/form-data格式
else if (request.getMethod().equals("POST") && request.getContentType().contains("form-data") ){
//获得提交的参数,将提交的参数的名称和对应的值存入到一个Map集合中
Map<String, String[]> parameterMap = request.getParameterMap();
String jsonStr = com.alibaba.fastjson.JSONObject.toJSONString(parameterMap);
com.alibaba.fastjson.JSONObject obj = com.alibaba.fastjson.JSONObject.parseObject(jsonStr);
System.out.println(obj.toJSONString());
sysYhczrz.setCzxxParam(obj.toJSONString());
} //post application/json 格式
else if (request.getMethod().equals("POST") &&request.getContentType().contains("application/json")){
RepeatedlyReadRequestWrapper repeatedlyReadRequestWrapper = new RepeatedlyReadRequestWrapper(request);
String s = repeatedlyReadRequestWrapper.getBody();
sysYhczrz.setCzxxParam(s);
System.out.println(s);
} //get
else if(request.getMethod().equals("GET")){
Map<String, String[]> parameterMap = request.getParameterMap();
String jsonStr = com.alibaba.fastjson.JSONObject.toJSONString(parameterMap);
com.alibaba.fastjson.JSONObject obj = com.alibaba.fastjson.JSONObject.parseObject(jsonStr);
System.out.println(obj.toJSONString());
sysYhczrz.setCzxxParam(obj.toJSONString());
}
} catch (IOException e) {
System.out.println("获取body失败");
throw new RuntimeException(e);
}
sysYhczrz.setCzlx(skCodeYymc.getCzlx());
sysYhczrz.setXxdjryXm(user.getLrr());
sysYhczrz.setXxczryGmsfhm(user.getIdentitycard());
sysYhczrz.setXxdjryGmsfhm(user.getIdentitycard());
sysYhczrz.setXxczryXm(user.getTrueName());
sysYhczrz.setXxczdwGajgjgdm(user.getUnitcode());
sysYhczrz.setXxczdwGajgmc(user.getUnitname());
sysYhczrz.setXxdjryLxdh(user.getTelephone());
sysYhczrz.setXxdjdwGajgmc(user.getUnitname());
sysYhczrz.setXxdjdwGajgjgdm(user.getUnitcode());
ObjectMapper mapper = new ObjectMapper();
try {
String json = mapper.writeValueAsString(sysYhczrz);
String s = HttpUtil.doPostJson(URL, json, token);
System.out.println(s);
} catch (JsonProcessingException e) {
e.printStackTrace();
}
}
}
package com.founder.servicebase.mapper.mysqlMapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.founder.commonutils.model.newPublicEntity.CodeYymc.SkCodeYymc;
public interface CodeYymcMapper extends BaseMapper<SkCodeYymc> {
}
package com.founder.servicebase.mapper.mysqlMapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.founder.commonutils.model.newPublicEntity.SkServiceCache;
import org.springframework.stereotype.Component;
/**
* 服务列表(SkService)表数据库访问层
*
* @author yangyang
* @since 2022-10-14
*/
@Component
public interface SkCacheMapper extends BaseMapper<SkServiceCache> {
}
package com.founder.servicebase.mapper.mysqlMapper;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Component;
import java.util.List;
@Mapper
@Component
public interface SysDictitemAllMapper {
List<String> getNameByCodeBq(List<String> codeArray);
}
<?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.servicebase.mapper.mysqlMapper.SysDictitemAllMapper">
<!-- 根据code查询name值-->
<select id="getNameByCodeBq" parameterType="java.util.List" resultType="java.lang.String">
select name from sys_dictitem where scbz='0'
and groupid IN('CODE_AJLB','CODE_AJXZ','CODE_AJXLB')
and code IN
<foreach collection="list" item="code" index="index"
open="(" close=")" separator=",">
#{code}
</foreach>
</select>
</mapper>
\ No newline at end of file
package com.founder.servicebase.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.founder.commonutils.model.newPublicEntity.SkServiceCache;
/**
* 服务列表(SkCacheService)表服务接口
*
* @author yangyang
* @since 2022-10-14
*/
public interface SkCacheService extends IService<SkServiceCache> {
int deleteKshCacheById(String xxzjbh);
}
package com.founder.servicebase.service.serviceimpl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.founder.commonutils.model.newPublicEntity.SkServiceCache;
import com.founder.servicebase.mapper.mysqlMapper.SkCacheMapper;
import com.founder.servicebase.service.SkCacheService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* 服务列表(SkService)表服务实现类
*
* @author yangyang
* @since 2022-10-14
*/
@Service("SkCacheService")
public class SkCacheServiceImpl extends ServiceImpl<SkCacheMapper, SkServiceCache> implements SkCacheService {
@Autowired
SkCacheMapper skCacheMapper;
@Override
public int deleteKshCacheById(String xxzjbh) {
return skCacheMapper.deleteById(xxzjbh);
}
}
......@@ -67,6 +67,7 @@ public class RyxxQgInterface {
}
} catch (Exception e) {
e.printStackTrace();
return MapRestResult.build(200, "OK",listSkRegionalsPerson.size(),listSkRegionalsPerson);
}
listSkRegionalsPerson.add(ryxx);
return MapRestResult.build(200, "OK",listSkRegionalsPerson.size(),listSkRegionalsPerson);
......
......@@ -28,5 +28,5 @@ public interface SysDictitemMapper {
* 2022/07/20
*/
List<String> getAllXjdwByMap(@Param("dw") Map<String, String> dw);
String getNameBycodeXz(@Param("dw") String groupid,@Param("code") String code);
String getNameBycodeXz(@Param("groupid") String groupid,@Param("code") String code);
}
......@@ -47,7 +47,9 @@
FROM tb_st_asj T left join tb_st_asj_asjbz asjbz on T.asjbh = asjbz.asjbh
WHERE 1=1
<include refid="queryWhereByReceiving"/>
limit #{page},#{pageSize}
<if test="pageSize!=0">
limit #{page},#{pageSize}
</if>
</select>
<select id="selectAsjxxByReceivingListCount" parameterType="com.founder.commonutils.model.vo.param.TbStAsjParm" resultType="java.lang.Integer">
SELECT
......
......@@ -57,10 +57,16 @@ logging.level.org.springframework.data.mongodb.core=DEBUG
spring.data.mongodb.second.uri=mongodb://localhost:27017/whale
#poi\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u05B7
addressPoiUrl=http://220.26.6.1:8088/PGIS_S_Address/fullSearch
#记录日志的线下地址
logUrl=http://39.99.155.173:8764/yhczrz/savaYhczrz
#记录日志的token
logtoken=Basic 9b6c45cfcf3a4a629e3ed90fa3e5d058
#xzxtlog=true /false ture 表示开启日志,false表示关闭日志,默认是ture
xzxtlog =false
#全国常口地址
ckUrl=http://xzxtzhyyreport:20010/qgck/getRyxxByQgck"
ckUrl=http://xzxtzhyyreport:20010/qgck/getRyxxByQgck
# Es地址
spring.elasticsearch.jest.uris=http://155.1.11.17:24100
trainpath=xz_pk_gakx.train1
mhxxessyb=xz_pk_gakx.flight2
kopath=xz_gakx.vehicle1
kopath=xz_gakx_stk.vehicle1
......@@ -56,13 +56,19 @@ spring.data.mongodb.second.uri=mongodb://fz:wc%40thailand@155.1.11.213:28001/wha
logging.level.org.springframework.data.mongodb.core=DEBUG
#poi\u68C0\u7D22\u5730\u5740
addressPoiUrl=http://220.26.6.1:8088/PGIS_S_Address/fullSearch
#记录日志的线上地址
logUrl=http://10.142.16.177:9026/yhczrz/savaYhczrz
#记录日志的token
logtoken=Basic 9b6c45cfcf3a4a629e3ed90fa3e5d058
#xzxtlog=true /false ture 表示开启日志,false表示关闭日志,默认是ture
xzxtlog =false
#全国常口地址
ckUrl=http://xzxtzhyyreport:20010/qgck/getRyxxByQgck"
ckUrl=http://xzxtzhyyreport:20010/qgck/getRyxxByQgck
# Es地址
spring.elasticsearch.jest.uris=http://155.1.11.17:24100
trainpath=xz_pk_gakx.train1
mhxxessyb=xz_pk_gakx.flight2
kopath=xz_gakx.vehicle1
kopath=xz_gakx_stk.vehicle1
......
spring.profiles.active=dev
spring.profiles.active=prod
server.port=1003
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
......
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