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
|
||||
*
|
||||
* @param req 入参
|
||||
* @param base64Img 入参
|
||||
* @return Long
|
||||
*/
|
||||
Long findPerson(FinaHWPersonReq req);
|
||||
Long findPerson(String base64Img);
|
||||
}
|
||||
|
@ -8,7 +8,6 @@ import lombok.NoArgsConstructor;
|
||||
* @apiNote FinaHWPersonReq
|
||||
* @since 2025/7/10
|
||||
*/
|
||||
@NoArgsConstructor
|
||||
@Data
|
||||
public class FinaHWPersonReq {
|
||||
/**
|
||||
@ -23,6 +22,11 @@ public class FinaHWPersonReq {
|
||||
* page
|
||||
*/
|
||||
private PageDTO page;
|
||||
|
||||
public FinaHWPersonReq() {
|
||||
this.page = new PageDTO(); // 显式初始化 page
|
||||
}
|
||||
|
||||
/**
|
||||
* picture
|
||||
*/
|
||||
|
@ -82,13 +82,18 @@ public class HuaWeiBoxApiService implements HuaWeiBoxApi {
|
||||
/**
|
||||
* 根据抓拍图片比对,返回人员ID
|
||||
*
|
||||
* @param req 入参
|
||||
* @param base64Img 入参
|
||||
* @return Long
|
||||
*/
|
||||
@Override
|
||||
public Long findPerson(FinaHWPersonReq req){
|
||||
public Long findPerson(String base64Img){
|
||||
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 jsonStrRes = huaWeiHttp.doPost(url, jsonReq);
|
||||
JSONObject jsonRes = JSONUtil.parseObj(jsonStrRes);
|
||||
|
Loading…
Reference in New Issue
Block a user