protected void Page_Init(object sender, EventArgs e) { if (!Page.IsPostBack) { InitializeCounters(); } else { gvCounters.DataBind(); } var assoc = Association; txtAssociationName.Text = assoc.Name; txtAssociationAddress.Text = assoc.Address; txtAssociationFiscalCode.Text = assoc.FiscalCode; txtAssociationBanckAccount.Text = assoc.BanckAccont; txtPenaltyRate.Text = assoc.penaltyRate.HasValue ? (assoc.penaltyRate.Value * 100).ToString(new CultureInfo("ro-RO")) : string.Empty; drpAssociationEqualIndiviza.SelectedValue = (assoc.CotaIndivizaAparments.HasValue) ? "1" : "0"; if (assoc.CotaIndivizaAparments.HasValue) { txtAssociationCotaIndivizaApartments.Text = assoc.CotaIndivizaAparments.Value.ToString(CultureInfo.InvariantCulture); btnAssociationEqualIndiviza.Visible = true; txtAssociationCotaIndivizaApartments.Visible = true; } //todo refactor, use SP var apartments = ApartmentsManager.Get(assoc.Id); tbFondReparatii.Text = apartments.Sum(a => a.FondReparatii).ToString(); tbFondRulment.Text = apartments.Sum(a => a.FondRulment).ToString(); InitializeStairs(); }
private void InitializeGridViewExpensesPerIndex(DataTable dt, int esexId) { var apartments = ApartmentsManager.GetForIndividual(Association.Id, esexId); AssociationExpenses ee = AssociationExpensesManager.GetById(esexId); foreach (var apartment in apartments) { ApartmentExpensesManager.ConfigureIndividual(ee, apartment); string query = @" Select TE.Id as Id, A.Number as Apartament, TE.Value as 'Valoare' from ApartmentExpenses TE Inner join Apartments A ON TE.Id_Tenant = A.Id where Id_EstateExpense = " + esexId + " and Id_Tenant = " + apartment.Id + " and A.Id_Estate = " + Association.Id; SqlConnection cnn = new SqlConnection("data source=HOME\\SQLEXPRESS;initial catalog=Administratoro;integrated security=True;MultipleActiveResultSets=True;"); SqlCommand cmd = new SqlCommand(query, cnn); SqlDataAdapter adp = new SqlDataAdapter(cmd); adp.Fill(dt); } ViewState["dtIndividual"] = dt; gvExpensesPerIndex.DataSource = dt; gvExpensesPerIndex.DataBind(); }
private void InitializeUsersTable() { var apartments = ApartmentsManager.Get(Association.Id); foreach (Administratoro.DAL.Apartments ap in apartments) { TableRow row = new TableRow(); HyperLink linkEditUser = new HyperLink { NavigateUrl = "~/Apartments/Add.aspx?apartmentid=" + ap.Id, CssClass = "toClickOn", Text = "Editează" }; TableCell userEditCell = new TableCell(); userEditCell.Controls.Add(linkEditUser); row.Cells.Add(userEditCell); TableCell tentantNr = new TableCell { Text = ap.Number.ToString() }; row.Cells.Add(tentantNr); TableCell tentantName = new TableCell { Text = ap.Name }; row.Cells.Add(tentantName); TableCell userPhone = new TableCell { Text = ap.Telephone }; row.Cells.Add(userPhone); TableCell userEmail = new TableCell { Text = ap.Email }; row.Cells.Add(userEmail); TableCell userDependents = new TableCell { Text = ap.Dependents.ToString() }; row.Cells.Add(userDependents); TableCell userSurface = new TableCell { Text = ap.CotaIndiviza.ToString() }; row.Cells.Add(userSurface); datatableResponsive.Rows.Add(row); } }
public static string GetMonthlyExpensefilePath(int year, int month, int apartmentId) { const string filePath = "C:\\adminRo\\fluturasi\\{0}\\{1}-{2}\\p{3}.pdf"; string result = null; var apartment = ApartmentsManager.GetById(apartmentId); if (apartment != null) { result = string.Format(filePath, apartmentId, year, month, apartment.Number); } return(result); }
protected void btnSave_Click(object sender, EventArgs e) { if (!this.ValidateInputs()) { return; } var cota = apartmentCota.Value.ToNullableDecimal(); var apartment = new Administratoro.DAL.Apartments { Name = userName.Value, Dependents = userDependents.Value.ToNullableInt().Value, ExtraInfo = userExtraInfo.Value, CotaIndiviza = cota ?? 0, Number = userNr.Value.ToNullableInt().Value, Telephone = userPhone.Value, Email = userEmail.Value, CreatedDate = DateTime.Now, id_Estate = Association.Id, Password = "******", Id_StairCase = userStairCase.SelectedValue.ToNullableInt(), HasHeatHelp = userHeatHelp.SelectedIndex == 1, FondReparatii = txtFondRepairs.Value.ToNullableDecimal(), FondRulment = txtfondRulment.Value.ToNullableDecimal() }; if (!string.IsNullOrEmpty(lblUserId.Text) && lblUserId.Text.ToNullableInt() != 0) { apartment.Id = lblUserId.Text.ToNullableInt().Value; ApartmentsManager.Update(apartment); } else { apartment = ApartmentsManager.Add(apartment); lblStatus.Text = FlowMessages.ApartmentAddSuccess; lblStatus.CssClass = "SuccessBox"; } ProcessSaveCounters(apartment); var association = AssociationsManager.GetById(Association.Id); Session[SessionConstants.SelectedAssociation] = association; Response.Redirect("~/Apartments/Manage.aspx?Message=UserUpdatedSuccess"); }
private void InitializeGridViewExpensesPerIndex(DataTable dt, int esexId) { AssociationExpenses ee = AssociationExpensesManager.GetById(esexId); int stairCase; List <Administratoro.DAL.Apartments> apartments; if (Association.HasStaircase && !string.IsNullOrEmpty(drpStairCases.SelectedValue) && int.TryParse(drpStairCases.SelectedValue, out stairCase)) { apartments = ApartmentsManager.GetAllThatAreRegisteredWithSpecificCounters(Association.Id, esexId, stairCase); } else { apartments = ApartmentsManager.GetAllThatAreRegisteredWithSpecificCounters(Association.Id, esexId); } ApartmentExpensesManager.ConfigurePerIndex(ee, apartments); foreach (var apartment in apartments) { string query = @" Select AE.Id as Id, A.Number as Apartament, cast(AE.IndexOld as float) as 'Index vechi', cast(AE.IndexNew as float) as 'Index nou', (AE.IndexNew - AE.IndexOld ) as 'Consum', AE.Value as 'Valoare' from ApartmentExpenses AE Inner join Apartments A ON AE.Id_Tenant = A.Id where Id_EstateExpense = " + esexId + " and Id_Tenant = " + apartment.Id + " and A.Id_Estate = " + Association.Id; SqlConnection cnn = new SqlConnection("data source=HOME\\SQLEXPRESS;initial catalog=Administratoro;integrated security=True;MultipleActiveResultSets=True;"); SqlCommand cmd = new SqlCommand(query, cnn); SqlDataAdapter adp = new SqlDataAdapter(cmd); adp.Fill(dt); } ViewState["dtPerIndex"] = dt; gvExpensesPerIndex.DataSource = dt; gvExpensesPerIndex.DataBind(); }
private void PopulateCounters(Administratoro.DAL.Associations association, int?apartmentId) { estateCounters.Visible = false; //if (association.HasStaircase) if (true) { Administratoro.DAL.Apartments apartment = null; if (apartmentId.HasValue) { apartment = ApartmentsManager.GetById(apartmentId.Value); } Panel headerPanel = new Panel(); Label lbExpense = new Label { Text = "Cheltuială", CssClass = "col-md-4 col-xs-4 countersTableHeader" }; Label lbName = new Label { Text = "Contor alocat", CssClass = "col-md-4 col-xs-4 countersTableHeader" }; Label lbNrCountersPerApartment = new Label { Text = "Numărul de contoare în apartament ", CssClass = "col-md-4 col-xs-4 countersTableHeader" }; headerPanel.Controls.Add(lbExpense); headerPanel.Controls.Add(lbName); headerPanel.Controls.Add(lbNrCountersPerApartment); estateCounters.Controls.Add(headerPanel); IEnumerable <Administratoro.DAL.Expenses> expenses = ExpensesManager.GetAllExpenses(); foreach (var expense in expenses) { PopulateCountersData(association, expense, apartment); } } }
private void InitializeApartments() { var ap = ApartmentsManager.Get(Association.Id); drpApartments.Items.Add(new ListItem { Text = string.Empty, Value = "-1" }); foreach (var apartment in ap) { drpApartments.Items.Add(new ListItem { Value = apartment.Id.ToString(), Text = apartment.Number + ": " + apartment.Name }); } }
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { PopulateStairCase(Association); if (!string.IsNullOrEmpty(Request["apartmentid"])) { var apartmentid = Request["apartmentid"].ToNullableInt(); if (apartmentid != null && apartmentid != 0) { var apartment = ApartmentsManager.GetById(apartmentid.Value); if (apartment != null) { userName.Value = apartment.Name; userExtraInfo.Value = apartment.ExtraInfo; userPhone.Value = apartment.Telephone; userEmail.Value = apartment.Email; userDependents.Value = apartment.Dependents.ToString(); apartmentCota.Value = apartment.CotaIndiviza.ToString(); userNr.Value = apartment.Number.ToString(); btnSave.Text = "Actualizează datele"; lblUserId.Text = Request["apartmentid"]; userStairCase.SelectedValue = (apartment.Id_StairCase != null) ? apartment.Id_StairCase.ToString() : null; userHeatHelp.SelectedValue = (apartment.HasHeatHelp.HasValue && apartment.HasHeatHelp.Value ? "1" : "0"); txtfondRulment.Value = (apartment.FondRulment.HasValue ? apartment.FondRulment.Value.ToString() : "0"); txtFondRepairs.Value = (apartment.FondReparatii.HasValue ? apartment.FondReparatii.Value.ToString() : "0"); } else { Response.Redirect("~/Error.aspx?errorId=" + ErrorMessages.UserInvalid); } } else { Response.Redirect("~/Error.aspx?errorId=" + ErrorMessages.UserInvalid); } } else { PopulateApartmentLogic(Association); } } }
private void InitializeYearMonth() { drpApartaments.Items.Clear(); drpApartaments.Items.Add(new ListItem { Value = string.Empty, Text = string.Empty }); var apartments = ApartmentsManager.Get(Association.Id); foreach (var apartment in apartments) { drpApartaments.Items.Add(new ListItem { Value = apartment.Id.ToString(), Text = "Ap. " + apartment.Number + " : " + apartment.Name }); } }
public ActionResult AsyncUserLogin(string userId, string userPass) { int userIdValue; if (!int.TryParse(userId, out userIdValue)) { return(Json(new { response = JSONResponse.Success })); } var user = ApartmentsManager.GetByIdAndPassword(userIdValue, userPass); if (user == null || user.Id == 0) { return(Json(new { response = JSONResponse.IncorrectAuthentication })); } Session["userId"] = user.Id; Session["userName"] = user.Name; Session["assId"] = user.id_Estate; return(Json(new { response = JSONResponse.Success })); }
protected void btnDownload_Click(object sender, EventArgs e) { BaseFont bfTimes = BaseFont.CreateFont(BaseFont.TIMES_ROMAN, BaseFont.CP1250, false); Font times = new Font(bfTimes, 12, Font.ITALIC, BaseColor.BLACK); //server folder path which is stored your PDF documents string path = Server.MapPath(""); string filename = path + "\\Doc1.pdf"; var apartments = ApartmentsManager.Get(Association.Id); Font boldFont = new Font(null, 12, Font.BOLD); //Create new PDF document Document document = new Document(PageSize.A4, 80f, 80f, 20f, 20f); using (Document doc = new Document()) { MemoryStream msPDFData = new MemoryStream(); doc.Open(); doc.Add(new Paragraph("I'm a pdf!")); byte[] pdfData = msPDFData.ToArray(); } var association = Association; try { PdfWriter.GetInstance(document, new FileStream(filename, FileMode.Create)); document.Open(); foreach (var apartment in apartments) { decimal? sumToPay = 0; PdfPTable tblHeader = new PdfPTable(2) { WidthPercentage = 100 }; tblHeader.AddCell(GetCell("ASOCIATIA DE PROPRIETARI " + association.Name + ", CF " + association.FiscalCode, PdfPCell.ALIGN_LEFT)); tblHeader.AddCell(GetCell("CONTUL BANCAR " + association.BanckAccont, PdfPCell.ALIGN_RIGHT)); document.Add(tblHeader); document.Add(new Phrase("\n")); PdfPTable tbAp = new PdfPTable(4); tbAp.WidthPercentage = 100; tbAp.AddCell(GetCell("Ap.: " + apartment.Number, PdfPCell.ALIGN_CENTER)); tbAp.AddCell(GetCell("Nume: " + apartment.Name, PdfPCell.ALIGN_CENTER)); tbAp.AddCell(GetCell("Cota: " + (apartment.CotaIndiviza.HasValue ? apartment.CotaIndiviza.Value.ToString(CultureInfo.InvariantCulture) : string.Empty), PdfPCell.ALIGN_CENTER)); tbAp.AddCell(GetCell("Nr. Pers: " + apartment.Dependents, PdfPCell.ALIGN_CENTER)); document.Add(tbAp); document.Add(new Phrase("\n")); var associationExpensesGrouped = AssociationExpensesManager.GetByMonthAndYearNotDisabled(association.Id, GetYear(), GetMonth()) .GroupBy(ee => ee.Id_ExpenseType).OrderBy(er => er.Key); foreach (var assocExpenses in associationExpensesGrouped) { // add header document.Add(new Paragraph("Cheltuielile de tipulîățșț " + assocExpenses.FirstOrDefault().ExpenseTypes.Name, times)); if (assocExpenses.FirstOrDefault().Id_ExpenseType == (int)ExpenseType.PerIndex) { foreach (var assocExpense in assocExpenses) { var apExpenses = assocExpense.ApartmentExpenses.Where(w => w.Id_Tenant == apartment.Id).ToList(); if (apExpenses.Any()) { sumToPay = sumToPay + AddIndexTable(document, apExpenses, apartment, assocExpense.Id); } } } else if (assocExpenses.FirstOrDefault().Id_ExpenseType == (int)ExpenseType.PerCotaIndiviza) { sumToPay = sumToPay + AddCotaTable(document, assocExpenses.ToList(), apartment.Id); } else if (assocExpenses.FirstOrDefault().Id_ExpenseType == (int)ExpenseType.PerNrTenants) { sumToPay = sumToPay + AddTenantsTable(document, assocExpenses.ToList(), apartment.Id); } // add rows // add subtotal } document.Add(new Paragraph("TOTAL DE PLATA: " + sumToPay, boldFont)); document.NewPage(); } } catch (Exception) { } finally { document.Close(); ShowPdf(filename); } }