Commit c0beb44d by wang_jiaxing

app相关修改

parent 6dc752f4
package org.springblade.common.config;
import org.apache.commons.lang.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springblade.core.secure.utils.SecureUtil;
......@@ -7,7 +8,10 @@ import org.springblade.core.tool.api.R;
import org.springblade.core.tool.api.ResultCode;
import org.springblade.core.tool.jackson.JsonUtil;
import org.springblade.core.tool.utils.WebUtil;
import org.springblade.founder.sbgl.entity.SysAppsb;
import org.springblade.founder.sbgl.service.SysAppsbService;
import org.springblade.modules.system.entity.XzxtUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
......@@ -33,6 +37,8 @@ public class UserHandlerConfig implements HandlerInterceptor {
private RedisTemplate<String,String> redisTemplate;
@Value("${userIdleTime}")
private Long userIdleTime;
@Autowired
private SysAppsbService sysAppsbService;
private static final Logger log = LoggerFactory.getLogger(UserHandlerConfig.class);
......@@ -50,6 +56,21 @@ public class UserHandlerConfig implements HandlerInterceptor {
return false;
}
ops.set(key, "1", userIdleTime, TimeUnit.MINUTES);//存入redis并设置过期时间
String s = ops.get("sysAppsb:" + user.getIdentitycard());
if (StringUtils.isEmpty(s)) {
SysAppsb sysAppsb = sysAppsbService.getSysAppsbBySfzh(user.getIdentitycard());
if (sysAppsb == null) {
R result = R.fail(ResultCode.REQ_REJECT, "账号未绑定设备!");
errorResult(response, JsonUtil.toJson(result));
return false;
}
if ("1".equals(sysAppsb.getSbzt())) {
R result = R.fail(ResultCode.REQ_REJECT, "设备已挂失,无法操作!");
errorResult(response, JsonUtil.toJson(result));
return false;
}
ops.set("sysAppsb:" + user.getIdentitycard(), user.getIdentitycard(), 10, TimeUnit.MINUTES);
}
return true;
} else {
log.warn("签名认证失败,请求接口:{},请求IP:{},请求参数:{}", new Object[]{request.getRequestURI(), WebUtil.getIP(request), JsonUtil.toJson(request.getParameterMap())});
......
......@@ -69,4 +69,7 @@ public class AuthInfo {
@ApiModelProperty(value = "是否初始密码")
@TableField(exist = false)
private String isCsmm ;
@ApiModelProperty(value = "权限")
@TableField(exist = false)
private String permission ;
}
......@@ -39,7 +39,7 @@ public class AjdaController {
*/
@RequestMapping("/queryAjdaxxs")
@ResponseBody
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "查询案件档案")
@LogOper(czxxLbdm = "01", yymcJyqk = "0705", czxxJyqk = "查询案件档案")
public R queryAjdaxx(String asjbh) {
try {
HashMap<String, Object> resultMap = new HashMap<>();
......
......@@ -27,12 +27,12 @@ public class KyxsController {
@PostMapping("/saveNewKyxs")
@LogOper(czxxLbdm = "02", yymcJyqk = "0701", czxxJyqk = "新增可疑线索")
public R saveNewKyxs(String asjbh, String type,
@RequestParam(required = false) String kyhm, String kyyj,
@RequestParam(required = false) String kyhm, String kyyj, String yywz,
@RequestParam(required = false) MultipartFile file,
@RequestParam(required = false) Double jd,
@RequestParam(required = false) Double wd) {
try {
String xxzjbh = kyxsService.saveNewKyxs(asjbh, type, kyhm, kyyj, file, jd, wd);
String xxzjbh = kyxsService.saveNewKyxs(asjbh, type, kyhm, kyyj, file, jd, wd, yywz);
if (xxzjbh == null) {
return R.error("type不能为空");
}
......@@ -93,10 +93,10 @@ public class KyxsController {
@RequestMapping("/getFile/{xxzjbh}")
@LogOper(czxxLbdm = "07", yymcJyqk = "0701", czxxJyqk = "可疑线索附件下载")
public R getFile(@PathVariable String xxzjbh) {
public R getFile(@PathVariable String xxzjbh, String type) {
try {
HttpServletResponse response = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse();
kyxsService.getFile(xxzjbh, response);
kyxsService.getFile(xxzjbh, response,type);
return R.ok();
} catch (Exception e) {
e.printStackTrace();
......
......@@ -35,7 +35,7 @@ public class TbStAsjController {
* @return 单条数据
*/
@PostMapping("queryByXxzjbh")
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "查询案件详情")
@LogOper(czxxLbdm = "01", yymcJyqk = "0705", czxxJyqk = "查询案件详情")
public R queryById(String asjbh) {
try{
TbStAsjQgccj tbStAsjQgccj= tbStAsjService.queryById(asjbh);
......
package org.springblade.founder.asj.entity;
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 lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.founder.entity.BaseModel;
import java.util.List;
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tb_xw_kyxs_sp")
public class TbXwKyxsSp extends BaseModel {
//信息主键编号
@TableId(type = IdType.INPUT)
private String xxzjbh;
//案事件编号
private String asjbh;
//拍摄设备
private String kyxsspPssb;
//可以视频内容
private byte[] kyxsspPpnr;
//可疑依据
private String kyxstxKyyj;
@TableField(exist = false)
private List<String> qgAsjbhList; //全国
@TableField(exist = false)
private Integer qgAjsl; //全国
@TableField(exist = false)
private List<String> qsAsjbhList; //全省
@TableField(exist = false)
private Integer qsAjsl; //全省
public void setQgAsjbhList(List<String> qgAsjbhList) {
if (qgAsjbhList == null){
this.qgAsjbhList = null;
this.qgAjsl = 0;
} else {
this.qgAsjbhList = qgAsjbhList;
this.qgAjsl = qgAsjbhList.size();
}
}
public void setQsAsjbhList(List<String> qsAsjbhList) {
if (qsAsjbhList == null){
this.qsAsjbhList = null;
this.qsAjsl = 0;
} else {
this.qsAsjbhList = qsAsjbhList;
this.qsAjsl = qsAsjbhList.size();
}
}
}
package org.springblade.founder.asj.entity;
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 lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.founder.entity.BaseModel;
import java.util.List;
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tb_xw_kyxs_yy")
public class TbXwKyxsYy extends BaseModel {
//信息主键编号
@TableId(type = IdType.INPUT)
private String xxzjbh;
//案事件编号
private String asjbh;
//录音文字
private String kyxsyyLywz;
//可疑语音内容
private byte[] kyxsyyYynr;
//可疑依据
private String kyxsyyKyyj;
@TableField(exist = false)
private List<String> qgAsjbhList; //全国
@TableField(exist = false)
private Integer qgAjsl; //全国
@TableField(exist = false)
private List<String> qsAsjbhList; //全省
@TableField(exist = false)
private Integer qsAjsl; //全省
public void setQgAsjbhList(List<String> qgAsjbhList) {
if (qgAsjbhList == null){
this.qgAsjbhList = null;
this.qgAjsl = 0;
} else {
this.qgAsjbhList = qgAsjbhList;
this.qgAjsl = qgAsjbhList.size();
}
}
public void setQsAsjbhList(List<String> qsAsjbhList) {
if (qsAsjbhList == null){
this.qsAsjbhList = null;
this.qsAjsl = 0;
} else {
this.qsAsjbhList = qsAsjbhList;
this.qsAjsl = qsAsjbhList.size();
}
}
}
package org.springblade.founder.asj.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.springblade.founder.asj.entity.TbXwKyxsSp;
import org.springblade.founder.asj.entity.TbXwKyxsTx;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository
public interface TbXwKyxsSpMapper extends BaseMapper<TbXwKyxsSp> {
List<TbXwKyxsSp> selectListByAsjbh(String asjbh);
TbXwKyxsSp selectOneByXxzjbh(String xxzjbh);
Integer selectCountByAsjbh(String asjbh);
}
<?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="org.springblade.founder.asj.mapper.TbXwKyxsSpMapper">
<select id="selectListByAsjbh" resultType="org.springblade.founder.asj.entity.TbXwKyxsSp">
select xxzjbh,
asjbh,
kyxssp_pssb,
kyxssp_spnr,
kyxssp_kyyj,
djsj,
gxsj,
xxsc_pdbz,
xxdjdw_gajgjgdm,
xxdjdw_gajgmc,
xxdjry_xm,
xxdjry_gmsfhm,
xxdjry_lxdh,
xxczdw_gajgjgdm,
xxczdw_gajgmc,
xxczry_xm,
xxczry_gmsfhm,
xxlyms
from tb_xw_kyxs_sp
where asjbh = #{asjbh,jdbcType=VARCHAR}
and xxsc_pdbz = '0'
order by djsj desc
</select>
<select id="selectOneByXxzjbh" resultType="org.springblade.founder.asj.entity.TbXwKyxsSp">
select xxzjbh,
asjbh,
kyxssp_pssb,
kyxssp_kyyj,
djsj,
gxsj,
xxsc_pdbz,
xxdjdw_gajgjgdm,
xxdjdw_gajgmc,
xxdjry_xm,
xxdjry_gmsfhm,
xxdjry_lxdh,
xxczdw_gajgjgdm,
xxczdw_gajgmc,
xxczry_xm,
xxczry_gmsfhm,
xxlyms
from tb_xw_kyxs_sp
where XXZJBH = #{xxzjbh,jdbcType=VARCHAR}
and xxsc_pdbz = '0'
</select>
<select id="selectCountByAsjbh" resultType="java.lang.Integer">
select count(1)
from tb_xw_kyxs_sp
where asjbh = #{asjbh,jdbcType=VARCHAR}
and xxsc_pdbz = '0'
</select>
</mapper>
package org.springblade.founder.asj.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.springblade.founder.asj.entity.TbXwKyxsTx;
import org.springblade.founder.asj.entity.TbXwKyxsYy;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository
public interface TbXwKyxsYyMapper extends BaseMapper<TbXwKyxsYy> {
List<TbXwKyxsYy> selectListByAsjbh(String asjbh);
TbXwKyxsYy selectOneByXxzjbh(String xxzjbh);
Integer selectCountByAsjbh(String asjbh);
}
<?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="org.springblade.founder.asj.mapper.TbXwKyxsYyMapper">
<select id="selectListByAsjbh" resultType="org.springblade.founder.asj.entity.TbXwKyxsYy">
select xxzjbh,
asjbh,
kyxsyy_lywz,
kyxsyy_kyyj,
djsj,
gxsj,
xxsc_pdbz,
xxdjdw_gajgjgdm,
xxdjdw_gajgmc,
xxdjry_xm,
xxdjry_gmsfhm,
xxdjry_lxdh,
xxczdw_gajgjgdm,
xxczdw_gajgmc,
xxczry_xm,
xxczry_gmsfhm,
xxlyms
from tb_xw_kyxs_yy
where asjbh = #{asjbh,jdbcType=VARCHAR}
and xxsc_pdbz = '0'
order by djsj desc
</select>
<select id="selectOneByXxzjbh" resultType="org.springblade.founder.asj.entity.TbXwKyxsYy">
select xxzjbh,
asjbh,
kyxsyy_lywz,
kyxsyy_kyyj,
djsj,
gxsj,
xxsc_pdbz,
xxdjdw_gajgjgdm,
xxdjdw_gajgmc,
xxdjry_xm,
xxdjry_gmsfhm,
xxdjry_lxdh,
xxczdw_gajgjgdm,
xxczdw_gajgmc,
xxczry_xm,
xxczry_gmsfhm,
xxlyms
from tb_xw_kyxs_yy
where XXZJBH = #{xxzjbh,jdbcType=VARCHAR}
and xxsc_pdbz = '0'
</select>
<select id="selectCountByAsjbh" resultType="java.lang.Integer">
select count(1)
from tb_xw_kyxs_yy
where asjbh = #{asjbh,jdbcType=VARCHAR}
and xxsc_pdbz = '0'
</select>
</mapper>
......@@ -23,7 +23,7 @@ public interface KyxsService {
* @author lystar
* 2021/11/23 17:54
*/
String saveNewKyxs(String asjbh, String type, String kyhm, String kyyj, MultipartFile file, Double jd, Double wd) throws IOException;
String saveNewKyxs(String asjbh, String type, String kyhm, String kyyj, MultipartFile file, Double jd, Double wd,String yywz) throws IOException;
/**
* getKyxsByAsjbh 根据案件编号查询可疑线索
......@@ -58,7 +58,7 @@ public interface KyxsService {
* @author lystar
* 2021/11/24 21:10
*/
void getFile(String xxzjbh, HttpServletResponse response) throws IOException;
void getFile(String xxzjbh, HttpServletResponse response, String type) throws IOException;
/**
* getKyxsCountByAsjbh 查询可疑线索总数
......
......@@ -48,6 +48,10 @@ public class KyxsServiceImpl implements KyxsService {
@Autowired
private TbXwKyxsTxMapper tbXwKyxsTxMapper;
@Autowired
private TbXwKyxsYyMapper tbXwKyxsYyMapper;
@Autowired
private TbXwKyxsSpMapper tbXwKyxsSpMapper;
@Autowired
private HnJbAsjXsService hnJbAsjXsService;
@Autowired
private QgJbAsjXsService qgJbAsjXsService;
......@@ -63,7 +67,7 @@ public class KyxsServiceImpl implements KyxsService {
private ExecutorService CachedThreadPoolService;
@Override
public String saveNewKyxs(String asjbh, String type, String kyhm, String kyyj, MultipartFile file, Double jd, Double wd) throws IOException {
public String saveNewKyxs(String asjbh, String type, String kyhm, String kyyj, MultipartFile file, Double jd, Double wd,String yywz) throws IOException {
if (type != null) {
XzxtUser xzxtUser = SecureUtil.getUserXzxt();
String xxzjbh = xxzjbhService.getXxzjbh(xzxtUser.getUnitcode());
......@@ -118,6 +122,34 @@ public class KyxsServiceImpl implements KyxsService {
Utils.setUserDjxxAndCzxx(kyxsTx);
tbXwKyxsTxMapper.insert(kyxsTx);
break;
case "yy": //可疑语音
// if (file == null){
// return null;
// }
TbXwKyxsYy kyxsYy = new TbXwKyxsYy();
kyxsYy.setXxzjbh(xxzjbh);
kyxsYy.setAsjbh(asjbh);
kyxsYy.setKyxsyyYynr(file == null ? null : file.getBytes());
kyxsYy.setKyxsyyLywz(yywz);
kyxsYy.setKyxsyyKyyj(kyyj);
kyxsYy.setXxscPdbz("0");
Utils.setUserDjxxAndCzxx(kyxsYy);
tbXwKyxsYyMapper.insert(kyxsYy);
break;
case "sp": //可疑视频
if (file == null){
return null;
}
TbXwKyxsSp kyxsSp = new TbXwKyxsSp();
kyxsSp.setXxzjbh(xxzjbh);
kyxsSp.setAsjbh(asjbh);
kyxsSp.setKyxsspPpnr(file.getBytes());
kyxsSp.setKyxsspPssb(kyhm);
kyxsSp.setKyxstxKyyj(kyyj);
kyxsSp.setXxscPdbz("0");
Utils.setUserDjxxAndCzxx(kyxsSp);
tbXwKyxsSpMapper.insert(kyxsSp);
break;
}
return xxzjbh;
}
......@@ -221,6 +253,18 @@ public class KyxsServiceImpl implements KyxsService {
resultMap.put("txList", txList);
resultMap.put("txCount", txList.size());
}
//查询可疑语音
List<TbXwKyxsYy> yyList = tbXwKyxsYyMapper.selectListByAsjbh(asjbh);
if (yyList != null) {
resultMap.put("yyList", yyList);
resultMap.put("yyCount", yyList.size());
}
//查询可疑视频
List<TbXwKyxsSp> spList = tbXwKyxsSpMapper.selectListByAsjbh(asjbh);
if (spList != null) {
resultMap.put("spList", spList);
resultMap.put("spCount", spList.size());
}
//获取线程执行的结果
List<TbXwKyxsRy> ryList = ryListTask.get();
......@@ -257,12 +301,16 @@ public class KyxsServiceImpl implements KyxsService {
jdcQueryWrapper.eq("xxsc_pdbz", "0");
Integer kyjdcCount = tbXwKyxsJdcMapper.selectCount(jdcQueryWrapper);
Integer kytxCount = tbXwKyxsTxMapper.selectCountByAsjbh(asjbh);
Integer kyyyCount = tbXwKyxsYyMapper.selectCountByAsjbh(asjbh);
Integer kyspCount = tbXwKyxsSpMapper.selectCountByAsjbh(asjbh);
HashMap<String, Object> resultMap = new HashMap<>();
resultMap.put("kyryCount", kyryCount);
resultMap.put("kyhmCount", kyhmCount);
resultMap.put("kyjdcCount", kyjdcCount);
resultMap.put("kytxCount", kytxCount);
resultMap.put("kyxsCount", kyryCount + kyhmCount + kyjdcCount + kytxCount);
resultMap.put("kyyyCount", kyyyCount);
resultMap.put("kyspCount", kyspCount);
resultMap.put("kyxsCount", kyryCount + kyhmCount + kyjdcCount + kytxCount + kyyyCount + kyspCount);
return resultMap;
}
......@@ -309,6 +357,10 @@ public class KyxsServiceImpl implements KyxsService {
return tbXwKyxsJdc;
case "tx": //图像
return tbXwKyxsTxMapper.selectOneByXxzjbh(xxzjbh);
case "yy": //语音
return tbXwKyxsYyMapper.selectOneByXxzjbh(xxzjbh);
case "sp": //视频
return tbXwKyxsSpMapper.selectOneByXxzjbh(xxzjbh);
}
}
return null;
......@@ -341,17 +393,34 @@ public class KyxsServiceImpl implements KyxsService {
}
@Override
public void getFile(String xxzjbh, HttpServletResponse response) throws IOException {
public void getFile(String xxzjbh, HttpServletResponse response,String type) throws IOException {
if (type != null){
InputStream inputStream =null;
switch (type){
case "tx":
TbXwKyxsTx tx = tbXwKyxsTxMapper.selectById(xxzjbh);
InputStream inputStream = new ByteArrayInputStream(tx.getKyxstxTxnr());
inputStream = new ByteArrayInputStream(tx.getKyxstxTxnr());
response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(tx.getKyxstxTxbt(), "UTF-8"));
break;
case "yy":
TbXwKyxsYy yy = tbXwKyxsYyMapper.selectById(xxzjbh);
inputStream = new ByteArrayInputStream(yy.getKyxsyyYynr());
response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(xxzjbh+"语音", "UTF-8"));
break;
case "sp":
TbXwKyxsSp sp = tbXwKyxsSpMapper.selectById(xxzjbh);
inputStream = new ByteArrayInputStream(sp.getKyxsspPpnr());
response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(xxzjbh+"视频", "UTF-8"));
break;
}
ServletOutputStream outputStream = response.getOutputStream();
IOUtils.copy(inputStream, outputStream);
try {
IOUtils.closeQuietly(inputStream);
IOUtils.closeQuietly(outputStream);
} catch (Exception ignored) {
}
}
}
}
......@@ -21,7 +21,7 @@ public class TbStAppDzblController {
private TbStAppDzblService tbStAppDzblService;
@PostMapping("/saveNewDzbl")
@LogOper(czxxLbdm = "02", yymcJyqk = "0701", czxxJyqk = "新增电子笔录")
@LogOper(czxxLbdm = "02", yymcJyqk = "0710", czxxJyqk = "新增电子笔录")
public R saveNewDzbl(TbStAppDzbl dzbl) {
try {
String xxzjbh = tbStAppDzblService.saveNewDzbl(dzbl);
......@@ -33,7 +33,7 @@ public class TbStAppDzblController {
}
@PostMapping("/updateDzbl")
@LogOper(czxxLbdm = "03", yymcJyqk = "0701", czxxJyqk = "修改电子笔录")
@LogOper(czxxLbdm = "03", yymcJyqk = "0710", czxxJyqk = "修改电子笔录")
public R updateDzbl(TbStAppDzbl dzbl) {
try {
String xxzjbh = tbStAppDzblService.updateDzbl(dzbl);
......@@ -56,7 +56,7 @@ public class TbStAppDzblController {
}
@PostMapping("/getDzblByXxzjbh")
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "查询电子笔录")
@LogOper(czxxLbdm = "01", yymcJyqk = "0710", czxxJyqk = "查询电子笔录")
public R getDzblByXxzjbh(String xxzjbh) {
try {
TbStAppDzbl dzbl = tbStAppDzblService.getDzblByXxzjbh(xxzjbh);
......@@ -68,7 +68,7 @@ public class TbStAppDzblController {
}
@PostMapping("/deleteDzbl")
@LogOper(czxxLbdm = "04", yymcJyqk = "0701", czxxJyqk = "删除电子笔录")
@LogOper(czxxLbdm = "04", yymcJyqk = "0710", czxxJyqk = "删除电子笔录")
public R deleteDzbl(String xxzjbh) {
try {
tbStAppDzblService.deleteDzbl(xxzjbh);
......@@ -102,7 +102,7 @@ public class TbStAppDzblController {
}
@RequestMapping("/getFile/{xxzjbh}")
@LogOper(czxxLbdm = "07", yymcJyqk = "0701", czxxJyqk = "app电子笔录附件下载")
@LogOper(czxxLbdm = "07", yymcJyqk = "0710", czxxJyqk = "app电子笔录附件下载")
public R getFile(@PathVariable String xxzjbh){
try {
HttpServletResponse response = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse();
......
......@@ -20,7 +20,7 @@ public class TbStAppRyxxController {
private TbStAppRyxxService tbStAppRyxxService;
@PostMapping("/saveNewRyxx")
@LogOper(czxxLbdm = "02", yymcJyqk = "0701", czxxJyqk = "新增人员信息")
@LogOper(czxxLbdm = "02", yymcJyqk = "0709", czxxJyqk = "新增人员信息")
public R saveNewRyxx(TbStAppRyxx ryxx){
try {
String xxzjbh = tbStAppRyxxService.saveNewRyxx(ryxx);
......@@ -60,7 +60,7 @@ public class TbStAppRyxxController {
}
@PostMapping("/getRyxxByXxzjbh")
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "查询人员信息")
@LogOper(czxxLbdm = "01", yymcJyqk = "0709", czxxJyqk = "查询人员信息")
public R getYrxxByXxzjbh(String xxzjbh){
try {
TbStAppRyxx ryxx = tbStAppRyxxService.getYrxxByXxzjbh(xxzjbh);
......@@ -83,7 +83,7 @@ public class TbStAppRyxxController {
}
@PostMapping("/updateRyxxByXxzjbh")
@LogOper(czxxLbdm = "03", yymcJyqk = "0701", czxxJyqk = "修改人员信息")
@LogOper(czxxLbdm = "03", yymcJyqk = "0709", czxxJyqk = "修改人员信息")
public R updateYrxxByXxzjbh(TbStAppRyxx ryxx){
try {
String xxzjbh = tbStAppRyxxService.updateYrxxByXxzjbh(ryxx);
......@@ -106,7 +106,7 @@ public class TbStAppRyxxController {
}
@PostMapping("/deleteRyxx")
@LogOper(czxxLbdm = "04", yymcJyqk = "0701", czxxJyqk = "删除人员信息")
@LogOper(czxxLbdm = "04", yymcJyqk = "0709", czxxJyqk = "删除人员信息")
public R deleteRyxx(String xxzjbh){
try {
tbStAppRyxxService.deleteRyxx(xxzjbh);
......@@ -118,7 +118,7 @@ public class TbStAppRyxxController {
}
@PostMapping("/tqQgryxx")
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "提取人员信息")
@LogOper(czxxLbdm = "01", yymcJyqk = "0709", czxxJyqk = "提取人员信息")
public R tqQgryxx(String sfzh){
try {
TbStAppRyxx ryxx = tbStAppRyxxService.tqQgryxx(sfzh);
......
package org.springblade.founder.sbgl.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import org.springblade.modules.system.entity.XzxtUser;
import java.util.Date;
/**
*
* @author create by lystar
* @date 2023/11/10 15:26
*/
@Data
@TableName("sys_appsb")
public class SysAppsb {
/**
* 信息主键编号
*/
@TableId("xxzjbh")
private String xxzjbh;
/**
* IP地址
*/
private String ip;
/**
* MAC地址
*/
private String mac;
/**
* 设备品牌
*/
private String sbpp;
/**
* 设备名称
*/
private String sbmc;
/**
* 设备型号
*/
private String sbxh;
/**
* 绑定用户身份证
*/
private String bdidcard;
/**
* 绑定姓名
*/
private String bdxm;
/**
* 设备状态 0:开启,1关闭,2远程中
*/
private String sbzt;
/**
* 备注
*/
private String bz;
/**
* 信息删除_判断标识/1-是,0-否/CODE_IF
*/
private String xxscPdbz;
/**
* 信息登记单位_公安机关机构代码/采用GA 380《全国公安机关机构代码编码规则》统一编制的代码/CODE_GXS
*/
private String xxdjdwGajgjgdm;
/**
* 信息登记单位_公安机关名称
*/
private String xxdjdwGajgmc;
/**
* 信息登记人员_姓名
*/
private String xxdjryXm;
/**
* 信息登记人员_公民身份号码/符合GB 11643《公民身份号码》
*/
private String xxdjryGmsfhm;
/**
* 信息登记人员_联系电话
*/
private String xxdjryLxdh;
/**
* 登记时间
*/
private Date djsj;
/**
* 信息操作单位_公安机关机构代码/采用GA 380《全国公安机关机构代码编码规则》统一编制的代码/CODE_GXS
*/
private String xxczdwGajgjgdm;
/**
* 信息操作单位_公安机关名称
*/
private String xxczdwGajgmc;
/**
* 信息操作人员_姓名
*/
private String xxczryXm;
/**
* 信息操作人员_公民身份号码/符合GB 11643《公民身份号码》
*/
private String xxczryGmsfhm;
/**
* 更新时间
*/
private Date gxsj;
//分页查询开始位置
@TableField(exist = false)
private Integer page;
//分页查询结束位置
@TableField(exist = false)
private Integer limit;
public void setDjUser(XzxtUser user){
this.xxdjryXm=user.getRealname();
this.xxdjdwGajgjgdm=user.getUnitcode();
this.xxdjdwGajgmc=user.getUnitname();
this.xxdjryGmsfhm=user.getIdentitycard();
this.xxdjryLxdh=user.getPhone();
this.xxczryXm=user.getRealname();
this.xxczdwGajgjgdm=user.getUnitcode();
this.xxczdwGajgmc=user.getUnitname();
this.xxczryGmsfhm=user.getIdentitycard();
}
// 更新人员
public void setUpUser(XzxtUser user){
this.xxczryXm=user.getRealname();
this.xxczdwGajgjgdm=user.getUnitcode();
this.xxczdwGajgmc=user.getUnitname();
this.xxczryGmsfhm=user.getIdentitycard();
}
}
package org.springblade.founder.sbgl.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springblade.founder.sbgl.entity.SysAppsb;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
*
* @author create by lystar
* @date 2023/11/10 15:26
*/
@Repository
public interface SysAppsbMapper extends BaseMapper<SysAppsb> {
List<String> getSysAppsbYyBySfzh(String sfzh);
}
<?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="org.springblade.founder.sbgl.mapper.SysAppsbMapper">
<select id="getSysAppsbYyBySfzh" resultType="java.lang.String">
select yydm
from sys_appsb_yy
where sfzh = #{sfzh,jdbcType=VARCHAR}
and xxsc_pdbz = '0'
</select>
</mapper>
\ No newline at end of file
package org.springblade.founder.sbgl.service;
import org.springblade.founder.sbgl.entity.SysAppsb;
import java.util.List;
/**
*
* @author create by lystar
* @date 2023/11/10 15:28
*/
public interface SysAppsbService {
SysAppsb getSysAppsbBySfzh(String sfzh);
List<String> getSysAppsbYyBySfzh(String sfzh);
}
package org.springblade.founder.sbgl.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.springblade.founder.sbgl.entity.SysAppsb;
import org.springblade.founder.sbgl.mapper.SysAppsbMapper;
import org.springblade.founder.sbgl.service.SysAppsbService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* TODO
*
* @author create by lystar
* @date 2023/11/10 15:29
*/
@Service
@DS("db1")
public class SysAppsbServiceImpl implements SysAppsbService {
@Autowired
private SysAppsbMapper sysAppsbMapper;
@Override
public SysAppsb getSysAppsbBySfzh(String sfzh) {
LambdaQueryWrapper<SysAppsb> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(SysAppsb::getXxscPdbz, "0");
wrapper.eq(SysAppsb::getBdidcard, sfzh);
wrapper.orderByDesc(SysAppsb::getGxsj);
wrapper.last("limit 1");
return sysAppsbMapper.selectOne(wrapper);
}
@Override
public List<String> getSysAppsbYyBySfzh(String sfzh) {
return sysAppsbMapper.getSysAppsbYyBySfzh(sfzh);
}
}
......@@ -20,7 +20,7 @@ public class TbStAppXsController {
private TbStAppXsService tbStAppXsService;
@PostMapping("/saveNewXs")
@LogOper(czxxLbdm = "02", yymcJyqk = "0701", czxxJyqk = "新增线索协同线索")
@LogOper(czxxLbdm = "02", yymcJyqk = "0712", czxxJyqk = "新增线索协同线索")
public R saveNewXs(TbStAppXs xs){
try {
String xxzjbh = tbStAppXsService.saveNewXs(xs);
......@@ -43,7 +43,7 @@ public class TbStAppXsController {
}
@PostMapping("/updateXs")
@LogOper(czxxLbdm = "03", yymcJyqk = "0701", czxxJyqk = "修改线索协同线索")
@LogOper(czxxLbdm = "03", yymcJyqk = "0712", czxxJyqk = "修改线索协同线索")
public R updateXs(TbStAppXs xs){
try {
String xxzjbh = tbStAppXsService.updateXs(xs);
......@@ -55,7 +55,7 @@ public class TbStAppXsController {
}
@PostMapping("/deleteXs")
@LogOper(czxxLbdm = "04", yymcJyqk = "0701", czxxJyqk = "删除线索协同线索")
@LogOper(czxxLbdm = "04", yymcJyqk = "0712", czxxJyqk = "删除线索协同线索")
public R deleteXs(String xxzjbh){
try {
tbStAppXsService.deleteXs(xxzjbh);
......@@ -89,7 +89,7 @@ public class TbStAppXsController {
}
@PostMapping("/selectXsByXxzjbh")
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "查询线索协同线索")
@LogOper(czxxLbdm = "01", yymcJyqk = "0712", czxxJyqk = "查询线索协同线索")
public R selectXsByXxzjbh(String xxzjbh){
try {
TbStAppXs xs = tbStAppXsService.selectXsByXxzjbh(xxzjbh);
......@@ -101,7 +101,7 @@ public class TbStAppXsController {
}
@PostMapping("/reportToXs")
@LogOper(czxxLbdm = "03", yymcJyqk = "0701", czxxJyqk = "上报线索协同线索")
@LogOper(czxxLbdm = "03", yymcJyqk = "0712", czxxJyqk = "上报线索协同线索")
public R reportToXs(String xxzjbh){
try {
tbStAppXsService.reportToXs(xxzjbh);
......
......@@ -19,7 +19,7 @@ public class TbStAppWzxxController {
private TbStAppWzxxService tbStAppWzxxService;
@PostMapping("/saveNewWzxx")
@LogOper(czxxLbdm = "02", yymcJyqk = "0701", czxxJyqk = "新增位置信息")
@LogOper(czxxLbdm = "02", yymcJyqk = "0711", czxxJyqk = "新增位置信息")
public R saveNewWzxx(TbStAppWzxx wzxx){
try {
String xxzjbh = tbStAppWzxxService.saveNewWzxx(wzxx);
......@@ -34,7 +34,7 @@ public class TbStAppWzxxController {
}
@PostMapping("/updateWzxx")
@LogOper(czxxLbdm = "03", yymcJyqk = "0701", czxxJyqk = "更新位置信息")
@LogOper(czxxLbdm = "03", yymcJyqk = "0711", czxxJyqk = "更新位置信息")
public R updateWzxx(TbStAppWzxx wzxx){
try {
String xxzjbh = tbStAppWzxxService.updateWzxx(wzxx);
......@@ -46,7 +46,7 @@ public class TbStAppWzxxController {
}
@PostMapping("/deleteWzxx")
@LogOper(czxxLbdm = "04", yymcJyqk = "0701", czxxJyqk = "修改位置信息")
@LogOper(czxxLbdm = "04", yymcJyqk = "0711", czxxJyqk = "修改位置信息")
public R deleteWzxx(String xxzjbh){
try {
tbStAppWzxxService.deleteWzxx(xxzjbh);
......@@ -58,7 +58,7 @@ public class TbStAppWzxxController {
}
@PostMapping("/selectList")
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "查询位置信息")
@LogOper(czxxLbdm = "01", yymcJyqk = "0711", czxxJyqk = "查询位置信息")
public R selectList(TbStAppWzxx wzxx){
try {
Map<String, Object> resultMap = tbStAppWzxxService.selectList(wzxx);
......
......@@ -25,7 +25,7 @@ public class XcxxController {
private XcxxService xcxxService;
@PostMapping("/saveXcxx")
@LogOper(czxxLbdm = "02", yymcJyqk = "0701", czxxJyqk = "新增app现场信息")
@LogOper(czxxLbdm = "02", yymcJyqk = "0708", czxxJyqk = "新增app现场信息")
public R saveXcxx(TbStAppXcxx tbStAppXcxx){
try {
String xcbh = xcxxService.saveXcxx(tbStAppXcxx);
......@@ -51,7 +51,7 @@ public class XcxxController {
}
@PostMapping("/getXcxxListByParam")
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "查询app现场信息列表")
@LogOper(czxxLbdm = "01", yymcJyqk = "0708", czxxJyqk = "查询app现场信息列表")
public R getXcxxListByParam(TbStAppXcxx tbStAppXcxx){
try {
Map<String, Object> resultMap = xcxxService.getXcxxListByParam(tbStAppXcxx);
......@@ -63,7 +63,7 @@ public class XcxxController {
}
@PostMapping("/getXcxxListByGlxx")
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "查询关联下的现场信息")
@LogOper(czxxLbdm = "01", yymcJyqk = "0708", czxxJyqk = "查询关联下的现场信息")
public R getXcxxListByGlxx(String glxxXxzjbh, String glxxlx){
try {
Map<String, Object> resultMap = xcxxService.getXcxxListByAsjbh(glxxXxzjbh, glxxlx);
......@@ -75,7 +75,7 @@ public class XcxxController {
}
@PostMapping("/getXcxxByXcbh")
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "查询app现场信息详情")
@LogOper(czxxLbdm = "01", yymcJyqk = "0708", czxxJyqk = "查询app现场信息详情")
public R getXcxxByXcbh(String xcbh){
try {
TbStAppXcxx tbStAppXcxx = xcxxService.getXcxxByXcbh(xcbh);
......@@ -87,7 +87,7 @@ public class XcxxController {
}
@PostMapping("/updateXcxx")
@LogOper(czxxLbdm = "03", yymcJyqk = "0701", czxxJyqk = "修改app现场信息")
@LogOper(czxxLbdm = "03", yymcJyqk = "0708", czxxJyqk = "修改app现场信息")
public R updateXcxx(TbStAppXcxx tbStAppXcxx){
try {
xcxxService.updateXcxx(tbStAppXcxx);
......@@ -99,7 +99,7 @@ public class XcxxController {
}
@PostMapping("/deleteXcxx")
@LogOper(czxxLbdm = "04", yymcJyqk = "0701", czxxJyqk = "删除app现场信息")
@LogOper(czxxLbdm = "04", yymcJyqk = "0708", czxxJyqk = "删除app现场信息")
public R deleteXcxx(String xcbh){
try {
xcxxService.deleteXcxx(xcbh);
......@@ -122,7 +122,7 @@ public class XcxxController {
}
@RequestMapping("/getFile/{xxzjbh}")
@LogOper(czxxLbdm = "07", yymcJyqk = "0701", czxxJyqk = "app现场信息附件下载")
@LogOper(czxxLbdm = "07", yymcJyqk = "0708", czxxJyqk = "app现场信息附件下载")
public R getFile(@PathVariable String xxzjbh){
try {
HttpServletResponse response = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse();
......
......@@ -38,6 +38,8 @@ public class TbStAppXcxxFj extends BaseModel {
private Long fjDzwjdx;
//附件位置
private String fjDzwjwz;
//录音文字
private String fjLywz;
@TableField(exist = false)
private MultipartFile file;
......
......@@ -9,6 +9,7 @@
FJMS as fjms,
fj_dzwjbt as fjDzwjbt,
fj_dzwjgs as fjDzwjgs,
fj_lywz as fjLywz,
fj_dzwjdx as fjDzwjdx
from tb_st_app_xcxxfj
where glxx_xxzjbh = #{xcbh}
......
......@@ -66,7 +66,7 @@ public class XcxxServiceImpl implements XcxxService {
public String saveOneFj(TbStAppXcxxFj tbStAppXcxxFj) throws IOException {
XzxtUser xzxtUser = SecureUtil.getUserXzxt();
MultipartFile file = tbStAppXcxxFj.getFile();
if (file != null) {
if (file != null && !"3".equals(tbStAppXcxxFj.getFjlx())) {
String xxzjbh = xxzjbhService.getXxzjbh(xzxtUser.getUnitcode());
String fileName = file.getOriginalFilename();
String suffix = "." + FilenameUtils.getExtension(fileName);
......@@ -82,6 +82,17 @@ public class XcxxServiceImpl implements XcxxService {
setOps.add(xxzjbh);
}
return xxzjbh;
} else if ("3".equals(tbStAppXcxxFj.getFjlx())){
String xxzjbh = xxzjbhService.getXxzjbh(xzxtUser.getUnitcode());
tbStAppXcxxFj.setXxzjbh(xxzjbh);
tbStAppXcxxFj.setFjDzwjbt("录音文件");
Utils.setUserDjxxAndCzxx(tbStAppXcxxFj);
xcxxFjMapper.insert(tbStAppXcxxFj);
if (StringUtils.isEmpty(tbStAppXcxxFj.getGlxxXxzjbh())) {
BoundSetOperations<String, String> setOps = redisTemplate.boundSetOps("xcxxfj-hc");
setOps.add(xxzjbh);
}
return xxzjbh;
}
return null;
}
......
......@@ -43,7 +43,7 @@ public class BjHcController {
}
@PostMapping("/clsahcByCphm")
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "车辆背景核查")
@LogOper(czxxLbdm = "01", yymcJyqk = "0703", czxxJyqk = "车辆背景核查")
public R clsahcByCphm(String cphm){
try {
if (StringUtils.isEmpty(cphm)){
......@@ -61,7 +61,7 @@ public class BjHcController {
}
@PostMapping("/znjsByHm")
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "智能检索")
@LogOper(czxxLbdm = "01", yymcJyqk = "0706", czxxJyqk = "智能检索")
public R znjsByHm(String hm){
try {
if (StringUtils.isEmpty(hm)){
......@@ -79,7 +79,7 @@ public class BjHcController {
}
@PostMapping("/saveRxbdTask")
@LogOper(czxxLbdm = "02", yymcJyqk = "0701", czxxJyqk = "人像比对")
@LogOper(czxxLbdm = "02", yymcJyqk = "0702", czxxJyqk = "人像比对")
public R saveRxbdTask(TbStAppRxhcrw rxhcrw){
try {
if (StringUtils.isEmpty(rxhcrw.getTaskId())){
......@@ -109,7 +109,7 @@ public class BjHcController {
}
@PostMapping("/deleteRxhcrw/{taskId}")
@LogOper(czxxLbdm = "04", yymcJyqk = "0701", czxxJyqk = "删除人像比对任务")
@LogOper(czxxLbdm = "04", yymcJyqk = "0702", czxxJyqk = "删除人像比对任务")
public R deleteRxhcrw(@PathVariable String taskId){
try {
tbStAppRxhcrwService.deleteRxhcrw(taskId);
......
......@@ -20,7 +20,7 @@ public class ZbxxjsController {
private ZbxxjsService zbxxjsService;
@RequestMapping("/zbajjs")//周边案件检索
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "周边案件检索")
@LogOper(czxxLbdm = "01", yymcJyqk = "0707", czxxJyqk = "周边案件检索")
public R getZbAjxxByJwd(ZbxxjsQueryParam queryParam) {
try {
if (queryParam.isEmpty()){
......@@ -35,7 +35,7 @@ public class ZbxxjsController {
}
@RequestMapping("/zbryjs")//周边刑侦关注人员检索
@LogOper(czxxLbdm = "01", yymcJyqk = "0701", czxxJyqk = "周边刑侦关注人员检索")
@LogOper(czxxLbdm = "01", yymcJyqk = "0707", czxxJyqk = "周边刑侦关注人员检索")
public R getZbRyxxByJwd(ZbxxjsQueryParam queryParam) {
try {
if (queryParam.isEmpty()){
......
......@@ -29,6 +29,8 @@ import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.RedisUtil;
import org.springblade.core.tool.utils.WebUtil;
import org.springblade.founder.log.LogOper;
import org.springblade.founder.sbgl.entity.SysAppsb;
import org.springblade.founder.sbgl.service.SysAppsbService;
import org.springblade.modules.auth.granter.ITokenGranter;
import org.springblade.modules.auth.granter.TokenGranterBuilder;
import org.springblade.modules.auth.granter.TokenParameter;
......@@ -41,10 +43,12 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.data.redis.serializer.StringRedisSerializer;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.net.URLDecoder;
import java.util.List;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
......@@ -61,6 +65,8 @@ public class AuthController {
private RedisUtil redisUtil;
@Autowired
private IUserService userService;
@Autowired
private SysAppsbService sysAppsbService;
@Value("${secretKey}")
private String secretKey;
......@@ -72,7 +78,7 @@ public class AuthController {
@PostMapping("token")
@ApiOperation(value = "获取认证token", notes = "传入租户ID:tenantId,账号:account,密码:password")
@LogOper(czxxLbdm = "05", yymcJyqk = "0701", czxxJyqk = "登陆")
@LogOper(czxxLbdm = "05", yymcJyqk = "0700", czxxJyqk = "登陆")
public R<AuthInfo> token(@ApiParam(value = "授权类型", required = true) @RequestParam(defaultValue = "password", required = false) String grantType,
@ApiParam(value = "刷新令牌") @RequestParam(required = false) String refreshToken,
@ApiParam(value = "租户ID", required = true) @RequestParam(defaultValue = "000000", required = false) String tenantId,
......@@ -95,9 +101,19 @@ public class AuthController {
if (userInfo == null || userInfo.getUser() == null) {
return R.fail(TokenUtil.USER_NOT_FOUND);
}
// if (userInfo.getPermissions() == null || userInfo.getPermissions().size() == 0){
// return R.fail(TokenUtil.USER_NOT_PERMISSIONS);
// }
List<String> list = sysAppsbService.getSysAppsbYyBySfzh(userInfo.getUser().getIdentitycard());
userInfo.setPermissions(list);
if (userInfo.getPermissions() == null || userInfo.getPermissions().size() == 0){
return R.fail(TokenUtil.USER_NOT_PERMISSIONS);
}
SysAppsb sysAppsb = sysAppsbService.getSysAppsbBySfzh(userInfo.getUser().getIdentitycard());
if (sysAppsb == null) {
return R.fail("账号未绑定设备!");
}
if ("1".equals(sysAppsb.getSbzt())) {
return R.fail("设备已挂失,无法登陆!");
}
redisTemplate.setKeySerializer(new StringRedisSerializer());
ValueOperations<String,String> ops = redisTemplate.opsForValue();
String key = "appUserIdleTime:" + userInfo.getUser().getIdentitycard();
ops.set(key, "1", userIdleTime, TimeUnit.MINUTES);//存入redis并设置过期时间
......@@ -162,7 +178,7 @@ public class AuthController {
@PostMapping("login")
@ApiOperation(value = "登录")
@LogOper(czxxLbdm = "05", yymcJyqk = "0701", czxxJyqk = "登陆")
@LogOper(czxxLbdm = "05", yymcJyqk = "0700", czxxJyqk = "登陆")
public R<AuthInfo> login(@ApiParam(value = "身份证号") @RequestParam(required = false) String zjhm) {
String userType = Func.toStr(WebUtil.getRequest().getHeader(TokenUtil.USER_TYPE_HEADER_KEY), TokenUtil.DEFAULT_USER_TYPE);
......@@ -179,10 +195,22 @@ public class AuthController {
if (userInfo == null || userInfo.getUser() == null) {
return R.fail(TokenUtil.USER_NOT_FOUND);
}
List<String> list = sysAppsbService.getSysAppsbYyBySfzh(userInfo.getUser().getIdentitycard());
userInfo.setPermissions(list);
if (userInfo.getPermissions() == null || userInfo.getPermissions().size() == 0){
return R.fail(TokenUtil.USER_NOT_PERMISSIONS);
}
SysAppsb sysAppsb = sysAppsbService.getSysAppsbBySfzh(userInfo.getUser().getIdentitycard());
if (sysAppsb == null) {
return R.fail("账号未绑定设备!");
}
if ("1".equals(sysAppsb.getSbzt())) {
return R.fail("设备已挂失,无法登陆!");
}
redisTemplate.setKeySerializer(new StringRedisSerializer());
ValueOperations<String,String> ops = redisTemplate.opsForValue();
String key = "appUserIdleTime:" + userInfo.getUser().getIdentitycard();
ops.set(key, "1", 10, TimeUnit.MINUTES);//存入redis并设置过期时间
return R.data(TokenUtil.createAuthInfo(userInfo));
}
}
package org.springblade.modules.auth.controller;
import org.apache.commons.lang.StringUtils;
import org.springblade.core.secure.utils.SecureUtil;
import org.springblade.founder.utils.R;
import org.springblade.modules.system.entity.XzxtUser;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* TODO
*
* @author create by lystar
* @date 2023/11/10 15:21
*/
@RestController
@RequestMapping("/yckz")
public class YckzController {
@Autowired
private RedisTemplate<String, String> redisTemplate;
@RequestMapping("/checkYckz")
public R checkYckz() {
XzxtUser user = SecureUtil.getUserXzxt();
String s = redisTemplate.opsForValue().get("appYckz:" + user.getIdentitycard());
return R.ok().data("flag", StringUtils.isEmpty(s));
}
}
......@@ -58,7 +58,7 @@ public class PasswordTokenGranter implements ITokenGranter {
// userInfo = userService.userInfo(tenantId, account, DigestUtil.encrypt(password));
// }
} else if (Func.isNoneBlank(zjhm)) {
userInfo = userService.userInfoR(tenantId, account, DigestUtil.encrypt(password), zjhm);
userInfo = userService.userInfoR(tenantId, account, null, zjhm);
}
return userInfo;
}
......
......@@ -86,6 +86,7 @@ public class TokenUtil {
authInfo.setUserId(user.getId());
authInfo.setUserName(user.getTrueName());
authInfo.setAuthority(Func.join(userInfo.getRoles()));
authInfo.setPermission(Func.join(userInfo.getPermissions()));
authInfo.setAccessToken(accessToken.getToken());
authInfo.setExpiresIn(accessToken.getExpire());
authInfo.setRefreshToken(createRefreshToken(userInfo).getToken());
......
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