public IHttpActionResult AddLearn(MyLRecord myLRecord) { var ret = _wxLearnService.AddLearn(myLRecord, WorkUser); return(Ok(ret)); }
/// <summary> /// 记录学习时间 /// </summary> /// <param name="myLRecord">学习记录信息</param> /// <param name="workUser"></param> /// <returns></returns> public ReturnValueModel AddLearn(MyLRecord myLRecord, WorkUser workUser) { ReturnValueModel rvm = new ReturnValueModel(); int RemindOffsetMinutes = 0; try { /* * 播客:传入学习时长、开始时间 * 其他:开始和结束时间 */ if (myLRecord != null) { myLRecord.Id = Guid.NewGuid().ToString(); myLRecord.LDate = DateTime.Now; myLRecord.UnionId = workUser.WxUser.UnionId; myLRecord.CreateTime = DateTime.Now; myLRecord.LObjectDate = myLRecord.LObjectDate ?? 0; myLRecord.WxUserId = workUser.WxUser.Id; switch (myLRecord.LObjectType) { case 1: //文章 case 2: //文档 myLRecord.LObjectDate = (int)(myLRecord.LDateEnd - myLRecord.LDateStart)?.TotalSeconds; _rep.Insert(myLRecord); _rep.SaveChanges(); break; case 3: //播客 _rep.Insert(myLRecord); _rep.SaveChanges(); break; case 4: //视频 myLRecord.LObjectDate = (int)(myLRecord.LDateEnd - myLRecord.LDateStart)?.TotalSeconds; _rep.Insert(myLRecord); _rep.SaveChanges(); break; case 5: //会议 var meet = _rep.FirstOrDefault <MeetInfo>(s => s.Id == myLRecord.LObjectId); //if (meet.MeetEndTime > myLRecord.LDate) //{ myLRecord.LObjectDate = (int)(myLRecord.LDateEnd - myLRecord.LDateStart)?.TotalSeconds; _rep.Insert(myLRecord); _rep.SaveChanges(); //} break; case 9: _rep.Insert(myLRecord); _rep.SaveChanges(); break; default: break; } } /* * 知识库打开过后,点击量就增加 */ if (myLRecord != null) { string lObjectId = myLRecord.LObjectId; DataInfo datainfo = _rep.Table <DataInfo>().Where(a => a.Id == lObjectId).FirstOrDefault(); if (datainfo != null) { datainfo.ClickVolume = datainfo.ClickVolume + 1; _rep.Update(datainfo); _rep.SaveChanges(); } } rvm.Msg = "success"; rvm.Success = true; return(rvm); } catch (Exception ex) { rvm.Msg = "fail"; rvm.Success = false; return(rvm); } }