bug修改
This commit is contained in:
parent
f6f7b7b76c
commit
dca25fc2ff
@ -126,46 +126,80 @@ public class ProjectUfaceConfigServiceImpl extends ServiceImpl<ProjectUfaceConfi
|
|||||||
ProjectUfaceConfig tempProjectUfaceConfig = projectUfaceConfigMapper.selectOne(queryWrapper);
|
ProjectUfaceConfig tempProjectUfaceConfig = projectUfaceConfigMapper.selectOne(queryWrapper);
|
||||||
//判断是否配置并下发设备
|
//判断是否配置并下发设备
|
||||||
if (tempProjectUfaceConfig != null && tempProjectUfaceConfig.getIssueDev() == 1) {
|
if (tempProjectUfaceConfig != null && tempProjectUfaceConfig.getIssueDev() == 1) {
|
||||||
Map<String, Object> param = new HashMap<>();
|
String ufaceDevId = workerInfo.getUfaceDevId();
|
||||||
param.put("projectSn", workerInfo.getProjectSn());
|
if (tempProjectUfaceConfig.getSupplierType() == 9) {
|
||||||
if ("0".equals(workerInfo.getUfaceDevId())) {
|
//isc设备
|
||||||
workerInfo.setUfaceDevId(null);
|
Map<String, Object> param = new HashMap<>();
|
||||||
}
|
param.put("projectSn", workerInfo.getProjectSn());
|
||||||
if (StringUtils.isNotEmpty(workerInfo.getUfaceDevId())) {
|
if ("0".equals(ufaceDevId)) {
|
||||||
param.put("registerType", workerInfo.getRegisterType());
|
workerInfo.setUfaceDevId(null);
|
||||||
param.put("accountType", workerInfo.getAccountType());
|
|
||||||
}
|
|
||||||
if (Objects.equals(workerInfo.getDevType(), 1)) {
|
|
||||||
param.put("devIds", workerInfo.getUfaceDevId());
|
|
||||||
} else if (Objects.equals(workerInfo.getDevType(), 2)) {
|
|
||||||
//设备分组情况!
|
|
||||||
String ufaceDevGroupId = workerInfo.getUfaceDevGroupId();
|
|
||||||
if (StringUtils.isEmpty(ufaceDevGroupId)) {
|
|
||||||
ufaceDevGroupId = "0";
|
|
||||||
}
|
}
|
||||||
List<Long> ufaceIds = ufaceDevToGroupMapper.selectList(new LambdaQueryWrapper<UfaceDevToGroup>()
|
if (StringUtils.isNotEmpty(ufaceDevId)) {
|
||||||
.in(UfaceDevToGroup::getUfaceDevGroupId, Arrays.asList(StringUtils.split(ufaceDevGroupId, ",")))).stream().map(UfaceDevToGroup::getUfaceDevId).collect(Collectors.toList());
|
param.put("registerType", workerInfo.getRegisterType());
|
||||||
if (CollUtil.isEmpty(ufaceIds)) {
|
|
||||||
ufaceIds.add(0L);
|
|
||||||
}
|
}
|
||||||
ufaceIds.stream().distinct();
|
param.put("accountType", 2);
|
||||||
param.put("devIds", StringUtils.join(ufaceIds, ","));
|
if (Objects.equals(workerInfo.getDevType(), 1)) {
|
||||||
}
|
if (StrUtil.isBlank(ufaceDevId)) {
|
||||||
List<UfaceDev> list = ufaceDevMapper.selectUserUfaceDevList(param);
|
return;
|
||||||
if (list != null && list.size() > 0) {
|
|
||||||
StringBuilder devBuilder = new StringBuilder();
|
|
||||||
StringBuilder devIdBuilder = new StringBuilder();
|
|
||||||
for (UfaceDev dev : list) {
|
|
||||||
if (devBuilder.length() > 0) {
|
|
||||||
devBuilder.append(",");
|
|
||||||
}
|
}
|
||||||
if (devIdBuilder.length() > 0) {
|
param.put("devIds", ufaceDevId);
|
||||||
devIdBuilder.append(",");
|
} else if (Objects.equals(workerInfo.getDevType(), 2)) {
|
||||||
|
//设备分组情况!
|
||||||
|
String ufaceDevGroupId = workerInfo.getUfaceDevGroupId();
|
||||||
|
if (StringUtils.isEmpty(ufaceDevGroupId)) {
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
devBuilder.append(dev.getDevSn());
|
List<Long> ufaceIds = ufaceDevToGroupMapper.selectList(new LambdaQueryWrapper<UfaceDevToGroup>()
|
||||||
devIdBuilder.append(dev.getDeviceId());
|
.in(UfaceDevToGroup::getUfaceDevGroupId, Arrays.asList(StringUtils.split(ufaceDevGroupId, ",")))).stream().map(UfaceDevToGroup::getUfaceDevId).collect(Collectors.toList());
|
||||||
|
if (CollUtil.isEmpty(ufaceIds)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
ufaceIds.stream().distinct();
|
||||||
|
param.put("devIds", StringUtils.join(ufaceIds, ","));
|
||||||
|
}
|
||||||
|
List<UfaceDev> list = ufaceDevMapper.selectUserUfaceDevList(param);
|
||||||
|
if (list != null && list.size() > 0) {
|
||||||
|
StringBuilder devBuilder = new StringBuilder();
|
||||||
|
StringBuilder devIdBuilder = new StringBuilder();
|
||||||
|
for (UfaceDev dev : list) {
|
||||||
|
if (devBuilder.length() > 0) {
|
||||||
|
devBuilder.append(",");
|
||||||
|
}
|
||||||
|
if (devIdBuilder.length() > 0) {
|
||||||
|
devIdBuilder.append(",");
|
||||||
|
}
|
||||||
|
devBuilder.append(dev.getDevSn());
|
||||||
|
devIdBuilder.append(dev.getDeviceId());
|
||||||
|
}
|
||||||
|
sendDev(tempProjectUfaceConfig, workerInfo, devBuilder.toString(), devIdBuilder.toString());
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
Map<String, Object> param = new HashMap<>();
|
||||||
|
param.put("projectSn", workerInfo.getProjectSn());
|
||||||
|
if ("0".equals(ufaceDevId)) {
|
||||||
|
workerInfo.setUfaceDevId(null);
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotEmpty(ufaceDevId)) {
|
||||||
|
param.put("registerType", workerInfo.getRegisterType());
|
||||||
|
param.put("accountType", workerInfo.getAccountType());
|
||||||
|
param.put("devIds", ufaceDevId);
|
||||||
|
}
|
||||||
|
List<UfaceDev> list = ufaceDevMapper.selectUserUfaceDevList(param);
|
||||||
|
if (list != null && list.size() > 0) {
|
||||||
|
StringBuilder devBuilder = new StringBuilder();
|
||||||
|
StringBuilder devIdBuilder = new StringBuilder();
|
||||||
|
for (UfaceDev dev : list) {
|
||||||
|
if (devBuilder.length() > 0) {
|
||||||
|
devBuilder.append(",");
|
||||||
|
}
|
||||||
|
if (devIdBuilder.length() > 0) {
|
||||||
|
devIdBuilder.append(",");
|
||||||
|
}
|
||||||
|
devBuilder.append(dev.getDevSn());
|
||||||
|
devIdBuilder.append(dev.getDeviceId());
|
||||||
|
}
|
||||||
|
sendDev(tempProjectUfaceConfig, workerInfo, devBuilder.toString(), devIdBuilder.toString());
|
||||||
}
|
}
|
||||||
sendDev(tempProjectUfaceConfig, workerInfo, devBuilder.toString(), devIdBuilder.toString());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -206,74 +240,6 @@ public class ProjectUfaceConfigServiceImpl extends ServiceImpl<ProjectUfaceConfi
|
|||||||
ProjectUfaceConfig tempProjectUfaceConfig = projectUfaceConfigMapper.selectOne(queryWrapper);
|
ProjectUfaceConfig tempProjectUfaceConfig = projectUfaceConfigMapper.selectOne(queryWrapper);
|
||||||
//判断是否配置并下发设备
|
//判断是否配置并下发设备
|
||||||
if (tempProjectUfaceConfig != null && tempProjectUfaceConfig.getIssueDev() == 1) {
|
if (tempProjectUfaceConfig != null && tempProjectUfaceConfig.getIssueDev() == 1) {
|
||||||
Map<String, Object> param = new HashMap<>();
|
|
||||||
param.put("projectSn", workerInfo.getProjectSn());
|
|
||||||
log.info("---新数据:" + workerInfo.getUfaceDevId() + "-----老数据:" + oldWorkerInfo.getUfaceDevId());
|
|
||||||
//有选择设备
|
|
||||||
Boolean hasDev = true;
|
|
||||||
if (StringUtils.isEmpty(workerInfo.getUfaceDevId())) {
|
|
||||||
hasDev = false;
|
|
||||||
workerInfo.setUfaceDevId(oldWorkerInfo.getUfaceDevId());
|
|
||||||
}
|
|
||||||
if ("0".equals(workerInfo.getUfaceDevId())) {
|
|
||||||
workerInfo.setUfaceDevId(null);
|
|
||||||
}
|
|
||||||
if (StringUtils.isNotEmpty(workerInfo.getUfaceDevId())) {
|
|
||||||
param.put("registerType", workerInfo.getRegisterType());
|
|
||||||
param.put("accountType", 1);
|
|
||||||
param.put("devIds", workerInfo.getUfaceDevId());
|
|
||||||
}
|
|
||||||
List<UfaceDev> list = ufaceDevMapper.selectUserUfaceDevList(param);
|
|
||||||
if (list != null && list.size() > 0) {
|
|
||||||
StringBuilder devBuilder = new StringBuilder();
|
|
||||||
StringBuilder devIdBuilder = new StringBuilder();
|
|
||||||
for (UfaceDev dev : list) {
|
|
||||||
if (devBuilder.length() > 0) {
|
|
||||||
devBuilder.append(",");
|
|
||||||
}
|
|
||||||
if (devIdBuilder.length() > 0) {
|
|
||||||
devIdBuilder.append(",");
|
|
||||||
}
|
|
||||||
devBuilder.append(dev.getDevSn());
|
|
||||||
devIdBuilder.append(dev.getDeviceId());
|
|
||||||
}
|
|
||||||
if (tempProjectUfaceConfig.getSupplierType() == 1) {
|
|
||||||
String image = "";
|
|
||||||
if (StringUtils.isNotEmpty(workerInfo.getFieldAcquisitionUrl()) && workerInfo.getFieldAcquisitionUrl().startsWith("http")) {
|
|
||||||
image = workerInfo.getFieldAcquisitionUrl();
|
|
||||||
} else {
|
|
||||||
image = basePath + "/" + workerInfo.getFieldAcquisitionUrl();
|
|
||||||
}
|
|
||||||
UniUbiUtil.addPerson(tempProjectUfaceConfig.getAppId(), tempProjectUfaceConfig.getAppKey(), tempProjectUfaceConfig.getAppSecret(),
|
|
||||||
workerInfo.getWorkerName(), workerInfo.getAttendanceNumber(), workerInfo.getIdCard(),
|
|
||||||
image, devBuilder.toString());
|
|
||||||
} else if (tempProjectUfaceConfig.getSupplierType() == 4) {
|
|
||||||
//人员唯一编号改变需要先删除再下发
|
|
||||||
if (oldWorkerInfo != null && workerInfo.getIdCard().equals(oldWorkerInfo.getIdCard())) {
|
|
||||||
try {
|
|
||||||
QYUfaceUtil.deleteNewPerson(tempProjectUfaceConfig.getAppId(), tempProjectUfaceConfig.getAppSecret(), oldWorkerInfo.getIdCard());
|
|
||||||
} catch (Exception e) {
|
|
||||||
log.error("error:", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
QYUfaceUtil.addOrUpdatePerson(tempProjectUfaceConfig.getAppId(), tempProjectUfaceConfig.getAppSecret(), 1, workerInfo.getIdCard(), workerInfo.getWorkerName(),
|
|
||||||
"", "", workerInfo.getIdCard(), "", "", 3, "", devIdBuilder.toString().split(","), basePath + "/" + workerInfo.getFieldAcquisitionUrl());
|
|
||||||
} else if (tempProjectUfaceConfig.getSupplierType() == 5) {
|
|
||||||
//佳信捷设备
|
|
||||||
JxjUfaceUtil.updateWorkerInfo(workerInfo, tempProjectUfaceConfig, serverUrl + "/image/");
|
|
||||||
} else if (tempProjectUfaceConfig.getSupplierType() == 6) {
|
|
||||||
//佳信捷新设备
|
|
||||||
JxjNewUfaceDevUtil.addOrUpdatePerson(workerInfo, tempProjectUfaceConfig, basePath, devBuilder.toString(), jxjDevImageType);
|
|
||||||
} else if (tempProjectUfaceConfig.getSupplierType() == 7) {
|
|
||||||
//海康门禁sdk
|
|
||||||
HikvisionUfaceSDKUtil.deletePerson(workerInfo, tempProjectUfaceConfig, oldWorkerInfo.getUfaceDevId());
|
|
||||||
if (hasDev) {
|
|
||||||
HikvisionUfaceSDKUtil.addOrUpdatePerson(workerInfo, tempProjectUfaceConfig, devBuilder.toString());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if (tempProjectUfaceConfig.getSupplierType() == 9) {
|
if (tempProjectUfaceConfig.getSupplierType() == 9) {
|
||||||
//海康门禁isc
|
//海康门禁isc
|
||||||
String devSns = "";
|
String devSns = "";
|
||||||
@ -322,13 +288,82 @@ public class ProjectUfaceConfigServiceImpl extends ServiceImpl<ProjectUfaceConfi
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
//只删除
|
//只删除
|
||||||
List<UfaceDev> notExistList = ufaceDevMapper.getUfaceDevListForIscNotExist(StrUtil.split(ufaceDevGroupId, ","), workerInfo.getProjectSn());
|
List<UfaceDev> notExistList = ufaceDevMapper.selectList(new LambdaQueryWrapper<UfaceDev>()
|
||||||
|
.eq(UfaceDev::getProjectSn, workerInfo.getProjectSn())
|
||||||
|
);
|
||||||
if (CollUtil.isNotEmpty(notExistList)) {
|
if (CollUtil.isNotEmpty(notExistList)) {
|
||||||
notDevSns = StrUtil.join(",", notExistList.stream().map(UfaceDev::getDevSn).collect(Collectors.toList()));
|
notDevSns = StrUtil.join(",", notExistList.stream().map(UfaceDev::getDevSn).collect(Collectors.toList()));
|
||||||
asyncHikvision.deletePersonAuth(workerInfo, notDevSns);
|
asyncHikvision.deletePersonAuth(workerInfo, notDevSns);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
Map<String, Object> param = new HashMap<>();
|
||||||
|
param.put("projectSn", workerInfo.getProjectSn());
|
||||||
|
log.info("---新数据:" + workerInfo.getUfaceDevId() + "-----老数据:" + oldWorkerInfo.getUfaceDevId());
|
||||||
|
//有选择设备
|
||||||
|
Boolean hasDev = true;
|
||||||
|
if (StringUtils.isEmpty(workerInfo.getUfaceDevId())) {
|
||||||
|
hasDev = false;
|
||||||
|
workerInfo.setUfaceDevId(oldWorkerInfo.getUfaceDevId());
|
||||||
|
}
|
||||||
|
if ("0".equals(workerInfo.getUfaceDevId())) {
|
||||||
|
workerInfo.setUfaceDevId(null);
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotEmpty(workerInfo.getUfaceDevId())) {
|
||||||
|
param.put("registerType", workerInfo.getRegisterType());
|
||||||
|
param.put("accountType", 1);
|
||||||
|
param.put("devIds", workerInfo.getUfaceDevId());
|
||||||
|
}
|
||||||
|
List<UfaceDev> list = ufaceDevMapper.selectUserUfaceDevList(param);
|
||||||
|
if (list != null && list.size() > 0) {
|
||||||
|
StringBuilder devBuilder = new StringBuilder();
|
||||||
|
StringBuilder devIdBuilder = new StringBuilder();
|
||||||
|
for (UfaceDev dev : list) {
|
||||||
|
if (devBuilder.length() > 0) {
|
||||||
|
devBuilder.append(",");
|
||||||
|
}
|
||||||
|
if (devIdBuilder.length() > 0) {
|
||||||
|
devIdBuilder.append(",");
|
||||||
|
}
|
||||||
|
devBuilder.append(dev.getDevSn());
|
||||||
|
devIdBuilder.append(dev.getDeviceId());
|
||||||
|
}
|
||||||
|
if (tempProjectUfaceConfig.getSupplierType() == 1) {
|
||||||
|
String image = "";
|
||||||
|
if (StringUtils.isNotEmpty(workerInfo.getFieldAcquisitionUrl()) && workerInfo.getFieldAcquisitionUrl().startsWith("http")) {
|
||||||
|
image = workerInfo.getFieldAcquisitionUrl();
|
||||||
|
} else {
|
||||||
|
image = basePath + "/" + workerInfo.getFieldAcquisitionUrl();
|
||||||
|
}
|
||||||
|
UniUbiUtil.addPerson(tempProjectUfaceConfig.getAppId(), tempProjectUfaceConfig.getAppKey(), tempProjectUfaceConfig.getAppSecret(),
|
||||||
|
workerInfo.getWorkerName(), workerInfo.getAttendanceNumber(), workerInfo.getIdCard(),
|
||||||
|
image, devBuilder.toString());
|
||||||
|
} else if (tempProjectUfaceConfig.getSupplierType() == 4) {
|
||||||
|
//人员唯一编号改变需要先删除再下发
|
||||||
|
if (oldWorkerInfo != null && workerInfo.getIdCard().equals(oldWorkerInfo.getIdCard())) {
|
||||||
|
try {
|
||||||
|
QYUfaceUtil.deleteNewPerson(tempProjectUfaceConfig.getAppId(), tempProjectUfaceConfig.getAppSecret(), oldWorkerInfo.getIdCard());
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("error:", e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
QYUfaceUtil.addOrUpdatePerson(tempProjectUfaceConfig.getAppId(), tempProjectUfaceConfig.getAppSecret(), 1, workerInfo.getIdCard(), workerInfo.getWorkerName(),
|
||||||
|
"", "", workerInfo.getIdCard(), "", "", 3, "", devIdBuilder.toString().split(","), basePath + "/" + workerInfo.getFieldAcquisitionUrl());
|
||||||
|
} else if (tempProjectUfaceConfig.getSupplierType() == 5) {
|
||||||
|
//佳信捷设备
|
||||||
|
JxjUfaceUtil.updateWorkerInfo(workerInfo, tempProjectUfaceConfig, serverUrl + "/image/");
|
||||||
|
} else if (tempProjectUfaceConfig.getSupplierType() == 6) {
|
||||||
|
//佳信捷新设备
|
||||||
|
JxjNewUfaceDevUtil.addOrUpdatePerson(workerInfo, tempProjectUfaceConfig, basePath, devBuilder.toString(), jxjDevImageType);
|
||||||
|
} else if (tempProjectUfaceConfig.getSupplierType() == 7) {
|
||||||
|
//海康门禁sdk
|
||||||
|
HikvisionUfaceSDKUtil.deletePerson(workerInfo, tempProjectUfaceConfig, oldWorkerInfo.getUfaceDevId());
|
||||||
|
if (hasDev) {
|
||||||
|
HikvisionUfaceSDKUtil.addOrUpdatePerson(workerInfo, tempProjectUfaceConfig, devBuilder.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -388,6 +423,7 @@ public class ProjectUfaceConfigServiceImpl extends ServiceImpl<ProjectUfaceConfi
|
|||||||
Map<String, Object> param = new HashMap<>();
|
Map<String, Object> param = new HashMap<>();
|
||||||
param.put("projectSn", workerInfo.getProjectSn());
|
param.put("projectSn", workerInfo.getProjectSn());
|
||||||
param.put("devIds", StringUtils.join(ufaceIds, ","));
|
param.put("devIds", StringUtils.join(ufaceIds, ","));
|
||||||
|
param.put("accountType", 2);
|
||||||
List<UfaceDev> list1 = ufaceDevMapper.selectUserUfaceDevList(param);
|
List<UfaceDev> list1 = ufaceDevMapper.selectUserUfaceDevList(param);
|
||||||
if (CollUtil.isEmpty(list1)) {
|
if (CollUtil.isEmpty(list1)) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
@ -135,19 +135,20 @@
|
|||||||
separator="," open="(" close=")">
|
separator="," open="(" close=")">
|
||||||
#{item}
|
#{item}
|
||||||
</foreach>
|
</foreach>
|
||||||
|
and ud.project_sn =#{projectSn}
|
||||||
</select>
|
</select>
|
||||||
<select id="getUfaceDevListForIscNotExist" resultType="com.zhgd.xmgl.modules.worker.entity.UfaceDev">
|
<select id="getUfaceDevListForIscNotExist" resultType="com.zhgd.xmgl.modules.worker.entity.UfaceDev">
|
||||||
select distinct ud.* from uface_dev ud
|
select distinct ud.* from uface_dev ud
|
||||||
LEFT join uface_dev_to_group udtg on ud.id = udtg.uface_dev_id
|
LEFT join uface_dev_to_group udtg on ud.id = udtg.uface_dev_id
|
||||||
where (1=1
|
where 1=1
|
||||||
<if test="list != null">
|
<if test="list != null">
|
||||||
and udtg.uface_dev_group_id not in
|
and (udtg.uface_dev_group_id not in
|
||||||
<foreach collection="list" item="item" index="index"
|
<foreach collection="list" item="item" index="index"
|
||||||
separator="," open="(" close=")">
|
separator="," open="(" close=")">
|
||||||
#{item}
|
#{item}
|
||||||
</foreach>
|
</foreach>
|
||||||
|
OR udtg.id is null)
|
||||||
</if>
|
</if>
|
||||||
OR udtg.id is null)
|
|
||||||
and ud.project_sn =#{projectSn}
|
and ud.project_sn =#{projectSn}
|
||||||
</select>
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user