/// <summary> /// 获取酒店详细信息 /// </summary> /// <param name="input"></param> /// <returns></returns> public InformationDetail GetDetail(GetInformationDetail input) { var result = new InformationDetail(); using (var db = new RTDbContext()) { var information = db.TouristInformations.FirstOrDefault(p => p.Id == input.Id); if (information == null) { throw new RTException("所选数据不存在"); } if (information.Type != TouristInformationType.Hotel && information.Type != TouristInformationType.Winery) { throw new RTException("酒店数据,才有详细信息"); } double distance = 0; string distanceDescription = ""; if (information.Type == TouristInformationType.Hotel || information.Type == TouristInformationType.Winery) { distance = LongitudeAndLatitudeToDistance.GetDistance(input.Longitude, input.Latitude, information.Longitude, information.Latitude); if (distance > 1000) { distanceDescription = string.Format("距我{0}km", (distance / 1000).ToString("f2")); } else { distanceDescription = string.Format("距我{0}m", distance.ToString("f0")); } } //result.Distance = information.Distance; result.Position = information.Position; result.Distance = distance; result.DistanceDescription = distanceDescription; result.Name = information.Name; result.Phone = information.Phone; result.Price = information.Price; var detail = _detail.GetDetail(new GetDetailInput { Classify = (int)information.Type, ProjectId = information.Id }, db); if (detail == null) { return(result); } result.BigImgUrl = detail.ImgUrl; result.Contents = detail.Paragraphs; } return(result); }
public GeneralResult GetDetail(GetInformationDetail input) { var result = new GeneralResult(); try { result.Data = bll.GetDetail(input); result.State = 0; result.Msg = "操作成功"; } catch (RTException e) { result = RTExceptionHandle(e); } catch (Exception e1) { result = ExceptionHandle(e1); } return(result); }