public void SaveLastStopCarAccOnAlertStatus(Guid vehicleCode, LastStopCarAccOnAlertStatus status) { string key = CONST_KEY_LAST_STOPCARACCON_STATUS + vehicleCode.ToString(); if (status == null) { status = new LastStopCarAccOnAlertStatus(); } this.CachedService.Add(key, status, DateTime.Now.AddDays(1)); }
public LastStopCarAccOnAlertStatus GetLastStopCarAccOnAlertStatus(EGPSCurrentInfo current) { if (!current.VehicleCode.HasValue) return null; string key = CONST_KEY_LAST_STOPCARACCON_STATUS + current.VehicleCode.Value.ToString(); var result = this.CachedService.Get(key) as LastStopCarAccOnAlertStatus; if (result == null) { // 找不到则从数据库查找最后一条报表记录 DateTime dt1 = DateTime.Now; var lastReport = GPSServiceFacade.Report.StopCarAccOn.GetRecentReport(current.VehicleCode.Value); Logger.Info("从数据库查找最后一条StopCarAccOn报表记录", "开销时间(毫秒)", (DateTime.Now - dt1).TotalMilliseconds, "Vehicle Code", current.VehicleCode.Value); result = new LastStopCarAccOnAlertStatus(); if (lastReport != null) { result.LastAlertRecordId = lastReport.RecordID.ToString(); result.LastAlertStartTime = lastReport.GPSReportTime; result.LastAlertEndTime = lastReport.StopEndTime; result.LastStopCarAccOnTime = null; } lastReport = null; this.SaveLastStopCarAccOnAlertStatus(current.VehicleCode.Value, result); } return result; }