public IActionResult GetDoctorDetails(string doctorGuid) { var doctorBiz = new DoctorBiz(); var model = doctorBiz.GetDoctor(doctorGuid); if (model == null) { return(Failed(ErrorCode.Empty)); } var userBiz = new UserBiz(); var dictionaryBiz = new DictionaryBiz(); var accessoryBiz = new AccessoryBiz(); var topicBiz = new TopicBiz(); var dto = model.ToDto <GetDoctorDetailsResponseDto>(); var accessoryModel = accessoryBiz.GetAccessoryModelByGuid(model.PortraitGuid); dto.DoctorName = userBiz.GetUser(doctorGuid)?.UserName; dto.Title = dictionaryBiz.GetModelById(model.TitleGuid)?.ConfigName; dto.Portrait = $"{accessoryModel?.BasePath}{accessoryModel?.RelativePath}"; var signature = accessoryBiz.GetAccessoryModelByGuid(model.SignatureGuid); dto.SignatureUrl = $"{signature?.BasePath}{signature?.RelativePath}"; dto.CommentScore = new CommentBiz().GetTargetAvgScoreAsync(model.DoctorGuid).Result; dto.FansVolume = new CollectionBiz().GetListCountByTarget(model.DoctorGuid); dto.ConsultationVolume = doctorBiz.GetDocotrConsultationVolumeAsync(model.DoctorGuid).Result; return(Success(dto)); }
public IActionResult GetAskedDoctorClassicQaDetails(string qaGuid) { var qaBiz = new QaBiz(); var doctorBiz = new DoctorBiz(); var accessoryBiz = new AccessoryBiz(); var userBiz = new UserBiz(); var likeBiz = new LikeBiz(); var dictionaryBiz = new DictionaryBiz(); var model = qaBiz.GetModel(qaGuid); if (model == null) { return(Failed(ErrorCode.Empty)); } var dto = model.ToDto <GetAskedDoctorClassicQaDetailsResponseDto>(); dto.DoctorName = userBiz.GetUser(model.AuthorGuid)?.UserName; var doctorModel = doctorBiz.GetDoctor(model.AuthorGuid); if (doctorModel != null) { var accessoryModel = accessoryBiz.GetAccessoryModelByGuid(doctorModel.PortraitGuid); dto.DoctorPortrait = $"{accessoryModel?.BasePath}{accessoryModel?.RelativePath}"; dto.HospitalGuid = doctorModel.HospitalGuid; dto.HospitalName = doctorModel.HospitalName; dto.JobTitle = dictionaryBiz.GetModelById(doctorModel.TitleGuid)?.ConfigName; } dto.LikeNumber = likeBiz.GetLikeNumByTargetGuid(qaGuid); dto.Liked = likeBiz.GetLikeState(UserID, qaGuid); return(Success(dto)); }
public IActionResult GetAskedDoctorClassicQa([FromBody] GetAskedDoctorClassicQaRequestDto requestDto) { QaBiz qaBiz = new QaBiz(); var qaModels = qaBiz.GetQaModels(requestDto.PageIndex, requestDto.PageSize, "where enable=true", "last_updated_date desc"); if (qaModels == null) { return(Failed(ErrorCode.Empty)); } DoctorBiz doctorBiz = new DoctorBiz(); UserBiz userBiz = new UserBiz(); AccessoryBiz accessoryBiz = new AccessoryBiz(); LikeBiz likeBiz = new LikeBiz(); List <GetAskedDoctorClassicQaResponseDto> dtos = new List <GetAskedDoctorClassicQaResponseDto>(); foreach (var model in qaModels) { var dto = model.ToDto <GetAskedDoctorClassicQaResponseDto>(); dto.DoctorName = userBiz.GetUser(model.AuthorGuid)?.UserName; dto.LikeNumber = likeBiz.GetLikeNumByTargetGuid(model.QaGuid); var doctorModel = doctorBiz.GetDoctor(model.AuthorGuid); if (doctorModel != null) { var accessoryModel = accessoryBiz.GetAccessoryModelByGuid(doctorModel.PortraitGuid); dto.DoctorPortrait = accessoryModel?.BasePath + accessoryModel?.RelativePath; } dtos.Add(dto); } return(Success(dtos)); }
public IActionResult GetDoctorArticleDetails(string articleGuid) { ArticleBiz articleBiz = new ArticleBiz(); var model = articleBiz.GetModel(articleGuid); if (model == null) { return(Failed(ErrorCode.Empty)); } var doctorBiz = new DoctorBiz(); var accessoryBiz = new AccessoryBiz(); var userBiz = new UserBiz(); var likeBiz = new LikeBiz(); var richtextBiz = new RichtextBiz(); var dto = model.ToDto <GetDoctorArticleDetailsResponseDto>(); dto.Content = richtextBiz.GetModel(model.ContentGuid)?.Content; dto.DoctorName = userBiz.GetUser(model.AuthorGuid)?.UserName; var doctorModel = doctorBiz.GetDoctor(model.AuthorGuid); if (doctorModel != null) { var accessoryModel = accessoryBiz.GetAccessoryModelByGuid(doctorModel.PortraitGuid); dto.DoctorPortrait = accessoryModel?.BasePath + accessoryModel?.RelativePath; dto.HospitalGuid = doctorModel.HospitalGuid; dto.HospitalName = doctorModel.HospitalName; dto.OfficeGuid = doctorModel.OfficeGuid; dto.OfficeName = doctorModel.OfficeName; } dto.LikeNumber = likeBiz.GetLikeNumByTargetGuid(articleGuid); dto.Liked = likeBiz.GetLikeState(UserID, articleGuid); return(Success(dto)); }
public IActionResult GetUserInfo(string userId) { if (string.IsNullOrWhiteSpace(userId)) { userId = UserID; } var uBiz = new UserBiz(); var uModel = uBiz.GetUser(userId); if (uModel == null || !uModel.Enable) { return(Failed(ErrorCode.DataBaseError, "用户状态不可用。")); } var accBiz = new AccessoryBiz(); var accModel = accBiz.GetAccessoryModelByGuid(uModel.PortraitGuid); var outDto = new GetUserInfoResponseDto { Portrait = $"{accModel?.BasePath}{accModel?.RelativePath}", // +"/" 格式确认, NickName = uModel.NickName, Gender = uModel.Gender, Birthday = uModel.Birthday, UserName = uModel.UserName, IdentityNumber = uModel.IdentityNumber, Phone = uModel.Phone }; return(Success(outDto)); }
public IActionResult GetArticleInfoAsync([FromBody] GetArticleInfoRequestDto request) { var articleBiz = new ArticleBiz(); var contentBiz = new RichtextBiz(); AccessoryBiz accessoryBiz = new AccessoryBiz(); CollectionBiz collection = new CollectionBiz(); var articleModel = articleBiz.GetModel(request.ArticleGuid); if (articleModel == null) { return(Failed(ErrorCode.DataBaseError, "数据错误")); } var richtextModel = contentBiz.GetModel(articleModel.ContentGuid); var accessory = accessoryBiz.GetAccessoryModelByGuid(articleModel.PictureGuid); var likeCount = new LikeBiz().GetLikeNumByTargetGuid(articleModel.ArticleGuid); var pageViewCount = new ArticleViewBiz().CountNumByTargetIDAsync(articleModel.ArticleGuid).Result; int collectionCount = collection.GetListCountByTarget(articleModel.ArticleGuid); return(Success(new GetArticleInfoResponseDto { ArticleTypeDic = articleModel.ArticleTypeDic, Abstract = articleModel.Abstract, Content = richtextModel?.Content, PictureGuid = articleModel.PictureGuid, Title = articleModel.Title, Visible = articleModel.Visible, PictureUrl = $"{accessory?.BasePath}{accessory?.RelativePath}", ArticleGuid = articleModel.ArticleGuid, ActcleReleaseStatus = articleModel.ActcleReleaseStatus.ToString(), CreationDate = articleModel.CreationDate, LikeCount = likeCount, VisitCount = pageViewCount, Collection = collectionCount })); }
public IActionResult GetUserArticles([FromBody] GetUserArticleRequestDto requestDto) { ArticleBiz articleBiz = new ArticleBiz(); var sourceTypeWhere = string.Empty; if (requestDto.SourceType != null) { sourceTypeWhere = $"and source_type='{requestDto.SourceType.Value.ToString()}'"; } var models = articleBiz.GetArticles(requestDto.PageIndex, requestDto.PageSize, $"where author_guid=@author_guid and actcle_release_status='Release' {sourceTypeWhere}", "last_updated_date desc", new { author_guid = requestDto.AuthorGuid }); if (models == null) { return(Failed(ErrorCode.Empty)); } var accessoryBiz = new AccessoryBiz(); var dictionaryBiz = new DictionaryBiz(); var responseDtos = new List <GetUserArticlesResponseDto>(); foreach (var model in models) { var dto = model.ToDto <GetUserArticlesResponseDto>(); var accessoryModel = accessoryBiz.GetAccessoryModelByGuid(model.PictureGuid); dto.Picture = $"{accessoryModel?.BasePath}{accessoryModel?.RelativePath}"; dto.ArticleType = dictionaryBiz.GetModelById(model.ArticleTypeDic)?.ConfigName; dto.PageView = new ArticleViewBiz().CountNumByTargetIDAsync(model.ArticleGuid).Result; responseDtos.Add(dto); } return(Success(responseDtos)); }
public async Task <IActionResult> GetClientArticleDetailAsync(string articleGuid, ArticleModel.ArticleSourceTypeEnum articleSource = ArticleModel.ArticleSourceTypeEnum.Doctor) { if (string.IsNullOrWhiteSpace(articleGuid)) { return(Failed(ErrorCode.UserData, "文章Id articleGuid 不可为空")); } var response = new GetClientArticleDetailResponseDto(); ArticleBiz articleBiz = new ArticleBiz(); var model = articleBiz.GetModel(articleGuid); if (model == null) { return(Failed(ErrorCode.Empty)); } var doctorBiz = new DoctorBiz(); var accessoryBiz = new AccessoryBiz(); var userBiz = new UserBiz(); var likeBiz = new LikeBiz(); var richtextBiz = new RichtextBiz(); response.ArticleGuid = model.ArticleGuid; response.Title = model.Title; response.AuthorGuid = model.AuthorGuid; response.LastUpdatedDate = model.LastUpdatedDate; response.Content = richtextBiz.GetModel(model.ContentGuid)?.Content; response.LikeNumber = likeBiz.GetLikeNumByTargetGuid(articleGuid); response.Liked = likeBiz.GetLikeState(UserID, articleGuid); if (articleSource == ArticleModel.ArticleSourceTypeEnum.Doctor) { response.AuthorName = userBiz.GetUser(model.AuthorGuid)?.UserName; var doctorModel = doctorBiz.GetDoctor(model.AuthorGuid); if (doctorModel != null) { var accessoryModel = accessoryBiz.GetAccessoryModelByGuid(doctorModel.PortraitGuid); response.AuthorPortrait = accessoryModel?.BasePath + accessoryModel?.RelativePath; response.HospitalName = doctorModel.HospitalName; response.OfficeName = doctorModel.OfficeName; } } else if (articleSource == ArticleModel.ArticleSourceTypeEnum.Manager) { response.AuthorName = (await new ManagerAccountBiz().GetAsync(model.AuthorGuid))?.UserName; } else { return(Failed(ErrorCode.UserData, $"文章来源 articleSource:{articleSource.ToString()} 数据值非法")); } return(Success(response)); }
private void GetSonComment(GetTargetCommentResponseDto dto) { var commentBiz = new CommentBiz(); var userBiz = new UserBiz(); var accessoryBiz = new AccessoryBiz(); var tmpModels = commentBiz.GetModelsByTargetGuid(dto.CommentGuid); var lst = new List <GetTargetCommentResponseDto>(); foreach (var item in tmpModels) { var tmpDto = item.ToDto <GetTargetCommentResponseDto>(); var userModel = userBiz.GetUser(item.CreatedBy); var accessoryModel = accessoryBiz.GetAccessoryModelByGuid(userModel.PortraitGuid); tmpDto.NickName = userModel.NickName; tmpDto.Portrait = accessoryModel?.BasePath + accessoryModel?.RelativePath; GetSonComment(tmpDto); lst.Add(tmpDto); } dto.SonComments = lst; }
public IActionResult GetTargetComment([FromBody] GetTargetCommentRequestDto requestDto) { var commentBiz = new CommentBiz(); var userBiz = new UserBiz(); var accessoryBiz = new AccessoryBiz(); var commentModels = commentBiz.GetModels(requestDto.PageIndex, requestDto.PageSize, "where target_guid=@target_guid and enable=@enable", "last_updated_date desc", new { target_guid = requestDto.TargetGuid, enable = true }); var theDtos = new List <GetTargetCommentResponseDto>(); var likeBiz = new LikeBiz(); foreach (var item in commentModels) { var dto = item.ToDto <GetTargetCommentResponseDto>(); var userModel = userBiz.GetUser(item.CreatedBy); var accessoryModel = accessoryBiz.GetAccessoryModelByGuid(userModel.PortraitGuid); dto.NickName = userModel.NickName; dto.Portrait = accessoryModel?.BasePath + accessoryModel?.RelativePath; dto.LikeNumber = likeBiz.GetLikeNumByTargetGuid(item.CommentGuid); GetSonComment(dto); theDtos.Add(dto); } return(Success(theDtos)); }
public IActionResult LoadHomePage(string userId) { if (string.IsNullOrWhiteSpace(userId)) { userId = UserID; } var uBiz = new UserBiz(); var uModel = uBiz.GetUser(userId); if (uModel == null || !uModel.Enable) { return(Failed(ErrorCode.DataBaseError, "用户状态不可用。")); } var accBiz = new AccessoryBiz(); var accModel = accBiz.GetAccessoryModelByGuid(uModel.PortraitGuid); var respData = new GetUserPortraitResponseDto() { Portrait = $"{accModel?.BasePath}{accModel?.RelativePath}", NickeName = uModel.NickName }; return(Success(respData)); }