コード例 #1
0
        /// <summary>
        /// This will delete the tenant from database
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void DeleteTenantBtn_Click(object sender, RoutedEventArgs e)
        {
            tenant tenant = TenantDataGrid.SelectedItem as tenant;

            _tenantAccess.DeleteTenant(tenant);
            MessageBox.Show("Tenant Deleted");
            TenantGrid.Items.Refresh();
        }
コード例 #2
0
 /// <summary>
 /// sets the field based on previous details from database
 /// </summary>
 /// <param name="tenant"></param>
 private void SetFields(tenant tenant)
 {
     formTenantName.Text = tenant.tenant_name;
     formUnitNumber.Text = tenant.unit_number.ToString();
     formSquareFeet.Text = tenant.unit_size_sqft.ToString("F");
     formRent.Text       = tenant.rent_per_sf.ToString("F");
     formStart.Text      = tenant.lease_start.ToString("d");
     formEnd.Text        = tenant.lease_end.ToString("d");
 }
コード例 #3
0
        /// <summary>
        /// Saves the tenant to the database
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void SaveBtn_Click(object sender, RoutedEventArgs e)
        {
            var validator = Validate();

            if (validator)
            {
                property property = (from p in context.properties
                                     where p.property_id == propertyId
                                     select p).FirstOrDefault();

                var annualRent = (double.Parse(formRent.Text)) * (double.Parse(formSquareFeet.Text));

                var unitSize       = int.Parse(formSquareFeet.Text);
                var availableSpace = property.available_space;
                var leaseStart     = DateTime.Parse(formStart.Text);
                var leaseEnd       = DateTime.Parse(formEnd.Text);
                var monthsLeft     = (leaseEnd.Month + leaseEnd.Year * 12) - (leaseStart.Month + leaseStart.Year * 12);

                if (unitSize <= availableSpace)
                {
                    //Map Text box fields to new tenant object
                    tenant tenant = new tenant
                    {
                        tenant_name        = formTenantName.Text,
                        unit_number        = int.Parse(formUnitNumber.Text),
                        unit_size_sqft     = double.Parse(formSquareFeet.Text),
                        rent_per_sf        = double.Parse(formRent.Text),
                        annual_rent        = annualRent,
                        monthly_rent       = annualRent / 12,
                        lease_start        = leaseStart,
                        lease_end          = leaseEnd,
                        months_left        = monthsLeft,
                        tenant_property_id = propertyId
                    };
                    property.available_space = availableSpace - unitSize;
                    _tenantAccess.AddNewTenant(tenant, propertyId);
                    context.SaveChanges();
                    Close();

                    MessageBoxButton mbBtn   = MessageBoxButton.OK;
                    string           header  = "Add Expense";
                    string           message = $"Tenant: {tenant.tenant_name} has been added.";
                    MessageBoxImage  icon    = MessageBoxImage.Information;
                    MessageBoxResult result  = MessageBox.Show(message, header, mbBtn, icon);
                    Clear();
                }
            }
        }
コード例 #4
0
        /// <summary>
        /// This will update the details in database based on user inputs
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void UpdateTenantBtn_Click(object sender, RoutedEventArgs e)
        {
            var validator = Validate();

            if (validator)
            {
                property property = (from p in context.properties
                                     where p.property_id == tenant.tenant_property_id
                                     select p).FirstOrDefault();

                var annualRent = (double.Parse(formRent.Text)) * (double.Parse(formSquareFeet.Text));

                var unitSize       = int.Parse(formSquareFeet.Text);
                var availableSpace = property.available_space;
                var leaseStart     = DateTime.Parse(formStart.Text);
                var leaseEnd       = DateTime.Parse(formEnd.Text);
                var monthsLeft     = (leaseEnd.Month + leaseEnd.Year * 12) - (leaseStart.Month + leaseStart.Year * 12);

                if (unitSize <= availableSpace)
                {
                    tenant editTenant = (from t in context.tenants
                                         where t.tenant_id == tenant.tenant_id
                                         select t).Single();

                    editTenant.tenant_name    = formTenantName.Text;
                    editTenant.unit_number    = int.Parse(formUnitNumber.Text);
                    editTenant.unit_size_sqft = unitSize;
                    editTenant.rent_per_sf    = double.Parse(formRent.Text);
                    editTenant.annual_rent    = annualRent;
                    editTenant.monthly_rent   = tenant.annual_rent / 12;
                    editTenant.lease_start    = leaseStart;
                    editTenant.lease_end      = leaseEnd;
                    editTenant.months_left    = monthsLeft;
                    property.available_space  = availableSpace - unitSize;
                    context.SaveChanges();

                    MainWindow.TenantDataGrid.ItemsSource = context.tenants.ToList();

                    MessageBoxButton mbBtn   = MessageBoxButton.OK;
                    string           header  = "Update Tenant";
                    string           message = $"Tenant name:{editTenant.tenant_name} has been altered.";
                    MessageBoxImage  icon    = MessageBoxImage.Information;
                    MessageBoxResult result  = MessageBox.Show(message, header, mbBtn, icon);
                    Close();
                }
            }
        }
コード例 #5
0
 public UpdateTenant()
 {
     InitializeComponent();
     tenant = GetSelectedTenant();
     SetFields(tenant);
 }