protected void Page_Load(object sender, EventArgs e) { classSpd cspd = new classSpd(); string strLoginID = string.Empty; classSpd oSPD = new classSpd(); if (Session["IDLogin"] != null) { strLoginID = (string)Session["IDLogin"]; } else { strLoginID = SetLabelWelcome(); } msKaryawan karyawan = oSPD.getKaryawan(strLoginID); dsSPDDataContext data = new dsSPDDataContext(); Int32 roleid = (from k in data.msUsers where k.nrp == karyawan.nrp && (k.roleId == Konstan.SYSADMIN || k.roleId == Konstan.GA) select k.roleId).FirstOrDefault(); if (!IsPostBack) { pnlForm.Visible = false; fillGV(txtFilterName.Text.Trim()); } if (roleid == Konstan.GA || strLoginID.Contains("yudisss") || strLoginID.Contains("Syam005812") || roleid == Konstan.SYSADMIN) { pnlGrid.Visible = true; gvRole.Visible = true; } else { pnlGrid.Visible = false; gvRole.Visible = false; } userLoginID = !String.IsNullOrEmpty(strLoginID) ? strLoginID.Length > 10 ? strLoginID.Substring(0, 10).ToString() : strLoginID : ""; }
protected void Page_Load(object sender, EventArgs e) { classSpd cspd = new classSpd(); string strLoginID = string.Empty; classSpd oSPD = new classSpd(); if (Session["IDLogin"] != null) { strLoginID = (string)Session["IDLogin"]; } else { strLoginID = SetLabelWelcome(); } msKaryawan karyawan = oSPD.getKaryawan(strLoginID); dsSPDDataContext data = new dsSPDDataContext(); Int32 roleid = (from k in data.msUsers where k.nrp == karyawan.nrp && (k.roleId == Konstan.SYSADMIN || k.roleId == Konstan.GA) select k.roleId).FirstOrDefault(); if (roleid == Konstan.GA || strLoginID.Contains("yudisss") || roleid == Konstan.SYSADMIN) { gvMasterHardship.Visible = true; btnTambah.Visible = true; } else { gvMasterHardship.Visible = false; btnTambah.Visible = false; } if (!IsPostBack) { inputForm.Visible = false; hfmode.Value = "add"; BindDropdowListPropinsi(); BindGridMasterHardship(); } }
private bool ifga(string nrp) { bool returner = false; using (var ctx = new dsSPDDataContext()) { try { int role = ctx.msUsers.First(o => o.nrp.Equals(nrp)).roleId; if (role == 17) { returner = true; } } catch (Exception) { returner = false; } } return(returner); }
protected void btnResendAllNew_Click(object sender, EventArgs e) { using (var ctx = new dsSPDDataContext()) { var query = (from o in ctx.trSPDs where o.isSubmit == true && o.isCancel == null && o.isApproved == null && o.tglBerangkat > DateTime.Now select o.noSPD).Distinct().ToList(); foreach (var item in query) { ProcessNew(item); using (StreamWriter w = File.AppendText(@"E:\SPD\logNoSpdResendAll.txt")) { Log(item, w); } } } }
protected void btnAdd_Click(object sender, EventArgs e) { dsSPDDataContext data = new dsSPDDataContext(); msUser user = new msUser(); user.nrp = cmbxUser.Value.ToString(); user.roleId = Convert.ToInt32(cmbxUserRole.Value); try { data.msUsers.InsertOnSubmit(user); data.SubmitChanges(); fillGridView(cmbxUser.Value.ToString()); } catch (Exception ex) { Response.Write("Gagal dalam memasukkan data " + ex.Message); } finally { data.Dispose(); } }
private void fillGridView(object p) { dsSPDDataContext data = new dsSPDDataContext(); string nrp = (string)p; var query = (from u in data.msUsers join r in data.msRoles on u.roleId equals r.id join k in data.msKaryawans on u.nrp equals k.nrp where u.nrp == p.ToString() select new { nrp = u.nrp, nama = k.namaLengkap, roleid = r.id, role = r.namaRole }); gvRole.DataSource = query.ToList(); gvRole.DataBind(); data.Dispose(); }
protected void btnSimpan_Click(object sender, EventArgs e) { dsSPDDataContext dss = new dsSPDDataContext(); string mode = "add"; mode = hfmode.Value.ToString(); msCost cst = (from k in dss.msCosts where k.costId.ToString().Trim() == hfCostId.Value.Trim() select k).FirstOrDefault(); if (cst == null) { msCost cost = new msCost(); cost = fillK(); dss.msCosts.InsertOnSubmit(cost); dss.SubmitChanges(); dss.Dispose(); clear_form(); notif.Text = "Data berhasil disimpan"; fillGV(); } else { //clear_form(); //if (mode == "add") //{ // notif.Text = "Simpan gagal : NRP Karyawan Sudah Terdaftar"; //} //else //{ fillEdit(ref cst); dss.SubmitChanges(); dss.Dispose(); clear_form(); notif.Text = "Data berhasil disimpan"; fillGV(); //} } }
protected void btnProsesNew_Click(object sender, EventArgs e) { using (var ctx = new dsSPDDataContext()) { var users = from u in ctx.trSPDs where u.noSPD == txtNoSPD.Text || u.noSPD == TextBox1.Text || u.noSPD == TextBox2.Text || u.noSPD == TextBox3.Text || u.noSPD == TextBox4.Text || u.noSPD == TextBox5.Text || u.noSPD == TextBox6.Text || u.noSPD == TextBox7.Text || u.noSPD == TextBox8.Text || u.noSPD == TextBox9.Text || u.noSPD == TextBox10.Text || u.noSPD == TextBox11.Text || u.noSPD == TextBox12.Text || u.noSPD == TextBox13.Text || u.noSPD == TextBox14.Text || u.noSPD == TextBox15.Text || u.noSPD == TextBox16.Text || u.noSPD == TextBox17.Text || u.noSPD == TextBox18.Text || u.noSPD == TextBox19.Text || u.noSPD == TextBox20.Text || u.noSPD == TextBox21.Text || u.noSPD == TextBox22.Text || u.noSPD == TextBox23.Text || u.noSPD == TextBox24.Text || u.noSPD == TextBox25.Text || u.noSPD == TextBox26.Text || u.noSPD == TextBox27.Text || u.noSPD == TextBox28.Text || u.noSPD == TextBox29.Text select u; foreach (trSPD us in users) { us.tglTerima = Convert.ToDateTime(txtTglTerima.Text); } try { ctx.SubmitChanges(); } catch (Exception) { //errorMessageHidden.Add("Error Submit SPD, gangguan teknis"); //errorMessageHidden.Add(ex.Message); } finally { lblSave.Visible = true; btnProsesNew.Enabled = false; } } // ProcessNew(txtNoSPD.Text); }
protected void btnSimpan_Click(object sender, EventArgs e) { dsSPDDataContext dss = new dsSPDDataContext(); string mode = "add"; mode = hfmode.Value.ToString(); msKaryawan kr = (from k in dss.msKaryawans where k.nrp.Trim() == txtNRP.Text.Trim() select k).FirstOrDefault(); if (kr == null) { msKaryawan krs = new msKaryawan(); krs = fillK(); dss.msKaryawans.InsertOnSubmit(krs); dss.SubmitChanges(); dss.Dispose(); clear_form(); notif.Text = "Data berhasil disimpan"; fillGV(); } else { //clear_form(); if (mode == "add") { notif.Text = "Simpan gagal : NRP Karyawan Sudah Terdaftar"; } else { fillEdit(ref kr); dss.SubmitChanges(); dss.Dispose(); clear_form(); notif.Text = "Data berhasil disimpan"; fillGV(); } } }
protected void Page_Load(object sender, EventArgs e) { string strLoginID = string.Empty; classSpd oSPD = new classSpd(); if (Session["IDLogin"] != null) { strLoginID = (string)Session["IDLogin"]; } else { strLoginID = SetLabelWelcome(); } msKaryawan karyawan = oSPD.getKaryawan(strLoginID); dsSPDDataContext data = new dsSPDDataContext(); Int32 roleid = (from k in data.msUsers where k.nrp == karyawan.nrp && (k.roleId == Konstan.SYSADMIN || k.roleId == Konstan.GA) select k.roleId).FirstOrDefault(); if (roleid == Konstan.SYSADMIN || roleid == Konstan.GA || strLoginID.Contains("yudi")) { cmbxUser.Visible = true; cmbxUserRole.Visible = true; gvRole.Visible = true; btnAdd.Visible = true; Label1.Visible = true; Label2.Visible = false; } else { cmbxUser.Visible = false; cmbxUserRole.Visible = false; gvRole.Visible = false; btnAdd.Visible = false; Label1.Visible = false; Label2.Visible = true; } }
private void fillGV(string filter) { dsSPDDataContext dsp = new dsSPDDataContext(); if (!String.IsNullOrEmpty(filter)) { var query = (from m in dsp.msRoles select new { m.id, m.namaRole, m.status } ).Where(o => o.status == true && o.namaRole.Contains(filter)); gvRole.DataSource = query.ToList(); } else { var query = (from m in dsp.msRoles select new { m.id, m.namaRole, m.status } ).Where(o => o.status == true); gvRole.DataSource = query.ToList(); } gvRole.DataBind(); dsp.Dispose(); gvRole.Visible = true; }
private bool isSec(string p, string x) { bool returner = false; using (var ctx = new dsSPDDataContext()) { try { var datadirect = ctx.msUsers.FirstOrDefault(o => o.nrp == x).roleId; var data = ctx.msUsers.FirstOrDefault(o => o.nrp == p).roleId; if (data == 23 && (datadirect == 13 || datadirect == 14)) { returner = true; } } catch (Exception) { returner = false; } } return(returner); }
void bindFind() { using (var ctx = new dsSPDDataContext()) { string filter = !string.IsNullOrEmpty(txtTglBerangkat.Text.Trim()) ? "tglBerangkat" : string.Empty; string param = txtTglBerangkat.Text; //var data = ctx.sp_GetApprovalSPDAtasanLangsung(karyawan.nrp, filter, param).ToList(); var data = ctx.sp_GetApprovalSPDAtasanLangsung(ConfigurationManager.AppSettings["NRPAtasan"].ToString(), filter, param).ToList(); gvViewSPD.DataSource = data; gvViewSPD.DataBind(); if (!data.Any()) { gvViewSPD.Visible = false; lblMessage.Visible = true; lblMessage.Text = "No data"; } else { gvViewSPD.Visible = true; } } }
protected void btnFind_Click(object sender, EventArgs e) { dsSPDDataContext data = new dsSPDDataContext(); DateTime? tglBerangkat = txtTglBerangkat.Text == "" ? null : convert(Convert.ToDateTime(txtTglBerangkat.Text)); var query = from spd in data.trSPDs.AsEnumerable() join keperluan in data.msKeperluans.AsEnumerable() on spd.idKeperluan equals keperluan.id where spd.noSPD == txtNoSPD.Text || spd.namaLengkap.ToUpper() == txtNamaLengkap.Text.ToUpper() || spd.tglBerangkat == tglBerangkat select new { noSPD = spd.noSPD, nrp = spd.nrp, namaLengkap = spd.namaLengkap, cabangTujuan = spd.companyCodeTujuan != null ? spd.companyCodeTujuan + " - " + spd.personelAreaTujuan + " - " + spd.pSubAreaTujuan : spd.tempatTujuanLain, keperluan = keperluan.keperluan, tglBerangkat = spd.tglBerangkat.ToShortDateString(), tglKembali = spd.tglKembali.ToShortDateString(), status = spd.status.Split('-')[1] }; gvViewSPD.DataSource = query; gvViewSPD.DataBind(); }
private void CancelSPD(trSPD dataSpd, string nrp, string nospd) { using (var ctx = new dsSPDDataContext()) { dataSpd = ctx.trSPDs.FirstOrDefault(o => o.noSPD == nospd); dataSpd.status = "SPD Cancel"; dataSpd.isCancel = true; dataSpd.diubahOleh = nrp; dataSpd.diubahTanggal = DateTime.Now; dataSpd.isCancelDate = DateTime.Now; // get data claim var dataClaim = ctx.trClaims.FirstOrDefault(o => o.noSPD == nospd); if (dataClaim != null) { dataClaim.status = "SPD Cancel"; dataClaim.isCancel = true; dataClaim.diubahOleh = nrp; dataClaim.diubahTanggal = DateTime.Now; dataClaim.isCancelDate = DateTime.Now; } ctx.SubmitChanges(); // get all approval var approval = ctx.ApprovalStatus.Where(o => o.NoSPD == nospd).ToList(); //get all people has been approve var approvalHasApproved = approval.Where(o => o.Status != null).Distinct().ToList(); //send email to all people has been approved foreach (var item in approvalHasApproved) { EmailCore.InformasiCancelSPD(item.NrpApproval, dataSpd.noSPD, dataSpd); } } }
protected void lbEdit_Click(object sender, EventArgs e) { dsSPDDataContext dss = new dsSPDDataContext(); LinkButton link = (LinkButton)sender; GridViewRow gv = (GridViewRow)(link.NamingContainer); Label id = (Label)gv.FindControl("id"); Label idPlafon = (Label)gv.FindControl("idPlafon"); string jenisSPD = gv.Cells[1].Text; string wilayah = gv.Cells[2].Text; string golongan = gv.Cells[3].Text; string plafon = gv.Cells[4].Text; string harga = gv.Cells[5].Text; string deskripsi = gv.Cells[6].Text; string status = gv.Cells[7].Text.ToUpper(); var x = (from m in dss.msGolonganPlafons where m.id.ToString().Trim() == id.Text.Trim() select m).FirstOrDefault(); fill_form(ref x, jenisSPD, wilayah, golongan, idPlafon.Text, status); hfmode.Value = "edit"; pnlForm.Visible = true; pnlGrid.Visible = false; }
internal void sendMail(trSPD spd, string To, msKaryawan kar) { System.Net.Mail.MailMessage email = new System.Net.Mail.MailMessage(); StringBuilder emailMessage = new StringBuilder(); StringBuilder emailMessageFrom = new StringBuilder(); StringBuilder Content = new StringBuilder(); dsSPDDataContext data = new dsSPDDataContext(); var Atasan = (from k in data.msKaryawans where k.nrp == spd.nrpAtasan select k); //nrp ilang msKaryawan Tujuan = new msKaryawan(); Tujuan = (from k in data.msKaryawans where k.nrp == spd.nrpApprovalTujuan select k).SingleOrDefault(); msKaryawan Pengirim = new msKaryawan(); Pengirim = (from k in data.msKaryawans where k.nrp == spd.nrp select k).FirstOrDefault(); if (kar.nrp == "99999999") { Pengirim = kar; //Pengirim.nrp = kar.nrp; //Pengirim.job = kar.job; //Pengirim.golongan = kar.golongan; Pengirim.email = spd.email; } //hardcode untuk TRAC HO yang melakukan SPD, GAnya masi ke yulia if (Pengirim.kodePA == "1000") { Pengirim.kodePA = "1"; } if (Pengirim.kodePSubArea == "1000") { Pengirim.kodePSubArea = "1"; } var gaAsal = (from k in data.msKaryawans join u in data.msUsers on k.nrp equals u.nrp where u.roleId == 17 && k.coCd == Pengirim.coCd && k.kodePA == Pengirim.kodePA && k.kodePSubArea == Pengirim.kodePSubArea select k); //msKaryawan atasanGaAsal = (from k in data.msKaryawans // where k.nrp == gaAsal.nrpAtasan // select k).SingleOrDefault(); var KasirAsal = (from k in data.msKaryawans join u in data.msUsers on k.nrp equals u.nrp where u.roleId == 20 && k.coCd == Pengirim.coCd && k.kodePA == Pengirim.kodePA && k.kodePSubArea == Pengirim.kodePSubArea select k); var FinanceAsal = (from k in data.msKaryawans join u in data.msUsers on k.nrp equals u.nrp where u.roleId == 19 && k.coCd == Pengirim.coCd && k.kodePA == Pengirim.kodePA && k.kodePSubArea == Pengirim.kodePSubArea select k); trClaim claim = new trClaim(); claim = (from c in data.trClaims where c.noSPD == spd.noSPD select c).FirstOrDefault(); if (To == "Extend") { email.Subject = "Extend SPD " + spd.noSPD + "-" + spd.namaLengkap; string mailAddress = string.Empty; string NamaLengkap = string.Empty; foreach (msKaryawan item in Atasan) { mailAddress += item.email.Trim() + ","; NamaLengkap += item.namaLengkap + "/"; } mailAddress = mailAddress.Remove(mailAddress.Length - 1); NamaLengkap = NamaLengkap.Remove(NamaLengkap.Length - 1); email.To.Add(mailAddress); email.Bcc.Add("*****@*****.**"); emailMessage.Append(string.Format("Kepada Yth, ")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0}", NamaLengkap)); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0} telah melakukan <b>Extend SPD</b> dengan rincian sebagai berikut : ", spd.namaLengkap)); emailMessage.Append("<br />"); Content = ContentBodymail(Content, spd, null, kar); emailMessage.Append(Content); emailMessage.Append("Terima kasih."); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<b style='color: red;'>Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); //send extend mail here } else { if (spd.status.Split('-')[0] == "2") { email.Subject = "Approval SPD " + spd.noSPD + "-" + spd.namaLengkap; string mailAddress = string.Empty; string NamaLengkap = string.Empty; foreach (var item in gaAsal) { mailAddress += item.email.Trim() + ","; NamaLengkap += item.namaLengkap + "/"; } foreach (msKaryawan item in Atasan) { mailAddress += item.email.Trim() + ","; NamaLengkap += item.namaLengkap + "/"; } mailAddress = mailAddress.Remove(mailAddress.Length - 1); NamaLengkap = NamaLengkap.Remove(NamaLengkap.Length - 1); email.To.Add(mailAddress); email.Bcc.Add("*****@*****.**"); emailMessage.Append(string.Format("Kepada Yth, ")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0}", NamaLengkap)); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0} telah mengirim <b>Request Approval SPD</b> dengan rincian sebagai berikut : ", spd.namaLengkap)); emailMessage.Append("<br />"); Content = ContentBodymail(Content, spd, null, kar); emailMessage.Append(Content); emailMessage.Append("Apabila Bapak/ Ibu berada di kantor bisa menggunakan link dibawah ini untuk melakukan approve/reject Request Claim SPD tersebut"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<a href='http://trac54/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}'>Approve</a>", spd.noSPD, "atasan", "spd")); emailMessage.Append(" "); emailMessage.Append("|"); emailMessage.Append(" "); emailMessage.Append(string.Format("<a href='http://trac54/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}'>Reject</a>", spd.noSPD, "atasan", "spd")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Jika link di atas tidak dapat diklik, copy dan gunakan URL dibawah ini di browser: "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Approve : http://trac54/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2} ", spd.noSPD, "atasan", "spd")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Reject : http://trac54/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2} ", spd.noSPD, "atasan", "spd")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Apabila Bapak/ Ibu berada di luar kantor bisa menggunakan link dibawah ini "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<a href='http://118.97.80.12/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}'>Approve</a>", spd.noSPD, "atasan", "spd")); emailMessage.Append(" "); emailMessage.Append("|"); emailMessage.Append(" "); emailMessage.Append(string.Format("<a href='http://118.97.80.12/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}'>Reject</a>", spd.noSPD, "atasan", "spd")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Jika link di atas tidak dapat diklik, copy dan gunakan URL dibawah ini di browser: "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Approve : http://118.97.80.12/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2} ", spd.noSPD, "atasan", "spd")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Reject : http://118.97.80.12/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2} ", spd.noSPD, "atasan", "spd")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<b style='color: red;'>Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); } else if ((spd.status.Split('-')[0] == "3" || spd.status.Split('-')[0] == "6" || spd.status.Split('-')[0] == "7" || spd.status.Split('-')[0] == "8" || spd.status.Split('-')[0] == "9" || spd.status.Split('-')[0] == "12" || spd.status.Split('-')[0] == "13") && To == "Pembuat") { email.Subject = "Informasi SPD " + spd.noSPD + "-" + spd.namaLengkap; email.To.Add(Pengirim.email.Trim()); email.Bcc.Add("*****@*****.**"); emailMessage.Append(string.Format("Kepada Yth, ")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0}", Pengirim.namaLengkap)); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Status Request SPD Bapak/Ibu {0} adalah <b>{1}</b>.Berikut ini rincian SPD tersebut : ", spd.namaLengkap, spd.status.Split('-')[1])); emailMessage.Append("<br />"); Content = ContentBodymail(Content, spd, null, kar); emailMessage.Append(Content); emailMessage.Append("Terima kasih."); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<b style='color: red;'>Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); } else if ((spd.status.Split('-')[0] == "3" || spd.status.Split('-')[0] == "6") && To == "GA") { email.Subject = "Informasi SPD " + spd.noSPD + "-" + spd.namaLengkap; string mailAddress = string.Empty; string NamaLengkap = string.Empty; foreach (var item in gaAsal) { mailAddress += item.email.Trim() + ","; NamaLengkap += item.namaLengkap + "/"; } mailAddress = mailAddress.Remove(mailAddress.Length - 1); NamaLengkap = NamaLengkap.Remove(NamaLengkap.Length - 1); email.To.Add(mailAddress); email.Bcc.Add("*****@*****.**"); emailMessage.Append(string.Format("Kepada Yth, ")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0}", NamaLengkap)); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Status Request SPD Bapak/Ibu {0} <b>Sudah Disetujui atasan</b>. Mohon bantuannya untuk mencarikan tiket dengan rincian sebagai berikut : ", spd.namaLengkap, spd.status.Split('-')[1])); emailMessage.Append("<br />"); Content = ContentBodymail(Content, spd, null, kar); emailMessage.Append(Content); emailMessage.Append("Terima kasih."); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<b style='color: red;'>Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); } else if ((spd.status.Split('-')[0] == "3" || spd.status.Split('-')[0] == "6") && To == "Tujuan") { email.Subject = "Approval SPD " + spd.noSPD + "-" + spd.namaLengkap; email.To.Add(Tujuan.email.Trim()); email.Bcc.Add("*****@*****.**"); emailMessage.Append(string.Format("Kepada Yth, ")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0}", Tujuan.namaLengkap)); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0}, telah mengirim <b>Request Approval SPD atasan tempat tujuan</b> dengan rincian sebagai berikut : ", spd.namaLengkap)); emailMessage.Append("<br />"); Content = ContentBodymail(Content, spd, null, kar); emailMessage.Append(Content); emailMessage.Append("Apabila Bapak/ Ibu berada di kantor bisa menggunakan link dibawah ini untuk melakukan approve/reject Request Claim SPD tersebut"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<a href='http://trac54/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}'>Approve</a>", spd.noSPD, "tujuan", "spd")); emailMessage.Append(" "); emailMessage.Append("|"); emailMessage.Append(" "); emailMessage.Append(string.Format("<a href='http://trac54/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}'>Reject</a>", spd.noSPD, "tujuan", "spd")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Jika link di atas tidak dapat diklik, copy dan gunakan URL dibawah ini di browser: "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Approve : http://trac54/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2} ", spd.noSPD, "tujuan", "spd")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Reject : http://trac54/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2} ", spd.noSPD, "tujuan", "spd")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Apabila Bapak/ Ibu berada di luar kantor bisa menggunakan link dibawah ini "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<a href='http://118.97.80.12/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}'>Approve</a>", spd.noSPD, "tujuan", "spd")); emailMessage.Append(" "); emailMessage.Append("|"); emailMessage.Append(" "); emailMessage.Append(string.Format("<a href='http://118.97.80.12/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}'>Reject</a>", spd.noSPD, "tujuan", "spd")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Jika link di atas tidak dapat diklik, copy dan gunakan URL dibawah ini di browser: "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Approve : http://118.97.80.12/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}", spd.noSPD, "tujuan", "spd")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Reject : http://118.97.80.12/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}", spd.noSPD, "tujuan", "spd")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("*Catatan : Mohon lakukan approval apabila karyawan yang melakukan SPD sudah tiba di tempat tujuan"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<b style='color: red;'>**Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); } else if (spd.status.Split('-')[0] == "11") { string mailAddress = string.Empty; string NamaLengkap = string.Empty; foreach (var item in Atasan) { mailAddress += item.email.Trim() + ","; NamaLengkap += item.namaLengkap + "/"; } mailAddress = mailAddress.Remove(mailAddress.Length - 1); NamaLengkap = NamaLengkap.Remove(NamaLengkap.Length - 1); email.Subject = "Approval Claim " + spd.noSPD + "-" + spd.namaLengkap; email.To.Add(mailAddress); email.Bcc.Add("*****@*****.**"); emailMessage.Append(string.Format("Kepada Yth, ")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0}", NamaLengkap)); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0} telah mengirim <b>Request Approval Claim SPD</b> dengan rincian sebagai berikut : ", spd.namaLengkap)); emailMessage.Append("<br />"); Content = ContentBodymail(Content, spd, claim, kar); emailMessage.Append(Content); emailMessage.Append("Apabila Bapak/ Ibu berada di kantor bisa menggunakan link dibawah ini untuk melakukan approve/reject Request Claim SPD tersebut"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<a href='http://trac54/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}'>Approve</a>", spd.noSPD, "atasan", "claim")); emailMessage.Append(" "); emailMessage.Append("|"); emailMessage.Append(" "); emailMessage.Append(string.Format("<a href='http://trac54/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}'>Reject</a>", spd.noSPD, "atasan", "claim")); emailMessage.Append("<br />"); emailMessage.Append("Jika link di atas tidak dapat diklik, copy dan gunakan URL dibawah ini di browser: "); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Approve : http://trac54/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}", spd.noSPD, "atasan", "claim")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Reject : http://trac54/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}", spd.noSPD, "atasan", "claim")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Apabila Bapak/ Ibu berada di luar kantor bisa menggunakan link dibawah ini "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<a href='http://118.97.80.12/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}'>Approve</a>", spd.noSPD, "atasan", "claim")); emailMessage.Append(" "); emailMessage.Append("|"); emailMessage.Append(" "); emailMessage.Append(string.Format("<a href='http://118.97.80.12/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}'>Reject</a>", spd.noSPD, "atasan", "claim")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Jika link di atas tidak dapat diklik, copy dan gunakan URL dibawah ini di browser: "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Approve : http://118.97.80.12/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}", spd.noSPD, "atasan", "claim")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Reject : http://118.97.80.12/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}", spd.noSPD, "atasan", "claim")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<b style='color: red;'>Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); } else if ((spd.status.Split('-')[0] == "14" || spd.status.Split('-')[0] == "15" || spd.status.Split('-')[0] == "16" || spd.status.Split('-')[0] == "17" || spd.status.Split('-')[0] == "18" || spd.status.Split('-')[0] == "19" || spd.status.Split('-')[0] == "20" || spd.status.Split('-')[0] == "26" || spd.status.Split('-')[0] == "27") && To == "Pembuat") { email.Subject = "Info Claim " + spd.noSPD + "-" + spd.namaLengkap; email.To.Add(Pengirim.email.Trim()); email.Bcc.Add("*****@*****.**"); emailMessage.Append(string.Format("Kepada Yth, ")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0}", Pengirim.namaLengkap)); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Status Request Claim SPD Bapak/Ibu {0} adalah <b>{1}</b>.Berikut ini rincian Claim SPD tersebut: ", spd.namaLengkap, spd.status.Split('-')[1])); emailMessage.Append("<br />"); Content = ContentBodymail(Content, spd, claim, kar); emailMessage.Append(Content); emailMessage.Append("Terima kasih."); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<b style='color: red;'>Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); } else if ((spd.status.Split('-')[0] == "16") && To == "GA") { string mailAddress = string.Empty; string NamaLengkap = string.Empty; foreach (var item in gaAsal) { mailAddress += item.email.Trim() + ","; NamaLengkap += item.namaLengkap + "/"; } mailAddress = mailAddress.Remove(mailAddress.Length - 1); NamaLengkap = NamaLengkap.Remove(NamaLengkap.Length - 1); email.Subject = "Approval Claim " + spd.noSPD + "-" + spd.namaLengkap; email.To.Add(mailAddress); email.Bcc.Add("*****@*****.**"); emailMessage.Append(string.Format("Kepada Yth, ")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0}", NamaLengkap)); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Status Request SPD Bapak/Ibu {0} <b>Sudah Di-Approve atasan</b> dengan rincian sebagai berikut : ", spd.namaLengkap, spd.status.Split('-')[1])); emailMessage.Append("<br />"); Content = ContentBodymail(Content, spd, claim, kar); emailMessage.Append(Content); emailMessage.Append("Apabila Bapak/ Ibu berada di kantor bisa menggunakan link dibawah ini untuk melakukan approve/reject Request Claim SPD tersebut"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<a href='http://trac54/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}'>Approve</a>", spd.noSPD, "ga", "claim")); emailMessage.Append(" "); emailMessage.Append("|"); emailMessage.Append(" "); emailMessage.Append(string.Format("<a href='http://trac54/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}'>Reject</a>", spd.noSPD, "ga", "claim")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Jika link di atas tidak dapat diklik, copy dan gunakan URL dibawah ini di browser: "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Approve : http://trac54/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}", spd.noSPD, "ga", "claim")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Reject : http://trac54/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}", spd.noSPD, "ga", "claim")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Apabila Bapak/ Ibu berada di luar kantor bisa menggunakan link dibawah ini "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<a href='http://118.97.80.12/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}'>Approve</a>", spd.noSPD, "ga", "claim")); emailMessage.Append(" "); emailMessage.Append("|"); emailMessage.Append(" "); emailMessage.Append(string.Format("<a href='http://118.97.80.12/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}'>Reject</a>", spd.noSPD, "ga", "claim")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Jika link di atas tidak dapat diklik, copy dan gunakan URL dibawah ini di browser: "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Approve : http://118.97.80.12/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}", spd.noSPD, "ga", "claim")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Reject : http://118.97.80.12/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}", spd.noSPD, "ga", "claim")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<b style='color: red;'>Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); } else if ((spd.status.Split('-')[0] == "17") && To == "finance") { string mailAddress = string.Empty; string NamaLengkap = string.Empty; foreach (var item in FinanceAsal) { mailAddress += item.email.Trim() + ","; NamaLengkap += item.namaLengkap + "/"; } mailAddress = mailAddress.Remove(mailAddress.Length - 1); NamaLengkap = NamaLengkap.Remove(NamaLengkap.Length - 1); email.Subject = "Approval Claim " + spd.noSPD + "-" + spd.namaLengkap; email.To.Add(mailAddress); email.Bcc.Add("*****@*****.**"); emailMessage.Append(string.Format("Kepada Yth, ")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0}", NamaLengkap)); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Status Request SPD Bapak/Ibu {0} <b>Sudah Di-Approve GA</b> dengan rincian sebagai berikut : ", spd.namaLengkap, spd.status.Split('-')[1])); emailMessage.Append("<br />"); Content = ContentBodymail(Content, spd, claim, kar); emailMessage.Append(Content); emailMessage.Append("Apabila Bapak/ Ibu berada di kantor bisa menggunakan link dibawah ini untuk melakukan approve/reject Request Claim SPD tersebut"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<a href='http://trac54/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}'>Approve</a>", spd.noSPD, "finance", "claim")); emailMessage.Append(" "); emailMessage.Append("|"); emailMessage.Append(" "); emailMessage.Append(string.Format("<a href='http://trac54/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}'>Reject</a>", spd.noSPD, "finance", "claim")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Jika link di atas tidak dapat diklik, copy dan gunakan URL dibawah ini di browser: "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Approve : http://trac54/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}", spd.noSPD, "finance", "claim")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Reject : http://trac54/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}", spd.noSPD, "finance", "claim")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Apabila Bapak/ Ibu berada di luar kantor bisa menggunakan link dibawah ini "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<a href='http://118.97.80.12/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}'>Approve</a>", spd.noSPD, "finance", "claim")); emailMessage.Append(" "); emailMessage.Append("|"); emailMessage.Append(" "); emailMessage.Append(string.Format("<a href='http://118.97.80.12/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}'>Reject</a>", spd.noSPD, "finance", "claim")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append("Jika link di atas tidak dapat diklik, copy dan gunakan URL dibawah ini di browser: "); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Approve : http://118.97.80.12/SPD/approvalSPD.ashx?conf=approve&nospd={0}&subject={1}&type={2}", spd.noSPD, "finance", "claim")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Reject : http://118.97.80.12/SPD/approvalSPD.ashx?conf=reject&nospd={0}&subject={1}&type={2}", spd.noSPD, "finance", "claim")); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<b style='color: red;'>Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); } else if ((spd.status.Split('-')[0] == "26") && To == "kasir") { string mailAddress = string.Empty; string NamaLengkap = string.Empty; foreach (var item in KasirAsal) { mailAddress += item.email.Trim() + ","; NamaLengkap += item.namaLengkap + "/"; } mailAddress = mailAddress.Remove(mailAddress.Length - 1); NamaLengkap = NamaLengkap.Remove(NamaLengkap.Length - 1); email.Subject = "Approval Claim " + spd.noSPD + "-" + spd.namaLengkap; email.To.Add(mailAddress); email.Bcc.Add("*****@*****.**"); emailMessage.Append(string.Format("Kepada Yth, ")); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Bapak/Ibu {0}", NamaLengkap)); emailMessage.Append("<br />"); emailMessage.Append("<br />"); emailMessage.Append(string.Format("Status Request SPD Bapak/Ibu {0} <b>Sudah Di-Approve Finance</b> dengan rincian sebagai berikut : ", spd.namaLengkap, spd.status.Split('-')[1])); emailMessage.Append("<br />"); Content = ContentBodymail(Content, spd, claim, kar); emailMessage.Append(Content); emailMessage.Append("Terima kasih."); emailMessage.Append("<br />"); emailMessage.Append(string.Format("<b style='color: red;'>Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); } } #region Unused //else if ((spd.status.Split('-')[0] == "17") && To == "GA") //{ // email.Subject = "Informasi Claim"; // //next to do // //email.To.Add(Atasan.email); // emailMessage.Append(string.Format("Kepada Yth, ")); // emailMessage.Append("<br />"); // emailMessage.Append(string.Format("Bapak/Ibu {0}", Atasan.namaLengkap)); // emailMessage.Append("<br />"); // emailMessage.Append("<br />"); // emailMessage.Append(string.Format("Status Request SPD Bapak/Ibu {0} Sudah Di-Approve atasan dengan rincian sebagai berikut : ", spd.namaLengkap, spd.status.Split('-')[1])); // emailMessage.Append("<br />"); // Content = ContentBodymail(Content, spd, null); // emailMessage.Append(Content); // emailMessage.Append("Terima kasih."); // emailMessage.Append("<br />"); // emailMessage.Append(string.Format("<b style='color: red;'>Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); //} //else if ((spd.status.Split('-')[0] == "20") && To == "GA") //{ // email.Subject = "Informasi Claim"; // //next to do // //email.To.Add(Atasan.email); // emailMessage.Append(string.Format("Kepada Yth, ")); // emailMessage.Append("<br />"); // emailMessage.Append(string.Format("Bapak/Ibu {0}", Atasan.namaLengkap)); // emailMessage.Append("<br />"); // emailMessage.Append("<br />"); // emailMessage.Append(string.Format("Status Request SPD Bapak/Ibu {0} Sudah Di-Approve atasan dengan rincian sebagai berikut : ", spd.namaLengkap, spd.status.Split('-')[1])); // emailMessage.Append("<br />"); // Content = ContentBodymail(Content, spd, null); // emailMessage.Append(Content); // emailMessage.Append("Terima kasih."); // emailMessage.Append("<br />"); // emailMessage.Append(string.Format("<b style='color: red;'>Catatan : E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini </b>")); //} #endregion email.From = new System.Net.Mail.MailAddress("*****@*****.**"); email.Priority = System.Net.Mail.MailPriority.High; email.Body = emailMessage.ToString(); email.IsBodyHtml = true; System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient(); smtp.Send(email); }
//add by martha protected void btncari_Click(object sender, EventArgs e) { string paramField = DropDownList1.Text.Trim() == "--Select--" ? "" : DropDownList1.Text.Trim(); string a = DropDownList1.SelectedValue; if (a == "No") { using (var ctx = new dsSPDDataContext()) { string filter = !string.IsNullOrEmpty(txtcari.Text.Trim()) ? "noSPD" : string.Empty; string param = txtcari.Text; var data = ctx.sp_GetApprovalSPDAtasanLangsung(karyawan.nrp, filter, param).ToList(); gvViewSPD.DataSource = data; gvViewSPD.DataBind(); } } else if (a == "Nama") { using (var ctx = new dsSPDDataContext()) { string filter = !string.IsNullOrEmpty(txtcari.Text.Trim()) ? "namaLengkap" : string.Empty; string param = txtcari.Text; var data = ctx.sp_GetApprovalSPDAtasanLangsung(karyawan.nrp, filter, param).ToList(); gvViewSPD.DataSource = data; gvViewSPD.DataBind(); } } else if (a == "BPHUM") { using (var ctx = new dsSPDDataContext()) { string filter = !string.IsNullOrEmpty(txtcari.Text.Trim()) ? "BPHUM" : string.Empty; string param = txtcari.Text; var data = ctx.sp_GetApprovalSPDAtasanLangsung(karyawan.nrp, filter, param).ToList(); gvViewSPD.DataSource = data; gvViewSPD.DataBind(); } } else if (a == "ErrorBPHUM") { using (var ctx = new dsSPDDataContext()) { string filter = !string.IsNullOrEmpty(txtcari.Text.Trim()) ? "ErrorBPHUM" : string.Empty; string param = txtcari.Text; var data = ctx.sp_GetApprovalSPDAtasanLangsung(karyawan.nrp, filter, param).ToList(); gvViewSPD.DataSource = data; gvViewSPD.DataBind(); } } else { using (var ctx = new dsSPDDataContext()) { var data = ctx.sp_GetApprovalSPDAtasanLangsung(karyawan.nrp, string.Empty, string.Empty).ToList(); gvViewSPD.DataSource = data; gvViewSPD.DataBind(); } } }
protected void btnSave_Click(object sender, EventArgs e) { using (var ctx = new dsSPDDataContext()) { List <string> errorMessageHidden = new List <string>(); trSPD spd = ctx.trSPDs.FirstOrDefault(o => o.noSPD == hiddenSPD.Value); if (spd == null) { errorMessageHidden.Add("Data SPD tidak ditemukan"); } if (string.IsNullOrEmpty(hiddenNrpAtasan.Value)) { errorMessageHidden.Add("Data approval atasan tidak ditemukan"); } trClaim claim = ctx.trClaims.FirstOrDefault(o => o.noSPD == spd.noSPD); if (claim != null) { claim.ApprovedAtasanBy = spd.trClaim.ApprovedAtasanBy; claim.ApprovedGABy = spd.trClaim.ApprovedGABy; claim.ApprovedFinanceBy = spd.trClaim.ApprovedFinanceBy; claim.isApprovedAtasan = spd.trClaim.isApprovedAtasan; claim.isApprovedAtasanDate = spd.trClaim.isApprovedAtasanDate; claim.isApprovedFinance = spd.trClaim.isApprovedFinance; claim.isApprovedFinanceDate = spd.trClaim.isApprovedFinanceDate; claim.isApprovedGA = spd.trClaim.isApprovedGA; claim.isApprovedGADate = spd.trClaim.isApprovedGADate; claim.isCancel = spd.trClaim.isCancel; claim.isCancelDate = spd.trClaim.isCancelDate; claim.isSubmit = spd.trClaim.isSubmit; claim.isSubmitDate = spd.trClaim.isSubmitDate; claim.status = spd.trClaim.status; } if (errorMessageHidden.Count == 0 && claim == null) { claim = new trClaim(); claim.noSPD = hiddenSPD.Value; claim.dibuatOleh = karyawan.nrp; claim.dibuatTanggal = DateTime.Now; claim.status = "Saved"; claim.nrpAtasan = hiddenNrpAtasan.Value; ctx.trClaims.InsertOnSubmit(claim); } // convert ke integer var kursInt = Convert.ToInt32(txtKurs.Text); var uangMakan = Convert.ToInt32(UangMakan.Text); var uangSaku = Convert.ToInt32(UangSaku.Text); var tiket = Convert.ToInt32(Tiket.Text); var hotel = Convert.ToInt32(Hotel.Text); var laundry = Convert.ToInt32(Laundry.Text); var komunikasi = Convert.ToInt32(Komunikasi.Text); var airPortTax = Convert.ToInt32(AirPortTax.Text); var bbm = Convert.ToInt32(BBM.Text); var tol = Convert.ToInt32(Tol.Text); var taxi = Convert.ToInt32(Taxi.Text); var parkir = Convert.ToInt32(Parkir.Text); var tunjanganKejauhan = Convert.ToInt32(Tunjangankejauhan.Text);//9 oktober 2018 var biayaLainlain = Convert.ToInt32(BiayaLainlain.Text); var total = uangMakan + uangSaku + tiket + hotel + laundry + komunikasi + airPortTax + bbm + tol + taxi + parkir + tunjanganKejauhan + biayaLainlain; var uangMuka = Convert.ToInt64(UangMuka.Text); claim.biayaMakan = uangMakan; claim.uangSaku = uangSaku; claim.tiket = tiket; claim.hotel = hotel; claim.BBM = bbm; claim.tol = tol; claim.taxi = taxi; claim.airportTax = airPortTax; claim.laundry = laundry; claim.parkir = parkir; claim.komunikasi = komunikasi; claim.UangTunjanganKejauhan = tunjanganKejauhan; // 9 oktober 2018 claim.ketLainLain = txtKeteranganBiayaLainlain.Text; claim.biayaLainLain = biayaLainlain; claim.total = total; claim.kurs = kursInt; claim.diubahOleh = karyawan.nrp; claim.diubahTanggal = DateTime.Now; spd.uangMuka = uangMuka.ToString(); if (ifga(karyawan.nrp)) { spd.costCenter = DdlCostCenter.SelectedValue; } //update 26 september 2018 claim.uangSaku_cek = cbUangSaku.Checked; claim.hotelTanpaPenginapan_cek = cbHotelTanpaPenginapan.Checked;// claim.tiket_cek = cbTiket.Checked; claim.hotel_cek = cbHotel.Checked; claim.laundry_cek = cbLaundry.Checked; claim.komunikasi_cek = cbKomunikasi.Checked; claim.airportTax_cek = cbAirPortTax.Checked; claim.BBM_cek = cbBBM.Checked; claim.tol_cek = cbTol.Checked; claim.taxi_cek = cbTaxi.Checked; claim.parkir_cek = cbParkir.Checked; string rgPattern = "[\\\\\\/:\\*\\?\"\'<>|]"; Regex objRegEx = new Regex(rgPattern); if (fuDoc.HasFile) { string uploadDirbpkb = spd.noSPD + "_1_" + System.IO.Path.GetFileName(fuDoc.PostedFile.FileName); string strBaseLocation = Server.MapPath("Attach") + "\\" + objRegEx.Replace(uploadDirbpkb, ""); fuDoc.PostedFile.SaveAs(strBaseLocation); string nama = objRegEx.Replace(uploadDirbpkb, ""); claim.urlBoardingPass = nama; } if (fuDoc1.HasFile) { string uploadDirbpkb1 = spd.noSPD + "_2_" + System.IO.Path.GetFileName(fuDoc1.PostedFile.FileName); string strBaseLocation1 = Server.MapPath("Attach") + "\\" + objRegEx.Replace(uploadDirbpkb1, ""); fuDoc1.PostedFile.SaveAs(strBaseLocation1); string nama1 = objRegEx.Replace(uploadDirbpkb1, ""); claim.urlBoardingPass1 = nama1; } try { ctx.SubmitChanges(); } catch (Exception ex) { errorMessageHidden.Add("Gagal save claim|" + ex.Message.ToString()); errorMessageHidden.Add(ex.Message); } finally { pnlSuccess.Visible = true; pnlError.Visible = false; lblSuccess.Text += "Claim Berhasil di Save" + Environment.NewLine; if (ifga(karyawan.nrp)) { lblSuccess.Text += "Jika submit diclick (GA), maka proses approval akan diulang dari awal."; } btnSave.Enabled = false; btnReset.Disabled = true; //ian 2015-04-10 if (claim != null) { if (claim.isSubmit == true) { btnSubmit.Enabled = false; } if (claim.isSubmit == null) { btnSubmit.Enabled = true; } } else { btnSubmit.Enabled = true; } //end if (ifga(karyawan.nrp)) { if (claim.uangSaku_cek == true || claim.tiket_cek == true || claim.hotel_cek == true || claim.laundry_cek == true || claim.komunikasi_cek == true || claim.airportTax_cek == true || claim.BBM_cek == true || claim.tol_cek == true || claim.taxi_cek == true || claim.parkir_cek == true) { msKaryawan kary = new msKaryawan(); if (spd.nrp == "99999999") { kary.EMail = spd.email; kary.nrp = spd.nrp; kary.namaLengkap = spd.namaLengkap; kary.golongan = "III"; kary.Job = spd.jabatan; kary.posisi = spd.jabatan; kary.coCd = "1"; kary.kodePSubArea = "1"; kary.kodePA = "1"; } else { kary = (from kar in ctx.msKaryawans where kar.nrp == spd.nrp select kar).First(); } classSpd oSpd = new classSpd(); oSpd.sendMailClaim(claim, kary, spd); } } } if (errorMessageHidden.Count() > 0) { errorMessage.DataSource = errorMessageHidden; errorMessage.DataBind(); pnlError.Visible = true; pnlSuccess.Visible = false; btnSubmit.Enabled = false; } } }
protected void Page_Load(object sender, EventArgs e) { if (Session["IDLogin"] == null || Session["noSPD"] == null) { Response.Redirect("frmHome.aspx"); } strID = (string)Session["IDLogin"]; karyawan = oSPD.getKaryawan(strID); Session["nrpLogin"] = karyawan.nrp; if (string.IsNullOrEmpty(karyawan.nrp)) { Response.Redirect("frmHome.aspx"); } using (var ctx = new dsSPDDataContext()) { var spd = ctx.trSPDs.FirstOrDefault(o => o.noSPD == Session["noSPD"].ToString()); var spdApprovals = ctx.ApprovalStatus .Where(m => m.NoSPD == spd.noSPD) .OrderBy(m => m.IndexLevel); var spdApproval = new ApprovalStatus(); foreach (var approval in spdApprovals) { var msKaryawan = ctx.msKaryawans .Where(m => m.nrp == approval.NrpApproval) .Where(m => m.statusKaryawan == "Active") .FirstOrDefault(); if (msKaryawan != null) { spdApproval = approval; break; } } if (spdApproval == null) { lblEmpty.Text += "Data approval tidak ditemukan ," + Environment.NewLine; } if (spd == null) { lblEmpty.Text += "Data tidak ditemukan ," + Environment.NewLine; } else { if (spd.isApproved != true) { lblEmpty.Text += "Spd rejected ," + Environment.NewLine; } if (spd.isCancel == true) { lblEmpty.Text += "Spd Canceled ," + Environment.NewLine; } } if (string.IsNullOrEmpty(lblEmpty.Text)) { lblEmpty.Visible = false; DetailSPD.Visible = true; if (!IsPostBack) { switch (userType(karyawan.nrp)) { case 17: // GA PnlCostCenter.Visible = true; break; default: break; } hiddenSPD.Value = spd.noSPD; hiddenNrpAtasan.Value = spdApproval.NrpApproval; isLuarNegeri.Checked = false; kurs.Visible = false; HideResult(false); // kalo tujuan keluar negeri result dalam rupiah dan juga input kurs dimunculin, // input kurs default nilainya 1, karena akan dikalikan untuk hasil yang akan di entri ke database if (spd.Tujuan.ToLower().Contains("luar negeri")) { isLuarNegeri.Checked = true; kurs.Visible = true; HideResult(true); } GenerateContent(spd); } } else { lblEmpty.Visible = true; DetailSPD.Visible = false; } } }
protected void gvList_Sorting(object sender, GridViewSortEventArgs e) { string sortDir = string.Empty; if (Session["Sort"] == null) { sortDir = "DESC"; } else if (Session["Sort"].ToString() == "ASC") { sortDir = "DESC"; } else { sortDir = "ASC"; } Session["Sort"] = sortDir; Session["SortCol"] = e.SortExpression; //string Ses = Session["dtbl"].ToString(); string SortCol = Session["SortCol"].ToString(); string paramField = DropDownList2.Text.Trim() == "--Select--" ? "" : DropDownList2.Text.Trim(); //string a = DropDownList1.SelectedValue; if (paramField == "" && SortCol == "" && sortDir == "") { using (var ctx = new dsSPDDataContext()) { var data = (from p in ctx.trSPDs let u = ctx.msKaryawans.Select(x => x.nrp) where u.Contains(p.nrp) && p.nrp.Trim() == karyawan.nrp select new { noSPD = p.noSPD, nrp = p.nrp, namaLengkap = p.namaLengkap, tujuan = p.companyCodeTujuan != null ? p.companyCodeTujuan + " - " + p.personelAreaTujuan + " - " + p.pSubAreaTujuan : p.tempatTujuanLain, Keperluan = p.ketKeperluan != null ? p.msKeperluan.keperluan : p.ketKeperluan, tglBerangkat = p.tglBerangkat, tglKembali = p.tglKembali, isCancel = p.isCancel, status = p.status, isApproved = p.isApproved, tglExpired = p.tglExpired }).OrderByDescending(o => o.noSPD).OrderByDescending(o => o.tglBerangkat).ToList(); gvList.DataSource = data; gvList.DataBind(); } } else if ((paramField != "" && SortCol != "" && sortDir != "")) { using (var ctx = new dsSPDDataContext()) { var data = (from p in ctx.trSPDs let u = ctx.msKaryawans.Select(x => x.nrp) where u.Contains(p.nrp) select new { noSPD = p.noSPD, nrp = p.nrp, namaLengkap = p.namaLengkap, tujuan = p.companyCodeTujuan != null ? p.companyCodeTujuan + " - " + p.personelAreaTujuan + " - " + p.pSubAreaTujuan : p.tempatTujuanLain, Keperluan = p.ketKeperluan != null ? p.msKeperluan.keperluan : p.ketKeperluan, tglBerangkat = p.tglBerangkat, tglKembali = p.tglKembali, isCancel = p.isCancel, status = p.status, tglExpired = p.tglExpired }).OrderBy(o => SortCol + "" + sortDir).ToList(); string Ses = DropDownList2.SelectedValue; if (Ses == "No") { string paramValue = txtcari1.Text; data = data.Where(o => o.noSPD.Contains(paramValue)).ToList(); gvList.DataSource = data; gvList.DataBind(); } else if (Ses == "Nama") { string paramValue = txtcari1.Text; data = data.Where(o => o.namaLengkap.Contains(paramValue)).ToList(); gvList.DataSource = data; gvList.DataBind(); } else if (Ses == "Status") { string paramValue = ddlstatus1.SelectedValue; data = data.Where(o => o.status.Contains(paramValue)).ToList(); gvList.DataSource = data; gvList.DataBind(); } else if (Ses == "TglBerangkat") { string paramValueawal = txtTglBerangkatAwal1.Text; var Dateawal = Convert.ToDateTime(paramValueawal); string paramValueakhir = txtTglBerangkatAkhir1.Text; var Dateakhir = Convert.ToDateTime(paramValueakhir); data = data.Where(o => o.tglBerangkat.CompareTo(Dateawal) >= 0 && o.tglBerangkat.CompareTo(Dateakhir) <= 0).ToList(); gvList.DataSource = data; gvList.DataBind(); } } } else if ((paramField == "" && SortCol != "" && sortDir != "")) { using (var ctx = new dsSPDDataContext()) { var data = (from p in ctx.trSPDs let u = ctx.msKaryawans.Select(x => x.nrp) where u.Contains(p.nrp) && p.nrp.Trim() == karyawan.nrp select new { noSPD = p.noSPD, nrp = p.nrp, namaLengkap = p.namaLengkap, tujuan = p.companyCodeTujuan != null ? p.companyCodeTujuan + " - " + p.personelAreaTujuan + " - " + p.pSubAreaTujuan : p.tempatTujuanLain, Keperluan = p.ketKeperluan != null ? p.msKeperluan.keperluan : p.ketKeperluan, tglBerangkat = p.tglBerangkat, tglKembali = p.tglKembali, isCancel = p.isCancel, status = p.status, tglExpired = p.tglExpired }).OrderBy(o => SortCol + "" + sortDir).ToList(); gvList.DataSource = data; gvList.DataBind(); } } }
private void ubahStatusClaim(string strNoSpd, string stat, string subject, HttpContext ctx) { string role = string.Empty, Approver = string.Empty; dsSPDDataContext data = new dsSPDDataContext(); bool sending = false; trSPD oSpd = (from spd in data.trSPDs where spd.noSPD == strNoSpd select spd).First(); trClaim oClaim = (from spd in data.trClaims where spd.noSPD == strNoSpd select spd).First(); msKaryawan kary = new msKaryawan(); if (oSpd.nrp != "99999999") { kary = (from kar in data.msKaryawans where kar.nrp == oSpd.nrp select kar).FirstOrDefault(); } else { kary.EMail = oSpd.email; kary.nrp = oSpd.nrp; kary.namaLengkap = oSpd.namaLengkap; kary.golongan = "III"; kary.Job = oSpd.jabatan; kary.posisi = oSpd.jabatan; kary.coCd = "1"; kary.kodePSubArea = "1"; kary.kodePA = "1"; } if (subject.ToLower().Trim() == "atasan") { if (stat.ToLower().Trim() == "approve") { if (oSpd.status.Split('-')[0] == "11") { oClaim.status = "16-Claim Approve (Atasan)"; oSpd.status = "16-Claim Approve (Atasan)"; ctx.Response.Write("Berhasil di approve"); sending = true; } else { ctx.Response.Write("Claim sudah berhasil Di approve sebelumnya"); sending = false; } } else { if (oSpd.status.Split('-')[0] == "11") { oClaim.status = "14-Claim Tolak (Atasan)"; oSpd.status = "14-Claim Tolak (Atasan)"; ctx.Response.Write("Berhasil di reject"); sending = true; } else { ctx.Response.Write("Claim sudah berhasil ditolak sebelumnya"); sending = false; } } role = "1"; Approver = oSpd.nrpAtasan; } else if (subject.ToLower().Trim() == "ga") { if (stat.ToLower().Trim() == "approve") { if (oSpd.status.Split('-')[0] == "16") { oClaim.status = "17-Claim Approve (GA)"; oSpd.status = "17-Claim Approve (GA)"; ctx.Response.Write("Berhasil di approve"); sending = true; } else { ctx.Response.Write("Claim sudah berhasil di-approve sebelumnya"); sending = false; } } else { if (oSpd.status.Split('-')[0] == "16") { oClaim.status = "15-Claim Tolak (GA)"; oSpd.status = "15-Claim Tolak (GA)"; ctx.Response.Write("Berhasil di reject"); sending = true; } else { ctx.Response.Write("Claim sudah berhasil di-reject sebelumnya"); sending = false; } } role = "17"; Approver = oSpd.nrpAtasan; } else if (subject.ToLower().Trim() == "finance") { if (stat.ToLower().Trim() == "approve") { if (oSpd.status.Split('-')[0] == "17") { oClaim.status = "26-Finance Approve"; oSpd.status = "26-Finance Approve"; ctx.Response.Write("Berhasil di approve"); sending = true; } else { ctx.Response.Write("Claim sudah berhasil di-Approve sebelumnya"); sending = false; } } else { if (oSpd.status.Split('-')[0] == "17") { oClaim.status = "27-Finance Tolak"; oSpd.status = "27-Finance Tolak"; ctx.Response.Write("Berhasil di reject"); sending = true; } else { ctx.Response.Write("Claim sudah berhasil di-reject sebelumnya"); sending = false; } } role = "19"; Approver = oSpd.nrpAtasan; } else if (subject.ToLower().Trim() == "kasir") { if (oSpd.status.Split('-')[0] == "26") { oClaim.status = "20-Claim Close"; oSpd.status = "20-Claim Close"; ctx.Response.Write("Berhasil di Close"); sending = true; } else { ctx.Response.Write("Claim sudah berhasil di-Close sebelumnya"); sending = false; } role = "20"; Approver = oSpd.nrpAtasan; } //data.SubmitChanges(); if (sending) { classSpd oClassSPD = new classSpd(); trApprovalHistory ah = new trApprovalHistory(); ah.noSPD = strNoSpd; ah.idRole = role; ah.statusApproval = oSpd.status; ah.nrpApprover = Approver; ah.approvalDatetime = DateTime.Now; data.trApprovalHistories.InsertOnSubmit(ah); data.SubmitChanges(); switch (oSpd.status.Split('-')[0]) { case "2": oClassSPD.sendMail(oSpd, "Atasan", kary); break; case "3": oClassSPD.sendMail(oSpd, "Pembuat", kary); oClassSPD.sendMail(oSpd, "GA", kary); oClassSPD.sendMail(oSpd, "Tujuan", kary); break; case "6": oClassSPD.sendMail(oSpd, "Pembuat", kary); oClassSPD.sendMail(oSpd, "GA", kary); oClassSPD.sendMail(oSpd, "Tujuan", kary); break; case "8": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "9": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "12": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "13": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "14": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "16": oClassSPD.sendMail(oSpd, "GA", kary); oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "15": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "17": oClassSPD.sendMail(oSpd, "finance", kary); oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "27": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "26": //oClassSPD.sendMail(oSpd, "kasir", kary); oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "20": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; } } data.Dispose(); }
protected void btnSimpan_Click(object sender, EventArgs e) { dsSPDDataContext dss = new dsSPDDataContext(); string mode = "add"; mode = hfmode.Value.ToString(); if (mode == "add") { msGolonganPlafon cst = (from k in dss.msGolonganPlafons where k.id.ToString().Trim() == hdnRoleID.Value select k).FirstOrDefault(); if (cst == null) { msGolonganPlafon role = new msGolonganPlafon(); role.jenisSPD = ddlJenisSPD.SelectedValue.ToString(); role.wilayah = ddlWilayah.SelectedValue.ToString(); role.golongan = ddlGolongan.SelectedValue.ToString(); role.idPlafon = Convert.ToInt32(ddlPlafon.SelectedValue.ToString()); role.harga = Convert.ToInt32(txtHarga.Text); role.deskripsi = txtNrp.Text.Trim(); role.status = cmbUser.SelectedValue.ToString() == "AKTIF" ? "aktif" : "tidak aktif"; role.dibuatOleh = userLoginID; role.dibuatTanggal = DateTime.Now; role.diubahOleh = userLoginID; role.diubahTanggal = DateTime.Now; dss.msGolonganPlafons.InsertOnSubmit(role); dss.SubmitChanges(); dss.Dispose(); //clear_form(); notif.Text = "Data berhasil disimpan"; //fillGV(""); } else { notif.Text = "Data sudah terdaftar"; } } ////mode edit gadipake else if (mode == "edit") { msGolonganPlafon cst = (from k in dss.msGolonganPlafons where k.id.ToString().Trim() == hdnRoleID.Value select k).FirstOrDefault(); cst.id = Convert.ToInt32(hdnRoleID.Value); cst.jenisSPD = ddlJenisSPD.SelectedValue.ToString(); cst.wilayah = ddlWilayah.SelectedValue.ToString(); cst.golongan = ddlGolongan.SelectedValue.ToString(); cst.idPlafon = Convert.ToInt32(ddlPlafon.SelectedValue.ToString()); cst.harga = Convert.ToInt32(txtHarga.Text); cst.deskripsi = txtNrp.Text.Trim(); cst.diubahOleh = userLoginID; cst.diubahTanggal = DateTime.Now; cst.status = cmbUser.SelectedValue.ToString() == "AKTIF" ? "aktif" : "tidak aktif"; dss.SubmitChanges(); dss.Dispose(); notif.Text = "Data berhasil disimpan"; //} } fillGV(txtFilterName.Text.Trim()); }
public static void sendEmailNew( string nrpApproval, string subject, string tamplate, trSPD spd, string claimApprove, string statusClaim, string urltarget, string indexLevel) { using (dsSPDDataContext ctx = new dsSPDDataContext()) { //informasi approver var approval = ctx.msKaryawans.FirstOrDefault(o => o.nrp == nrpApproval); //informasi requestor var karyawan = ctx.msKaryawans.FirstOrDefault(o => o.nrp == spd.nrp); var informasiApproval = ctx.ApprovalStatus.Where(o => o.NoSPD == spd.noSPD); string trtd = string.Empty; foreach (var item in informasiApproval.OrderBy(o => o.IndexLevel)) { string statusApp = "Belum diapprove"; if (item.Status != null) { if (item.Status.Value == true) { statusApp = "Approved"; } else { statusApp = "Rejected"; } } ; var modifiedDate = item.ModifiedDate != null?item.ModifiedDate.Value.ToString("dd MMMM yyyy HH:mm") : "-"; trtd += "<tr>" + "<td>" + item.IndexLevel.ToString() + "</td>" + "<td>" + item.ApprovalRule.Deskripsi + "</td>" + "<td>" + item.Nama + "</td>" + "<td>" + modifiedDate + "</td>" + "<td>" + statusApp + "</td>" + "</tr>"; } ; var tamplatesSPD = "<table><tr><th>No</th><th colspan='3' style='text-align:center;'>Detail Data</th><th>Status</th></tr>" + trtd + "</table>"; EspdEmail espdEmail = new EspdEmail(); //encrypt nrp espdEmail.nCrypt = Encrypto.Encrypt(nrpApproval); //encrypt email string toAddress = ""; if (spd.nrp.Equals("99999999")) { espdEmail.eCrypt = Encrypto.Encrypt(string.IsNullOrEmpty(spd.email) ? "" : spd.email); if (tamplate.ToLower().Contains("informasi") || tamplate.ToLower().Contains("notifexpired")) { toAddress = string.IsNullOrEmpty(spd.email) ? "" : spd.email; } else { toAddress = approval.EMail; } } // // else { espdEmail.eCrypt = Encrypto.Encrypt(approval.EMail); toAddress = approval.EMail; } //encrypt nospd espdEmail.sCrypt = Encrypto.Encrypt(spd.noSPD); espdEmail.NoSPD = spd.noSPD; espdEmail.approverName = approval.namaLengkap; espdEmail.spdRequester = spd.namaLengkap; espdEmail.nrpRequester = spd.nrp; espdEmail.statusName = (string.IsNullOrEmpty(statusClaim) == true ? spd.status : statusClaim); espdEmail.noHp = spd.NoHP; espdEmail.golongan = spd.idGolongan; espdEmail.jabatan = spd.jabatan; espdEmail.organisasiUnit = karyawan.organisasiUnit; espdEmail.companyCode = karyawan.companyCode; espdEmail.personalArea = karyawan.personelArea; espdEmail.personelSubArea = karyawan.pSubArea; espdEmail.costCenterPembebanan = spd.costCenter; espdEmail.tempatTujuan = !string.IsNullOrEmpty(spd.tempatTujuanLain) ? spd.Tujuan + " - " + spd.tempatTujuanLain : spd.Tujuan + " - " + spd.companyCodeTujuan + " - " + spd.personelAreaTujuan + " - " + spd.pSubAreaTujuan; espdEmail.keperluan = spd.msKeperluan.keperluan + " - " + spd.ketKeperluan; espdEmail.tanggalBerangkat = spd.tglBerangkat.ToString("dd MMMM yyyy"); espdEmail.jamBerangkat = spd.jamBerangkat; espdEmail.menitBerangkat = spd.menitBerangkat; espdEmail.tanggalKembali = spd.tglKembali.ToString("dd MMMM yyyy"); espdEmail.jamKembali = spd.jamKembali; espdEmail.menitKembali = spd.menitKembali; espdEmail.angkutan = spd.idAngkutan != null ? spd.msAngkutan.nama : spd.angkutanLain; espdEmail.hotel = spd.penginapan; espdEmail.spdStatusList = tamplatesSPD; espdEmail.claimApprove = claimApprove; espdEmail.alasan = spd.Alasan; string sqlFormattedDate = spd.tglExpired.HasValue ? spd.tglExpired.Value.ToString("dd MMMM yyyy") : "<not available>"; espdEmail.tglExpired = sqlFormattedDate; espdEmail.uangMuka = spd.uangMuka; espdEmail.BPHUM = spd.BPHUM; try { TimeSpan Jumlahhari = spd.tglKembali - spd.tglBerangkat; TimeSpan tambahan = TimeSpan.FromDays(1); Jumlahhari += tambahan; espdEmail.totalDays = Jumlahhari.Days.ToString(); } catch (Exception) { espdEmail.totalDays = "Undetected"; } if (urltarget.ToLower().Contains("claim")) { var dc = ctx.trClaims.FirstOrDefault(o => o.noSPD == spd.noSPD); #region claim var uangmuka = (string.IsNullOrEmpty(spd.uangMuka) ? 0 : int.Parse(spd.uangMuka)); espdEmail.CbiayaMakan = dc.biayaMakan.ToString("#,###"); espdEmail.CuangSaku = dc.uangSaku.ToString("#,###"); espdEmail.Ctiket = dc.tiket.ToString("#,###"); espdEmail.Chotel = dc.hotel.ToString("#,###"); espdEmail.CBBM = dc.BBM.ToString("#,###"); espdEmail.Ctol = dc.tol.ToString("#,###"); espdEmail.Ctaxi = dc.taxi.ToString("#,###"); espdEmail.CairportTax = dc.airportTax.ToString("#,###"); espdEmail.Claundry = dc.laundry.ToString("#,###"); espdEmail.Cparkir = dc.parkir.ToString("#,###"); espdEmail.Ckomunikasi = dc.komunikasi != null?dc.komunikasi.Value.ToString("#,###") : ""; espdEmail.CbiayaLainLain = dc.biayaLainLain.ToString("#,###"); espdEmail.CtotalClaim = dc.total.ToString("#,###"); espdEmail.CuangMuka = uangmuka.ToString("#,###"); espdEmail.Cpenyelesaian = (dc.total - uangmuka).ToString("#,###"); espdEmail.CtotalClaim = dc.total.ToString("#,###"); espdEmail.CBPHClaim = dc.BPHClaim; #endregion } string urlSource = "?nCrypt=" + espdEmail.nCrypt + "&eCrypt=" + espdEmail.eCrypt + "&sCrypt=" + espdEmail.sCrypt + "&ClaimApprove=" + espdEmail.claimApprove + "&index=" + indexLevel + "&Action="; string urlAction = "http://trac39/SPD/" + urltarget + ".ashx" + urlSource; string urlActionExternal = "http://118.97.80.12/SPD/" + urltarget + ".ashx" + urlSource; espdEmail.DetailURL = "http://118.97.80.12/SPD/" + "newFormRequestDetail.aspx?encrypt=" + espdEmail.sCrypt; espdEmail.DetailClaimURL = "http://118.97.80.12/SPD/" + "newFormRequestDetailClaim.aspx?encrypt=" + espdEmail.sCrypt; espdEmail.ApproveUrl = urlAction + Encrypto.Encrypt("approve"); espdEmail.RejectUrl = urlAction + Encrypto.Encrypt("reject"); espdEmail.ApproveUrlExternal = urlActionExternal + Encrypto.Encrypt("approve"); espdEmail.RejectUrlExternal = urlActionExternal + Encrypto.Encrypt("reject"); //send to requestor and approval string body = EmailCore.PrepareMailBodyWith(tamplate, espdEmail); //cc string ccAddress = ""; if (toAddress.ToLower() == "*****@*****.**") { ccAddress = "[email protected],[email protected],[email protected]"; } if (toAddress.ToLower() == "*****@*****.**") { ccAddress = "*****@*****.**"; } if (toAddress.ToLower() == "*****@*****.**") { ccAddress = "[email protected],[email protected]"; } if (toAddress.ToLower() == "*****@*****.**") { ccAddress = "*****@*****.**"; } //for date 16-Maret-2015 till 20-Maret-2015 //for date 20-April-2015 till 25-April-2015 //for date 18-Mei-2015 till 22-Mei-2015 //for date 19-September-2015 till the end // if (toAddress.ToLower() == "*****@*****.**") // { // // //toAddress = "*****@*****.**"; // toAddress = "*****@*****.**"; //} string bccAddress = ""; Helper hp = new Helper(); if (indexLevel.Contains("1")) { bccAddress = "[email protected],"; DataSet dsCheckBcc = hp.wsEmail("spd"); if (dsCheckBcc.Tables[0].Rows.Count > 0) { DataRow drCheckBcc = dsCheckBcc.Tables[0].Rows[0]; DataView dvCheckBcc = new DataView(dsCheckBcc.Tables[0]); for (int i = 0; i < dvCheckBcc.Count; i++) { bccAddress += drCheckBcc.Table.Rows[i][0].ToString(); bccAddress += ","; } bccAddress = bccAddress.Remove(bccAddress.Length - 1); } } else if (statusClaim.Contains("Menunggu approval atasan")) { bccAddress = "[email protected],"; DataSet dsCheckBcc = hp.wsEmail("claim"); if (dsCheckBcc.Tables[0].Rows.Count > 0) { DataRow drCheckBcc = dsCheckBcc.Tables[0].Rows[0]; DataView dvCheckBcc = new DataView(dsCheckBcc.Tables[0]); for (int i = 0; i < dvCheckBcc.Count; i++) { bccAddress += drCheckBcc.Table.Rows[i][0].ToString(); bccAddress += ","; } bccAddress = bccAddress.Remove(bccAddress.Length - 1); } } else { bccAddress = "*****@*****.**"; } //for production try TO DO //EmailCore.SendMail(toAddress, ccAddress, bccAddress, subject, body); //end for production } }
protected void gvDirect_PageIndexChanging(object sender, GridViewPageEventArgs e) { string paramField = DropDownList1.Text.Trim() == "--Select--" ? "" : DropDownList1.Text.Trim(); string a = DropDownList1.SelectedValue; using (var ctx = new dsSPDDataContext()) { var data = (from p in ctx.trSPDs let u = ctx.msUsers.Where(x => x.roleId == 14 || x.roleId == 13).Select(x => x.nrp) where u.Contains(p.nrp) select new { noSPD = p.noSPD, nrp = p.nrp, namaLengkap = p.namaLengkap, tujuan = p.companyCodeTujuan != null ? p.companyCodeTujuan + " - " + p.personelAreaTujuan + " - " + p.pSubAreaTujuan : p.tempatTujuanLain, keperluan = p.idKeperluan != null ? p.msKeperluan.keperluan : p.keperluanLain, tglBerangkat = p.tglBerangkat, tglKembali = p.tglKembali, isCancel = p.isCancel, status = p.status, tglExpired = p.tglExpired }).OrderByDescending(o => o.noSPD).OrderByDescending(o => o.tglBerangkat).ToList(); if (a == "No") { string paramValue = txtcari.Text; data = data.Where(o => o.noSPD.Contains(paramValue)).ToList(); gvDirect.PageIndex = e.NewPageIndex; gvDirect.DataSource = data; gvDirect.DataBind(); } else if (a == "Nama") { string paramValue = txtcari.Text; data = data.Where(o => o.namaLengkap.Contains(paramValue)).ToList(); gvDirect.PageIndex = e.NewPageIndex; gvDirect.DataSource = data; gvDirect.DataBind(); } else if (a == "Status") { string paramValue = ddlstatus.SelectedValue; data = data.Where(o => o.status.Contains(paramValue)).ToList(); gvDirect.PageIndex = e.NewPageIndex; gvDirect.DataSource = data; gvDirect.DataBind(); } else if (a == "TglBerangkat") { if (txtTglBerangkatAwal.Text != string.Empty && txtTglBerangkatAkhir.Text != string.Empty) { string paramValueawal = txtTglBerangkatAwal.Text; var Dateawal = Convert.ToDateTime(paramValueawal); string paramValueakhir = txtTglBerangkatAkhir.Text; var Dateakhir = Convert.ToDateTime(paramValueakhir); data = data.Where(o => o.tglBerangkat.CompareTo(Dateawal) >= 0 && o.tglBerangkat.CompareTo(Dateakhir) <= 0).ToList(); gvDirect.PageIndex = e.NewPageIndex; gvDirect.DataSource = data; gvDirect.DataBind(); } else { string paramValue = txtcari.Text; data = data.Where(o => o.namaLengkap.Contains(paramValue)).ToList(); gvDirect.PageIndex = e.NewPageIndex; gvDirect.DataSource = data; gvDirect.DataBind(); } } else { gvDirect.PageIndex = e.NewPageIndex; bindDirect(); } } }
public void Execute(IJobExecutionContext context) { using (var ctx = new dsSPDDataContext()) { // ngga bis diembed ke template jadi manual var spd = (from p in ctx.trSPDs where (p.tglBerangkat.Date - DateTime.Now.Date).Days >= 0 && p.isSubmit == true && p.isCancel == null && p.noSPD NotFinit select p).ToList(); var nospd = (from p in spd select p.noSPD).Distinct(); var approval = (from p in ctx.ApprovalStatus where nospd.Contains(p.NoSPD) && p.Status == null group p by p.NoSPD into groups select groups.OrderBy(p => p.IndexLevel).First()).ToList(); var nrpApproval = (from p in approval group p by p.NrpApproval into groups select groups.OrderBy(p => p.IndexLevel).First().NrpApproval).Distinct().ToList(); foreach (var item in nrpApproval) { var nama = approval.FirstOrDefault(o => o.NrpApproval == item).Nama; var datatoSend = (from p in approval join o in spd on p.NoSPD equals o.noSPD where p.NrpApproval == item select new Expired { NoSPD = o.noSPD, Nama = o.namaLengkap, TglBerangkat = o.tglBerangkat, Keperluan = o.msKeperluan.keperluan + " - " + o.ketKeperluan + " - " + o.keperluanLain }).ToList(); if (datatoSend.Count != 0 || datatoSend != null) { using (var smtpClient = new SmtpClient()) { string data = string.Empty; string trtd = string.Empty; foreach (var detail in datatoSend.OrderBy(o => o.TglBerangkat.Date)) { string urlExternal = "http://118.97.80.12/SPD/" + "newFormRequestDetail.aspx?encrypt=" + Encrypto.Encrypt(detail.NoSPD); string urlInternal = "http://trac39/SPD/" + "newFormRequestDetail.aspx?encrypt=" + Encrypto.Encrypt(detail.NoSPD); trtd += "<tr style='border:1px solid #eee;'>" + "<td style='border:1px solid #dedede;padding:5px;'>" + detail.NoSPD + "</td>" + "<td style='border:1px solid #dedede;padding:5px;'>" + detail.Nama + "</td>" + "<td style='border:1px solid #dedede;padding:5px;'>" + detail.Keperluan + "</td>" + "<td style='border:1px solid #dedede;padding:5px;'>" + detail.TglBerangkat.ToString("dd MMMM yyyy") + " <b>(H-" + (detail.TglBerangkat.Date - DateTime.Now.Date).Days.ToString() + ")</b></td>" + "<td style='border:1px solid #dedede;padding:5px;'><a href='" + urlInternal + "'>Internal</a> | <a href='" + urlExternal + "'>External</a></td>" + "</tr>"; } data += "<h4 style='color: #1b809e; border-bottom: 1px solid #eee;'>Kepada Yth " + nama + "</h4>" + "<br/>Berikut adalah data Approval yang masih outstanding per tanggal " + DateTime.Now.ToString("dd MMMM yyyy") + "<br/><br/>" + "<table style='border-color: #eee;border-collapse: collapse;border-width: 1px;color: #333333;'>" + "<tr style='border-width: 1px;padding: 8px;border-style: solid;border-color: #eee;background-color: #dedede;'>" + "<th style='border:1px solid #fff;padding:5px;'>No</th>" + "<th style='border:1px solid #fff;padding:5px;'>Nama</th>" + "<th style='border:1px solid #fff;padding:5px;'>Keperluan</th>" + "<th style='border:1px solid #fff;padding:5px;'>Tgl Berangkat</th>" + "<th style='border:1px solid #fff;padding:5px;'>Link</th>" + "</tr>" + trtd + "</table><br/><br/><br/>" + "Terima kasih. <br/>" + "Catatan : Internal (jika berada di kantor) dan External (jika berada di luar kantor)<br/>" + "<span style='color: #FF0000'><b>E-mail ini dikirim otomatis oleh Sistem Pembuatan SPD.Tidak perlu membalas E-mail ini</b></span>"; SmtpSection section = (SmtpSection)ConfigurationManager.GetSection("system.net/mailSettings/smtp"); MailMessage message = new MailMessage { Sender = new MailAddress(section.From), // on Behave of When From differs From = new MailAddress(section.From), Subject = "Claim SPD dengan nomor" + nospd + "Expired ", Body = data, IsBodyHtml = true, }; var getEmail = approval.FirstOrDefault(o => o.NrpApproval == item); string email = string.Empty; email = getEmail != null ? getEmail.Email : string.Empty; if (!string.IsNullOrEmpty(email)) { if (email.ToLower() == "*****@*****.**") { email = "*****@*****.**"; } message.To.Add(email); message.Bcc.Add("*****@*****.**"); //message.To.Add("*****@*****.**"); //message.To.Add("*****@*****.**"); smtpClient.Send(message); } } } } } }
void bindFindList() { dsSPDDataContext data = new dsSPDDataContext(); try { if (txtTglSpd.Text == "" || txtTglSpd == null) { var query = (from spd in data.trSPDs where spd.noSPD.Contains(txtNoSpd.Text) && spd.namaLengkap.Contains(txtNama.Text) && spd.nrp.Contains(txtNrp.Text) && (spd.statusUM.Equals(DropDownList1.SelectedValue) || spd.statusUM.Equals(null)) select new { noSPD = spd.noSPD, nrp = spd.nrp, namaLengkap = spd.namaLengkap, uangMuka = spd.uangMuka, tglPenyelesaian = spd.tglPenyelesaian, status = spd.statusUM //spd.status }).OrderByDescending(spd => spd.noSPD).ToList(); grvList.DataSource = query; grvList.DataBind(); if (!query.Any()) { Panel5.Visible = true; } else { Panel5.Visible = true; } data.Dispose(); } else { DateTime str = Convert.ToDateTime(txtTglSpd.Text); var query = (from spd in data.trSPDs where spd.noSPD.Contains(txtNoSpd.Text) && spd.namaLengkap.Contains(txtNama.Text) && spd.nrp.Contains(txtNrp.Text) && (spd.statusUM.Equals(DropDownList1.SelectedValue) || spd.statusUM.Equals("")) && (spd.tglPenyelesaian >= str && spd.tglPenyelesaian <= str) select new { noSPD = spd.noSPD, nrp = spd.nrp, namaLengkap = spd.namaLengkap, uangMuka = spd.uangMuka, tglPenyelesaian = spd.tglPenyelesaian, status = spd.statusUM }).OrderByDescending(spd => spd.noSPD).ToList(); grvList.DataSource = query; grvList.DataBind(); if (!query.Any()) { Panel5.Visible = true; } else { Panel5.Visible = true; } data.Dispose(); } } catch (Exception ex) { //Response.Write(ex.Message); } }
protected void GenerateContent(trSPD spd) { using (var ctx = new dsSPDDataContext()) { // set label info spd lblnoSPD.Text = spd.noSPD; lblnamaLengkap.Text = spd.namaLengkap; lblGolongan.Text = spd.idGolongan; lblJabatan.Text = spd.jabatan; lblTglBerangkat.Text = spd.tglBerangkat.ToString("dd MMMM yyyy"); lblJamberangkat.Text = spd.jamBerangkat; lblMenitBerangkat.Text = spd.menitBerangkat; lblTglKembali.Text = spd.tglKembali.ToString("dd MMMM yyyy"); lblJamKembali.Text = spd.jamKembali; lblMenitKembali.Text = spd.menitKembali; lblKeperluan.Text = spd.msKeperluan.keperluan; lblKetKeperluan.Text = spd.ketKeperluan; lblKeperluanLain.Text = spd.keperluanLain; // get informasi plafon buat spd ini var GolonganPlafon = ctx.msGolonganPlafons.Where( q => q.golongan.Equals(spd.idGolongan) && q.jenisSPD.ToLower().Equals(spd.Tujuan) && q.wilayah.ToLower().Equals(spd.WilayahTujuan)); // itung jumlah hari TimeSpan Jumlahhari = new TimeSpan(); Jumlahhari = spd.tglKembali - spd.tglBerangkat; TimeSpan tambahan = TimeSpan.FromDays(1); Jumlahhari += tambahan; lblJumlahHari.Text = Jumlahhari.Days.ToString(); DdlCostCenter.SelectedValue = spd.costCenter; // kalo nginep, dan bukan nginep dihotel enable input nilai hotel by golongan plafon if (Jumlahhari.Days > 1 && spd.isHotel != null) { if (!spd.isHotel.Value || !spd.penginapan.ToLower().Equals("disediakan")) { var UangHotel = GolonganPlafon.FirstOrDefault(o => o.idPlafon == 6) != null?GolonganPlafon.FirstOrDefault(o => o.idPlafon == 6).harga.Value *Jumlahhari.Days : 0; txtHotel.Enabled = true; txtHotel.Text = UangHotel.ToString(); } } else { txtHotel.Enabled = false; } // informasi uang makan dari plafon var UangMakan = GolonganPlafon.FirstOrDefault(o => o.idPlafon == 1); txtUangMakan.Text = (UangMakan != null ? UangMakan.harga.Value * Jumlahhari.Days : 0).ToString(); lblUangMakan.Text = (UangMakan != null ? UangMakan.harga.Value : 0).ToString(); lblHariUangMakan.Text = lblJumlahHari.Text; // informasi uang saku dari plafon var UangSaku = GolonganPlafon.FirstOrDefault(o => o.idPlafon == 2); txtUangSaku.Text = (UangSaku != null ? UangSaku.harga.Value * Jumlahhari.Days : 0).ToString(); lblUangSaku.Text = (UangSaku != null ? UangSaku.harga.Value : 0).ToString(); lblHariUangSaku.Text = lblJumlahHari.Text; // informasi laundri var Laundy = GolonganPlafon.FirstOrDefault(o => o.idPlafon == 7); //LaundryMaxHidden.Value = "0"; // bisa londri minimal 3 malam nginap if (Laundy != null && Jumlahhari.Days > 2) { //LaundryMaxHidden.Value = (Laundy.harga.Value * (Jumlahhari.Days - 2)).ToString(); laundryActual.Value = (Laundy.deskripsi != null ? Laundy.deskripsi : ""); } // kalo tiket dicarikan disabled input tiket if (spd.tiket.ToLower().Contains("dicarikan")) { txtTiket.ReadOnly = true; } // informasi uang muka, kenapa dikasih hidden, ada kebutuhan untuk menghitung jika luarnegeri UangMuka.Text = (string.IsNullOrEmpty(spd.uangMuka) == true ? "0" : spd.uangMuka); //informasi harga tunjangan kejauhan //int tunjanganKejauhan = spd.HargaTunjangan == null ? 0 : spd.HargaTunjangan.Value; //Tunjangankejauhan.Text = tunjanganKejauhan.ToString(); if (spd.HardshipID != null) { SqlCommand cmd = new SqlCommand("Select Harga from Hardship where Id = " + spd.HardshipID + "", new SqlConnection(ConfigurationManager.AppSettings["SPDConnectionString1"])); cmd.Connection.Open(); SqlDataReader Reader; Reader = cmd.ExecuteReader(); while (Reader.Read()) { Tunjangankejauhan.Text = Reader["Harga"].ToString(); } } // eksekusi ui var claim = ctx.trClaims.FirstOrDefault(o => o.noSPD == spd.noSPD); if (claim != null) { BindClaim(claim); cbUangSaku.Checked = claim.uangSaku_cek != null ? claim.uangSaku_cek.Value : false; //28 september 2018 cbHotelTanpaPenginapan.Checked = claim.hotelTanpaPenginapan_cek != null ? claim.hotelTanpaPenginapan_cek.Value : false; //28 september 2018 cbTiket.Checked = claim.tiket_cek != null ? claim.tiket_cek.Value : false; cbHotel.Checked = claim.hotel_cek != null ? claim.hotel_cek.Value : false; cbLaundry.Checked = claim.laundry_cek != null ? claim.laundry_cek.Value : false; cbKomunikasi.Checked = claim.komunikasi_cek != null ? claim.komunikasi_cek.Value : false; cbAirPortTax.Checked = claim.airportTax_cek != null ? claim.airportTax_cek.Value : false; cbBBM.Checked = claim.BBM_cek != null ? claim.BBM_cek.Value : false; cbTol.Checked = claim.tol_cek != null ? claim.tol_cek.Value : false; cbTaxi.Checked = claim.taxi_cek != null ? claim.taxi_cek.Value : false; cbParkir.Checked = claim.parkir_cek != null ? claim.parkir_cek.Value : false; } if (ifga(karyawan.nrp)) { txtUangMakan.ReadOnly = false; txtUangSaku.ReadOnly = false; txtTiket.ReadOnly = false; txtHotel.ReadOnly = false; txtUangMuka.ReadOnly = false; txtUangMakan.Enabled = true; txtUangSaku.Enabled = true; txtTiket.Enabled = true; txtHotel.Enabled = true; txtUangMuka.Enabled = true; txtTunjanganKejauhan.ReadOnly = false; txtTunjanganKejauhan.Enabled = true; cbUangSaku.Visible = true; //26 september 2018 cbHotelTanpaPenginapan.Visible = true; //26 september 2018 cbTiket.Visible = true; cbHotel.Visible = true; cbLaundry.Visible = true; cbKomunikasi.Visible = true; cbAirPortTax.Visible = true; cbBBM.Visible = true; cbTol.Visible = true; cbTaxi.Visible = true; cbParkir.Visible = true; } } GeneralFunction(null, null); }
private void ubahStatusSPD(string strNoSpd, string stat, string subject, HttpContext ctx) { string role = string.Empty, Approver = string.Empty; bool sending = false; dsSPDDataContext data = new dsSPDDataContext(); trSPD oSpd = (from spd in data.trSPDs where spd.noSPD == strNoSpd select spd).FirstOrDefault(); msKaryawan kary = new msKaryawan(); if (oSpd.nrp != "99999999") { kary = (from kar in data.msKaryawans where kar.nrp == oSpd.nrp select kar).FirstOrDefault(); } //Ditambahkan oleh martha else if (oSpd.nrp == "2950") { kary.EMail = "*****@*****.**"; kary.nrp = oSpd.nrp; kary.namaLengkap = oSpd.namaLengkap; kary.golongan = "III"; kary.Job = oSpd.jabatan; kary.posisi = oSpd.jabatan; kary.coCd = "1"; kary.kodePSubArea = "1"; kary.kodePA = "1"; } else { kary.EMail = oSpd.email; kary.nrp = oSpd.nrp; kary.namaLengkap = oSpd.namaLengkap; kary.golongan = "III"; kary.Job = oSpd.jabatan; kary.posisi = oSpd.jabatan; kary.coCd = "1"; kary.kodePSubArea = "1"; kary.kodePA = "1"; } if (subject.ToLower().Trim() == "atasan") { if (stat.ToLower().Trim() == "approve") { if (oSpd.status.Split('-')[0] == "2") { oSpd.status = "3-Atasan Approve"; ctx.Response.Write("Berhasil di approve"); sending = true; } else { ctx.Response.Write("SPD Sudah Diapprove sebelumnya"); sending = false; } } else { if (oSpd.status.Split('-')[0] == "2") { oSpd.status = "12-SPD Tolak (Atasan)"; ctx.Response.Write("Berhasil di reject"); sending = true; } else { ctx.Response.Write("SPD Sudah di tolak sebelumnya"); sending = false; } } role = "1"; Approver = oSpd.nrpAtasan; } else if (subject.ToLower().Trim() == "tujuan") { if (oSpd.tglBerangkat.Date > DateTime.Now.Date) { ctx.Response.Write("SPD belum bisa approve/reject karena tanggal berangkat harus sesudah atau sama dengan hari ini"); sending = false; return; } if (stat.ToLower().Trim() == "approve") { if (oSpd.status.Split('-')[0] == "3") { oSpd.status = "7-Tempat Tujuan Approve"; ctx.Response.Write("Berhasil di approve"); sending = true; } else { ctx.Response.Write("SPD Sudah Diapprove sebelumnya"); sending = false; } } else { if (oSpd.status.Split('-')[0] == "3") { oSpd.status = "13-SPD Tolak (Tujuan)"; ctx.Response.Write("Berhasil di reject"); sending = true; } else { ctx.Response.Write("SPD sudah ditolak sebelumnya"); sending = false; } } role = "2"; Approver = oSpd.nrpApprovalTujuan; } if (sending) { trApprovalHistory ah = new trApprovalHistory(); ah.noSPD = strNoSpd; ah.idRole = role; ah.statusApproval = oSpd.status; ah.nrpApprover = Approver; ah.approvalDatetime = DateTime.Now; data.trApprovalHistories.InsertOnSubmit(ah); data.SubmitChanges(); classSpd oClassSPD = new classSpd(); switch (oSpd.status.Split('-')[0]) { case "2": oClassSPD.sendMail(oSpd, "Atasan", kary); break; case "3": oClassSPD.sendMail(oSpd, "Pembuat", kary); oClassSPD.sendMail(oSpd, "Tujuan", kary); oClassSPD.sendMail(oSpd, "GA", kary); break; case "6": oClassSPD.sendMail(oSpd, "Pembuat", kary); oClassSPD.sendMail(oSpd, "Tujuan", kary); oClassSPD.sendMail(oSpd, "GA", kary); break; case "7": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "8": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "9": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "12": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; case "13": oClassSPD.sendMail(oSpd, "Pembuat", kary); break; } } data.Dispose(); }
protected void btncari1_Click(object sender, EventArgs e) { string paramField = DropDownList2.Text.Trim() == "--Select--" ? "" : DropDownList2.Text.Trim(); string a = DropDownList2.SelectedValue; using (var ctx = new dsSPDDataContext()) { var data = (from p in ctx.trSPDs let u = ctx.msKaryawans.Select(x => x.nrp) where u.Contains(p.nrp) && p.nrp.Trim() == karyawan.nrp select new { noSPD = p.noSPD, nrp = p.nrp, namaLengkap = p.namaLengkap, tujuan = p.companyCodeTujuan != null ? p.companyCodeTujuan + " - " + p.personelAreaTujuan + " - " + p.pSubAreaTujuan : p.tempatTujuanLain, Keperluan = p.ketKeperluan != null ? p.msKeperluan.keperluan : p.ketKeperluan, tglBerangkat = p.tglBerangkat, tglKembali = p.tglKembali, isCancel = p.isCancel, status = p.status, isApproved = p.isApproved, tglExpired = p.tglExpired }).OrderByDescending(o => o.noSPD).OrderByDescending(o => o.tglBerangkat).ToList(); if (a == "No") { string paramValue = txtcari1.Text; data = data.Where(o => o.noSPD.Contains(paramValue)).ToList(); gvList.DataSource = data; gvList.DataBind(); Session["dtbl"] = "No"; } else if (a == "Nama") { string paramValue = txtcari1.Text; data = data.Where(o => o.namaLengkap.Contains(paramValue)).ToList(); gvList.DataSource = data; gvList.DataBind(); Session["dtbl"] = "Nama"; } else if (a == "Status") { string paramValue = ddlstatus1.SelectedValue; data = data.Where(o => o.status.Contains(paramValue)).ToList(); gvList.DataSource = data; gvList.DataBind(); Session["dtbl"] = "Status"; } else if (a == "TglBerangkat") { if (txtTglBerangkatAwal1.Text != string.Empty && txtTglBerangkatAkhir1.Text != string.Empty) { string paramValueawal = txtTglBerangkatAwal1.Text; var Dateawal = Convert.ToDateTime(paramValueawal); string paramValueakhir = txtTglBerangkatAkhir1.Text; var Dateakhir = Convert.ToDateTime(paramValueakhir); data = data.Where(o => o.tglBerangkat.CompareTo(Dateawal) >= 0 && o.tglBerangkat.CompareTo(Dateakhir) <= 0).ToList(); gvList.DataSource = data; gvList.DataBind(); } else { string paramValue = txtcari1.Text; data = data.Where(o => o.namaLengkap.Contains(paramValue)).ToList(); gvList.DataSource = data; gvList.DataBind(); } } } }