示例#1
0
        /// <summary>
        /// Insert data to the database
        /// </summary>
        /// <param name="data">list of data</param>
        private void AddPartnership(List <string> data)
        {
            string managerMail = profile.Mail;

            if (profile.Type != "מנהל שותפות")
            {
                managerMail = data[0];
                data.RemoveAt(0);
            }

            if (controller.createNewPartnership(managerMail, data, tableName))
            {
                DataTable dt = controller.getPartnershipByFildes(managerMail, data, tableName);
                if (dt != null)
                {
                    string partnershipId = dt.Rows[0][0].ToString();
                    if (managerMail == profile.Mail)
                    {
                        controller.AddNewPartnerToPartnerShip(profile.Id, partnershipId, tableName);
                    }
                    else
                    {
                        DataTable manager   = controller.getManagersPreferencesByMail(managerMail, tableName);
                        string    managerId = manager.Rows[0][0].ToString();
                        controller.AddNewPartnerToPartnerShip(managerId, partnershipId, tableName);
                        controller.AddNewPartnerToPartnerShip(profile.Id, partnershipId, tableName);
                    }
                    MessageBox.Show("השותפות נוצרה בהצלחה");
                    Close();
                    return;
                }
            }
            MessageBox.Show("משהו השתבש נסה שוב");
        }
 /// <summary>
 /// Incase this is a view partnership watch, and the user wants to add a partner to the partnership
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void OK_button_Click(object sender, RoutedEventArgs e)
 {
     //Enter mail adress
     if (partnerMailTextBox.Text == string.Empty)
     {
         MessageBox.Show("אנא הכנס מייל שותף קודם");
     }
     else
     {
         //Get the partnership details
         DataTable dt = _controler.getPartnersFromPartnershipById(_userField, _partnershipId);
         if (dt != null && dt.Rows.Count > Convert.ToInt32(_numOfPartners))
         {
             MessageBox.Show("מספר השותפים בשותפות מלא, על מנת לשנות זאת ערוך את מספר השותפים בשותפות");
         }
         else
         {
             try
             {
                 //check if a relevant profile exists
                 string      partnerMail    = partnerMailTextBox.Text;
                 MailAddress ma             = new MailAddress(partnerMail);
                 DataTable   partnerProfile = _controler.getPreferencesForUserByType(_userField, partnerMail);
                 DataTable   checkIfPartnerAlreadyExists = _controler.getPartnersFromPartnershipById(_userField, _partnershipId);
                 if (partnerProfile == null)
                 {
                     MessageBox.Show("למייל זה לא קיימים פרופילים בתחום זה במערכת");
                 }
                 else
                 {
                     if (checkIfPartnerAlreadyExists != null)
                     {
                         foreach (DataRow r in checkIfPartnerAlreadyExists.Rows)
                         {
                             string prefId = partnerProfile.Select()[0][0].ToString();
                             if (r[1].ToString().Equals(prefId))
                             {
                                 MessageBox.Show("מייל של שותף זה כבר שותף בשותפות זו.");
                                 return;
                             }
                         }
                     }
                     //check if the profile is an active partner profile
                     bool isActivePartner = false;
                     foreach (DataRow r in partnerProfile.Rows)
                     {
                         if (r[2].ToString().Equals("שותף פעיל"))
                         {
                             isActivePartner = true;
                             string id      = r[0].ToString();
                             bool   succese = _controler.AddNewPartnerToPartnerShip(id, _partnershipId, _userField);
                             if (succese)
                             {
                                 MessageBox.Show("השותף נוסף לשותפות בהצלחה!");
                                 return;
                             }
                         }
                     }
                     if (!isActivePartner)
                     {
                         MessageBox.Show("למייל זה לא קיים פרופיל שותף פעיל בתחום זה במערכת");
                     }
                 }
             }
             catch (Exception)
             {
                 MessageBox.Show("כתובת המייל לא הוכנסה בפורמט תקין");
             }
         }
     }
 }