diff --git a/src/main/java/com/qs/serve/modules/thirty/ThirtyVisitController.java b/src/main/java/com/qs/serve/modules/thirty/ThirtyVisitController.java index 0107687..76b920c 100644 --- a/src/main/java/com/qs/serve/modules/thirty/ThirtyVisitController.java +++ b/src/main/java/com/qs/serve/modules/thirty/ThirtyVisitController.java @@ -86,6 +86,7 @@ public class ThirtyVisitController { entity.setVisitCompany(param.getVisitCompany()); entity.setVisitAddress(param.getVisitAddress()); entity.setUserRoom(param.getUserRoom()); + entity.setPreVisitDate(param.getPreVisitDate()); entity.setVisitStartDate(param.getVisitStartDate()); entity.setVisitEndDate(param.getVisitEndDate()); entity.setCodeStartDate(param.getVisitStartDate()); diff --git a/src/main/java/com/qs/serve/modules/thirty/entity/VisitThemeThirtyParam.java b/src/main/java/com/qs/serve/modules/thirty/entity/VisitThemeThirtyParam.java index c46ed29..0664360 100644 --- a/src/main/java/com/qs/serve/modules/thirty/entity/VisitThemeThirtyParam.java +++ b/src/main/java/com/qs/serve/modules/thirty/entity/VisitThemeThirtyParam.java @@ -75,6 +75,11 @@ public class VisitThemeThirtyParam { @NotNull(message = "userRoom is null") public String userRoom; + /** 预约拜访日期 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private LocalDateTime preVisitDate; + /** 来访开始时间 */ @NotNull(message = "visitStartDate is null") @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") diff --git a/src/main/java/com/qs/serve/modules/visit/api/VisitMainInnerController.java b/src/main/java/com/qs/serve/modules/visit/api/VisitMainInnerController.java index 9821a88..f314222 100644 --- a/src/main/java/com/qs/serve/modules/visit/api/VisitMainInnerController.java +++ b/src/main/java/com/qs/serve/modules/visit/api/VisitMainInnerController.java @@ -84,11 +84,18 @@ public class VisitMainInnerController { public R checkIn(@PathVariable String id, @RequestBody VisitCheckIn param){ VisitMain visitMain = visitMainService.getById(id); // 判断是否超过2小时 + LocalDateTime nowTime = LocalDateTime.now(); + if(visitMain.getVisitStartDate()!=null&&nowTime.isBefore(visitMain.getVisitStartDate())){ + return R.error("登记时间未开始"); + } + if(visitMain.getVisitEndDate()!=null&&nowTime.isAfter(visitMain.getVisitEndDate())){ + return R.error("已结束登记"); + } if(visitMain.getVisitTime()!=null){ LocalDateTime time = visitMain.getVisitTime().plusHours(2); // 两小时以内不支持核对 if(LocalDateTime.now().isBefore(time)){ - Assert.throwEx("2小时以内不支持核对"); + Assert.throwEx("2小时以内不支持多次核对"); } } // 状态为待核对 @@ -104,9 +111,9 @@ public class VisitMainInnerController { // 添加核对日志 VisitCheckLog checkLog = new VisitCheckLog(); checkLog.setMainId(id); - visitMain.setCheckUserId(sysUser.getId()); - visitMain.setCheckUserCode(sysUser.getCode()); - visitMain.setCheckUserName(sysUser.getName()); + checkLog.setCheckUserId(sysUser.getId()); + checkLog.setCheckUserCode(sysUser.getCode()); + checkLog.setCheckUserName(sysUser.getName()); checkLog.setRemark(param.getRemark2()); visitCheckLogService.save(checkLog); return R.ok(); diff --git a/src/main/java/com/qs/serve/modules/visit/api/VisitMainOuterApi.java b/src/main/java/com/qs/serve/modules/visit/api/VisitMainOuterApi.java index 0b7b591..5637160 100644 --- a/src/main/java/com/qs/serve/modules/visit/api/VisitMainOuterApi.java +++ b/src/main/java/com/qs/serve/modules/visit/api/VisitMainOuterApi.java @@ -205,7 +205,7 @@ public class VisitMainOuterApi { // 主题相关 entity.setThemeId(visitTheme.getId()); entity.setVisitStartDate(visitTheme.getVisitStartDate()); - //entity.setVisitEndDate(visitTheme.getVisitEndDate()); + entity.setPreVisitDate(visitTheme.getPreVisitDate()); entity.setVisitEndDate(LocalDateTime.now()); entity.setSkipApprovalNumber(visitTheme.getSkipApprovalNumber()); //其它 @@ -218,6 +218,8 @@ public class VisitMainOuterApi { entity.setCreateTime(null); entity.setUpdateBy(null); entity.setUpdateTime(null); + // 特殊场景 + entity.setVisitorContext(visitTheme.getThemeTitle()); // 审批参数 entity.setSyFormId("0"); entity.setSubmitTime(LocalDateTime.now()); diff --git a/src/main/java/com/qs/serve/modules/visit/controller/VisitMainController.java b/src/main/java/com/qs/serve/modules/visit/controller/VisitMainController.java index aa46fff..49edbb6 100644 --- a/src/main/java/com/qs/serve/modules/visit/controller/VisitMainController.java +++ b/src/main/java/com/qs/serve/modules/visit/controller/VisitMainController.java @@ -88,6 +88,8 @@ public class VisitMainController { e.printStackTrace(); } } + // 管理核对日志 + visitMain.setCheckLogList(visitMainService.getCheckLogList(id)); return R.ok(visitMain); } diff --git a/src/main/java/com/qs/serve/modules/visit/entity/VisitTheme.java b/src/main/java/com/qs/serve/modules/visit/entity/VisitTheme.java index 3f99c67..d482288 100644 --- a/src/main/java/com/qs/serve/modules/visit/entity/VisitTheme.java +++ b/src/main/java/com/qs/serve/modules/visit/entity/VisitTheme.java @@ -77,9 +77,9 @@ public class VisitTheme implements Serializable { private String localY; /** 预约拜访日期 */ - @DateTimeFormat(pattern = "yyyy-MM-dd") - @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") - private LocalDate preVisitDate; + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private LocalDateTime preVisitDate; /** 来访开始时间 */ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") diff --git a/src/main/java/com/qs/serve/modules/visit/entity/vo/VisitMainVo.java b/src/main/java/com/qs/serve/modules/visit/entity/vo/VisitMainVo.java index a760e30..18efa65 100644 --- a/src/main/java/com/qs/serve/modules/visit/entity/vo/VisitMainVo.java +++ b/src/main/java/com/qs/serve/modules/visit/entity/vo/VisitMainVo.java @@ -6,6 +6,7 @@ import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.time.LocalDateTime; +import java.util.List; /** * @author YenHex @@ -37,6 +38,8 @@ public class VisitMainVo extends VisitMain { /** 跳过发送短信:0-发送短信;1-跳过发送短信 */ private Integer skipMessageFlag; + /** 审批日志 */ + private List checkLogList; /** 二维码开始时间 */ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") diff --git a/src/main/java/com/qs/serve/modules/visit/service/VisitMainService.java b/src/main/java/com/qs/serve/modules/visit/service/VisitMainService.java index 7372720..6a8f77d 100644 --- a/src/main/java/com/qs/serve/modules/visit/service/VisitMainService.java +++ b/src/main/java/com/qs/serve/modules/visit/service/VisitMainService.java @@ -2,9 +2,12 @@ package com.qs.serve.modules.visit.service; import com.baomidou.mybatisplus.extension.service.IService; import com.qs.serve.modules.flow.service.SeeYonOptionService; +import com.qs.serve.modules.visit.entity.VisitCheckLog; import com.qs.serve.modules.visit.entity.VisitMain; import com.qs.serve.modules.visit.entity.vo.VisitMainVo; +import java.util.List; + /** * 拜访 服务接口 * @author YenHex @@ -18,6 +21,13 @@ public interface VisitMainService extends IService, SeeYonOptionServi */ void submitOaFlow(String id); + /** + * 获取审核记录 + * @param id + * @return + */ + List getCheckLogList(String id); + /** * 获取vo * @param id diff --git a/src/main/java/com/qs/serve/modules/visit/service/impl/VisitMainServiceImpl.java b/src/main/java/com/qs/serve/modules/visit/service/impl/VisitMainServiceImpl.java index 2db74e9..ceb4eff 100644 --- a/src/main/java/com/qs/serve/modules/visit/service/impl/VisitMainServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/visit/service/impl/VisitMainServiceImpl.java @@ -2,6 +2,7 @@ package com.qs.serve.modules.visit.service.impl; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.qs.serve.common.model.consts.ResultFlag; import com.qs.serve.common.model.dto.R; @@ -13,9 +14,11 @@ import com.qs.serve.modules.flow.model.TbsAffairCommitBo; import com.qs.serve.modules.flow.service.SeeYonOptionService; import com.qs.serve.modules.flow.service.SeeYonService; import com.qs.serve.modules.visit.common.VisitMainConst; +import com.qs.serve.modules.visit.entity.VisitCheckLog; import com.qs.serve.modules.visit.entity.VisitTheme; import com.qs.serve.modules.visit.entity.vo.VisitMainVo; import com.qs.serve.modules.visit.mapper.VisitThemeMapper; +import com.qs.serve.modules.visit.service.VisitCheckLogService; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; @@ -28,6 +31,7 @@ import javax.annotation.Resource; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.HashMap; +import java.util.List; import java.util.Map; /** @@ -42,6 +46,9 @@ public class VisitMainServiceImpl extends ServiceImpl @Resource private SeeYonService seeYonService; + @Resource + private VisitCheckLogService visitCheckLogService; + @Resource private VisitThemeMapper visitThemeMapper; @@ -84,6 +91,15 @@ public class VisitMainServiceImpl extends ServiceImpl return mainVo; } + @Override + public List getCheckLogList(String id) { + VisitCheckLog visitCheckLog = new VisitCheckLog(); + visitCheckLog.setMainId(id); + List list = visitCheckLogService.list(new LambdaQueryWrapper() + .eq(VisitCheckLog::getMainId,id)); + return list; + } + @Override public void submitOaFlow(String id) { String templateCode = loadTemplateCode(); @@ -103,7 +119,6 @@ public class VisitMainServiceImpl extends ServiceImpl mainData.put("userName",visitMain.getUserName()); mainData.put("userRoom",visitMain.getUserRoom()); mainData.put("skipApprovalFlag",visitTheme.getSkipApprovalFlag()); - mainData.put("preVisitDate",visitMain.getPreVisitDate()); mainData.put("submitTime",DateUtils.format(visitMain.getSubmitTime(), DateFormatString.DATE_TIME)); mainData.put("visitorCompany",visitMain.getVisitorCompany()); mainData.put("visitorIdentity",visitMain.getVisitorIdentity()); @@ -113,6 +128,9 @@ public class VisitMainServiceImpl extends ServiceImpl if (visitMain.getVisitEndDate()!=null){ mainData.put("visitEndDate", DateUtils.format(visitMain.getVisitEndDate(), DateFormatString.DATE_TIME)); } + if (visitMain.getPreVisitDate()!=null){ + mainData.put("preVisitDate", DateUtils.format(visitMain.getPreVisitDate(), DateFormatString.DATE_TIME)); + } mainData.put("visitorName",visitMain.getVisitorName()); mainData.put("visitorMobile",visitMain.getVisitorMobile()); mainData.put("visitorCar",visitMain.getVisitorCar()); @@ -190,7 +208,7 @@ public class VisitMainServiceImpl extends ServiceImpl TianYiYunSmsUtil.sendVisitSuccess( visitMain.getVisitorMobile(), h5visitMainUrl + visitMain.getId(), - visitMain.getVisitEndDate(), + visitMain.getPreVisitDate(), visitMain.getUserName()); } return null;