兴安优化审批

This commit is contained in:
zc
2025-09-03 10:39:33 +08:00
parent 8521c18416
commit c7a2bc5276
13 changed files with 172 additions and 92 deletions

View File

@@ -255,7 +255,16 @@ public class VisCarryStuffController extends BaseController {
//查询审核信息 //查询审核信息
List<VisitorReviewProcessVo> reviewProcess = visCarryStuffService.queryVisitorReviewProcessList(id); List<VisitorReviewProcessVo> reviewProcess = visCarryStuffService.queryVisitorReviewProcessList(id);
if(CollUtil.isNotEmpty(reviewProcess)) { if (CollUtil.isNotEmpty(reviewProcess)) {
boolean flag = true;
for (VisitorReviewProcessVo process : reviewProcess) {
if (!flag) {
process.setState(null);
}
if (Constants.ONE.equals(process.getState())) {
flag = false;
}
}
stuffVo.setReviewProcessList(reviewProcess); stuffVo.setReviewProcessList(reviewProcess);
} }
@@ -289,6 +298,9 @@ public class VisCarryStuffController extends BaseController {
} }
} }
String url = "";
// 查询一级审核人,企微发送消息(小程序来源)
SysPeople people = sysPeopleService.selectSysPeopleById(vo.getReviewer1());
try { try {
//新增出门申请 //新增出门申请
visCarryStuffService.insertVisExitOut(vo); visCarryStuffService.insertVisExitOut(vo);
@@ -297,42 +309,41 @@ public class VisCarryStuffController extends BaseController {
visStuffInfoList.forEach(stuff -> stuff.setExitId(vo.getId())); visStuffInfoList.forEach(stuff -> stuff.setExitId(vo.getId()));
visCarryStuffService.insertVisStuffInfo(visStuffInfoList); visCarryStuffService.insertVisStuffInfo(visStuffInfoList);
url = getExamineUrl(String.valueOf(vo.getId()), people.getPhone());
//新增审核环节信息 //新增审核环节信息
List<VisExitOutVo> list = new ArrayList<>(); List<VisExitOutVo> list = new ArrayList<>();
VisExitOutVo visExitOutVo = new VisExitOutVo(); VisExitOutVo visExitOutVo = new VisExitOutVo();
visExitOutVo.setId(vo.getId()); visExitOutVo.setId(vo.getId());
visExitOutVo.setReviewer(vo.getReviewer1()); visExitOutVo.setReviewer(vo.getReviewer1());
visExitOutVo.setState(ExamineEnum.IN_REVIEW.getCode()); visExitOutVo.setState(ExamineEnum.IN_REVIEW.getCode());
visExitOutVo.setApproveNode(1);
visExitOutVo.setApproveData(url.substring(url.lastIndexOf("=") + 1));
list.add(visExitOutVo); list.add(visExitOutVo);
VisExitOutVo visExitOutVo2 = new VisExitOutVo(); VisExitOutVo visExitOutVo2 = new VisExitOutVo();
visExitOutVo2.setId(vo.getId()); visExitOutVo2.setId(vo.getId());
visExitOutVo2.setReviewer(vo.getReviewer2()); visExitOutVo2.setReviewer(vo.getReviewer2());
visExitOutVo2.setState(ExamineEnum.IN_REVIEW.getCode()); visExitOutVo2.setState(ExamineEnum.IN_REVIEW.getCode());
visExitOutVo2.setApproveNode(2);
list.add(visExitOutVo2); list.add(visExitOutVo2);
VisExitOutVo visExitOutVo3 = new VisExitOutVo(); VisExitOutVo visExitOutVo3 = new VisExitOutVo();
visExitOutVo3.setId(vo.getId()); visExitOutVo3.setId(vo.getId());
visExitOutVo3.setReviewer(vo.getReviewer3()); visExitOutVo3.setReviewer(vo.getReviewer3());
visExitOutVo3.setState(ExamineEnum.IN_REVIEW.getCode()); visExitOutVo3.setState(ExamineEnum.IN_REVIEW.getCode());
visExitOutVo3.setApproveNode(3);
list.add(visExitOutVo3); list.add(visExitOutVo3);
//保存审核环节表 //保存审核环节表
visCarryStuffService.saveVisitorReviewProcessList(list); visCarryStuffService.saveVisitorReviewProcessList(list);
} catch (Exception e) { } catch (Exception e) {
log.error("出门证申请add异常", e); log.error("出门证申请add异常", e);
throw new ServiceException("系统异常,请重新提交或联系管理员!"); throw new ServiceException("系统异常,请重新提交或联系管理员!");
} }
// 通知一级审核人,企微发送消息(小程序来源)
SysPeople people = sysPeopleService.selectSysPeopleById(vo.getReviewer1());
String url = getExamineUrl(String.valueOf(vo.getId()), people.getPhone());
log.info("出门证申请add发送{}审核链接:{}", people.getPhone(), url);
//发送企微信息 //发送企微信息
try { try {
log.info("出门证申请add发送{}审核链接:{}", people.getPhone(), url);
visitorController.sendWeCom(people.getPhone(), url + " --访客姓名:" + vo.getName()); visitorController.sendWeCom(people.getPhone(), url + " --访客姓名:" + vo.getName());
} catch (Exception e) { } catch (Exception e) {
log.error("出门证申请add-sendWeCom异常", e); log.error("出门证申请add-sendWeCom异常", e);
@@ -385,6 +396,15 @@ public class VisCarryStuffController extends BaseController {
log.error("approve-审核人员正在审核中"); log.error("approve-审核人员正在审核中");
return error("正在审核中"); return error("正在审核中");
} }
//查询当前审核地址是否已审核
VisitorReviewProcessVo visitorReviewProcessVo = new VisitorReviewProcessVo();
visitorReviewProcessVo.setExitId(vo.getId());
visitorReviewProcessVo.setApproveData(vo.getApproveData());
VisitorReviewProcessVo visitorReviewProcess = visCarryStuffService.queryReviewProcess(visitorReviewProcessVo);
if (ObjectUtil.isNotNull(visitorReviewProcess) && !StringUtils.equals(ExamineEnum.IN_REVIEW.getCode(), visitorReviewProcess.getState())) {
log.error("stuff-approve-当前审核链接已审核");
return error("当前链接已审核,请刷新页面!");
}
//查询当前审核人基本信息 //查询当前审核人基本信息
SysPeople sysPeople = sysPeopleService.queryPeopleName(telephone, null); SysPeople sysPeople = sysPeopleService.queryPeopleName(telephone, null);
@@ -393,12 +413,11 @@ public class VisCarryStuffController extends BaseController {
VisExitOutVo stuffVo = visCarryStuffService.selectVisExitOutById(vo.getId()); VisExitOutVo stuffVo = visCarryStuffService.selectVisExitOutById(vo.getId());
//保存审核环节表 //保存审核环节表
VisitorReviewProcessVo reviewProcessVo = new VisitorReviewProcessVo(); VisitorReviewProcessVo reviewProcess = new VisitorReviewProcessVo();
reviewProcessVo.setReviewer(String.valueOf(sysPeople.getId()));
reviewProcessVo.setExitId(String.valueOf(vo.getId()));
//查询审核环节表未审核状态的第一条数据,处理同一个人会审核两个环节情况
VisitorReviewProcessVo reviewProcess = visCarryStuffService.selectVisitorReviewProcessOne(reviewProcessVo);
reviewProcess.setState(vo.getExamineState()); reviewProcess.setState(vo.getExamineState());
reviewProcess.setExitId(vo.getId());
reviewProcess.setApproveNode(stuffVo.getCurrentNode());
reviewProcess.setApproveData(vo.getApproveData());
visCarryStuffService.updateVisitorReviewProcessById(reviewProcess); visCarryStuffService.updateVisitorReviewProcessById(reviewProcess);
//保存审核历史表 //保存审核历史表
@@ -443,19 +462,19 @@ public class VisCarryStuffController extends BaseController {
log.error("短信发送异常:", e); log.error("短信发送异常:", e);
} }
} }
}
//向下级审核人发送审核信息 //向下级审核人发送审核信息
if (stuffVo.getCurrentNode() != 3) { if (stuffVo.getCurrentNode() != 3 ) {
String url = getExamineUrl(String.valueOf(vo.getId()), people.getPhone()); String url = getExamineUrl(String.valueOf(vo.getId()), people.getPhone());
log.info("出门证申请approve发送{}审核链接:{}", people.getPhone(), url); log.info("出门证申请approve发送{}审核链接:{}", people.getPhone(), url);
//发送企微信息 //发送企微信息
try { try {
visitorController.sendWeCom(people.getPhone(), url + " --访客姓名:" + vo.getName()); visitorController.sendWeCom(people.getPhone(), url + " --访客姓名:" + vo.getName());
} catch (Exception e) { } catch (Exception e) {
log.error("出门证申请approve-sendWeCom异常", e); log.error("出门证申请approve-sendWeCom异常", e);
throw new ServiceException("系统异常,请重新审核或联系管理员!"); throw new ServiceException("系统异常,请重新审核或联系管理员!");
}
} }
} }

View File

@@ -344,7 +344,7 @@ public class VisitorController extends BaseController {
String telephone = split[1]; String telephone = split[1];
if (StringUtils.equals("2", type)) { if (StringUtils.equals("2", type)) {
VisExitOutVo visCarryStuff = getVisCarryStuff(id, telephone); VisExitOutVo visCarryStuff = getVisCarryStuff(id, str);
visCarryStuff.setTelephone(telephone); visCarryStuff.setTelephone(telephone);
return success(visCarryStuff); return success(visCarryStuff);
} }
@@ -353,22 +353,15 @@ public class VisitorController extends BaseController {
visitor.setTelephone(telephone); visitor.setTelephone(telephone);
//审核链接进来 //审核链接进来
if (StringUtils.isNotBlank(telephone)) { VisitorReviewProcessVo visitor2 = new VisitorReviewProcessVo();
//查询当前点击审核链接的人员信息 visitor2.setVisitorId(visitor.getId());
SysPeople sysPeople = sysPeopleService.queryPeopleName(telephone, null); visitor2.setApproveData(str);
VisitorReviewProcessVo visitorReviewProcessVo = visitorService.queryReviewProcess(visitor2);
//根据手机号查询peopleId if (ObjectUtil.isNotNull(visitorReviewProcessVo) && StrUtil.isNotBlank(visitorReviewProcessVo.getState())) {
Visitor visitor2 = new Visitor(); if (StringUtils.equals(visitor.getExamineState(), ExamineEnum.IN_REVIEW.getCode())) {
visitor2.setId(visitor.getId()); visitor.setExamineState(visitorReviewProcessVo.getState());
visitor2.setReviewer(String.valueOf(sysPeople.getId()));
visitor2.setPosition(null);
Visitor visitor1 = visitorService.queryReviewProcess(visitor2);
if (ObjectUtil.isNotNull(visitor1) && StrUtil.isNotBlank(visitor1.getState())) {
if (StringUtils.equals(visitor.getExamineState(), ExamineEnum.IN_REVIEW.getCode())) {
visitor.setExamineState(visitor1.getState());
}
visitor.setRejectReason(visitor1.getRejectReason());
} }
visitor.setRejectReason(visitorReviewProcessVo.getRejectReason());
} }
Map<String, String> map = dictDataService.queryDictData("sys_company_type"); Map<String, String> map = dictDataService.queryDictData("sys_company_type");
@@ -379,11 +372,12 @@ public class VisitorController extends BaseController {
/** /**
* 查询携物申请信息 * 查询携物申请信息
*
* @param id * @param id
* @param telephone * @param str
* @return * @return
*/ */
private VisExitOutVo getVisCarryStuff(Long id, String telephone) { private VisExitOutVo getVisCarryStuff(Long id, String str) {
VisExitOutVo stuffVo = visCarryStuffService.selectVisExitOutById(id); VisExitOutVo stuffVo = visCarryStuffService.selectVisExitOutById(id);
//查询物品信息列表 //查询物品信息列表
@@ -412,27 +406,27 @@ public class VisitorController extends BaseController {
//查询审核流程信息 //查询审核流程信息
List<VisitorReviewProcessVo> reviewProcess = visCarryStuffService.queryVisitorReviewProcessList(id); List<VisitorReviewProcessVo> reviewProcess = visCarryStuffService.queryVisitorReviewProcessList(id);
if(CollUtil.isNotEmpty(reviewProcess)) { if (CollUtil.isNotEmpty(reviewProcess)) {
boolean flag = true;
for (VisitorReviewProcessVo process : reviewProcess) {
if (!flag) {
process.setState(null);
}
if (Constants.ONE.equals(process.getState())) {
flag = false;
}
}
stuffVo.setReviewProcessList(reviewProcess); stuffVo.setReviewProcessList(reviewProcess);
} }
if (StringUtils.isNotBlank(telephone)) { //查询审核节点,查看当前点击审核链接的人审核状态
//查询当前点击审核链接的人员信息 VisitorReviewProcessVo visExitOutVo = new VisitorReviewProcessVo();
SysPeople sysPeople = sysPeopleService.queryPeopleName(telephone, null); visExitOutVo.setExitId(id);
visExitOutVo.setApproveData(str);
//查询审核节点,查看当前点击审核链接的人审核状态 VisitorReviewProcessVo reviewProcessVo = visCarryStuffService.queryReviewProcessNew(visExitOutVo);
VisExitOutVo visExitOutVo = new VisExitOutVo(); if (ObjectUtil.isNotNull(reviewProcessVo) && StrUtil.isNotBlank(reviewProcessVo.getState())) {
visExitOutVo.setId(id); stuffVo.setExamineState(reviewProcessVo.getState());
visExitOutVo.setReviewer(sysPeople.getId());
List<VisitorReviewProcessVo> list = visCarryStuffService.queryReviewProcessNew(visExitOutVo);
if (CollUtil.isNotEmpty(list)) {
stuffVo.setExamineState(list.get(0).getState());
for (VisitorReviewProcessVo processVo : list) {
if (StringUtils.isBlank(processVo.getUpdatedTime())) {
stuffVo.setExamineState(processVo.getState());
}
}
}
} }
return stuffVo; return stuffVo;
@@ -983,6 +977,16 @@ public class VisitorController extends BaseController {
return error("正在审核中"); return error("正在审核中");
} }
//查询当前审核地址是否已审核
VisitorReviewProcessVo visitorReviewProcessVo = new VisitorReviewProcessVo();
visitorReviewProcessVo.setVisitorId(visitor.getId());
visitorReviewProcessVo.setApproveData(visitor.getApproveData());
VisitorReviewProcessVo visitorReviewProcess = visitorService.queryReviewProcess(visitorReviewProcessVo);
if (ObjectUtil.isNotNull(visitorReviewProcess) && !StringUtils.equals(ExamineEnum.IN_REVIEW.getCode(), visitorReviewProcess.getState())) {
log.error("approve-当前审核链接已审核");
return error("当前链接已审核,请刷新页面!");
}
//查询当前审核人基本信息 //查询当前审核人基本信息
SysPeople sysPeople = sysPeopleService.queryPeopleName(telephone, null); SysPeople sysPeople = sysPeopleService.queryPeopleName(telephone, null);
visitor.setUserId(sysPeople.getId()); visitor.setUserId(sysPeople.getId());
@@ -996,8 +1000,7 @@ public class VisitorController extends BaseController {
VisVisitorExamine examine = visitor.getExamine(); VisVisitorExamine examine = visitor.getExamine();
examine.setVisitorId(visitor.getId()); examine.setVisitorId(visitor.getId());
visitor.setState(examine.getExamine()); visitor.setState(examine.getExamine());
visitor.setApproveNode(visitor1.getCurrentNode());
// Map<String, String> map = dictDataService.queryDictData("sys_park_group");
//审核通过 //审核通过
if (Constants.ZERO.equals(examine.getExamine())) { if (Constants.ZERO.equals(examine.getExamine())) {
@@ -1012,6 +1015,7 @@ public class VisitorController extends BaseController {
visitor2.setRejectReason(visitor.getRejectReason()); visitor2.setRejectReason(visitor.getRejectReason());
visitor2.setState(ExamineEnum.PASSED.getCode()); visitor2.setState(ExamineEnum.PASSED.getCode());
visitor2.setApproveNode(1); visitor2.setApproveNode(1);
visitor2.setApproveData(visitor.getApproveData());
list.add(visitor2); list.add(visitor2);
Visitor visitor3 = new Visitor(); Visitor visitor3 = new Visitor();
visitor3.setId(visitor.getId()); visitor3.setId(visitor.getId());
@@ -1031,7 +1035,6 @@ public class VisitorController extends BaseController {
//二级审核人审核 //二级审核人审核
else if (visitor1.getCurrentNode() == 2) { else if (visitor1.getCurrentNode() == 2) {
visitor.setNextStepReviewer(visitor.getReviewer3()); visitor.setNextStepReviewer(visitor.getReviewer3());
visitor.setApproveNode(2);
visitorService.updateVisitorReviewProcess(visitor); visitorService.updateVisitorReviewProcess(visitor);
} }
//如果有下一级审核人员,发送钉钉,企微审核消息链接 //如果有下一级审核人员,发送钉钉,企微审核消息链接
@@ -1059,7 +1062,6 @@ public class VisitorController extends BaseController {
visVisitorExamineService.insertVisVisitorExamine(examine); visVisitorExamineService.insertVisVisitorExamine(examine);
//修改环节状态 //修改环节状态
visitor.setApproveNode(3);
visitorService.updateVisitorReviewProcess(visitor); visitorService.updateVisitorReviewProcess(visitor);
// 园区人脸下发到设备 // 园区人脸下发到设备

View File

@@ -180,4 +180,14 @@ public class VisExitOutVo extends BaseEntity {
* 小程序判断是否已确认放行 0:否1 * 小程序判断是否已确认放行 0:否1
*/ */
private Integer isRelease = 0; private Integer isRelease = 0;
/**
* vis_visitor_review_process表的审核节点
*/
private Integer approveNode;
/**
* 审核链接地址参数
*/
private String approveData;
} }

View File

@@ -295,6 +295,11 @@ public class Visitor extends BaseEntity {
*/ */
private Integer approveNode; private Integer approveNode;
/**
* 审核链接地址参数
*/
private String approveData;
/** /**
* 人脸机的ruleId * 人脸机的ruleId
*/ */

View File

@@ -16,7 +16,7 @@ public class VisitorReviewProcessVo {
/** /**
* 访客id * 访客id
*/ */
private String visitorId; private Long visitorId;
/** /**
* 审核状态 0 同意1 不同意 * 审核状态 0 同意1 不同意
@@ -46,10 +46,20 @@ public class VisitorReviewProcessVo {
/** /**
* 出门申请表id * 出门申请表id
*/ */
private String exitId; private Long exitId;
/** /**
* 理由 * 理由
*/ */
private String rejectReason; private String rejectReason;
/**
* vis_visitor_review_process表的审核节点
*/
private Integer approveNode;
/**
* 审核链接地址参数
*/
private String approveData;
} }

View File

@@ -22,7 +22,7 @@ public interface VisCarryStuffMapper {
void saveVisitorReviewProcess(VisExitOutVo vo); void saveVisitorReviewProcess(VisExitOutVo vo);
List<VisitorReviewProcessVo> queryReviewProcessNew(VisExitOutVo stuffVo); VisitorReviewProcessVo queryReviewProcessNew(VisitorReviewProcessVo stuffVo);
void insertVisStuffInfo(@Param("list") List<VisStuffInfoVo> visStuffInfoList); void insertVisStuffInfo(@Param("list") List<VisStuffInfoVo> visStuffInfoList);
@@ -43,4 +43,6 @@ public interface VisCarryStuffMapper {
void updateStaffState(VisExitOutVo visExitOutVo); void updateStaffState(VisExitOutVo visExitOutVo);
List<VisExitOutVo> queryReviewList(Long peopleId); List<VisExitOutVo> queryReviewList(Long peopleId);
VisitorReviewProcessVo queryReviewProcess(VisitorReviewProcessVo visitorReviewProcessVo);
} }

View File

@@ -229,7 +229,7 @@ public interface VisitorMapper
void updateVisitorReviewProcess(Visitor visitor); void updateVisitorReviewProcess(Visitor visitor);
Visitor queryReviewProcess(Visitor visitor); VisitorReviewProcessVo queryReviewProcess(VisitorReviewProcessVo visitor);
int queryVisitorReviewProcessCount(Long id); int queryVisitorReviewProcessCount(Long id);

View File

@@ -21,7 +21,7 @@ public interface IVisCarryStuffService {
void saveVisitorReviewProcess(VisExitOutVo vo); void saveVisitorReviewProcess(VisExitOutVo vo);
List<VisitorReviewProcessVo> queryReviewProcessNew(VisExitOutVo stuffVo); VisitorReviewProcessVo queryReviewProcessNew(VisitorReviewProcessVo stuffVo);
void insertVisStuffInfo(List<VisStuffInfoVo> visStuffInfoList); void insertVisStuffInfo(List<VisStuffInfoVo> visStuffInfoList);
@@ -42,4 +42,6 @@ public interface IVisCarryStuffService {
void updateStaffState(VisExitOutVo visExitOutVo); void updateStaffState(VisExitOutVo visExitOutVo);
List<VisExitOutVo> queryReviewList(Long peopleId); List<VisExitOutVo> queryReviewList(Long peopleId);
VisitorReviewProcessVo queryReviewProcess(VisitorReviewProcessVo visitorReviewProcessVo);
} }

View File

@@ -245,7 +245,7 @@ public interface IVisitorService
void updateVisitorReviewProcess(Visitor visitor); void updateVisitorReviewProcess(Visitor visitor);
Visitor queryReviewProcess(Visitor visitor); VisitorReviewProcessVo queryReviewProcess(VisitorReviewProcessVo visitor);
int queryVisitorReviewProcessCount(Long id); int queryVisitorReviewProcessCount(Long id);

View File

@@ -102,6 +102,11 @@ public class VisCarryStuffImpl implements IVisCarryStuffService {
return visCarryStuffMapper.queryReviewList(peopleId); return visCarryStuffMapper.queryReviewList(peopleId);
} }
@Override
public VisitorReviewProcessVo queryReviewProcess(VisitorReviewProcessVo visitorReviewProcessVo) {
return visCarryStuffMapper.queryReviewProcess(visitorReviewProcessVo);
}
@Override @Override
public VisExitOutVo selectVisExitOutById(Long id) { public VisExitOutVo selectVisExitOutById(Long id) {
return visCarryStuffMapper.selectVisExitOutById(id); return visCarryStuffMapper.selectVisExitOutById(id);
@@ -128,7 +133,7 @@ public class VisCarryStuffImpl implements IVisCarryStuffService {
} }
@Override @Override
public List<VisitorReviewProcessVo> queryReviewProcessNew(VisExitOutVo stuffVo) { public VisitorReviewProcessVo queryReviewProcessNew(VisitorReviewProcessVo stuffVo) {
return visCarryStuffMapper.queryReviewProcessNew(stuffVo); return visCarryStuffMapper.queryReviewProcessNew(stuffVo);
} }
} }

View File

@@ -719,7 +719,7 @@ public class VisitorServiceImpl implements IVisitorService {
} }
@Override @Override
public Visitor queryReviewProcess(Visitor visitor) { public VisitorReviewProcessVo queryReviewProcess(VisitorReviewProcessVo visitor) {
return visitorMapper.queryReviewProcess(visitor); return visitorMapper.queryReviewProcess(visitor);
} }

View File

@@ -146,7 +146,11 @@
<if test="rejectReason != null and rejectReason != ''"> <if test="rejectReason != null and rejectReason != ''">
,reject_reason = #{rejectReason} ,reject_reason = #{rejectReason}
</if> </if>
where id = #{id} <if test="approveData != null and approveData != ''">
,approve_data = #{approveData}
</if>
where exit_id = #{exitId}
and approve_node = #{approveNode}
</update> </update>
<update id="updateStaffState"> <update id="updateStaffState">
@@ -207,7 +211,7 @@
from vis_visitor_review_process vvrp from vis_visitor_review_process vvrp
left join sys_people sp on vvrp.reviewer = sp.id and sp.del_flag = '0' left join sys_people sp on vvrp.reviewer = sp.id and sp.del_flag = '0'
where exit_id = #{id} where exit_id = #{id}
order by ifnull(createdTime, 'zzz') order by approve_node asc,ifnull(createdTime, 'zzz')
</select> </select>
<select id="queryReviewProcessNew" resultType="com.dcsoft.system.visitor.domain.VisitorReviewProcessVo"> <select id="queryReviewProcessNew" resultType="com.dcsoft.system.visitor.domain.VisitorReviewProcessVo">
@@ -217,9 +221,10 @@
reject_reason, reject_reason,
updated_time updatedTime updated_time updatedTime
from vis_visitor_review_process from vis_visitor_review_process
where exit_id = #{id} where exit_id = #{exitId}
and reviewer = #{reviewer} and approve_data = #{approveData}
order by updated_time desc order by approve_node desc
limit 1
</select> </select>
<select id="selectStuffList" resultMap="StuffResult"> <select id="selectStuffList" resultMap="StuffResult">
@@ -350,6 +355,23 @@
e.id e.id
</select> </select>
<select id="queryReviewProcess" resultType="com.dcsoft.system.visitor.domain.VisitorReviewProcessVo">
select
reviewer,
state,
reject_reason
from vis_visitor_review_process
where exit_id = #{exitId}
<if test="reviewer != null and reviewer != ''">
and reviewer = #{reviewer}
</if>
<if test="approveData != null and approveData != ''">
and approve_data = #{approveData}
</if>
order by approve_node desc
LIMIT 1
</select>
<insert id="insertVisExitOut" useGeneratedKeys="true" keyProperty="id"> <insert id="insertVisExitOut" useGeneratedKeys="true" keyProperty="id">
insert into vis_exit_out insert into vis_exit_out
<trim prefix="(" suffix=")" suffixOverrides=","> <trim prefix="(" suffix=")" suffixOverrides=",">
@@ -455,10 +477,10 @@
</insert> </insert>
<insert id="saveVisitorReviewProcessList"> <insert id="saveVisitorReviewProcessList">
insert into vis_visitor_review_process (id, exit_id, reviewer, state) insert into vis_visitor_review_process (id, exit_id, reviewer, state, approve_node, approve_data)
VALUES VALUES
<foreach collection="list" item="i" index="index" separator=","> <foreach collection="list" item="i" index="index" separator=",">
(REPLACE(uuid(), '-', ''), #{i.id}, #{i.reviewer}, #{i.state}) (REPLACE(uuid(), '-', ''), #{i.id}, #{i.reviewer}, #{i.state}, #{i.approveNode}, #{i.approveData})
</foreach> </foreach>
</insert> </insert>

View File

@@ -380,10 +380,10 @@
</if>) </if>)
</insert> </insert>
<insert id="saveVisitorReviewProcessList"> <insert id="saveVisitorReviewProcessList">
insert into vis_visitor_review_process (id, visitor_id, reviewer, state, reject_reason, approve_node) insert into vis_visitor_review_process (id, visitor_id, reviewer, state, reject_reason, approve_node, approve_data)
VALUES VALUES
<foreach collection="list" item="i" index="index" separator=","> <foreach collection="list" item="i" index="index" separator=",">
(REPLACE(uuid(), '-', ''), #{i.id}, #{i.reviewer}, #{i.state}, #{i.rejectReason}, #{i.approveNode}) (REPLACE(uuid(), '-', ''), #{i.id}, #{i.reviewer}, #{i.state}, #{i.rejectReason}, #{i.approveNode}, #{i.approveData})
</foreach> </foreach>
</insert> </insert>
@@ -527,9 +527,12 @@
<update id="updateVisitorReviewProcess"> <update id="updateVisitorReviewProcess">
update vis_visitor_review_process update vis_visitor_review_process
set state = #{state} set state = #{state}
<if test="rejectReason != null and rejectReason != ''"> <if test="rejectReason != null and rejectReason != ''">
,reject_reason = #{rejectReason} ,reject_reason = #{rejectReason}
</if> </if>
<if test="approveData != null and approveData != ''">
,approve_data = #{approveData}
</if>
where visitor_id = #{id} where visitor_id = #{id}
<if test="reviewer != null and reviewer != ''"> <if test="reviewer != null and reviewer != ''">
and reviewer = #{reviewer} and reviewer = #{reviewer}
@@ -888,19 +891,19 @@
order by vvar.created_time desc order by vvar.created_time desc
limit 1 limit 1
</select> </select>
<select id="queryReviewProcess" resultType="com.dcsoft.system.visitor.domain.Visitor"> <select id="queryReviewProcess" resultType="com.dcsoft.system.visitor.domain.VisitorReviewProcessVo">
select select
reviewer, reviewer,
state, state,
reject_reason reject_reason
from vis_visitor_review_process from vis_visitor_review_process
where visitor_id = #{id} where visitor_id = #{visitorId}
<if test="position != null and position != ''">
and type = #{position}
</if>
<if test="reviewer != null and reviewer != ''"> <if test="reviewer != null and reviewer != ''">
and reviewer = #{reviewer} and reviewer = #{reviewer}
</if> </if>
<if test="approveData != null and approveData != ''">
and approve_data = #{approveData}
</if>
order by approve_node desc order by approve_node desc
LIMIT 1 LIMIT 1
</select> </select>