コード例 #1
0
        public int Insert(CrProject project, bool update = false)
        {
            if (Exists(project.ProjectName, project.InitiativeId))
            {
                if (update)
                {
                    Update(project);
                }
                return(GetProjectId(project.ProjectName));
            }

            var addrDao = new CrAddressDao();
            var addr    = new CrAddress
            {
                AddressLine1 = project.Address1,
                City         = project.City,
                PostalCode   = project.Zip,
                State        = project.State
            };

            var addressID = addrDao.Insert(addr);


            var          rc    = -1;
            const string query = "INSERT INTO dbo.cr_Projects (Project_Name,Project_Status_ID,Location_ID,Project_Type_ID," +
                                 "Organization_ID,Initiative_ID,Minimum_Volunteers,Maximum_Volunteers," +
                                 "Absolute_Maximum_Volunteers,Domain_ID," +
                                 "Check_In_Floor,Check_In_Area,Check_In_Room_Number,Note_To_Volunteers_1," +
                                 "Note_To_Volunteers_2,Project_Parking_Location,Address_ID) " +
                                 "OUTPUT INSERTED.Project_ID " +
                                 "VALUES (@ProjectName,@ProjectStatusID,@LocationID,@ProjectTypeID," +
                                 "@OrganizationID,@InitiativeID,@MinimumVolunteers,@MaximumVolunteers," +
                                 "@AbsoluteMaximumVolunteers,@DomainID," +
                                 "@CheckInFloor,@CheckInArea,@CheckInRoomNumber,@NoteToVolunteers1," +
                                 "@NoteToVolunteers2,@ProjectParkingLocation,@Address_ID) ";

            var mp = new MpDao();

            using (var cn = new SqlConnection(_connectionString))
                using (var cmd = new SqlCommand(query, cn))
                {
                    cmd.Parameters.Add("@ProjectName", SqlDbType.NVarChar, 100).Value     = project.ProjectName;
                    cmd.Parameters.Add("@ProjectStatusID", SqlDbType.Int).Value           = 1;
                    cmd.Parameters.Add("@LocationID", SqlDbType.Int).Value                = mp.GetLocationId(project.LocationName);
                    cmd.Parameters.Add("@ProjectTypeID", SqlDbType.Int).Value             = mp.GetProjectTypeId(project.ProjectTypeName);
                    cmd.Parameters.Add("@OrganizationID", SqlDbType.Int).Value            = mp.GetOrganizationId(project.OrganizationName);
                    cmd.Parameters.Add("@InitiativeID", SqlDbType.Int).Value              = project.InitiativeId;
                    cmd.Parameters.Add("@MinimumVolunteers", SqlDbType.Int).Value         = project.MinVol;
                    cmd.Parameters.Add("@MaximumVolunteers", SqlDbType.Int).Value         = project.MaxVol;
                    cmd.Parameters.Add("@AbsoluteMaximumVolunteers", SqlDbType.Int).Value = project.AbsoluteMaxVol;
                    cmd.Parameters.Add("@DomainID", SqlDbType.Int).Value = 1;

                    cmd.Parameters.Add("@CheckInFloor", SqlDbType.NVarChar, 50).Value            = project.CheckInFloor;
                    cmd.Parameters.Add("@CheckInArea", SqlDbType.NVarChar, 50).Value             = project.CheckInArea;
                    cmd.Parameters.Add("@CheckInRoomNumber", SqlDbType.NVarChar, 50).Value       = project.CheckInRoomNumber;
                    cmd.Parameters.Add("@NoteToVolunteers1", SqlDbType.NVarChar, 500).Value      = project.Note1;
                    cmd.Parameters.Add("@NoteToVolunteers2", SqlDbType.NVarChar, 500).Value      = project.Note2;
                    cmd.Parameters.Add("@ProjectParkingLocation", SqlDbType.NVarChar, 500).Value = project.ParkingLocation;
                    cmd.Parameters.Add("@Address_ID", SqlDbType.Int).Value = addressID;

                    // open connection, execute INSERT, close connection
                    cn.Open();
                    try
                    {
                        rc = (int)cmd.ExecuteScalar();
                    }
                    catch (Exception ex)
                    {
                        // write to log
                        log.Error(ex.Message);
                    }

                    cn.Close();
                }
            return(rc);
        }
コード例 #2
0
        public int Insert(CrRegistration registration)
        {
            if (Exists(registration.ParticipantId, registration.InitiativeId))
            {
                return(GetRegistrationId(registration.ParticipantId, registration.InitiativeId));
            }
            var          rc    = -1;
            const string query = "INSERT INTO dbo.cr_Registrations (Organization_ID,Preferred_Launch_Site_ID,Participant_ID,Initiative_ID,Spouse_Participation,Domain_ID, Additional_Information,_Registration_Creation_Date) " +
                                 "OUTPUT INSERTED.Registration_ID " +
                                 "VALUES (@OrganizationID,@PreferredLaunchSiteID,@ParticipantID,@InitiativeID,@SpouseParticipation,@DomainID, @AddlInfo, @CreationDate) ";

            var mp = new MpDao();

            using (var cn = new SqlConnection(_connectionString))
                using (var cmd = new SqlCommand(query, cn))
                {
                    cmd.Parameters.Add("@OrganizationID", SqlDbType.Int).Value        = mp.GetOrganizationId(registration.OrganizationName);
                    cmd.Parameters.Add("@PreferredLaunchSiteID", SqlDbType.Int).Value = mp.GetLocationId(registration.LocationName);
                    cmd.Parameters.Add("@ParticipantID", SqlDbType.Int).Value         = registration.ParticipantId;
                    cmd.Parameters.Add("@InitiativeID", SqlDbType.Int).Value          = registration.InitiativeId;
                    cmd.Parameters.Add("@SpouseParticipation", SqlDbType.Bit).Value   = registration.SpouseParticipation;
                    cmd.Parameters.Add("@DomainID", SqlDbType.Int).Value               = registration.DomainId;
                    cmd.Parameters.Add("@AddlInfo", SqlDbType.NVarChar).Value          = registration.AddlInfo;
                    cmd.Parameters.Add("@CreationDate", SqlDbType.SmallDateTime).Value = registration.CreationDate;
                    // open connection, execute INSERT, close connection
                    cn.Open();
                    try
                    {
                        rc = (int)cmd.ExecuteScalar();
                    }
                    catch (Exception ex)
                    {
                        // write to log
                        log.Error(ex.Message);
                    }

                    cn.Close();
                }
            return(rc);
        }