/// <summary> /// 创建询价行程要求XML /// </summary> /// <param name="list">询价行程要求集合</param> /// <returns></returns> private string CreateXingChengAskXML(EyouSoft.Model.TourStructure.XingChengMust XingChengMust) { if (XingChengMust == null) { return(string.Empty); } StringBuilder strXml = new StringBuilder(); strXml.Append("<ROOT>"); strXml.AppendFormat("<XingCheng QuotePlan=\"{0}\" PlanAccessoryName=\"{1}\" PlanAccessory=\"{2}\" />", Utils.ReplaceXmlSpecialCharacter(XingChengMust.QuotePlan), Utils.ReplaceXmlSpecialCharacter(XingChengMust.PlanAccessoryName), Utils.ReplaceXmlSpecialCharacter(XingChengMust.PlanAccessory)); strXml.Append("</ROOT>"); return(strXml.ToString()); }
/// <summary> /// <summary> /// 获取询价报价实体 /// </summary> /// <param name="Id">主键编号</param> /// <param name="CompanyId">专线公司编号</param> /// <param name="CustomerId">组团公司编号</param> /// <param name="isZhuTuan">是否组团端,1是,0不是</param> /// <returns></returns> public EyouSoft.Model.TourStructure.LineInquireQuoteInfo GetQuoteModel(int Id, int CompanyId, int CustomerId, int isZhuTuan) { EyouSoft.Model.TourStructure.LineInquireQuoteInfo model = null; DbCommand dc = this.DB.GetStoredProcCommand("proc_Tour_GetInquireQuote"); this.DB.AddInParameter(dc, "CompanyId", DbType.Int32, CompanyId); this.DB.AddInParameter(dc, "CustomerId", DbType.Int32, CustomerId); this.DB.AddInParameter(dc, "isZhuTuan", DbType.Int32, isZhuTuan); this.DB.AddInParameter(dc, "Id", DbType.Int32, Id); using (IDataReader dr = DbHelper.RunReaderProcedure(dc, this.DB)) { if (dr.Read()) { #region 询价报价基本信息 model = new EyouSoft.Model.TourStructure.LineInquireQuoteInfo(); model.Id = dr.GetInt32(dr.GetOrdinal("Id")); model.CompanyId = dr.IsDBNull(dr.GetOrdinal("CompanyId")) ? 0 : dr.GetInt32(dr.GetOrdinal("CompanyId")); model.RouteId = dr.IsDBNull(dr.GetOrdinal("RouteId")) ? 0 : dr.GetInt32(dr.GetOrdinal("RouteId")); model.RouteName = dr["RouteName"].ToString(); model.CustomerId = dr.IsDBNull(dr.GetOrdinal("CustomerId")) ? 0 : dr.GetInt32(dr.GetOrdinal("CustomerId")); model.CustomerName = dr["CustomerName"].ToString(); model.ContactName = dr["ContactName"].ToString(); model.ContactTel = dr["ContactTel"].ToString(); model.LeaveDate = dr.IsDBNull(dr.GetOrdinal("LeaveDate")) ? System.DateTime.Now : dr.GetDateTime(dr.GetOrdinal("LeaveDate")); model.AdultNumber = dr.IsDBNull(dr.GetOrdinal("AdultNumber")) ? 0 : dr.GetInt32(dr.GetOrdinal("AdultNumber")); model.ChildNumber = dr.IsDBNull(dr.GetOrdinal("ChildNumber")) ? 0 : dr.GetInt32(dr.GetOrdinal("ChildNumber")); model.PeopleNum = model.AdultNumber + model.ChildNumber; model.SpecialClaim = dr["SpecialClaim"].ToString(); model.TicketAgio = dr.IsDBNull(dr.GetOrdinal("TicketAgio")) ? 0 : dr.GetDecimal(dr.GetOrdinal("TicketAgio")); model.IssueTime = dr.IsDBNull(dr.GetOrdinal("IssueTime")) ? System.DateTime.Now : dr.GetDateTime(dr.GetOrdinal("IssueTime")); model.QuoteState = (EyouSoft.Model.EnumType.TourStructure.QuoteState)dr.GetByte(dr.GetOrdinal("QuoteState")); model.Remark = dr["Remark"].ToString(); model.BuildTourId = dr["BuildTourId"].ToString(); model.TotalAmount = dr.GetDecimal(dr.GetOrdinal("TotalAmount")); model.Traveller = new EyouSoft.Model.TourStructure.TourEverydayApplyTravellerInfo(); model.Traveller.TravellerDisplayType = (EyouSoft.Model.EnumType.TourStructure.CustomerDisplayType)dr.GetByte(dr.GetOrdinal("TravellerDisplayType")); model.Traveller.TravellerFilePath = dr["TravellerFilePath"].ToString(); model.Traveller.Travellers = new List <EyouSoft.Model.TourStructure.TourOrderCustomer>(); #endregion #region 行程要求 EyouSoft.Model.TourStructure.XingChengMust XingChengMust = null; dr.NextResult(); if (dr.Read()) { XingChengMust = new EyouSoft.Model.TourStructure.XingChengMust() { QuoteId = dr.IsDBNull(dr.GetOrdinal("QuoteId")) ? 0 : dr.GetInt32(dr.GetOrdinal("QuoteId")), QuotePlan = dr["QuotePlan"].ToString(), PlanAccessory = dr["PlanAccessory"].ToString(), PlanAccessoryName = dr["PlanAccessoryName"].ToString() }; } model.XingCheng = XingChengMust; #endregion #region 客人要求信息集合 IList <EyouSoft.Model.TourStructure.TourServiceInfo> TourServiceInfoList = new List <EyouSoft.Model.TourStructure.TourServiceInfo>(); EyouSoft.Model.TourStructure.TourServiceInfo TourServiceInfo = null; dr.NextResult(); while (dr.Read()) { TourServiceInfo = new EyouSoft.Model.TourStructure.TourServiceInfo() { Service = dr["ConcreteAsk"].ToString(), ServiceType = (EyouSoft.Model.EnumType.TourStructure.ServiceType)dr.GetInt32(dr.GetOrdinal("ItemType")) }; TourServiceInfoList.Add(TourServiceInfo); } model.Requirements = TourServiceInfoList; #endregion #region 价格组成信息集合 IList <EyouSoft.Model.TourStructure.TourTeamServiceInfo> TourTeamServiceInfoList = new List <EyouSoft.Model.TourStructure.TourTeamServiceInfo>(); EyouSoft.Model.TourStructure.TourTeamServiceInfo TourTeamServiceInfo = null; dr.NextResult(); while (dr.Read()) { TourTeamServiceInfo = new EyouSoft.Model.TourStructure.TourTeamServiceInfo() { Service = dr["Reception"].ToString(), LocalPrice = dr.IsDBNull(dr.GetOrdinal("LocalQuote")) ? 0 : dr.GetDecimal(dr.GetOrdinal("LocalQuote")), SelfPrice = dr.IsDBNull(dr.GetOrdinal("MyQuote")) ? 0 : dr.GetDecimal(dr.GetOrdinal("MyQuote")), ServiceType = (EyouSoft.Model.EnumType.TourStructure.ServiceType)dr.GetInt32(dr.GetOrdinal("ItemId")), LocalPeopleNumber = dr.GetInt32(dr.GetOrdinal("LocalPeopleNumber")), LocalUnitPrice = dr.GetDecimal(dr.GetOrdinal("LocalUnitPrice")), SelfPeopleNumber = dr.GetInt32(dr.GetOrdinal("SelfPeopleNumber")), SelfUnitPrice = dr.GetDecimal(dr.GetOrdinal("SelfUnitPrice")) }; TourTeamServiceInfoList.Add(TourTeamServiceInfo); } model.Services = TourTeamServiceInfoList; #endregion #region 游客信息 if (dr.NextResult() && model != null) { while (dr.Read()) { EyouSoft.Model.TourStructure.TourOrderCustomer traveller = new EyouSoft.Model.TourStructure.TourOrderCustomer() { ID = dr.GetString(dr.GetOrdinal("TravellerId")), VisitorName = dr["TravellerName"].ToString(), CradType = (EyouSoft.Model.EnumType.TourStructure.CradType)dr.GetByte(dr.GetOrdinal("CertificateType")), CradNumber = dr["CertificateCode"].ToString(), Sex = (EyouSoft.Model.EnumType.CompanyStructure.Sex)dr.GetByte(dr.GetOrdinal("Gender")), VisitorType = (EyouSoft.Model.EnumType.TourStructure.VisitorType)dr.GetByte(dr.GetOrdinal("TravellerType")), ContactTel = dr["Telephone"].ToString(), }; traveller.SpecialServiceInfo = new EyouSoft.Model.TourStructure.CustomerSpecialService() { CustormerId = traveller.ID, Fee = !dr.IsDBNull(dr.GetOrdinal("Fee")) ? dr.GetDecimal(dr.GetOrdinal("Fee")) : 0, IsAdd = !dr.IsDBNull(dr.GetOrdinal("IsAdd")) ? dr.GetByte(dr.GetOrdinal("IsAdd")) == 1 ? true : false : false, ProjectName = dr["ServiceName"].ToString(), ServiceDetail = dr["ServiceDetail"].ToString() }; model.Traveller.Travellers.Add(traveller); } } #endregion } } return(model); }