public async Task <ActionResult> DeleteCitizen(ViewModels.EditCitizen updateCitizen) { if (updateCitizen != null) { var currentUser = await db.Users.Where(x => x.UserName == User.Identity.Name) .SingleOrDefaultAsync(); if (currentUser != null) { var Citizen = new Models.Citizens { IsBanned = true, }; try { db.Entry(Citizen).State = EntityState.Modified; var result = await db.SaveChangesAsync(); if (result > 0) { return(RedirectToAction("Citizen", "VillageHead")); } } catch (Exception ex) { Trace.TraceError(ex.Message); Trace.TraceError(ex.StackTrace); } } } return(View("Error")); }
public async Task <ActionResult> EditCitizen(ViewModels.AddCitizen updateCitizen) { if (updateCitizen != null) { var currentUser = await db.Users.Where(x => x.UserName == User.Identity.Name) .SingleOrDefaultAsync(); if (currentUser != null) { var RT = await db.RT.FindAsync(updateCitizen.RT); var RW = await db.RW.FindAsync(updateCitizen.RW); var job = await db.Jobs.FindAsync(updateCitizen.Job); var editCitizen = new Models.Citizens { NIK = updateCitizen.NIK, FullName = updateCitizen.FullName, RegistrationStatus = updateCitizen.RegistrationStatus, IsBanned = true, Avatar = updateCitizen.Avatar, Address = updateCitizen.Address, RT = RT, RW = RW, DOB = updateCitizen.DOB, Institution = updateCitizen.Institution, PhoneNumber = updateCitizen.PhoneNumber, MaritalStatus = updateCitizen.MaritalStatus, Religion = updateCitizen.Religion, Citizenship = updateCitizen.Citizenship, Descriptions = updateCitizen.Descriptions, Job = job, Gender = updateCitizen.Gender, Departement = updateCitizen.Roles, UpdatedBy = currentUser, Updated = DateTime.UtcNow }; try { db.Entry(editCitizen).State = EntityState.Modified; var result = await db.SaveChangesAsync(); if (result > 0) { return(RedirectToAction("Citizen", "VillageHead")); } } catch (Exception ex) { Trace.TraceError(ex.Message); Trace.TraceError(ex.StackTrace); } } } return(View("Error")); }
public void PrintCertificate(string name, string qrUrl, Models.FileDocuments certificate, Models.Citizens trackParticipant) { PdfReader reader = new PdfReader(new RandomAccessFileOrArray(certificate.File), null); Rectangle size = reader.GetPageSizeWithRotation(1); Document document = new Document(size); using (MemoryStream ms = new MemoryStream()) using (PdfWriter writer = PdfWriter.GetInstance(document, ms)) { try { document.Open(); PdfContentByte cb = writer.DirectContentUnder; BaseFont bfb = BaseFont.CreateFont(BaseFont.HELVETICA_BOLD, BaseFont.CP1252, false); BaseFont bfr = BaseFont.CreateFont(BaseFont.HELVETICA, BaseFont.CP1252, false); //Open the document PdfImportedPage page = writer.GetImportedPage(reader, 1); cb.AddTemplate(page, 0, 0); cb.SetCharacterSpacing(0.5f); //cb.SetRGBColorFill(230, 20, 30); cb.SetRGBColorFill(0, 0, 0); cb.BeginText(); cb.SetFontAndSize(bfb, Convert.ToSingle(certificate.FontSize)); var x = (size.Width + Convert.ToSingle(certificate.NameXPosition)) / 2; var y = (size.Height + Convert.ToSingle(certificate.NameYPosition)) / 2; cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, trackParticipant.FullName, x, y, 0); cb.EndText(); //Peserta //cb.SetRGBColorFill(0, 0, 0); //cb.BeginText(); //cb.SetFontAndSize(bfb, Convert.ToSingle(26)); //x = (size.Width + Convert.ToSingle(certificate.NameXPosition)) / 2; //y = (size.Height + Convert.ToSingle(certificate.NameYPosition - 135)) / 2; //cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, "PESERTA", x, y, 0); //cb.EndText(); //Judul Acara //cb.SetRGBColorFill(64, 64, 64); //cb.BeginText(); //cb.SetFontAndSize(bfr, Convert.ToSingle(25)); //x = (size.Width + Convert.ToSingle(certificate.NameXPosition)) / 2; //y = (size.Height + Convert.ToSingle(certificate.NameYPosition - 260)) / 2; //cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, trackParticipant.Track.Title, x, y, 0); //cb.EndText(); //Waktu Acara //cb.SetRGBColorFill(80, 80, 80); //cb.BeginText(); //cb.SetFontAndSize(bfr, Convert.ToSingle(16)); //x = (size.Width + Convert.ToSingle(certificate.NameXPosition)) / 2; //y = (size.Height + Convert.ToSingle(certificate.NameYPosition - 320)) / 2; //cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, trackParticipant.Track.Start.ToString("dddd dd MMMM yyyy", CultureInfo.CreateSpecificCulture("id-ID")) + " di "+ trackParticipant.Track.Location.Name, x, y, 0); //cb.EndText(); //background cb.SetColorStroke(new CMYKColor(1f, 0f, 0f, 0f)); cb.SetColorFill(new CMYKColor(0f, 0f, 0f, 0f)); x = Convert.ToSingle(certificate.QRXPosition); y = Convert.ToSingle(certificate.QRYPosition); var qrSize = 80; cb.MoveTo(x, y); cb.LineTo(x + qrSize, y); cb.LineTo(x + qrSize, y + qrSize); cb.LineTo(x, y + qrSize); cb.Fill(); BarcodeQRCode qrCode = new BarcodeQRCode(qrUrl, 1000, 1000, null); Image image = qrCode.GetImage(); image.SetAbsolutePosition(x, y); image.ScaleAbsolute(qrSize, qrSize); document.Add(image); document.Close(); writer.Close(); ms.Close(); var fileName = "Dokumen SI-Dital - " + qrUrl.ToUpper(); HttpContext.Response.ContentType = "pdf/application"; HttpContext.Response.AddHeader("content-disposition", "attachment;filename=" + fileName + ".pdf"); HttpContext.Response.OutputStream.Write(ms.GetBuffer(), 0, ms.GetBuffer().Length); } catch (Exception ex) { System.Diagnostics.Trace.TraceError(ex.Message); } } }