public IHttpActionResult Get(string id) { if (string.IsNullOrEmpty(id)) { return(BadRequest("非法请求!")); } try { UserEvent userEvent = bll.Get(p => p.EVENTID.Equals(id)); if (userEvent == null) { return(BadRequest("记录不存在!")); } ExtUserEvent extUserEvent = GetExtData(userEvent); return(Ok(extUserEvent)); } catch (Exception ex) { LogService.WriteErrorLog("DoTreatmentController[Get]", ex.ToString()); return(BadRequest(ex.ToString())); } }
/// <summary> /// Выполняет рассылку уведомлений для подключившихся пользователей /// </summary> public override async Task OnConnectedAsync() { User user = Context.GetHttpContext().GetUser(); if (user == null) { return; } UserEvent[] userEvents = await _database.UserEvents.Where(p => p.User.Id == user.Id).ToArrayAsync(); if (userEvents.Length > 0) { ExtUserEvent[] extUserEvents = new ExtUserEvent[userEvents.Length]; for (int i = 0; i < userEvents.Length; i++) { extUserEvents[i] = (ExtUserEvent)userEvents[i]; } GetUserEventsResponse userEventsResponse = new GetUserEventsResponse() { UserEvents = extUserEvents }; await Clients.Caller.SendAsync("NewEvent", userEventsResponse); } await base.OnConnectedAsync(); }
private ExtUserEvent GetExtData(UserEvent userEvent) { ExtUserEvent extUserEvent = new ExtUserEvent(); extUserEvent.EventID = userEvent.EventID; extUserEvent.ActionStatus = userEvent.ActionStatus; extUserEvent.Remarks = userEvent.Remarks; List <UserEvent> tracks = bll.GetList(p => p.USERAPPLYID.Equals(userEvent.UserApplyId)).OrderBy(p => p.CreateTime).ToList(); UserInfoService userService = new UserInfoService(); UserRoleBLL userRoleBLL = new UserRoleBLL(); RoleBLL roleBLL = new RoleBLL(); for (int i = 0; i < tracks.Count; i++) { string _userID = tracks[i].ToUser; UserInfo userInfo = userService.GetUserInfoByID(_userID); if (userInfo == null) { tracks[i].ToUser = ""; } else { tracks[i].ToUser = userInfo.LoginName; } UserRole userrole = userRoleBLL.GetOne(p => p.USERID.Equals(_userID)); if (userrole == null) { tracks[i].Remarks = ""; } else { Role role = roleBLL.Get(userrole.RoleID); tracks[i].Remarks = role == null ? "" : role.RoleName; } } //todo:20160119演示用,临时去了客服的代办信息 extUserEvent.Tracks = tracks.Where(p => !p.Remarks.Contains("客服")).ToList(); //extUserEvent.Tracks = tracks; DoctorControlBll dcBLL = new DoctorControlBll(); UserApply userApply = dcBLL.GetModelUserApply(userEvent.UserApplyId); if (userApply != null) { extUserEvent.DoctorSuggest = userApply.DOCTORSUGGEST; GuideLineBLL gdBLL = new GuideLineBLL(); GuideLine guidline = gdBLL.GetSimpleModel(userApply.CURRENTNODE); if (guidline != null) { extUserEvent.CurrentNodeName = guidline.Name; extUserEvent.RecommendProcess = guidline.RecommendProcess; } } EventProductBLL epdBLL = new EventProductBLL(); extUserEvent.Products = epdBLL.GetList(p => p.EVENTID.Equals(userEvent.EventID)).ToList(); return(extUserEvent); }