package com.basic.security.manager; import com.basic.security.utils.CompareFeatureResult; import com.basic.security.utils.FacePosition; import com.basic.security.utils.FaceTitleAndTipsS; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; public class FaceTitleAndTipsManagerS { public static Map faceTitleMap = new ConcurrentHashMap<>(); static long lastTrackerId; static String lastPersonId; public static FaceTitleAndTipsS getFaceTitleMap(FacePosition facePosition) { return getFaceTitleMap(facePosition, true); } public static void clearFaceTitle() { for (FaceTitleAndTipsS faceTitleAndTips : faceTitleMap.values()) { faceTitleAndTips.faceTitle("", false); } } public static FaceTitleAndTipsS getFaceTitleMap(FacePosition facePosition, boolean forShow) { long trackerId = facePosition.trackerId; FaceTitleAndTipsS faceTitleAndTips = faceTitleMap.get(trackerId); try { // System1.out.println("trackerId====="+trackerId); CompareFeatureResult compareFeatureResult = facePosition.compareFeatureResult; try { if (faceTitleAndTips == null) { faceTitleAndTips = new FaceTitleAndTipsS(); faceTitleAndTips.facePosition = facePosition; faceTitleMap.put(trackerId, faceTitleAndTips); } if (compareFeatureResult != null) { faceTitleAndTips.personId = compareFeatureResult.personId; faceTitleAndTips.person = compareFeatureResult.person; faceTitleAndTips.validBusinessRuleList = compareFeatureResult.validBusinessRuleList; } if (forShow) { if (facePosition.compareFeatureResult != null) { String currentPersonId = facePosition.compareFeatureResult.personId; if (lastTrackerId == facePosition.trackerId && currentPersonId != null && !currentPersonId.equals(lastPersonId)) { if ("".equals(currentPersonId) || compareFeatureResult.person == null) { faceTitleAndTips.faceTitle("", false); faceTitleAndTips.setFaceTitleRedColor(); } else { if ("未注册".equals(compareFeatureResult.person.getString("sign_up_status"))) { faceTitleAndTips.faceTitle("", false); faceTitleAndTips.setFaceTitleRedColor(); } } } } } } catch (Exception e) { e.printStackTrace(); } lastTrackerId = facePosition.trackerId; if (facePosition.compareFeatureResult != null) { lastPersonId = facePosition.compareFeatureResult.personId; } } catch (Exception e) { e.printStackTrace(); } return faceTitleAndTips; } }