From 1578f99b76d84133fc63e5902ed70336e60d23cd Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Thu, 09 Jun 2022 10:20:59 +0800
Subject: [PATCH] 新增保安員查詢和許可證查詢

---
 src/main/java/org/springblade/modules/securityapply/mapper/SecurityApplyMapper.xml             |   41 +++
 src/main/java/org/springblade/modules/system/mapper/UserMapper.xml                             |   16 +
 src/main/java/org/springblade/modules/securityapply/controller/SecurityApplyController.java    |  158 +++++++++++++
 src/main/java/org/springblade/modules/securityapply/mapper/SecurityApplyMapper.java            |   28 ++
 src/main/java/org/springblade/modules/securityapply/service/impl/SecurityApplyServiceImpl.java |  134 +++++++++++
 src/main/java/org/springblade/modules/securityapply/service/SecurityApplyService.java          |   40 +++
 src/main/java/org/springblade/modules/system/vo/UserDTO.java                                   |   55 ++++
 src/main/java/org/springblade/modules/securityapply/entity/SecurityApply.java                  |   81 ++++++
 src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java                 |   11 
 src/main/java/org/springblade/modules/licence/controller/LicencePaperController.java           |   17 +
 src/main/java/org/springblade/modules/securityapply/vo/SecurityApplyVO.java                    |   55 ++++
 src/main/java/org/springblade/modules/system/controller/UserController.java                    |   10 
 src/main/java/org/springblade/modules/system/mapper/UserMapper.java                            |    8 
 src/main/java/org/springblade/modules/system/service/IUserService.java                         |    8 
 src/main/resources/application.yml                                                             |    2 
 15 files changed, 664 insertions(+), 0 deletions(-)

diff --git a/src/main/java/org/springblade/modules/licence/controller/LicencePaperController.java b/src/main/java/org/springblade/modules/licence/controller/LicencePaperController.java
index a85187c..6917cd2 100644
--- a/src/main/java/org/springblade/modules/licence/controller/LicencePaperController.java
+++ b/src/main/java/org/springblade/modules/licence/controller/LicencePaperController.java
@@ -12,6 +12,8 @@
 import org.springframework.web.bind.annotation.*;
 
 import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
 
 /**
  * @author zhongrj
@@ -159,6 +161,21 @@
 	}
 
 	/**
+	 * 详情
+	 * @param licencePaper 许可证信息对象
+	 */
+	@GetMapping("/details")
+	@ApiOperation(value = "详情", notes = "传入licencePaper")
+	public R details(LicencePaper licencePaper) {
+		Map<String, Object> map = new HashMap<>();
+		LicencePaper detail = licencePaperService.getOne(Condition.getQueryWrapper(licencePaper));
+		if (null!=detail){
+			map.put("url",detail.getUrl());
+		}
+		return R.data(map);
+	}
+
+	/**
 	 * 查询分公司的许可证信息(包含总公司)
 	 * @param licencePaper 许可证信息对象
 	 */
diff --git a/src/main/java/org/springblade/modules/securityapply/controller/SecurityApplyController.java b/src/main/java/org/springblade/modules/securityapply/controller/SecurityApplyController.java
new file mode 100644
index 0000000..286cf96
--- /dev/null
+++ b/src/main/java/org/springblade/modules/securityapply/controller/SecurityApplyController.java
@@ -0,0 +1,158 @@
+
+package org.springblade.modules.securityapply.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import io.swagger.annotations.ApiParam;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.log.exception.ServiceException;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.securityapply.entity.SecurityApply;
+import org.springblade.modules.securityapply.service.SecurityApplyService;
+import org.springblade.modules.securityapply.vo.SecurityApplyVO;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 保安员证申诉控制器
+ * @author zhongrj
+ * @since 2022-03-03
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/securityApply")
+public class SecurityApplyController extends BladeController {
+
+	private final SecurityApplyService securityApplyService;
+
+	/**
+	 * 详情
+	 * @param securityApply
+	 * @return
+	 */
+	@GetMapping("/detail")
+	public R<SecurityApply> detail(SecurityApply securityApply) {
+		SecurityApply detail = securityApplyService.getOne(Condition.getQueryWrapper(securityApply));
+		return R.data(detail);
+	}
+
+	/**
+	 * 分页
+	 * @param query
+	 * @param securityApply
+	 * @return
+	 */
+	@GetMapping("/list")
+	public R<IPage<SecurityApply>> list(SecurityApply securityApply, Query query) {
+		IPage<SecurityApply> pages = securityApplyService.page(Condition.getPage(query), Condition.getQueryWrapper(securityApply));
+		return R.data(pages);
+	}
+
+	/**
+	 * 自定义分页
+	 * @param securityApply
+	 * @param query
+	 * @return
+	 */
+	@GetMapping("/page")
+	public R<IPage<SecurityApplyVO>> page(SecurityApplyVO securityApply, Query query) {
+		IPage<SecurityApplyVO> pages = securityApplyService.selectSecurityApplyPage(Condition.getPage(query), securityApply);
+		return R.data(pages);
+	}
+
+	/**
+	 * 新增
+	 * @param securityApply
+	 * @return
+	 */
+	@PostMapping("/save")
+	public R save(@RequestBody SecurityApply securityApply) {
+		//判断是否已经申请过(审核通过,待审核)
+		SecurityApply securityApply1 = new SecurityApply();
+		securityApply1.setAuditStatus(1);
+		securityApply1.setNumber(securityApply.getNumber());
+		securityApply1.setUserId(securityApply.getUserId());
+		List<SecurityApply> list1 = securityApplyService.list(Condition.getQueryWrapper(securityApply1));
+		if (list1.size()>0){
+			throw new ServiceException("当前人员已经提交申请,审核已通过,请勿重复申请!");
+		}
+
+		SecurityApply securityApply2 = new SecurityApply();
+		securityApply2.setAuditStatus(3);
+		securityApply2.setNumber(securityApply.getNumber());
+		securityApply2.setUserId(securityApply.getUserId());
+		List<SecurityApply> list2 = securityApplyService.list(Condition.getQueryWrapper(securityApply2));
+
+		if (list2.size()>0){
+			throw new ServiceException("当前人员已经提交申请,待审核中,请勿重复申请!");
+		}
+		//设置时间
+		securityApply.setCreateTime(new Date());
+		//待审核
+		securityApply.setAuditStatus(3);
+		//返回
+		return R.data(securityApplyService.save(securityApply));
+	}
+
+
+	/**
+	 * 修改
+	 * @param securityApply
+	 * @return
+	 */
+	@PostMapping("/update")
+	public R update(@RequestBody SecurityApply securityApply) {
+		//修改并返回
+		return R.data(securityApplyService.updateById(securityApply));
+	}
+
+	/**
+	 * 新增或修改
+	 * @param securityApply
+	 * @return
+	 */
+	@PostMapping("/submit")
+	public R submit(@RequestBody SecurityApply securityApply) {
+		return R.status(securityApplyService.saveOrUpdate(securityApply));
+	}
+
+
+	/**
+	 * 删除
+	 */
+	@PostMapping("/remove")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(securityApplyService.removeByIds(Func.toLongList(ids)));
+	}
+
+	/**
+	 * 审核
+	 * @param securityApply
+	 * @return
+	 */
+	@PostMapping("/audit")
+	public R audit(@RequestBody SecurityApply securityApply) {
+		securityApply.setAuditTime(new Date());
+		//修改并返回
+		return R.data(securityApplyService.audit(securityApply));
+	}
+
+
+	/**
+	 * 批量审核
+	 * @param securityApply
+	 * @return
+	 */
+	@PostMapping("/batchAudit")
+	public R batchAudit(@RequestBody SecurityApplyVO securityApply) {
+		securityApply.setAuditTime(new Date());
+		//修改并返回
+		return R.data(securityApplyService.batchAudit(securityApply));
+	}
+
+}
diff --git a/src/main/java/org/springblade/modules/securityapply/entity/SecurityApply.java b/src/main/java/org/springblade/modules/securityapply/entity/SecurityApply.java
new file mode 100644
index 0000000..0d16fb7
--- /dev/null
+++ b/src/main/java/org/springblade/modules/securityapply/entity/SecurityApply.java
@@ -0,0 +1,81 @@
+package org.springblade.modules.securityapply.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 保安员证申诉实体类
+ *
+ * @author zhongrj
+ * @since 2020-03-03
+ */
+@Data
+@TableName("sys_security_apply")
+public class SecurityApply implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 主键id
+	 */
+	@TableId(value = "id",type = IdType.AUTO)
+	private Long id;
+
+	/**
+	 * 用户id
+	 */
+	private Long userId;
+
+	/**
+	 * 保安证编号
+	 */
+	private String number;
+
+	/**
+	 * 保安证图片 url
+	 */
+	private String url;
+
+	/**
+	 * 申请理由
+	 */
+	private String applyReason;
+
+
+	/**
+	 * 申请人id
+	 */
+	private Long createUser;
+
+	/**
+	 * 创建时间
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	private Date createTime;
+
+	/**
+	 * 审核状态 1:通过   2:不通过 3:待审核
+	 */
+	private Integer auditStatus;
+
+	/**
+	 * 审核明细
+	 */
+	private String auditDetail;
+
+    /**
+	 * 审核时间
+	 */
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+  	private Date auditTime;
+
+}
diff --git a/src/main/java/org/springblade/modules/securityapply/mapper/SecurityApplyMapper.java b/src/main/java/org/springblade/modules/securityapply/mapper/SecurityApplyMapper.java
new file mode 100644
index 0000000..b7d8e61
--- /dev/null
+++ b/src/main/java/org/springblade/modules/securityapply/mapper/SecurityApplyMapper.java
@@ -0,0 +1,28 @@
+
+package org.springblade.modules.securityapply.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.securityapply.entity.SecurityApply;
+import org.springblade.modules.securityapply.vo.SecurityApplyVO;
+
+import java.util.List;
+
+/**
+ *  保安员证申诉Mapper 接口
+ *
+ * @author zhongrj
+ * @since 2022-03-03
+ */
+public interface SecurityApplyMapper extends BaseMapper<SecurityApply> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param securityApply
+	 * @return
+	 */
+	List<SecurityApplyVO> selectSecurityApplyPage(IPage<SecurityApplyVO> page, @Param("securityApply") SecurityApplyVO securityApply);
+}
diff --git a/src/main/java/org/springblade/modules/securityapply/mapper/SecurityApplyMapper.xml b/src/main/java/org/springblade/modules/securityapply/mapper/SecurityApplyMapper.xml
new file mode 100644
index 0000000..56866f4
--- /dev/null
+++ b/src/main/java/org/springblade/modules/securityapply/mapper/SecurityApplyMapper.xml
@@ -0,0 +1,41 @@
+<?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.modules.securityapply.mapper.SecurityApplyMapper">
+
+    <!--自定义查询保安员证申诉分页数据-->
+    <select id="selectSecurityApplyPage" resultType="org.springblade.modules.securityapply.vo.SecurityApplyVO">
+        select
+        ssa.*,
+        bu.real_name realName,IF(mod(SUBSTR(bu.cardid,17,1),2),1,2) sex,bu.cardid,
+        bd.dept_name deptName,
+        bu1.real_name applyName
+        from sys_security_apply ssa
+        left join blade_user bu on bu.id = ssa.user_id
+        left join blade_dept bd on bd.id = bu.dept_id
+        left join blade_user bu1 on bu1.id = ssa.create_user
+        where 1=1
+        <if test="securityApply.realName!=null and securityApply.realName!=''">
+            and bu.real_name like concat('%',#{securityApply.realName},'%')
+        </if>
+        <if test="securityApply.cardid!=null and securityApply.cardid!=''">
+            and bu.cardid like concat('%',#{securityApply.cardid},'%')
+        </if>
+        <if test="securityApply.number!=null and securityApply.number!=''">
+            and ssa.number like concat('%',#{securityApply.number},'%')
+        </if>
+        <if test="securityApply.deptName!=null and securityApply.deptName!=''">
+            and bd.dept_name like concat('%',#{securityApply.deptName},'%')
+        </if>
+        <if test="securityApply.auditStatus!=null">
+            and ssa.audit_status = #{securityApply.auditStatus}
+        </if>
+        <if test="securityApply.startTime!=null and securityApply.startTime!=''">
+            and date_format(ssa.create_time,'%Y-%m-%d')&gt;=#{securityApply.startTime}
+        </if>
+        <if test="securityApply.endTime!=null and securityApply.endTime!=''">
+            and date_format(ssa.create_time,'%Y-%m-%d')&lt;=#{securityApply.endTime}
+        </if>
+        order by ssa.id desc
+    </select>
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/securityapply/service/SecurityApplyService.java b/src/main/java/org/springblade/modules/securityapply/service/SecurityApplyService.java
new file mode 100644
index 0000000..1cbe53a
--- /dev/null
+++ b/src/main/java/org/springblade/modules/securityapply/service/SecurityApplyService.java
@@ -0,0 +1,40 @@
+
+package org.springblade.modules.securityapply.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.apache.ibatis.annotations.Param;
+import org.springblade.modules.securityapply.entity.SecurityApply;
+import org.springblade.modules.securityapply.vo.SecurityApplyVO;
+
+/**
+ * 保安员证申诉服务类
+ *
+ * @author zhongrj
+ * @since 2022-03-03
+ */
+public interface SecurityApplyService extends IService<SecurityApply> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param securityApplyVO
+	 * @return
+	 */
+	IPage<SecurityApplyVO> selectSecurityApplyPage(IPage<SecurityApplyVO> page, @Param("securityApplyVO") SecurityApplyVO securityApplyVO);
+
+	/**
+	 * 审核
+	 * @param securityApply
+	 * @return
+	 */
+	Object audit(SecurityApply securityApply);
+
+	/**
+	 * 批量审核
+	 * @param securityApply
+	 * @return
+	 */
+    Object batchAudit(SecurityApplyVO securityApply);
+}
diff --git a/src/main/java/org/springblade/modules/securityapply/service/impl/SecurityApplyServiceImpl.java b/src/main/java/org/springblade/modules/securityapply/service/impl/SecurityApplyServiceImpl.java
new file mode 100644
index 0000000..838fa81
--- /dev/null
+++ b/src/main/java/org/springblade/modules/securityapply/service/impl/SecurityApplyServiceImpl.java
@@ -0,0 +1,134 @@
+
+package org.springblade.modules.securityapply.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.common.utils.DesensitizedUtil;
+import org.springblade.core.log.exception.ServiceException;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.modules.FTP.MyAsyncService;
+import org.springblade.modules.securityapply.entity.SecurityApply;
+import org.springblade.modules.securityapply.mapper.SecurityApplyMapper;
+import org.springblade.modules.securityapply.service.SecurityApplyService;
+import org.springblade.modules.securityapply.vo.SecurityApplyVO;
+import org.springblade.modules.securitypaper.entity.SecurityPaper;
+import org.springblade.modules.securitypaper.service.SecurityPaperService;
+import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.service.IUserService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.text.SimpleDateFormat;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.List;
+
+/**
+ *  保安员证申诉服务实现类
+ *
+ * @author zhongrj
+ * @since 2022-03-03
+ */
+@Service
+public class SecurityApplyServiceImpl extends ServiceImpl<SecurityApplyMapper, SecurityApply> implements SecurityApplyService {
+
+	@Autowired
+	private MyAsyncService myAsyncService;
+
+	@Autowired
+	private IUserService userService;
+
+	@Autowired
+	private SecurityPaperService securityPaperService;
+
+	/**
+	 * 自定义分页查询保安员证申诉数据
+	 * @param page
+	 * @param securityApply
+	 * @return
+	 */
+	@Override
+	public IPage<SecurityApplyVO> selectSecurityApplyPage(IPage<SecurityApplyVO> page, SecurityApplyVO securityApply) {
+		return page.setRecords(baseMapper.selectSecurityApplyPage(page, securityApply));
+	}
+
+	/**
+	 * 审核
+	 * @param securityApply
+	 * @return
+	 */
+	@Override
+	public Object audit(SecurityApply securityApply) {
+		//查询用户信息
+		SecurityApply apply = this.getById(securityApply.getId());
+		User user = userService.getById(apply.getUserId());
+		//判断审核状态
+		if (securityApply.getAuditStatus().equals(1)){
+			//审核通过,判断是否为重复审核通过,即查询保安证编号库是否已存在该编号,如果已存在,则不新增,否则则新增,同时修改改保安员的保安证编号
+			//1.1 查询该编号是否已在存储库存在
+			SecurityPaper securityPaper = new SecurityPaper();
+			securityPaper.setNumber(apply.getNumber());
+			List<SecurityPaper> list = securityPaperService.list(Condition.getQueryWrapper(securityPaper));
+			if (list.size()>0){
+				//判断该编号对应的人员是否为同一人
+				for (SecurityPaper paper : list) {
+					if (!paper.getIdCardNo().equals(user.getCardid())){
+						//其他人员已占用该编号
+						throw new ServiceException("保安证编号:["+ apply.getNumber() +"] 已存在");
+					}
+				}
+			}else {
+				//新增
+				SecurityPaper securityPaper1 = new SecurityPaper();
+				securityPaper1.setNumber(apply.getNumber());
+				securityPaper1.setCreateTime(new Date());
+				securityPaper1.setIdCardNo(user.getCardid());
+				securityPaper1.setUserId(user.getId());
+				securityPaper1.setExamId(apply.getId());
+				securityPaper1.setPeopleName(user.getRealName());
+				securityPaper1.setSource(2);
+				//插入保安证存储库
+				securityPaperService.save(securityPaper1);
+				//用户保安证编号更新
+				user.setHold("1");
+				user.setSecuritynumber(apply.getNumber());
+				user.setUpdateTime(new Date());
+				boolean status = userService.updateById(user);
+
+				if (status) {
+					//外网数据同步
+					String s1 =
+						"update blade_user set hold = " + user.getHold() +
+							",securitynumber = " + "'" + DesensitizedUtil.desensitizedSecurityNumber(user.getSecuritynumber()) + "'" +
+							",update_time = " + "'" + new SimpleDateFormat("yyyy-MM-dd HH:mm:dd").format(user.getUpdateTime()) + "'" +
+							" " + "where id = " + "'" + user.getId() + "'";
+					myAsyncService.FTP(s1);
+				}
+			}
+		}
+		//证件核实申请更新并返回
+		return this.updateById(securityApply);
+	}
+
+	/**
+	 * 批量审核
+	 * @param securityApply
+	 * @return
+	 */
+	@Override
+	public Object batchAudit(SecurityApplyVO securityApply) {
+		//取出id
+		List<String> list = Arrays.asList(securityApply.getIds().split(","));
+		//遍历
+		for (String s : list) {
+			SecurityApply securityApply1 = new SecurityApply();
+			securityApply1.setAuditTime(securityApply.getAuditTime());
+			securityApply1.setAuditStatus(securityApply.getAuditStatus());
+			securityApply1.setId(Long.parseLong(s));
+			//审核
+			audit(securityApply1);
+		}
+		//返回
+		return null;
+	}
+}
diff --git a/src/main/java/org/springblade/modules/securityapply/vo/SecurityApplyVO.java b/src/main/java/org/springblade/modules/securityapply/vo/SecurityApplyVO.java
new file mode 100644
index 0000000..4be090b
--- /dev/null
+++ b/src/main/java/org/springblade/modules/securityapply/vo/SecurityApplyVO.java
@@ -0,0 +1,55 @@
+
+package org.springblade.modules.securityapply.vo;
+
+import lombok.Data;
+import org.springblade.modules.securityapply.entity.SecurityApply;
+
+/**
+ * 保安员证申诉视图实体类
+ * @author zhongrj
+ * @since 2022-03-03
+ */
+@Data
+public class SecurityApplyVO extends SecurityApply {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 保安员姓名
+	 */
+	private String realName;
+
+	/**
+	 * 申请人姓名
+	 */
+	private String applyName;
+
+	/**
+	 * 身份证号
+	 */
+	private String cardid;
+
+	/**
+	 * 性别
+	 */
+	private String sex;
+
+	/**
+	 * 企业名称
+	 */
+	private String deptName;
+
+	/**
+	 * 开始时间
+	 */
+	private String startTime;
+
+	/**
+	 * 截止时间
+	 */
+	private String endTime;
+
+	/**
+	 * ids
+	 */
+	private String ids;
+}
diff --git a/src/main/java/org/springblade/modules/system/controller/UserController.java b/src/main/java/org/springblade/modules/system/controller/UserController.java
index 50485e6..ad0c3f8 100644
--- a/src/main/java/org/springblade/modules/system/controller/UserController.java
+++ b/src/main/java/org/springblade/modules/system/controller/UserController.java
@@ -393,4 +393,14 @@
 		return R.data(list);
 	}
 
+	/**
+	 * 查询保安员信息
+	 * @param user
+	 * @return
+	 */
+	@GetMapping("/getSecurityInfoByIdCardNo")
+	public R getSecurityInfoByIdCardNo(User user){
+		return R.data(userService.getSecurityInfoByIdCardNo(user));
+	}
+
 }
diff --git a/src/main/java/org/springblade/modules/system/mapper/UserMapper.java b/src/main/java/org/springblade/modules/system/mapper/UserMapper.java
index 34ee592..8bdf9ce 100644
--- a/src/main/java/org/springblade/modules/system/mapper/UserMapper.java
+++ b/src/main/java/org/springblade/modules/system/mapper/UserMapper.java
@@ -25,6 +25,7 @@
 import org.springblade.modules.system.excel.SecurityExcel;
 import org.springblade.modules.system.excel.UserExcel;
 import org.springblade.modules.system.entity.User;
+import org.springblade.modules.system.vo.UserDTO;
 import org.springblade.modules.system.vo.UserVO;
 import org.springframework.boot.autoconfigure.quartz.QuartzDataSource;
 
@@ -135,4 +136,11 @@
 	 * @return
 	 */
     Integer getSecurityPaperCount(@Param("pre") String pre);
+
+	/**
+	 * 查询保安员信息
+	 * @param user
+	 * @return
+	 */
+	UserDTO getSecurityInfoByIdCardNo(@Param("user")User user);
 }
diff --git a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
index 166ed2f..1f008cc 100644
--- a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
@@ -556,4 +556,20 @@
         select ifnull(max(0+RIGHT(securitynumber,5)),0) from blade_user
         where securitynumber like concat('%',#{pre},'%')
     </select>
+
+    <!--查询保安员信息-->
+    <select id="getSecurityInfoByIdCardNo" resultType="org.springblade.modules.system.vo.UserDTO">
+        select
+        bu.real_name realName,
+        bd.dept_name as deptName,
+        if(bu.sex=1,'男','女') sex,
+        bu.cardid
+        from
+        blade_user bu left join blade_dept bd on bu.dept_id = bd.id
+        where
+        bu.is_deleted = 0
+        and role_id = '1412226235153731586'
+        and bu.status = 1
+        and bu.cardid = #{user.cardid}
+    </select>
 </mapper>
diff --git a/src/main/java/org/springblade/modules/system/service/IUserService.java b/src/main/java/org/springblade/modules/system/service/IUserService.java
index 9f1ca01..1a21d64 100644
--- a/src/main/java/org/springblade/modules/system/service/IUserService.java
+++ b/src/main/java/org/springblade/modules/system/service/IUserService.java
@@ -27,6 +27,7 @@
 import org.springblade.modules.system.entity.UserOauth;
 import org.springblade.modules.system.excel.SecurityExcel;
 import org.springblade.modules.system.excel.UserExcel;
+import org.springblade.modules.system.vo.UserDTO;
 import org.springblade.modules.system.vo.UserVO;
 
 import java.util.List;
@@ -267,4 +268,11 @@
 	 * @return
 	 */
 	Integer getSecurityPaperCount(String pre);
+
+	/**
+	 * 查询保安员信息
+	 * @param user
+	 * @return
+	 */
+	UserDTO getSecurityInfoByIdCardNo(User user);
 }
diff --git a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
index 281d3e0..5e7736d 100644
--- a/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
+++ b/src/main/java/org/springblade/modules/system/service/impl/UserServiceImpl.java
@@ -48,6 +48,7 @@
 import org.springblade.modules.system.service.IUserDeptService;
 import org.springblade.modules.system.service.IUserOauthService;
 import org.springblade.modules.system.service.IUserService;
+import org.springblade.modules.system.vo.UserDTO;
 import org.springblade.modules.system.vo.UserVO;
 import org.springblade.modules.system.wrapper.UserWrapper;
 import org.springframework.stereotype.Service;
@@ -530,4 +531,14 @@
 	public Integer getSecurityPaperCount(String pre) {
 		return baseMapper.getSecurityPaperCount(pre);
 	}
+
+	/**
+	 * 查询保安员信息
+	 * @param user
+	 * @return
+	 */
+	@Override
+	public UserDTO getSecurityInfoByIdCardNo(User user) {
+		return baseMapper.getSecurityInfoByIdCardNo(user);
+	}
 }
diff --git a/src/main/java/org/springblade/modules/system/vo/UserDTO.java b/src/main/java/org/springblade/modules/system/vo/UserDTO.java
new file mode 100644
index 0000000..bf78df1
--- /dev/null
+++ b/src/main/java/org/springblade/modules/system/vo/UserDTO.java
@@ -0,0 +1,55 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.system.vo;
+
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.databind.annotation.JsonSerialize;
+import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 视图实体类
+ *
+ * @author Chill
+ */
+@Data
+public class UserDTO implements Serializable {
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 部门名
+	 */
+	private String deptName;
+
+	/**
+	 * 性名
+	 */
+	private String realName;
+
+	/**
+	 * 性别
+	 */
+	private String sex;
+
+
+	/**
+	 * 性别
+	 */
+	private String cardid;
+}
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 3db5a30..dd96287 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -197,6 +197,8 @@
     skip-url:
       - /blade-test/**
       - /readFile
+      - /blade-user/getSecurityInfoByIdCardNo
+      - /licencePaper/details
 #      - /liveLocation/**
 #      - /locus/**
 #      - /examScore/**

--
Gitblit v1.9.3