private void RefreshStationState_1(CEntityRealTime entity) { List <CEntityStation> stationList_1 = CDBDataMgr.Instance.GetAllStation(); int?subcenterid = 0; for (int i = 0; i < stationList_1.Count; i++) { if (entity.StrStationID == stationList_1[i].StationID) { subcenterid = stationList_1[i].SubCenterID; } } Nullable <DateTime> time = CDBDataMgr.Instance.GetStationLastDateTime(entity.StrStationID); CListViewStationState.EStationState state = CListViewStationState.EStationState.EError; if (time.HasValue) { // 计算状态 state = GetStationStateByTime(time.Value); (m_lvStationStateAllPage.ListView as CListViewStationState).UpdateStationState(entity.StrStationID, state); if (m_mapSubCenterPage.ContainsKey(subcenterid.Value)) { (m_mapSubCenterPage[subcenterid.Value].ListView as CListViewStationState).UpdateStationState(entity.StrStationID, state); } } else { // 没有数据红色 (m_lvStationStateAllPage.ListView as CListViewStationState).UpdateStationState(entity.StrStationID, state); if (m_mapSubCenterPage.ContainsKey(subcenterid.Value)) { (m_mapSubCenterPage[subcenterid.Value].ListView as CListViewStationState).UpdateStationState(entity.StrStationID, state); } } }
/// <summary> /// 刷新站点状态,根据实时数据 /// </summary> private void RefreshStationState() { List <CEntityStation> stationList = CDBDataMgr.Instance.GetAllStation(); foreach (CEntityStation station in stationList) { Nullable <DateTime> time = CDBDataMgr.Instance.GetStationLastDateTime(station.StationID); CListViewStationState.EStationState state = CListViewStationState.EStationState.EError; if (time.HasValue) { // 计算状态 state = GetStationStateByTime(time.Value); (m_lvStationStateAllPage.ListView as CListViewStationState).UpdateStationState(station.StationID, state); if (m_mapSubCenterPage.ContainsKey(station.SubCenterID.Value)) { (m_mapSubCenterPage[station.SubCenterID.Value].ListView as CListViewStationState).UpdateStationState(station.StationID, state); } } else { // 没有数据红色 (m_lvStationStateAllPage.ListView as CListViewStationState).UpdateStationState(station.StationID, state); if (m_mapSubCenterPage.ContainsKey(station.SubCenterID.Value)) { (m_mapSubCenterPage[station.SubCenterID.Value].ListView as CListViewStationState).UpdateStationState(station.StationID, state); } } }// end of for // 更新到界面 (m_lvStationStateAllPage.ListView as CListViewStationState).RefreshUI(); foreach (KeyValuePair <int, CListViewTabPage> entity in m_mapSubCenterPage) { (entity.Value.ListView as CListViewStationState).RefreshUI(); } }