refactor(sis): - 华为人脸对比改动
This commit is contained in:
parent
421bc821eb
commit
34dc9d652b
@ -1,108 +0,0 @@
|
|||||||
package org.dromara.sis.controller.e8;
|
|
||||||
|
|
||||||
import lombok.RequiredArgsConstructor;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.dromara.common.core.domain.R;
|
|
||||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
|
||||||
import org.dromara.sis.sdk.e8.AccessControlService;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.QueryDto;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.accessControl.req.CustomerAuthAddReq;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.accessControl.req.RemoteOpenDoorReq;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.accessControl.res.AccessRecordFindRes;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.accessControl.res.CustomerAuthFindRes;
|
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author lsm
|
|
||||||
* @apiNote AccessControlController
|
|
||||||
* @since 2025/6/24
|
|
||||||
*/
|
|
||||||
@Slf4j
|
|
||||||
@RestController
|
|
||||||
@RequiredArgsConstructor
|
|
||||||
@RequestMapping("/e8AccessControl")
|
|
||||||
public class AccessControlController {
|
|
||||||
|
|
||||||
private final AccessControlService accessControlService;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 远程开门
|
|
||||||
*
|
|
||||||
* @param req 传参
|
|
||||||
* @return Boolean
|
|
||||||
*/
|
|
||||||
@PostMapping("/remoteOpenDoor")
|
|
||||||
public R<Boolean> remoteOpenDoor(@RequestBody RemoteOpenDoorReq req) {
|
|
||||||
log.info("E8远程开门 入参:{}", req);
|
|
||||||
|
|
||||||
Boolean flag = accessControlService.remoteOpenDoor(req);
|
|
||||||
|
|
||||||
if (flag) {
|
|
||||||
return R.ok();
|
|
||||||
} else {
|
|
||||||
return R.fail("E8远程开门,调用失败!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取门禁记录列表
|
|
||||||
*
|
|
||||||
* @param dto 查询参数
|
|
||||||
* @return IPage<AccessRecordFindRes>
|
|
||||||
* @apiNote 获取参数示例 {"maxResultCount":10,"pageIndex":1,"queryDto":{"isViewFullData":false}}
|
|
||||||
*/
|
|
||||||
@PostMapping("/getPageAccessRecordList")
|
|
||||||
public R<TableDataInfo<AccessRecordFindRes>> getPageAccessRecordList(@RequestBody QueryDto dto) {
|
|
||||||
log.info("E8获取门禁记录列表 入参:{}", dto);
|
|
||||||
TableDataInfo<AccessRecordFindRes> page = accessControlService.getPageAccessRecordList(dto);
|
|
||||||
if (page == null) {
|
|
||||||
return R.fail("E8获取门禁记录列表,调用失败!");
|
|
||||||
} else {
|
|
||||||
return R.ok(page);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 人员授权
|
|
||||||
*
|
|
||||||
* @param req 传参
|
|
||||||
* @return Boolean
|
|
||||||
* @apiNote 参数示例 {"accessAuthModel":0,"authData":[{"floors":[],"gatewayType":1,"id":528705580163141,"type":0}],"authType":0,"elevatorAuthModel":1,"endTime":"2025-07-2511: 23: 39","personIds":[539696740646981],"scheduleId":1,"startTime":"2025-06-2511: 23: 39"}
|
|
||||||
*/
|
|
||||||
@PostMapping("/addCustomerAuth")
|
|
||||||
public R<Boolean> addCustomerAuth(@RequestBody CustomerAuthAddReq req) {
|
|
||||||
log.info("E8人员授权 入参:{}", req);
|
|
||||||
|
|
||||||
Boolean flag = accessControlService.addCustomerAuth(req);
|
|
||||||
|
|
||||||
if (flag) {
|
|
||||||
return R.ok();
|
|
||||||
} else {
|
|
||||||
return R.fail("E8人员授权,调用失败!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 获取人员权限分页列表
|
|
||||||
*
|
|
||||||
* @param dto 获取参数
|
|
||||||
* @return TableDataInfo<CustomerAuthFindRes>
|
|
||||||
* @apiNote 获取参数示例 {"maxResultCount":10,"pageIndex":1,"queryDto":{"isViewFullData":false}}
|
|
||||||
*/
|
|
||||||
@PostMapping("getPageCustomerAuth")
|
|
||||||
public R<TableDataInfo<CustomerAuthFindRes>> getPageCustomerAuth(@RequestBody QueryDto dto) {
|
|
||||||
log.info("E8获取人员权限分页列表 入参:{}", dto);
|
|
||||||
|
|
||||||
TableDataInfo<CustomerAuthFindRes> page = accessControlService.getPageCustomerAuth(dto);
|
|
||||||
|
|
||||||
if (page == null) {
|
|
||||||
return R.fail("E8获取人员权限分页列表,调用失败!");
|
|
||||||
} else {
|
|
||||||
return R.ok(page);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,135 +0,0 @@
|
|||||||
package org.dromara.sis.controller.e8;
|
|
||||||
|
|
||||||
import lombok.RequiredArgsConstructor;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.dromara.common.core.domain.R;
|
|
||||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
|
||||||
import org.dromara.sis.sdk.e8.DoorDeviceService;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.door.req.DoorDeviceAddReq;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.door.req.DoorDeviceUpdateReq;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.door.res.AuthDoorDeviceFindRes;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.door.res.DoorDeviceAddRes;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.door.res.DoorDeviceFindRes;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.QueryDto;
|
|
||||||
import org.springframework.util.ObjectUtils;
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author lsm
|
|
||||||
* @apiNote DoorDeviceController
|
|
||||||
* @since 2025/6/23
|
|
||||||
*/
|
|
||||||
@Slf4j
|
|
||||||
@RestController
|
|
||||||
@RequiredArgsConstructor
|
|
||||||
@RequestMapping("/e8DoorDevice")
|
|
||||||
public class DoorDeviceController {
|
|
||||||
|
|
||||||
private final DoorDeviceService doorDeviceService;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询门禁信息
|
|
||||||
*
|
|
||||||
* @param id 入参
|
|
||||||
* @return Result
|
|
||||||
*/
|
|
||||||
@PostMapping("/findDoorDevice/{id}")
|
|
||||||
public R<DoorDeviceFindRes> findDoorDevice(@PathVariable Long id) {
|
|
||||||
log.info("E8接口 查询门禁信息 入参={}", id);
|
|
||||||
DoorDeviceFindRes doorDeviceInfo = doorDeviceService.findDoorDevice(id);
|
|
||||||
if (doorDeviceInfo == null) {
|
|
||||||
return R.fail("E8接口查询门禁信息,调用失败!");
|
|
||||||
} else {
|
|
||||||
return R.ok(doorDeviceInfo);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 新增门禁信息
|
|
||||||
*
|
|
||||||
* @param addReq 入参
|
|
||||||
* @return Boolean
|
|
||||||
*/
|
|
||||||
@PostMapping("/addDoorDevice")
|
|
||||||
public R<DoorDeviceAddRes> addDoorDevice(@RequestBody DoorDeviceAddReq addReq) {
|
|
||||||
log.info("E8接口新增门禁信息 入参={}", addReq);
|
|
||||||
|
|
||||||
DoorDeviceAddRes doorDevice = doorDeviceService.addDoorDevice(addReq);
|
|
||||||
|
|
||||||
if (doorDevice == null) {
|
|
||||||
return R.fail("E8接口新增门禁信息,调用失败!");
|
|
||||||
} else {
|
|
||||||
return R.ok(doorDevice);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 门禁信息修改
|
|
||||||
*
|
|
||||||
* @param updateReq 入参
|
|
||||||
* @return Boolean
|
|
||||||
*/
|
|
||||||
@PostMapping("/updateDoorDevice")
|
|
||||||
public R<Boolean> updateDoorDevice(@RequestBody DoorDeviceUpdateReq updateReq) {
|
|
||||||
log.info("E8接口门禁信息修改 入参={}", updateReq);
|
|
||||||
|
|
||||||
Boolean flag = doorDeviceService.updateDoorDevice(updateReq);
|
|
||||||
|
|
||||||
if (flag) {
|
|
||||||
return R.ok();
|
|
||||||
} else {
|
|
||||||
return R.fail("E8接口门禁信息修改,调用失败!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 删除门禁信息
|
|
||||||
*
|
|
||||||
* @param id 入参
|
|
||||||
* @return Boolean
|
|
||||||
*/
|
|
||||||
@PostMapping("/deleteDoorDevice/{id}")
|
|
||||||
public R<Boolean> deleteDoorDevice(@PathVariable Long id) {
|
|
||||||
log.info("E8接口删除门禁信息 入参={}", id);
|
|
||||||
|
|
||||||
Boolean flag = doorDeviceService.deleteDoorDevice(id);
|
|
||||||
|
|
||||||
return flag ? R.ok() : R.fail("E8接口删除门禁信息,调用失败!");
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询门禁信息列表
|
|
||||||
*
|
|
||||||
* @param dto 入参
|
|
||||||
* @return IPage<DoorDeviceFindRes>
|
|
||||||
*/
|
|
||||||
@PostMapping("/findDoorDeviceList")
|
|
||||||
public R<TableDataInfo<DoorDeviceFindRes>> findDoorDeviceList(@RequestBody QueryDto dto) {
|
|
||||||
log.info("E8接口查询门禁信息列表 入参={}", dto);
|
|
||||||
TableDataInfo<DoorDeviceFindRes> doorDeviceList = doorDeviceService.findDoorDeviceList(dto);
|
|
||||||
if (ObjectUtils.isEmpty(doorDeviceList)) {
|
|
||||||
return R.fail("E8接口查询门禁信息列表,调用失败!");
|
|
||||||
} else {
|
|
||||||
return R.ok(doorDeviceList);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 分页获取授权门信息
|
|
||||||
*
|
|
||||||
* @return List<AuthDoorDeviceFindRes>
|
|
||||||
*/
|
|
||||||
@PostMapping("/findAuthDoor")
|
|
||||||
public R<List<AuthDoorDeviceFindRes>> getPageAuthDoorDeviceList() {
|
|
||||||
log.info("E8接口查询授权门信息");
|
|
||||||
List<AuthDoorDeviceFindRes> authDoor = doorDeviceService.getPageAuthDoorDeviceList();
|
|
||||||
if (ObjectUtils.isEmpty(authDoor)) {
|
|
||||||
return R.fail("E8接口查询授权门信息,调用失败!");
|
|
||||||
} else {
|
|
||||||
return R.ok(authDoor);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -1,113 +0,0 @@
|
|||||||
package org.dromara.sis.controller.e8;
|
|
||||||
|
|
||||||
import lombok.RequiredArgsConstructor;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.dromara.common.core.domain.R;
|
|
||||||
import org.dromara.sis.sdk.e8.VoucherControlService;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.voucher.req.ChangeCardReq;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.voucher.req.IssueVoucherReq;
|
|
||||||
import org.dromara.sis.sdk.e8.domain.voucher.req.OperateVoucherReq;
|
|
||||||
import org.springframework.web.bind.annotation.*;
|
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author lsm
|
|
||||||
* @apiNote VoucherControlController
|
|
||||||
* @since 2025/6/25
|
|
||||||
*/
|
|
||||||
@Slf4j
|
|
||||||
@RestController
|
|
||||||
@RequiredArgsConstructor
|
|
||||||
@RequestMapping("/e8VoucherControl")
|
|
||||||
public class VoucherControlController {
|
|
||||||
|
|
||||||
private final VoucherControlService voucherControlService;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 发行凭证
|
|
||||||
*
|
|
||||||
* @param req 入参
|
|
||||||
* @return 是否成功
|
|
||||||
*/
|
|
||||||
@PostMapping("/issueVoucher")
|
|
||||||
public R<Boolean> issueVoucher(@RequestBody IssueVoucherReq req) {
|
|
||||||
log.info("E8发行凭证入参:{}", req);
|
|
||||||
|
|
||||||
Long flag = voucherControlService.issueVoucher(req);
|
|
||||||
|
|
||||||
if (flag != null) {
|
|
||||||
return R.ok();
|
|
||||||
} else {
|
|
||||||
return R.fail("E8发行凭证,调用失败!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 操作凭证
|
|
||||||
*
|
|
||||||
* @param req 入参
|
|
||||||
* @return Boolean
|
|
||||||
*/
|
|
||||||
@PostMapping("/operateVoucher")
|
|
||||||
public R<Boolean> operateVoucher(@RequestBody OperateVoucherReq req) {
|
|
||||||
log.info("E8操作凭证入参:{}", req);
|
|
||||||
|
|
||||||
Boolean flag = voucherControlService.operateVoucher(req);
|
|
||||||
|
|
||||||
if (flag) {
|
|
||||||
return R.ok();
|
|
||||||
} else {
|
|
||||||
return R.fail("E8操作凭证,调用失败!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 换卡补卡
|
|
||||||
*
|
|
||||||
* @param req 入参
|
|
||||||
* @return Boolean
|
|
||||||
*/
|
|
||||||
@PostMapping("/changeCard")
|
|
||||||
public R<Boolean> changeCard(@RequestBody ChangeCardReq req) {
|
|
||||||
log.info("E8换卡补卡入参:{}", req);
|
|
||||||
|
|
||||||
Boolean flag = voucherControlService.changeCard(req);
|
|
||||||
|
|
||||||
if (flag) {
|
|
||||||
return R.ok();
|
|
||||||
} else {
|
|
||||||
return R.fail("E8换卡补卡,调用失败!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 上传人脸
|
|
||||||
*
|
|
||||||
* @param file 入参
|
|
||||||
* @return imageUrl 人脸图片地址
|
|
||||||
*/
|
|
||||||
@PostMapping("/uploadFace")
|
|
||||||
public R<String> uploadFace(@RequestParam("file") MultipartFile file) {
|
|
||||||
log.info("E8上传人脸入参:{}", file.getOriginalFilename());
|
|
||||||
|
|
||||||
// 获取文件字节数组
|
|
||||||
byte[] imageByte;
|
|
||||||
try {
|
|
||||||
imageByte = file.getBytes();
|
|
||||||
} catch (IOException e) {
|
|
||||||
log.error("获取上传文件字节失败:{}", e.getMessage());
|
|
||||||
return R.fail("E8上传人脸,获取文件字节失败!");
|
|
||||||
}
|
|
||||||
|
|
||||||
String imageUrl = voucherControlService.uploadFace(imageByte);
|
|
||||||
|
|
||||||
if (imageUrl != null) {
|
|
||||||
return R.ok(imageUrl);
|
|
||||||
} else {
|
|
||||||
return R.fail("E8上传人脸,调用失败!");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@ -32,8 +32,8 @@ public interface HuaWeiBoxApi {
|
|||||||
/**
|
/**
|
||||||
* 根据抓拍图片比对,返回人员ID
|
* 根据抓拍图片比对,返回人员ID
|
||||||
*
|
*
|
||||||
* @param req 入参
|
* @param base64Img 入参
|
||||||
* @return Long
|
* @return Long
|
||||||
*/
|
*/
|
||||||
Long findPerson(FinaHWPersonReq req);
|
Long findPerson(String base64Img);
|
||||||
}
|
}
|
||||||
|
@ -8,7 +8,6 @@ import lombok.NoArgsConstructor;
|
|||||||
* @apiNote FinaHWPersonReq
|
* @apiNote FinaHWPersonReq
|
||||||
* @since 2025/7/10
|
* @since 2025/7/10
|
||||||
*/
|
*/
|
||||||
@NoArgsConstructor
|
|
||||||
@Data
|
@Data
|
||||||
public class FinaHWPersonReq {
|
public class FinaHWPersonReq {
|
||||||
/**
|
/**
|
||||||
@ -23,6 +22,11 @@ public class FinaHWPersonReq {
|
|||||||
* page
|
* page
|
||||||
*/
|
*/
|
||||||
private PageDTO page;
|
private PageDTO page;
|
||||||
|
|
||||||
|
public FinaHWPersonReq() {
|
||||||
|
this.page = new PageDTO(); // 显式初始化 page
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* picture
|
* picture
|
||||||
*/
|
*/
|
||||||
|
@ -82,13 +82,18 @@ public class HuaWeiBoxApiService implements HuaWeiBoxApi {
|
|||||||
/**
|
/**
|
||||||
* 根据抓拍图片比对,返回人员ID
|
* 根据抓拍图片比对,返回人员ID
|
||||||
*
|
*
|
||||||
* @param req 入参
|
* @param base64Img 入参
|
||||||
* @return Long
|
* @return Long
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public Long findPerson(FinaHWPersonReq req){
|
public Long findPerson(String base64Img){
|
||||||
String url = "/sdk_service/rest/facerepositories/peoples";
|
String url = "/sdk_service/rest/facerepositories/peoples";
|
||||||
|
|
||||||
|
FinaHWPersonReq req = new FinaHWPersonReq();
|
||||||
|
FinaHWPersonReq.PictureDTO picture = new FinaHWPersonReq.PictureDTO();
|
||||||
|
picture.setBase64(base64Img);
|
||||||
|
req.setPicture(picture);
|
||||||
|
|
||||||
String jsonReq = JSONUtil.toJsonStr(req);
|
String jsonReq = JSONUtil.toJsonStr(req);
|
||||||
String jsonStrRes = huaWeiHttp.doPost(url, jsonReq);
|
String jsonStrRes = huaWeiHttp.doPost(url, jsonReq);
|
||||||
JSONObject jsonRes = JSONUtil.parseObj(jsonStrRes);
|
JSONObject jsonRes = JSONUtil.parseObj(jsonStrRes);
|
||||||
|
Loading…
Reference in New Issue
Block a user