Exemplo n.º 1
0
        protected static FR_Guid Execute(DbConnection Connection, DbTransaction Transaction, P_L5SQ_SU_1250 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            #region UserCode
            var returnValue = new FR_Guid();
            //Put your code here

            ORM_RES_QST_Questionnaire_Version oldVersion = new ORM_RES_QST_Questionnaire_Version();

            ORM_RES_QST_Questionnaire questionnaire = new ORM_RES_QST_Questionnaire();
            int versionNumber = 0;
            if (Parameter.RES_QST_QuestionnaireID != Guid.Empty)
            {
                var result = questionnaire.Load(Connection, Transaction, Parameter.RES_QST_QuestionnaireID);
                if (result.Status != FR_Status.Success || questionnaire.RES_QST_QuestionnaireID == Guid.Empty)
                {
                    var error = new FR_Guid();
                    error.ErrorMessage = "No Such ID";
                    error.Status       = FR_Status.Error_Internal;
                    return(error);
                }
                ORM_RES_QST_Questionnaire_Version.Query versionQuery = new ORM_RES_QST_Questionnaire_Version.Query();
                versionQuery.Tenant_RefID        = securityTicket.TenantID;
                versionQuery.IsDeleted           = false;
                versionQuery.Questionnaire_RefID = questionnaire.RES_QST_QuestionnaireID;
                List <ORM_RES_QST_Questionnaire_Version> versions = ORM_RES_QST_Questionnaire_Version.Query.Search(Connection, Transaction, versionQuery);

                versionNumber = versions.Max(i => i.QuestionnaireVersion_VersionNumber);
                oldVersion    = versions.FirstOrDefault(i => i.QuestionnaireVersion_VersionNumber == versionNumber);
                versionNumber++;
            }
            else
            {
                versionNumber = 1;
                questionnaire.Tenant_RefID = securityTicket.TenantID;
            }

            ORM_RES_QST_Questionnaire_Version version = new ORM_RES_QST_Questionnaire_Version();
            version.QuestionnaireVersion_VersionNumber = versionNumber;
            version.Questionnaire_RefID         = questionnaire.RES_QST_QuestionnaireID;
            version.IsApartmentStructureVisible = Parameter.IsApartmentStructureVisible;
            version.IsAtticVisible              = Parameter.IsAtticVisible;
            version.IsBasementVisible           = Parameter.IsBasementVisible;
            version.IsFacadeVisible             = Parameter.IsFacadeVisible;
            version.IsHVACRVisible              = Parameter.IsHVACRVisible;
            version.IsOutdoorFacilityVisible    = Parameter.IsOutdoorFacilityVisible;
            version.IsRoofVisible               = Parameter.IsRoofVisible;
            version.IsStaircaseStructureVisible = Parameter.IsStaircaseStructureVisible;
            version.Tenant_RefID = securityTicket.TenantID;
            version.Save(Connection, Transaction);

            questionnaire.Questionnaire_Description          = Parameter.Questionnaire_Description;
            questionnaire.Questionnaire_Name                 = Parameter.Questionnaire_Name;
            questionnaire.Current_QuestionnaireVersion_RefID = version.RES_QST_Questionnaire_VersionID;
            questionnaire.Save(Connection, Transaction);



            // OutdoorFacility, Facade, Roof, Attic, Staircase, Basement, HVCAR, Appartment

            foreach (var question in Parameter.availableQuestions)
            {
                if (question.questionType == "OutdoorFacility")
                {
                    ORM_RES_QST_OutdoorFacility_AvailableProperty item = new ORM_RES_QST_OutdoorFacility_AvailableProperty();
                    item.RES_QST_Questionnaire_Version_RefID    = version.RES_QST_Questionnaire_VersionID;
                    item.RES_STR_OutdoorFacility_Property_RefID = question.questionID;
                    item.Tenant_RefID = securityTicket.TenantID;
                    item.Save(Connection, Transaction);
                }
                else if (question.questionType == "Facade")
                {
                    ORM_RES_QST_Facade_AvailableProperty item = new ORM_RES_QST_Facade_AvailableProperty();
                    item.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
                    item.RES_STR_Facade_Property_RefID       = question.questionID;
                    item.Tenant_RefID = securityTicket.TenantID;
                    item.Save(Connection, Transaction);
                }
                else if (question.questionType == "Roof")
                {
                    ORM_RES_QST_Roof_AvailableProperty item = new ORM_RES_QST_Roof_AvailableProperty();
                    item.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
                    item.RES_STR_Roof_Property_RefID         = question.questionID;
                    item.Tenant_RefID = securityTicket.TenantID;
                    item.Save(Connection, Transaction);
                }
                else if (question.questionType == "Attic")
                {
                    ORM_RES_QST_Attic_AvailableProperty item = new ORM_RES_QST_Attic_AvailableProperty();
                    item.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
                    item.RES_STR_Attic_Property_RefID        = question.questionID;
                    item.Tenant_RefID = securityTicket.TenantID;
                    item.Save(Connection, Transaction);
                }
                else if (question.questionType == "Staircase")
                {
                    ORM_RES_QST_Staircase_AvailableProperty item = new ORM_RES_QST_Staircase_AvailableProperty();
                    item.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
                    item.RES_STR_Staircase_Property_RefID    = question.questionID;
                    item.Tenant_RefID = securityTicket.TenantID;
                    item.Save(Connection, Transaction);
                }
                else if (question.questionType == "Basement")
                {
                    ORM_RES_QST_Basement_AvailableProperty item = new ORM_RES_QST_Basement_AvailableProperty();
                    item.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
                    item.RES_STR_Basement_Property_RefID     = question.questionID;
                    item.Tenant_RefID = securityTicket.TenantID;
                    item.Save(Connection, Transaction);
                }
                else if (question.questionType == "HVCAR")
                {
                    ORM_RES_QST_HVACR_AvailableProperty item = new ORM_RES_QST_HVACR_AvailableProperty();
                    item.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
                    item.RES_STR_HVACR_Property_RefID        = question.questionID;
                    item.Tenant_RefID = securityTicket.TenantID;
                    item.Save(Connection, Transaction);
                }
                else if (question.questionType == "Apartment")
                {
                    ORM_RES_QST_Apartment_AvailableProperty item = new ORM_RES_QST_Apartment_AvailableProperty();
                    item.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
                    item.RES_STR_Apartment_Property_RefID    = question.questionID;
                    item.Tenant_RefID = securityTicket.TenantID;
                    item.Save(Connection, Transaction);
                }
            }

            returnValue.Result = questionnaire.RES_QST_QuestionnaireID;


            return(returnValue);

            #endregion UserCode
        }
Exemplo n.º 2
0
        protected static FR_L5QT_GQFQI_1517 Execute(DbConnection Connection, DbTransaction Transaction, P_L5QT_GQFQI_1517 Parameter, CSV2Core.SessionSecurity.SessionSecurityTicket securityTicket = null)
        {
            #region UserCode
            var returnValue = new FR_L5QT_GQFQI_1517();

            returnValue.Result = new L5QT_GQFQI_1517();


            ORM_RES_QST_Questionnaire questionnaire = new ORM_RES_QST_Questionnaire();
            questionnaire.Load(Connection, Transaction, Parameter.QuestionnaireID);
            returnValue.Result.Questionnaire = questionnaire;

            ORM_RES_QST_Questionnaire_Version version = new ORM_RES_QST_Questionnaire_Version();
            version.Load(Connection, Transaction, questionnaire.Current_QuestionnaireVersion_RefID);
            returnValue.Result.QuestionnaireVersion = version;


            ORM_RES_QST_Apartment_AvailableProperty.Query apartmentQuery = new ORM_RES_QST_Apartment_AvailableProperty.Query();
            apartmentQuery.Tenant_RefID = securityTicket.TenantID;
            apartmentQuery.IsDeleted    = false;
            apartmentQuery.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
            List <ORM_RES_QST_Apartment_AvailableProperty> apartments = ORM_RES_QST_Apartment_AvailableProperty.Query.Search(Connection, Transaction, apartmentQuery);
            returnValue.Result.Apartments = apartments.ToArray();

            ORM_RES_QST_Attic_AvailableProperty.Query atticQuery = new ORM_RES_QST_Attic_AvailableProperty.Query();
            atticQuery.Tenant_RefID = securityTicket.TenantID;
            atticQuery.IsDeleted    = false;
            atticQuery.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
            List <ORM_RES_QST_Attic_AvailableProperty> attics = ORM_RES_QST_Attic_AvailableProperty.Query.Search(Connection, Transaction, atticQuery);
            returnValue.Result.Attics = attics.ToArray();

            ORM_RES_QST_Basement_AvailableProperty.Query basementQuery = new ORM_RES_QST_Basement_AvailableProperty.Query();
            basementQuery.Tenant_RefID = securityTicket.TenantID;
            basementQuery.IsDeleted    = false;
            basementQuery.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
            List <ORM_RES_QST_Basement_AvailableProperty> basements = ORM_RES_QST_Basement_AvailableProperty.Query.Search(Connection, Transaction, basementQuery);
            returnValue.Result.Basements = basements.ToArray();

            ORM_RES_QST_Facade_AvailableProperty.Query facadeQuery = new ORM_RES_QST_Facade_AvailableProperty.Query();
            facadeQuery.Tenant_RefID = securityTicket.TenantID;
            facadeQuery.IsDeleted    = false;
            facadeQuery.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
            List <ORM_RES_QST_Facade_AvailableProperty> facades = ORM_RES_QST_Facade_AvailableProperty.Query.Search(Connection, Transaction, facadeQuery);
            returnValue.Result.Facades = facades.ToArray();

            ORM_RES_QST_HVACR_AvailableProperty.Query hvacrQuery = new ORM_RES_QST_HVACR_AvailableProperty.Query();
            hvacrQuery.Tenant_RefID = securityTicket.TenantID;
            hvacrQuery.IsDeleted    = false;
            hvacrQuery.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
            List <ORM_RES_QST_HVACR_AvailableProperty> hvacrs = ORM_RES_QST_HVACR_AvailableProperty.Query.Search(Connection, Transaction, hvacrQuery);
            returnValue.Result.Hvacr = hvacrs.ToArray();

            ORM_RES_QST_OutdoorFacility_AvailableProperty.Query outdoorQuery = new ORM_RES_QST_OutdoorFacility_AvailableProperty.Query();
            outdoorQuery.Tenant_RefID = securityTicket.TenantID;
            outdoorQuery.IsDeleted    = false;
            outdoorQuery.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
            List <ORM_RES_QST_OutdoorFacility_AvailableProperty> outdoors = ORM_RES_QST_OutdoorFacility_AvailableProperty.Query.Search(Connection, Transaction, outdoorQuery);
            returnValue.Result.OutdoorFacilities = outdoors.ToArray();

            ORM_RES_QST_Roof_AvailableProperty.Query roofQuery = new ORM_RES_QST_Roof_AvailableProperty.Query();
            roofQuery.Tenant_RefID = securityTicket.TenantID;
            roofQuery.IsDeleted    = false;
            roofQuery.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
            List <ORM_RES_QST_Roof_AvailableProperty> roofs = ORM_RES_QST_Roof_AvailableProperty.Query.Search(Connection, Transaction, roofQuery);
            returnValue.Result.Roofs = roofs.ToArray();

            ORM_RES_QST_Staircase_AvailableProperty.Query staircaseQuery = new ORM_RES_QST_Staircase_AvailableProperty.Query();
            staircaseQuery.Tenant_RefID = securityTicket.TenantID;
            staircaseQuery.IsDeleted    = false;
            staircaseQuery.RES_QST_Questionnaire_Version_RefID = version.RES_QST_Questionnaire_VersionID;
            List <ORM_RES_QST_Staircase_AvailableProperty> staircases = ORM_RES_QST_Staircase_AvailableProperty.Query.Search(Connection, Transaction, staircaseQuery);
            returnValue.Result.Staircases = staircases.ToArray();


            //Put your code here
            return(returnValue);

            #endregion UserCode
        }