diff --git a/bonus-business/src/main/java/com/bonus/business/controller/robot/PersonFaceController.java b/bonus-business/src/main/java/com/bonus/business/controller/robot/PersonFaceController.java index 10536f9..8fe7e5b 100644 --- a/bonus-business/src/main/java/com/bonus/business/controller/robot/PersonFaceController.java +++ b/bonus-business/src/main/java/com/bonus/business/controller/robot/PersonFaceController.java @@ -82,8 +82,8 @@ public class PersonFaceController extends BaseController { * @return */ @PostMapping("addPerson") - public AjaxResult addPerson(@RequestBody PersonVo vo) { - return service.addPerson(vo); + public AjaxResult addPerson(@RequestBody List list) { + return service.addPerson(list); } /** diff --git a/bonus-business/src/main/java/com/bonus/business/robot/util/IntelligentLibraryUtil.java b/bonus-business/src/main/java/com/bonus/business/robot/util/IntelligentLibraryUtil.java index 2e6f7f8..2a8e282 100644 --- a/bonus-business/src/main/java/com/bonus/business/robot/util/IntelligentLibraryUtil.java +++ b/bonus-business/src/main/java/com/bonus/business/robot/util/IntelligentLibraryUtil.java @@ -175,8 +175,11 @@ public class IntelligentLibraryUtil { public static String addPersonImage(PersonImageVo param){ try { - // Convert image to required format and size - File[] imageData = convertImageUrlToFile(param.getImagePath(), 1080, 800); + // 假设我们有一个URL + URL url = new URL(param.getImagePath()); + // 将URL转换为File + File file = new File(url.getFile()); + File[] imageData = {file}; // DigestAuthClient client = new DigestAuthClient(DIGEST_USER, md5(DIGEST_PWD)); // 定义需要添加的表单数据 Map formData = new HashMap<>(); diff --git a/bonus-business/src/main/java/com/bonus/business/service/IPersonFaceService.java b/bonus-business/src/main/java/com/bonus/business/service/IPersonFaceService.java index fa637f6..33ff73c 100644 --- a/bonus-business/src/main/java/com/bonus/business/service/IPersonFaceService.java +++ b/bonus-business/src/main/java/com/bonus/business/service/IPersonFaceService.java @@ -22,7 +22,7 @@ public interface IPersonFaceService { * @param vo * @return */ - AjaxResult addPerson(PersonVo vo); + AjaxResult addPerson(List vo); /** * 删除人员信息 diff --git a/bonus-business/src/main/java/com/bonus/business/service/impl/PersonFaceServiceImpl.java b/bonus-business/src/main/java/com/bonus/business/service/impl/PersonFaceServiceImpl.java index 4e4ea98..eabcbea 100644 --- a/bonus-business/src/main/java/com/bonus/business/service/impl/PersonFaceServiceImpl.java +++ b/bonus-business/src/main/java/com/bonus/business/service/impl/PersonFaceServiceImpl.java @@ -100,89 +100,92 @@ public class PersonFaceServiceImpl implements IPersonFaceService { /** * 添加人员信息(修改) * - * @param vo 人员信息对象 + * @param list 人员信息对象 + * personVo.setType("face"); + * personVo.setName("朱文"); + * personVo.setGroupname("robotV1"); + * personVo.setGender(1); + * personVo.setBirthday("2025-06-03"); + * personVo.setNativePlace("安徽"); + * personVo.setCardid("34082319960912259X"); + * personVo.setIdCard("34082319960912259X"); + * personVo.setPhones("13888888888"); + * personVo.setImage("http://112.29.103.165:1616/file/ynRealName/face/2025/06/14/1f4a27c9ec4049a5a7257f8bc3ba255d.jpg"); * @return 返回操作结果 */ @Override - public AjaxResult addPerson(PersonVo vo) { + public AjaxResult addPerson(List list) { try { - if (vo.getIds() != null && !vo.getIds().isEmpty()) { // List list = mapper.selectPerson(vo.getIds()); - List list = new ArrayList<>(); - list.add(vo); - if (list.isEmpty()) { - return AjaxResult.error("未查询到人员信息"); - } - int m = 0; - int n = 0; - StringBuilder sb = new StringBuilder(); - for (PersonVo personVo : list) { - personVo.setGroupname("robotV1"); - String addResult = IntelligentLibraryUtil.addPerson(personVo); - JSONObject addEntries = JSONUtil.parseObj(addResult); - if (addEntries.getInt("code") == 0) { - //添加成功,获取到index - JSONObject datas = addEntries.getJSONObject("datas"); - personVo.setIndex(datas.getInt("label_index")); - } else if (addEntries.getInt("code") == 7) { - //人员重复,调用修改 - personVo.setIndex(addEntries.getInt("label_index")); - String updateResult = IntelligentLibraryUtil.updatePerson(vo); - JSONObject updateEntries = JSONUtil.parseObj(updateResult); - if (updateEntries.getInt("code") == 0) { - //修改成功,无需其他操作 - } else { - //修改失败,entries2 - sb.append(personVo.getName()).append(":").append(updateEntries.getStr("message")).append("\n"); - } + if (list.isEmpty()) { + return AjaxResult.error("未查询到人员信息"); + } + int m = 0; + int n = 0; + StringBuilder sb = new StringBuilder(); + for (PersonVo personVo : list) { + String addResult = IntelligentLibraryUtil.addPerson(personVo); + JSONObject addEntries = JSONUtil.parseObj(addResult); + if (addEntries.getInt("code") == 0) { + //添加成功,获取到index + JSONObject datas = addEntries.getJSONObject("datas"); + personVo.setIndex(datas.getInt("label_index")); + } else if (addEntries.getInt("code") == 7) { + //人员重复,调用修改 + personVo.setIndex(addEntries.getInt("label_index")); + String updateResult = IntelligentLibraryUtil.updatePerson(personVo); + JSONObject updateEntries = JSONUtil.parseObj(updateResult); + if (updateEntries.getInt("code") == 0) { + //修改成功,无需其他操作 } else { - //添加失败,添加错误信息 - sb.append(personVo.getName()).append(":").append(addEntries.getStr("message")).append("\n"); + //修改失败,entries2 + sb.append(personVo.getName()).append(":").append(updateEntries.getStr("message")).append("\n"); } - //调用添加照片 - if (personVo.getIndex() > 0) { - //先查询图片数量 - PersonImageVo personImageVo = new PersonImageVo(); - personImageVo.setGroupname("robotV1"); - personImageVo.setLabel_index(personVo.getIndex()); - personImageVo.setRows(4); - //根据index查询图片 - String selectImageResult = IntelligentLibraryUtil.queryPersonImage(personImageVo); - JSONObject selectImageEntries = JSONUtil.parseObj(selectImageResult); - if (selectImageEntries.getInt("code") == 0) { - Integer total = selectImageEntries.getInt("total"); - //如果图片满了,就全部删除 - if(total>=4){ - JSONArray datas = selectImageEntries.getJSONArray("datas"); - for (int i = 0; i < total; i++) { - personImageVo.setImage_id(datas.getJSONObject(i).getInt("index")); - String delImageResult = IntelligentLibraryUtil.removePersonImage(personImageVo); - JSONObject delImageEntries = JSONUtil.parseObj(delImageResult); - if (delImageEntries.getInt("code") == 0) { - //删除成功 - } + } else { + //添加失败,添加错误信息 + sb.append(personVo.getName()).append(":").append(addEntries.getStr("message")).append("\n"); + } + //调用添加照片 + if (personVo.getIndex() > 0) { + //先查询图片数量 + PersonImageVo personImageVo = new PersonImageVo(); + personImageVo.setGroupname(personVo.getGroupname()); + personImageVo.setLabel_index(personVo.getIndex()); + personImageVo.setRows(4); + //根据index查询图片 + String selectImageResult = IntelligentLibraryUtil.queryPersonImage(personImageVo); + JSONObject selectImageEntries = JSONUtil.parseObj(selectImageResult); + if (selectImageEntries.getInt("code") == 0) { + Integer total = selectImageEntries.getInt("total"); + //如果图片满了,就全部删除 + if (total >= 4) { + JSONArray datas = selectImageEntries.getJSONArray("datas"); + for (int i = 0; i < total; i++) { + personImageVo.setImage_id(datas.getJSONObject(i).getInt("index")); + String delImageResult = IntelligentLibraryUtil.removePersonImage(personImageVo); + JSONObject delImageEntries = JSONUtil.parseObj(delImageResult); + if (delImageEntries.getInt("code") == 0) { + //删除成功 } } } - //添加图片 - personImageVo.setImagePath(personVo.getImage()); - String addImageResult = IntelligentLibraryUtil.addPersonImage(personImageVo); - JSONObject addImageEntries = JSONUtil.parseObj(addImageResult); - if (addImageEntries.getInt("code") == 0) { - m++; - } else { - sb.append(personVo.getName()).append(":").append(addImageEntries.getStr("message")).append("\n"); - } - } else { - n++; - sb.append(personVo.getName()).append(":").append("人员信息添加失败").append("\n"); } + //添加图片 + personImageVo.setImagePath(personVo.getImage()); + String addImageResult = IntelligentLibraryUtil.addPersonImage(personImageVo); + JSONObject addImageEntries = JSONUtil.parseObj(addImageResult); + if (addImageEntries.getInt("code") == 0) { + m++; + } else { + sb.append(personVo.getName()).append(":").append(addImageEntries.getStr("message")).append("\n"); + } + } else { + n++; + sb.append(personVo.getName()).append(":").append("人员信息添加失败").append("\n"); } - String result = "成功下发人员" + m + "条,失败" + n + "条数据;失败原因:" + sb; - return AjaxResult.success(result); - } else { - return AjaxResult.error("请选择下发人员信息"); } + String result = "成功下发人员" + m + "条,失败" + n + "条数据;失败原因:" + sb; + return AjaxResult.success(result); } catch (Exception e) { log.error(e.toString(), e); return AjaxResult.error("过程异常:" + e.getMessage());