人员下发修改

This commit is contained in:
fl 2025-07-04 11:29:03 +08:00
parent fe577aa8e2
commit 8eb94c2419
4 changed files with 81 additions and 75 deletions

View File

@ -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<PersonVo> list) {
return service.addPerson(list);
}
/**

View File

@ -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<String, String> formData = new HashMap<>();

View File

@ -22,7 +22,7 @@ public interface IPersonFaceService {
* @param vo
* @return
*/
AjaxResult addPerson(PersonVo vo);
AjaxResult addPerson(List<PersonVo> vo);
/**
* 删除人员信息

View File

@ -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<PersonVo> list) {
try {
if (vo.getIds() != null && !vo.getIds().isEmpty()) {
// List<PersonVo> list = mapper.selectPerson(vo.getIds());
List<PersonVo> 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());