package cn.com.basic.face.util; import java.util.ArrayList; import java.util.Date; import java.util.List; import cn.com.basic.face.base.MainActivity; import cn.com.basic.face.discern.common.CommonVariables; import cn.com.basic.face.discern.query.item.SurveillanceQueryItem; import cn.com.basic.face.fragment.SurveillanceFragment; public class UnknownSurveillanceQueryItemUtil { private static UnknownSurveillanceQueryItemUtil instance = new UnknownSurveillanceQueryItemUtil(); public static UnknownSurveillanceQueryItemUtil getInstance() { return instance; } List allItems = new ArrayList<>(); public void addItems(List unknownItems) { allItems.addAll(unknownItems); removeTimeoutItemAndShow(); } public void removeTimeoutItemAndShow() { List itemsToRemove = new ArrayList(); for (SurveillanceQueryItem item : allItems) { if (item.getRegisterOrCheckIn() == CommonVariables.Surveillance.OFFLINE_SURVEILLANCE_ITEM_TYPE) { Date now = new Date(); Date createTime = item.getCreateTime(); double minutes = (now.getTime() - createTime.getTime())*1.0 / 1000 / 60; if (minutes >= 5) { itemsToRemove.add(item); } } } allItems.removeAll(itemsToRemove); MainActivity.getInstance().runOnUiThread(new Runnable() { @Override public void run() { SurveillanceFragment.getInstance().get_fragment_supervisory_bottom_visitor_list_view().show(UnknownSurveillanceQueryItemUtil.getInstance().getUnknownTwoRows()); SurveillanceFragment.getInstance().get_fragment_supervisory_bottom_attendance_list_view().show(new ArrayList()); } }); } private List getUnknownTwoRows() { return allItems; } public List getAllUnregisterVisitorTwoRowsForSelect(long selectedId) { return allItems; } public List getAllUnregisterAttenderTwoRowsForSelect(long selectedId) { return allItems; } }