public async Task <IHttpActionResult> Performance(Performance model) { try { List <DriverScore> driverScoreList = new List <DriverScore>(); var strPath = @"G:\Projects\APTCAPI\CTAPI\Performance.json"; string localPath = new Uri(strPath).LocalPath; Performance performance = new Performance(); using (StreamReader read = new StreamReader(strPath)) { string json = read.ReadToEnd(); performance = JsonConvert.DeserializeObject <Performance>(json); } foreach (var score in performance.DriverScore) { DriverScore driverScore = new DriverScore(); driverScore.DriverId = score.DriverId; driverScore.KmsTravelled = score.KmsTravelled; driverScore.Braking = score.Braking; driverScore.Accel = score.Accel; driverScore.Corner = score.Corner; driverScore.Idle = score.Idle; driverScore.Speeding = score.Speeding; driverScore.AverageTotal = score.Speeding; driverScoreList.Add(score); } var performanceDoc = new Document <Performance>() { Id = CreateUserKey(), Content = new Performance { //Id = CreateUserKey(), StartDateTime = performance.StartDateTime, EndDateTime = performance.EndDateTime, Created_On = DataConversion.ConvertYMDHMS(DateTime.Now.ToString()), DriverScore = driverScoreList } }; //IBucket _bucketperformance = ClusterHelper.GetBucket("DriverPerfoemance"); var result = await _bucket.InsertAsync(performanceDoc); if (!result.Success) { return(Content(HttpStatusCode.InternalServerError, MessageResponse.Message(HttpStatusCode.InternalServerError.ToString(), result.Message), new JsonMediaTypeFormatter())); } return(Content(HttpStatusCode.OK, MessageResponse.Message(HttpStatusCode.OK.ToString(), MessageDescriptions.Add, result.Document.Id), new JsonMediaTypeFormatter())); } catch (Exception ex) { return(Content(HttpStatusCode.InternalServerError, MessageResponse.Message(HttpStatusCode.InternalServerError.ToString(), ex.StackTrace), new JsonMediaTypeFormatter())); } }
public ActionResult DriverScore() { double totalScore = 0; var user = User.Identity.GetUserId(); var scoreList = context.Ratings.Where(m => m.ApplicationUser.Id == user).ToList(); foreach (var eachScore in scoreList) { totalScore += eachScore.Score; } var performanceScore = ((totalScore / scoreList.Count) / 10) * 100; var driverScore = new DriverScore { Score = performanceScore }; return(View(driverScore)); }
private void LoadFromId(int driverScoreId) { if (CachedEntityCommander.IsTypeRegistered(typeof(DriverScoreInfo))) { DriverScoreInfo driverScoreInfo=Find(GetList(), driverScoreId); if(driverScoreInfo==null) throw new AppException("未能在缓存中找到相应的键值对象"); Copy(driverScoreInfo, this); } else { DriverScore driverScore=new DriverScore( driverScoreId); if(driverScore.IsNew) throw new AppException("尚未初始化"); LoadFromDAL(this, driverScore); } }
//数据持久化 internal static void SaveToDb(DriverScoreInfo pDriverScoreInfo, DriverScore pDriverScore,bool pIsNew) { pDriverScore.DriverScoreId = pDriverScoreInfo.driverScoreId; pDriverScore.DateSpan = pDriverScoreInfo.dateSpan; pDriverScore.EvaluateLevelId = pDriverScoreInfo.evaluateLevelId; pDriverScore.TotalScore = pDriverScoreInfo.totalScore; pDriverScore.UpViews = pDriverScoreInfo.upViews; pDriverScore.YearId = pDriverScoreInfo.yearId; pDriverScore.MonthId = pDriverScoreInfo.monthId; pDriverScore.EmployeeId = pDriverScoreInfo.employeeId; pDriverScore.IsSubmit = pDriverScoreInfo.isSubmit; pDriverScore.Selfds1 = pDriverScoreInfo.selfds1; pDriverScore.Selfds2 = pDriverScoreInfo.selfds2; pDriverScore.Selfds3 = pDriverScoreInfo.selfds3; pDriverScore.Selfds4 = pDriverScoreInfo.selfds4; pDriverScore.Selfds5 = pDriverScoreInfo.selfds5; pDriverScore.Selfds6 = pDriverScoreInfo.selfds6; pDriverScore.Selfds7 = pDriverScoreInfo.selfds7; pDriverScore.Selfds8 = pDriverScoreInfo.selfds8; pDriverScore.Selfds9 = pDriverScoreInfo.selfds9; pDriverScore.Selfds10 = pDriverScoreInfo.selfds10; pDriverScore.Selfds11 = pDriverScoreInfo.selfds11; pDriverScore.Selfds12 = pDriverScoreInfo.selfds12; pDriverScore.Selfds13 = pDriverScoreInfo.selfds13; pDriverScore.Selfds14 = pDriverScoreInfo.selfds14; pDriverScore.Selfds15 = pDriverScoreInfo.selfds15; pDriverScore.Selfds16 = pDriverScoreInfo.selfds16; pDriverScore.Selfds17 = pDriverScoreInfo.selfds17; pDriverScore.Selfds18 = pDriverScoreInfo.selfds18; pDriverScore.Selfds19 = pDriverScoreInfo.selfds19; pDriverScore.Selfds20 = pDriverScoreInfo.selfds20; pDriverScore.Selfds21 = pDriverScoreInfo.selfds21; pDriverScore.Selfds22 = pDriverScoreInfo.selfds22; pDriverScore.Selfds23 = pDriverScoreInfo.selfds23; pDriverScore.Upds1 = pDriverScoreInfo.upds1; pDriverScore.Upds2 = pDriverScoreInfo.upds2; pDriverScore.Upds3 = pDriverScoreInfo.upds3; pDriverScore.Upds4 = pDriverScoreInfo.upds4; pDriverScore.Upds5 = pDriverScoreInfo.upds5; pDriverScore.Upds6 = pDriverScoreInfo.upds6; pDriverScore.Upds7 = pDriverScoreInfo.upds7; pDriverScore.Upds8 = pDriverScoreInfo.upds8; pDriverScore.Upds9 = pDriverScoreInfo.upds9; pDriverScore.Upds10 = pDriverScoreInfo.upds10; pDriverScore.Upds11 = pDriverScoreInfo.upds11; pDriverScore.Upds12 = pDriverScoreInfo.upds12; pDriverScore.Upds13 = pDriverScoreInfo.upds13; pDriverScore.Upds14 = pDriverScoreInfo.upds14; pDriverScore.Upds15 = pDriverScoreInfo.upds15; pDriverScore.Upds16 = pDriverScoreInfo.upds16; pDriverScore.Upds17 = pDriverScoreInfo.upds17; pDriverScore.Upds18 = pDriverScoreInfo.upds18; pDriverScore.Upds19 = pDriverScoreInfo.upds19; pDriverScore.Upds20 = pDriverScoreInfo.upds20; pDriverScore.Upds21 = pDriverScoreInfo.upds21; pDriverScore.Upds22 = pDriverScoreInfo.upds22; pDriverScore.Upds23 = pDriverScoreInfo.upds23; pDriverScore.Secds1 = pDriverScoreInfo.secds1; pDriverScore.Secds2 = pDriverScoreInfo.secds2; pDriverScore.Secds3 = pDriverScoreInfo.secds3; pDriverScore.Secds4 = pDriverScoreInfo.secds4; pDriverScore.Secds5 = pDriverScoreInfo.secds5; pDriverScore.Secds6 = pDriverScoreInfo.secds6; pDriverScore.Secds7 = pDriverScoreInfo.secds7; pDriverScore.Secds8 = pDriverScoreInfo.secds8; pDriverScore.Secds9 = pDriverScoreInfo.secds9; pDriverScore.Secds10 = pDriverScoreInfo.secds10; pDriverScore.Secds11 = pDriverScoreInfo.secds11; pDriverScore.Secds12 = pDriverScoreInfo.secds12; pDriverScore.Secds13 = pDriverScoreInfo.secds13; pDriverScore.Secds14 = pDriverScoreInfo.secds14; pDriverScore.Secds15 = pDriverScoreInfo.secds15; pDriverScore.Secds16 = pDriverScoreInfo.secds16; pDriverScore.Secds17 = pDriverScoreInfo.secds17; pDriverScore.Secds18 = pDriverScoreInfo.secds18; pDriverScore.Secds19 = pDriverScoreInfo.secds19; pDriverScore.Secds20 = pDriverScoreInfo.secds20; pDriverScore.Secds21 = pDriverScoreInfo.secds21; pDriverScore.Secds22 = pDriverScoreInfo.secds22; pDriverScore.Secds23 = pDriverScoreInfo.secds23; pDriverScore.IsNew=pIsNew; string UserName = SubsonicHelper.GetUserName(); try { pDriverScore.Save(UserName); } catch(Exception ex) { LogManager.getInstance().getLogger(typeof(DriverScoreInfo)).Error(ex); if(ex.Message.Contains("插入重复键"))//违反了唯一键 { throw new AppException("此对象已经存在");//此处等待优化可以从唯一约束中直接取出提示来,如果没有的话,默认为原始的出错提示 } throw new AppException("保存失败"); } pDriverScoreInfo.driverScoreId = pDriverScore.DriverScoreId; //如果缓存存在,更新缓存 if (CachedEntityCommander.IsTypeRegistered(typeof(DriverScoreInfo))) { ResetCache(); } }
//从后台获取数据 internal static void LoadFromDAL(DriverScoreInfo pDriverScoreInfo, DriverScore pDriverScore) { pDriverScoreInfo.driverScoreId = pDriverScore.DriverScoreId; pDriverScoreInfo.dateSpan = pDriverScore.DateSpan; pDriverScoreInfo.evaluateLevelId = pDriverScore.EvaluateLevelId; pDriverScoreInfo.totalScore = pDriverScore.TotalScore; pDriverScoreInfo.upViews = pDriverScore.UpViews; pDriverScoreInfo.yearId = pDriverScore.YearId; pDriverScoreInfo.monthId = pDriverScore.MonthId; pDriverScoreInfo.employeeId = pDriverScore.EmployeeId; pDriverScoreInfo.isSubmit = pDriverScore.IsSubmit; pDriverScoreInfo.selfds1 = pDriverScore.Selfds1; pDriverScoreInfo.selfds2 = pDriverScore.Selfds2; pDriverScoreInfo.selfds3 = pDriverScore.Selfds3; pDriverScoreInfo.selfds4 = pDriverScore.Selfds4; pDriverScoreInfo.selfds5 = pDriverScore.Selfds5; pDriverScoreInfo.selfds6 = pDriverScore.Selfds6; pDriverScoreInfo.selfds7 = pDriverScore.Selfds7; pDriverScoreInfo.selfds8 = pDriverScore.Selfds8; pDriverScoreInfo.selfds9 = pDriverScore.Selfds9; pDriverScoreInfo.selfds10 = pDriverScore.Selfds10; pDriverScoreInfo.selfds11 = pDriverScore.Selfds11; pDriverScoreInfo.selfds12 = pDriverScore.Selfds12; pDriverScoreInfo.selfds13 = pDriverScore.Selfds13; pDriverScoreInfo.selfds14 = pDriverScore.Selfds14; pDriverScoreInfo.selfds15 = pDriverScore.Selfds15; pDriverScoreInfo.selfds16 = pDriverScore.Selfds16; pDriverScoreInfo.selfds17 = pDriverScore.Selfds17; pDriverScoreInfo.selfds18 = pDriverScore.Selfds18; pDriverScoreInfo.selfds19 = pDriverScore.Selfds19; pDriverScoreInfo.selfds20 = pDriverScore.Selfds20; pDriverScoreInfo.selfds21 = pDriverScore.Selfds21; pDriverScoreInfo.selfds22 = pDriverScore.Selfds22; pDriverScoreInfo.selfds23 = pDriverScore.Selfds23; pDriverScoreInfo.upds1 = pDriverScore.Upds1; pDriverScoreInfo.upds2 = pDriverScore.Upds2; pDriverScoreInfo.upds3 = pDriverScore.Upds3; pDriverScoreInfo.upds4 = pDriverScore.Upds4; pDriverScoreInfo.upds5 = pDriverScore.Upds5; pDriverScoreInfo.upds6 = pDriverScore.Upds6; pDriverScoreInfo.upds7 = pDriverScore.Upds7; pDriverScoreInfo.upds8 = pDriverScore.Upds8; pDriverScoreInfo.upds9 = pDriverScore.Upds9; pDriverScoreInfo.upds10 = pDriverScore.Upds10; pDriverScoreInfo.upds11 = pDriverScore.Upds11; pDriverScoreInfo.upds12 = pDriverScore.Upds12; pDriverScoreInfo.upds13 = pDriverScore.Upds13; pDriverScoreInfo.upds14 = pDriverScore.Upds14; pDriverScoreInfo.upds15 = pDriverScore.Upds15; pDriverScoreInfo.upds16 = pDriverScore.Upds16; pDriverScoreInfo.upds17 = pDriverScore.Upds17; pDriverScoreInfo.upds18 = pDriverScore.Upds18; pDriverScoreInfo.upds19 = pDriverScore.Upds19; pDriverScoreInfo.upds20 = pDriverScore.Upds20; pDriverScoreInfo.upds21 = pDriverScore.Upds21; pDriverScoreInfo.upds22 = pDriverScore.Upds22; pDriverScoreInfo.upds23 = pDriverScore.Upds23; pDriverScoreInfo.secds1 = pDriverScore.Secds1; pDriverScoreInfo.secds2 = pDriverScore.Secds2; pDriverScoreInfo.secds3 = pDriverScore.Secds3; pDriverScoreInfo.secds4 = pDriverScore.Secds4; pDriverScoreInfo.secds5 = pDriverScore.Secds5; pDriverScoreInfo.secds6 = pDriverScore.Secds6; pDriverScoreInfo.secds7 = pDriverScore.Secds7; pDriverScoreInfo.secds8 = pDriverScore.Secds8; pDriverScoreInfo.secds9 = pDriverScore.Secds9; pDriverScoreInfo.secds10 = pDriverScore.Secds10; pDriverScoreInfo.secds11 = pDriverScore.Secds11; pDriverScoreInfo.secds12 = pDriverScore.Secds12; pDriverScoreInfo.secds13 = pDriverScore.Secds13; pDriverScoreInfo.secds14 = pDriverScore.Secds14; pDriverScoreInfo.secds15 = pDriverScore.Secds15; pDriverScoreInfo.secds16 = pDriverScore.Secds16; pDriverScoreInfo.secds17 = pDriverScore.Secds17; pDriverScoreInfo.secds18 = pDriverScore.Secds18; pDriverScoreInfo.secds19 = pDriverScore.Secds19; pDriverScoreInfo.secds20 = pDriverScore.Secds20; pDriverScoreInfo.secds21 = pDriverScore.Secds21; pDriverScoreInfo.secds22 = pDriverScore.Secds22; pDriverScoreInfo.secds23 = pDriverScore.Secds23; pDriverScoreInfo.Loaded=true; }
/// <summary> /// 保存 /// </summary> public override void Save() { if(!m_Loaded)//新增 { DriverScore driverScore=new DriverScore(); SaveToDb(this, driverScore,true); } else//修改 { DriverScore driverScore=new DriverScore(driverScoreId); if(driverScore.IsNew) throw new AppException("该数据已经不存在了"); SaveToDb(this, driverScore,false); } }
public static void DelDsScore(int id) { DriverScore.Delete(id); }