海康接口
This commit is contained in:
1 parent
6d15f93642
commit
7f691e621d
7 files changed
+83
-3
No files matched your search
@@ -70,6 +70,11 @@
|
||||
<artifactId>pjcloud-integrated-api</artifactId>
|
||||
<version>5.7.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.bsd</groupId>
|
||||
<artifactId>pjcloud-thirdparty-api</artifactId>
|
||||
<version>5.7.0</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.bsd</groupId>
|
||||
|
||||
+7
@@ -178,4 +178,11 @@ public class VisitorsEntity extends Model<VisitorsEntity> {
|
||||
|
||||
@Schema(description="是否随行人员")
|
||||
private String isOtherPeople;
|
||||
|
||||
|
||||
@Schema(description="访客记录唯一标识,用于已预约登记、访客签离等操作")
|
||||
private String orderId;
|
||||
|
||||
@Schema(description="预约记录ID,可作为修改、取消预约的依据")
|
||||
private String appointRecordId;
|
||||
}
|
||||
+63
@@ -33,6 +33,10 @@ import com.bsd.pjcloud.integrated.vo.visitor.app.VisitorsAppPageVo;
|
||||
import com.bsd.pjcloud.integrated.vo.visitor.app.VisitorsAppVo;
|
||||
import com.bsd.pjcloud.integrated.vo.visitor.app.VisitorsCarAppVo;
|
||||
import com.bsd.pjcloud.integrated.vo.visitor.app.VisitorsPeopleAppVo;
|
||||
import com.bsd.pjcloud.thirdparty.api.feign.RemoterVisitorService;
|
||||
import com.bsd.pjcloud.thirdparty.dto.visitor.request.make.RegisterAppointmentRequest;
|
||||
import com.bsd.pjcloud.thirdparty.dto.visitor.request.make.VisitorAppointmentRequest;
|
||||
import com.bsd.pjcloud.thirdparty.dto.visitor.request.make.VisitorInfo;
|
||||
import com.github.yulichang.toolkit.StrUtils;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@@ -43,6 +47,9 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.ZoneId;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
@@ -66,6 +73,8 @@ public class VisitorsServiceImpl extends ServiceImpl<VisitorsMapper, VisitorsEnt
|
||||
|
||||
private final RemoteDictService remoteDictService;
|
||||
|
||||
private final RemoterVisitorService remoterVisitorService;
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public Object vistorsSave(VisitorsAppDTO visitors) {
|
||||
@@ -200,10 +209,47 @@ public class VisitorsServiceImpl extends ServiceImpl<VisitorsMapper, VisitorsEnt
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public Object updateCheckStatus(Long id, String checkStatus) {
|
||||
VisitorsEntity dataVisitors = baseMapper.selectById(id);
|
||||
if (dataVisitors == null) {
|
||||
throw new ServiceException("数据不存在");
|
||||
}
|
||||
if (!dataVisitors.getCheckStatus().equals(TaskCheckStatusEnum.PADDING.getCode())) {
|
||||
throw new ServiceException("数据已处理");
|
||||
}
|
||||
|
||||
|
||||
VisitorsEntity visitors = new VisitorsEntity();
|
||||
visitors.setId(id);
|
||||
visitors.setCheckStatus(checkStatus);
|
||||
//todo 电梯接口
|
||||
//梯控
|
||||
//审核通过
|
||||
if (checkStatus.equals(TaskCheckStatusEnum.RESULT.getCode())){
|
||||
VisitorAppointmentRequest visitorAppointmentRequest = new VisitorAppointmentRequest();
|
||||
//拜访人固定,安防系统中创建
|
||||
visitorAppointmentRequest.setReceptionistId("1");
|
||||
|
||||
String startTime = dataVisitors.getVStartDate()
|
||||
.atZone(ZoneId.of("Asia/Shanghai"))
|
||||
.format(DateTimeFormatter.ISO_OFFSET_DATE_TIME);
|
||||
String endTime = dataVisitors.getVEndDate()
|
||||
.atZone(ZoneId.of("Asia/Shanghai"))
|
||||
.format(DateTimeFormatter.ISO_OFFSET_DATE_TIME);
|
||||
visitorAppointmentRequest.setVisitStartTime(startTime);
|
||||
visitorAppointmentRequest.setVisitEndTime(endTime);
|
||||
VisitorInfo visitorInfo = new VisitorInfo();
|
||||
visitorInfo.setVisitorName(dataVisitors.getName());
|
||||
//默认全部设置男
|
||||
visitorInfo.setGender(1);
|
||||
visitorInfo.setPhoneNo(dataVisitors.getMobile());
|
||||
//身份证默认为111
|
||||
visitorInfo.setCertificateType(111);
|
||||
visitorInfo.setCertificateNo(dataVisitors.getIdCard());
|
||||
visitorAppointmentRequest.setVisitorInfoList(Arrays.asList(visitorInfo));
|
||||
remoterVisitorService.createVisitorAppointment(visitorAppointmentRequest);
|
||||
}
|
||||
return baseMapper.updateById(visitors);
|
||||
}
|
||||
|
||||
@@ -234,10 +280,27 @@ public class VisitorsServiceImpl extends ServiceImpl<VisitorsMapper, VisitorsEnt
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public Object haveVisitor(Long id) {
|
||||
VisitorsEntity dataVisitors = baseMapper.selectById(id);
|
||||
if (dataVisitors == null) {
|
||||
throw new ServiceException("数据不存在");
|
||||
}
|
||||
if (!dataVisitors.getCheckStatus().equals(TaskCheckStatusEnum.CANCEL.getCode())) {
|
||||
throw new ServiceException("数据已处理");
|
||||
}
|
||||
|
||||
VisitorsEntity visitors = new VisitorsEntity();
|
||||
visitors.setId(id);
|
||||
visitors.setCheckStatus(TaskCheckStatusEnum.HAVE_VISIT.getCode());
|
||||
RegisterAppointmentRequest registerAppointmentRequest = new RegisterAppointmentRequest();
|
||||
registerAppointmentRequest.setOrderId(dataVisitors.getOrderId());
|
||||
String endTime = dataVisitors.getVEndDate()
|
||||
.atZone(ZoneId.of("Asia/Shanghai"))
|
||||
.format(DateTimeFormatter.ISO_OFFSET_DATE_TIME);
|
||||
registerAppointmentRequest.setVisitEndTime(endTime);
|
||||
remoterVisitorService.registerAppointment(registerAppointmentRequest);
|
||||
|
||||
return baseMapper.updateById(visitors);
|
||||
}
|
||||
|
||||
|
||||
@@ -31,5 +31,7 @@
|
||||
<result property="userId" column="user_id"/>
|
||||
<result property="isOtherPeople" column="is_other_people"/>
|
||||
<result property="receiveId" column="receive_id"/>
|
||||
<result property="orderId" column="order_id"/>
|
||||
<result property="appointRecordId" column="appoint_record_id"/>
|
||||
</resultMap>
|
||||
</mapper>
|
||||
+1
-2
@@ -24,8 +24,7 @@ public class RegisterAppointmentRequest {
|
||||
*/
|
||||
@NotNull
|
||||
@Future(message = "离开时间必须是将来的时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
|
||||
private LocalDateTime visitEndTime;
|
||||
private String visitEndTime;
|
||||
|
||||
/**
|
||||
* 门禁卡号(可选)
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@ import java.util.Map;
|
||||
* 对应接口文档中 visitorInfoList 的单个访客对象
|
||||
*/
|
||||
@Data
|
||||
@Builder
|
||||
//@Builder
|
||||
public class VisitorInfo {
|
||||
|
||||
/**
|
||||
|
||||
+4
@@ -2,3 +2,7 @@ com.bsd.pjcloud.thirdparty.api.feign.RemoterThirdKsService
|
||||
com.bsd.pjcloud.thirdparty.api.feign.RemoterThirdDoorApiService
|
||||
com.bsd.pjcloud.thirdparty.api.feign.RemoterThirdPartyAuthService
|
||||
com.bsd.pjcloud.thirdparty.api.feign.RemoterThirdZyService
|
||||
com.bsd.pjcloud.thirdparty.api.feign.RemoterVisitorService
|
||||
|
||||
|
||||
|
||||
Reference in new issue
Block a user