public JsonResult SetOpen(int comp_id) { try { ass_complaint comp = db.ass_complaint .Where(a => a.id == comp_id).FirstOrDefault(); foreach (ass_complaint_dtl dtl in comp.ass_complaint_dtl.ToList()) { dtl.curr_status_id = 1; ass_status_update up = new ass_status_update { compdtl_id = dtl.id, status_id = 1, status_date = DateTime.Today, user_id = int.Parse(User.Identity.Name) }; db.ass_status_update.Add(up); } db.SaveChanges(); return(Json(new { success = 1, comp_id = comp_id, Exception = "" })); } catch (Exception ex) { return(Json(new { success = 0, comp_id = comp_id, Exception = ex.ToString() })); } }
public ActionResult DeleteConfirmed(int id) { ass_complaint ass_complaint = db.ass_complaint.Find(id); db.ass_complaint.Remove(ass_complaint); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "id,complaint_cd,entity_cd,project_no,lot_no,business_id,cp_name,cp_telp,check_date,contractor_id,descs,input_date,user_id,attach_file")] ass_complaint ass_complaint) { if (ModelState.IsValid) { db.Entry(ass_complaint).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(ass_complaint)); }
// GET: Ass/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ass_complaint ass_complaint = db.ass_complaint.Find(id); if (ass_complaint == null) { return(HttpNotFound()); } return(View(ass_complaint)); }
public ActionResult printOut(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ass_complaint ass_complaint = db.ass_complaint.Find(id); if (ass_complaint == null) { return(HttpNotFound()); } List <PrintOut> poLs = new List <PrintOut>(); poLs = ass_complaint.ass_complaint_dtl .Select(a => new PrintOut { no = a.ass_complaint.id, ownerName = a.ass_complaint.cp_name, telp = a.ass_complaint.cp_telp, address = a.ass_complaint.lot_no, email = a.ass_complaint.cp_email, bast = a.ass_complaint.pm_tenancy.commence_date, checkListDate = a.ass_complaint.check_date, finishDate = a.ass_complaint.ass_complaint_dtl.OrderByDescending(x => x.due_date).FirstOrDefault().due_date, contractorName = a.ass_complaint.cm_contractor.trade, cpContractor = a.ass_complaint.controller_name, headDescs = a.ass_complaint.descs, descs = a.ass_category.name + " " + a.ass_location.name + " " + a.descs }).ToList(); ReportDocument rd = new ReportDocument(); rd.Load(Path.Combine(Server.MapPath("~/Reports"), "AssPrintOut.rpt")); rd.SetDataSource(poLs); Response.Buffer = false; Response.ClearContent(); Response.ClearHeaders(); try { Stream stream = rd.ExportToStream(CrystalDecisions.Shared.ExportFormatType.PortableDocFormat); stream.Seek(0, SeekOrigin.Begin); //return File(stream, "application/pdf", id.ToString() + ".pdf"); return(File(stream, "application/pdf")); } catch (Exception ex) { throw; } }
public JsonResult CreateJson(ass_complaint ass_complaint) { try { ass_complaint curComp = db.ass_complaint .Where(a => a.id == ass_complaint.id) .FirstOrDefault(); if (curComp != null) { curComp.entity_cd = ass_complaint.entity_cd; curComp.lot_no = ass_complaint.lot_no; curComp.project_no = ass_complaint.project_no; curComp.business_id = ass_complaint.business_id; curComp.cp_name = ass_complaint.cp_name; curComp.cp_telp = ass_complaint.cp_telp; curComp.cp_email = ass_complaint.cp_email; curComp.check_date = ass_complaint.check_date; curComp.contractor_id = ass_complaint.contractor_id; curComp.ass_complaint_dtl.ToList().ForEach(a => db.ass_complaint_dtl.Remove(a)); foreach (ass_complaint_dtl dtl in ass_complaint.ass_complaint_dtl) { db.ass_complaint_dtl.Add(dtl); } } else { ass_complaint.input_date = DateTime.Now; ass_complaint.complaint_cd = ""; ass_complaint.user_id = int.Parse(User.Identity.Name); db.ass_complaint.Add(ass_complaint); } db.SaveChanges(); return(Json(new { success = 1, comp_id = ass_complaint.id, ex = "" })); } catch (Exception ex) { return(Json(new { success = 0, comp_id = ass_complaint.id, ex = ex.ToString() })); } }
// GET: Ass/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ass_complaint ass_complaint = db.ass_complaint.Find(id); if (ass_complaint == null || ((ass_complaint.input_date.Year != DateTime.Today.Year || ass_complaint.input_date.Month != DateTime.Today.Month || ass_complaint.input_date.Day != DateTime.Today.Day) && !ass_complaint.lastStatus.Contains("INPUT"))) { return(HttpNotFound()); } ViewBag.contractor_id = new SelectList(db.cm_contractor, "id", "trade", ass_complaint.contractor_id); ViewBag.categories = db.ass_category.ToList(); ViewBag.locations = db.ass_location.ToList(); return(View("Edit_", ass_complaint)); }
public ActionResult ProgressByComplaint(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ass_complaint ass_complaint = db.ass_complaint.Find(id); if (ass_complaint == null) { return(HttpNotFound()); } List <ass_status> statusLs = db.ass_status.ToList(); ViewProgressDtl result = new ViewProgressDtl { ass_complaint = ass_complaint, status = statusLs }; return(View(result)); }
public JsonResult CreateJson(AddStatus status) { string messageResult = "Progress has been updated"; using (var dbTrans = db.Database.BeginTransaction()) { try { foreach (AddStatusDtl dtl in status.dtl) { ass_complaint_dtl compDtl = db.ass_complaint_dtl.Where(a => a.id == dtl.compDtlId).FirstOrDefault(); if (compDtl != null) { compDtl.curr_status_id = dtl.statusId; ass_status_update up = new ass_status_update { compdtl_id = dtl.compDtlId, status_id = dtl.statusId, status_date = DateTime.Today, remark = dtl.remark, user_id = int.Parse(User.Identity.Name) }; db.ass_status_update.Add(up); db.SaveChanges(); ass_complaint complaint = db.ass_complaint .Where(a => a.id == compDtl.comp_id) .FirstOrDefault(); if (!complaint.ass_complaint_dtl.Where(x => x.curr_status_id == null || !x.ass_status.name.Contains("CLOSED")).Any()) { complaint.closing_date = DateTime.Today; } bool cancel = true; foreach (ass_complaint_dtl itemDtl in complaint.ass_complaint_dtl) { if (!itemDtl.currentStatus.Contains("CANCEL")) { cancel = false; } } if (cancel) { complaint.cancel_date = DateTime.Now; } ass_status currentStatus = db.ass_status.Where(a => a.id == dtl.statusId).FirstOrDefault(); if (currentStatus != null && currentStatus.name.Contains("DONE") && complaint.cp_email != "") { if (!complaint.ass_complaint_dtl.Where(x => x.curr_status_id == null || (!x.ass_status.name.Contains("CLOSED") && !x.ass_status.name.Contains("DONE"))).Any()) { //#GET SENDER EMAIL ass_email_sender mailSender = db.ass_email_sender.FirstOrDefault(); string templateBody = mailSender.email_template; //#SEND EMAIL DateTime today = DateTime.Today; string mailNo = today.Day.ToString() + "/ASS-GLC/" + IntExtensions.ToRomanNumeral(today.Month) + "/" + today.Year; string templateHTML; //Read template file from the App_Data folder using (var sr = new StreamReader(Server.MapPath("\\App_Data\\Templates\\") + "MailAssDone.html")) { templateHTML = sr.ReadToEnd(); } MailMessage mail = new MailMessage(); mail.To.Add(complaint.cp_email); //mail.To.Add("*****@*****.**"); //mail.From = new MailAddress("*****@*****.**"); mail.From = new MailAddress(mailSender.email); mail.Subject = "Surat Pemberitahuan Komplain Telah Selesai"; string messageBody = @" <table style='width:100%'> <tr> <th>#</th> <th>Uraian Checklist</th> <th>Proses</th> <th>Keterangan</th> </tr>"; int x = 1; foreach (ass_complaint_dtl ass_complaint_dtl in complaint.ass_complaint_dtl) { string descs = ass_complaint_dtl.ass_category.name + " " + ass_complaint_dtl.ass_location.name + " " + ass_complaint_dtl.descs; string contentDtl = "<tr>"; contentDtl += "<td>" + x.ToString() + "</td>"; contentDtl += "<td>" + descs + "</td>"; contentDtl += "<td>" + ass_complaint_dtl.currentStatus + "</td>"; contentDtl += "<td>" + ass_complaint_dtl.currentRemark + "</td>"; contentDtl += "</tr>"; messageBody += contentDtl; x++; } messageBody += "</table>"; string Body = templateBody.Replace("{emailNo}", mailNo) .Replace("{cluster}", complaint.pm_tenancy.pl_project.descs) .Replace("{lotNo}", complaint.lot_no) .Replace("{date}", DateTime.Today.ToString("dd MMMM yyyy")) .Replace("{complaintDetail}", messageBody) .Replace("{complaintDate}", complaint.check_date.ToString("dd MMM yyyy")); Body = templateHTML.Replace("{body}", Body); mail.Body = Body; mail.IsBodyHtml = true; SmtpClient smtp = new SmtpClient(); smtp.Host = "mx.agungsedayu.com"; smtp.Port = 25; smtp.UseDefaultCredentials = false; //smtp.Credentials = new System.Net.NetworkCredential //("*****@*****.**", "aqswde123");// Enter seders User name and password smtp.Credentials = new System.Net.NetworkCredential (mailSender.email, EncrypHelpers.Decrypt(mailSender.password));// Enter seders User name and password smtp.EnableSsl = true; smtp.Send(mail); ass_complaint_mail compMail = new ass_complaint_mail { mail_no = mailNo, email_to = complaint.cp_email, mail_date = today, comp_id = complaint.id, user_id = int.Parse(User.Identity.Name), audit_date = DateTime.Now }; db.ass_complaint_mail.Add(compMail); db.SaveChanges(); //#END SEND EMAIL messageResult = "Progress has been updated and Email has been sent."; } } db.SaveChanges(); } } dbTrans.Commit(); return(Json(new { success = 1, ex = messageResult })); } catch (Exception ex) { dbTrans.Rollback(); return(Json(new { success = 0, ex = ex.ToString() })); } } }