//private SurveyRequestResultBO Publish(SurveyInfoBO pRequestMessage) // { // SurveyRequestResultBO result = new SurveyRequestResultBO(); // string _Xml = pRequestMessage.XML; // var SurveyId = Guid.NewGuid(); // if (pRequestMessage != null) // { // if (! string.IsNullOrEmpty(pRequestMessage.SurveyNumber) && ValidateOrganizationKey(pRequestMessage.OrganizationKey)) // //if (ValidateOrganizationKeyByUser(pRequestMessage.OrganizationKey, pRequestMessage.OwnerId))//EW-96 // { // if (ValidateSurveyFields(pRequestMessage)) // { // try // { // if (pRequestMessage.IsSqlProject) // this.SurveyInfoDao.ValidateServername(pRequestMessage); // XDocument xdoc = XDocument.Parse(pRequestMessage.XML); // xdoc.Descendants().Where(e => e.Name == "SourceTable").Remove(); // pRequestMessage.XML = xdoc.ToString(); // var BO = ToBusinessObject(pRequestMessage, SurveyId); // this.SurveyInfoDao.InsertSurveyInfo(BO); // //Insert Connection string.. // if (pRequestMessage.IsSqlProject) // { // DbConnectionStringBO DbConnectionStringBO = new DbConnectionStringBO(); // DbConnectionStringBO = GetConnection(pRequestMessage.DBConnectionString); // DbConnectionStringBO.SurveyId = SurveyId; // this.SurveyInfoDao.InsertConnectionString(DbConnectionStringBO); // } // // Set Survey Settings // this.SurveyInfoDao.InsertFormdefaultSettings(SurveyId.ToString(), pRequestMessage.IsSqlProject,GetSurveyControls(BO)); // Dictionary<int, string> SurveyIdsList = new Dictionary<int, string>(); // SurveyIdsList.Add(GetViewId(pRequestMessage.XML), SurveyId.ToString()); // result.ViewIdAndFormIdList = SurveyIdsList; // result.URL = GetURL(pRequestMessage, SurveyId); // result.IsPulished = true; // } // catch (Exception ex) // { // System.Console.Write(ex.ToString()); // //Entities.ObjectStateManager.GetObjectStateEntry(SurveyMetaData).Delete(); // result.URL = ""; // result.IsPulished = false; // result.StatusText = "An Error has occurred while publishing your survey."; // } // } // else // { // result.URL = ""; // result.IsPulished = false; // result.StatusText = "One or more survey required fields are missing values."; // } // } // else // { // result.URL = ""; // result.IsPulished = false; // result.StatusText = "Organization Key is invalid."; // } // } // SetSourceTable(_Xml, SurveyId.ToString()); // return result; // } private static SurveyInfoBO ToBusinessObject(SurveyInfoBO pRequestMessage, Guid SurveyId) { Epi.Web.Common.BusinessObject.SurveyInfoBO BO = new Epi.Web.Common.BusinessObject.SurveyInfoBO(); BO.SurveyId = SurveyId.ToString(); BO.ClosingDate = pRequestMessage.ClosingDate; BO.IntroductionText = pRequestMessage.IntroductionText; BO.ExitText = pRequestMessage.ExitText; BO.DepartmentName = pRequestMessage.DepartmentName; BO.OrganizationName = pRequestMessage.OrganizationName; BO.SurveyNumber = pRequestMessage.SurveyNumber; BO.XML = pRequestMessage.XML; BO.SurveyName = pRequestMessage.SurveyName; BO.SurveyType = pRequestMessage.SurveyType; BO.UserPublishKey = pRequestMessage.UserPublishKey; BO.OrganizationKey = pRequestMessage.OrganizationKey; BO.OrganizationKey = pRequestMessage.OrganizationKey; BO.TemplateXMLSize = pRequestMessage.TemplateXMLSize; BO.IsDraftMode = pRequestMessage.IsDraftMode; BO.StartDate = pRequestMessage.StartDate; BO.ViewId = pRequestMessage.ViewId; //BO.ParentId = pRequestMessage.ParentId;// Removed parent Id for the first step of publish // BO.OwnerId = pRequestMessage.OwnerId; BO.IsSqlProject = pRequestMessage.IsSqlProject; //BO.IsShareable = pRequestMessage.IsShareable; // BO.DataAccessRuleId = pRequestMessage.DataAccessRuleId; //Insert Survey MetaData return(BO); }
private SurveyRequestResultBO Publish(SurveyInfoBO pRequestMessage) { string _Xml = pRequestMessage.XML; SurveyRequestResultBO result = new SurveyRequestResultBO(); var SurveyId = Guid.NewGuid(); if (pRequestMessage != null) { //if (! string.IsNullOrEmpty(pRequestMessage.SurveyNumber) && ValidateOrganizationKey(pRequestMessage.OrganizationKey)) if (ValidateOrganizationKey(pRequestMessage.OrganizationKey)) { if (ValidateSurveyFields(pRequestMessage)) { try { Epi.Web.Common.BusinessObject.SurveyInfoBO BO = new Epi.Web.Common.BusinessObject.SurveyInfoBO(); //BO.SurveyId = SurveyId.ToString(); //BO.ClosingDate = pRequestMessage.ClosingDate; //BO.IntroductionText = pRequestMessage.IntroductionText; //BO.ExitText = pRequestMessage.ExitText; //BO.DepartmentName = pRequestMessage.DepartmentName; //BO.OrganizationName = pRequestMessage.OrganizationName; //BO.SurveyNumber = pRequestMessage.SurveyNumber; //XDocument xdoc = XDocument.Parse(pRequestMessage.XML); //xdoc.Descendants().Where(e => e.Name == "SourceTable").Remove(); //BO.XML = xdoc.ToString(); //BO.SurveyName = pRequestMessage.SurveyName; //BO.SurveyType = pRequestMessage.SurveyType; //BO.UserPublishKey = pRequestMessage.UserPublishKey; //BO.OrganizationKey = pRequestMessage.OrganizationKey; //BO.OrganizationKey = pRequestMessage.OrganizationKey; //BO.TemplateXMLSize = pRequestMessage.TemplateXMLSize; //BO.IsDraftMode = pRequestMessage.IsDraftMode; //BO.StartDate = pRequestMessage.StartDate; BO = ToBusinessObject(pRequestMessage, SurveyId); if (pRequestMessage.IsSqlProject) { this.SurveyInfoDao.ValidateServername(pRequestMessage); } BO.IsSqlProject = pRequestMessage.IsSqlProject; this.SurveyInfoDao.InsertSurveyInfo(BO); result.URL = GetURL(pRequestMessage, SurveyId); result.IsPulished = true; //Insert Connection string.. if (pRequestMessage.IsSqlProject) { DbConnectionStringBO DbConnectionStringBO = new DbConnectionStringBO(); DbConnectionStringBO = GetConnection(pRequestMessage.DBConnectionString); DbConnectionStringBO.SurveyId = SurveyId; this.SurveyInfoDao.InsertConnectionString(DbConnectionStringBO); } //Source Table SetSourceTable(_Xml, SurveyId.ToString()); // View and ID setup Dictionary <int, string> SurveyIdsList = new Dictionary <int, string>(); SurveyIdsList.Add(GetViewId(pRequestMessage.XML), SurveyId.ToString()); result.ViewIdAndFormIdList = SurveyIdsList; } catch (Exception ex) { System.Console.Write(ex.ToString()); //Entities.ObjectStateManager.GetObjectStateEntry(SurveyMetaData).Delete(); result.URL = ""; result.IsPulished = false; result.StatusText = "An Error has occurred while publishing your survey."; } } else { result.URL = ""; result.IsPulished = false; result.StatusText = "One or more survey required fields are missing values."; } } else { result.URL = ""; result.IsPulished = false; result.StatusText = "Organization Key is invalid."; } } return(result); }