protected void DoEditSubmitPaidGroup(string groupID) { PaidGroup group = new PaidGroup(); // validate data group._paidGroupID = Int32.Parse(groupID); group._name = Request["name"]; StringBuilder sb = new StringBuilder(); sb.Append(Request["bound1"]); sb.Append(":"); sb.Append(Request["rate1"]); sb.Append(";"); sb.Append(Request["bound2"]); sb.Append(":"); sb.Append(Request["rate2"]); sb.Append(";"); sb.Append(Request["bound3"]); sb.Append(":"); sb.Append(Request["rate3"]); sb.Append(";"); sb.Append(Request["bound4"]); sb.Append(":"); sb.Append(Request["rate4"]); sb.Append(";"); sb.Append(Request["bound5"]); sb.Append(":"); sb.Append(Request["rate5"]); sb.Append(";"); sb.Append(Request["bound6"]); sb.Append(":"); sb.Append(Request["rate6"]); sb.Append(";"); sb.Append(Request["bound7"]); sb.Append(":"); sb.Append(Request["rate7"]); sb.Append(";"); sb.Append(Request["bound8"]); sb.Append(":"); sb.Append(Request["rate8"]); sb.Append(";"); sb.Append(Request["bound9"]); sb.Append(":"); sb.Append(Request["rate9"]); sb.Append(";"); sb.Append(Request["bound10"]); sb.Append(":"); sb.Append(Request["rate10"]); group._rawRateInfo = group.BuildRateInfoString(sb.ToString()); group._rateInfo = PaidRateInfo.Parse(group._rawRateInfo); // Save to DB DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); db.Connect(); group.UpdateToDB(db); db.Close(); }
public void DoAddTeacher() { DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); groupList = PaidGroup.LoadListFromDB(db, ""); db.Close(); }
public void DoAddPaidGroup() { DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); groupList = PaidGroup.LoadListFromDB(db, ""); //teacherList = Teacher.LoadListFromDB(db, " WHERE is_active=1 ORDER BY firstname"); db.Close(); }
public void DoAddCourse() { DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); roomList = Room.LoadListFromDBCustom(db, "SELECT r.room_id, r.name, b.branch_name as branch_name FROM room r, branch b WHERE r.branch_id=b.branch_id"); teacherList = Teacher.LoadListFromDB(db, " ORDER BY firstname"); paidGroupList = paidGroupList = PaidGroup.LoadListFromDB(db, " ORDER BY paid_group_id"); db.Close(); }
protected void DoDeletePaidGroup(string groupID) { PaidGroup group = new PaidGroup(); group._paidGroupID = Int32.Parse(groupID); DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); db.Connect(); group.DeleteToDB(db); db.Close(); }
protected void DoRemoveTeacherSubmit(String paidGroupID, String teacherID) { PaidGroup group = new PaidGroup(); group._paidGroupID = Int32.Parse(paidGroupID); // Save to DB DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); db.Connect(); group.RemoveTeacherToDB(db, teacherID); db.Close(); }
public void DoEditPaidGroup(string groupID) { DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); thePaidGroup = new PaidGroup(); if (!thePaidGroup.LoadFromDB(db, "paid_group_id='" + groupID + "'")) { thePaidGroup = null; } teacherList = thePaidGroup.LoadNonMemberTeachers(db); memberList = thePaidGroup.LoadMemberTeachers(db); db.Close(); }
public void DoEditCourse(string courseID) { DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); theCourse = new Course(); if (!theCourse.LoadFromDB(db, "course_id=" + courseID)) { theCourse = null; } roomList = Room.LoadListFromDBCustom(db, "SELECT r.room_id, r.name, b.branch_name as branch_name FROM room r, branch b WHERE r.branch_id=b.branch_id"); teacherList = Teacher.LoadListFromDB(db, " ORDER BY firstname"); paidGroupList = PaidGroup.LoadListFromDB(db, " ORDER BY paid_group_id"); db.Close(); }
public void DoEditTeacher(string teacherID) { DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); //Load GroupList groupList = PaidGroup.LoadListFromDB(db, ""); theTeacher = new Teacher(); if (!theTeacher.LoadFromDB(db, "teacher_id=" + teacherID)) { theTeacher = null; } // List Course History string[,] bgclass = new string[, ] { { "class=\"spec\"", "class=\"td1\"" }, { "class=\"specalt\"", "class=\"alt\"" } }; string query = "SELECT * from course "; query = query + "WHERE teacher_id='"; query = query + teacherID + "' order by start_date desc"; OdbcDataReader reader = db.Query(query); int i = 0; while (reader.Read()) { Course course = Course.CreateForm(reader); outBuf3.Append("<tr>"); outBuf3.Append("<th scope=\"row\" abbr=\"Model\" " + bgclass[i % 2, 0] + " align=center>" + course._startdate.ToString("dd MMM yyyy", ci) + " </th>"); outBuf3.Append("<td " + bgclass[i % 2, 1] + " align=center>" + course._btsCourseID + " </td>"); outBuf3.Append("<td " + bgclass[i % 2, 1] + " align=left>" + course._courseName + " </td>"); outBuf3.Append("<td " + bgclass[i % 2, 1] + " >" + course._cost + " </td>"); outBuf3.Append("</tr>\n"); i++; } db.Close(); }
protected int DoPaidSubmitPayment(string courseID) { string paidCost = Request["paid_cost"]; string receiverTeacherID = Request["receiver_teacher_id"]; AppUser user = (AppUser)Session[SessionVar.USER]; DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); db.Connect(); db.BeginTransaction(IsolationLevel.ReadCommitted); Payment pay = new Payment(); pay.LoadFromDB(db, " course_id=" + courseID); pay.LoadCourse(db); PaidGroup pg = new PaidGroup(); pg.LoadFromDB(db, " paid_group_id=" + pay._course._paidGroupID); // Add history PaymentHistory ph = new PaymentHistory(pay, pg, Int32.Parse(paidCost), Int32.Parse(receiverTeacherID), user); ph.AddToDB(db); // refresh Payment record Payment.UpdatePaymentByCourse(db, Int32.Parse(courseID)); db.Commit(); // find latest payment pay.LoadHistory(db); int latestPaymentID = pay._historyList.Last.Value._paymentID; db.Close(); return(latestPaymentID); }
protected void DoInitPrintReceiptPaymentData(string paymentID) { DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); db.Connect(); PaymentHistory pm = new PaymentHistory(); pm.LoadFromDB(db, " payment_id=" + paymentID); pm.LoadCourse(db); pm._course.LoadTeacher(db); pm._course.LoadPaidGroup(db); // load teacher in this group Teacher[] listTeacher = pm._course._paidGroup.LoadMemberTeachers(db); pm.LoadReceiver(db); // preload all branches Dictionary <int, Branch> branches = Branch.LoadListFromDBAsMap(db, ""); // Load PaymentHistory BEFORE this PaymentHistory[] pmList = PaymentHistory.LoadListFromDB(db, " WHERE course_id='" + pm._courseID + "' and payment_id<='" + pm._paymentID + "' ORDER BY payment_id"); // Construct Teacher List StringBuilder teachTxt = new StringBuilder(); for (int i = 0; i < listTeacher.Length; i++) { string link = "TeacherManage.aspx?actPage=edit&targetID=" + listTeacher[i]._teacherID; teachTxt.Append(listTeacher[i]._firstname + " " + listTeacher[i]._surname + "<br>"); } // Construct Paid history StringBuilder phTxt = new StringBuilder(); for (int i = 0; i < pmList.Length; i++) { PaymentHistory ph = pmList[i]; ph.LoadReceiver(db); ph.LoadUser(db); Branch b = branches[ph._branchID]; string link = "TeacherManage.aspx?actPage=edit&targetID=" + ph._receiverTeacherID; phTxt.AppendLine("<tr><td align=center>" + PaymentHistory.GetPaymentHistoryID(ph._paymentID) + "</td>"); phTxt.AppendLine("<td align=center>" + StringUtil.ConvertYearToEng(ph._paidDate, "yyyy/MM/dd HH:mm:ss ") + "</td>"); phTxt.AppendLine("<td align=center>" + StringUtil.Int2StrComma(ph._paidCost) + "</td>"); phTxt.AppendLine("<td align=center>" + ph._receiverTeacher._firstname + " " + ph._receiverTeacher._surname + "</td>"); phTxt.AppendLine("<td align=center>" + ph._user._firstname + " " + ph._user._surname + "</td>"); phTxt.AppendLine("<td align=center>" + b._branchName + "</td>"); } // User AppUser user = new AppUser(); user.LoadFromDB(db, " username='******'"); // Generate HTML content TextReader reader = new StreamReader(Config.PATH_APP_ROOT + "\\template\\payment_print.htm"); String templateContent = reader.ReadToEnd(); reader.Close(); String htmlContent = String.Format(templateContent , StringUtil.ConvertYearToEng(pm._paidDate, "yyyy/MM/dd HH:mm:ss") , pm._receiverTeacher._firstname + " " + pm._receiverTeacher._surname , pm._course._btsCourseID + " \"" + pm._course._courseName + "\"" , StringUtil.Int2StrComma(pm._paidCost) , pm._course._teacher._firstname + " " + pm._course._teacher._surname , PaidGroup.GetPaidGroupID(pm._course._paidGroup._currentRound) , teachTxt.ToString() , StringUtil.Int2StrComma(pm._sumMaxPayable) , StringUtil.Int2StrComma(pm._sumPaidCost + pm._paidCost) , phTxt.ToString() , user._firstname + " " + user._surname ); outBuf.Append(htmlContent); db.Close(); }
protected void DoViewPayment(string courseID) { DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); db.Connect(); thePayment = new Payment(); thePayment.LoadFromDB(db, " course_id=" + courseID); thePayment.LoadHistory(db); thePayment.LoadCourse(db); Course c = thePayment._course; c.LoadTeacher(db); c.LoadPaidGroup(db); // preload all branches Dictionary <int, Branch> branches = Branch.LoadListFromDBAsMap(db, ""); PaidGroup pg = new PaidGroup(); pg.LoadFromDB(db, " paid_group_id=" + c._paidGroupID); // Load teachers in this group listTeacher = pg.LoadMemberTeachers(db); // Generate HTML content TextReader reader = new StreamReader(Config.PATH_APP_ROOT + "\\template\\payment_view.htm"); String templateContent = reader.ReadToEnd(); reader.Close(); // Construct Teacher List StringBuilder teachTxt = new StringBuilder(); for (int i = 0; i < listTeacher.Length; i++) { string link = "TeacherManage.aspx?actPage=edit&targetID=" + listTeacher[i]._teacherID; teachTxt.Append("<a href=\"" + link + "\" >" + listTeacher[i]._firstname + " " + listTeacher[i]._surname + "</a><br>"); } // Construct RaitInfo List StringBuilder rinfoTxt = new StringBuilder(); for (int i = 0; i < pg._rateInfo.Length; i++) { rinfoTxt.Append("มากกว่า " + StringUtil.Int2StrComma(pg._rateInfo[i]._bound) + " บาท ได้รับ " + pg._rateInfo[i]._percent + " %<br>"); } // Construct Paid history StringBuilder phTxt = new StringBuilder(); foreach (PaymentHistory ph in thePayment._historyList) { ph.LoadReceiver(db); ph.LoadUser(db); Branch b = branches[ph._branchID]; string link = "TeacherManage.aspx?actPage=edit&targetID=" + ph._receiverTeacherID; phTxt.AppendLine("<tr><td align=center>" + PaymentHistory.GetPaymentHistoryID(ph._paymentID) + "</td>"); phTxt.AppendLine("<td align=center>" + StringUtil.ConvertYearToEng(ph._paidDate, "yyyy/MM/dd HH:mm:ss") + "</td>"); phTxt.AppendLine("<td align=center>" + StringUtil.Int2StrComma(ph._paidCost) + "</td>"); phTxt.AppendLine("<td align=center><a href=\"" + link + "\" >" + ph._receiverTeacher._firstname + " " + ph._receiverTeacher._surname + "</a></td>"); phTxt.AppendLine("<td align=center>" + ph._user._firstname + " " + ph._user._surname + "</td>"); phTxt.AppendLine("<td align=center>" + b._branchName + "</td>"); phTxt.AppendLine("<td align=center><a href=\"javascript:doInitPrint(" + ph._paymentID + ")\"><img src=\"" + Config.URL_PIC_SYS + "/view.gif\" border=0></a> </td>"); } String htmlContent = String.Format(templateContent , c._courseName , "<a href=\"TeacherManage.aspx?actPage=edit&targetID=" + c._teacherID + "\" >" + c._teacher._firstname + " " + c._teacher._surname + "</a>" , PaidGroup.GetPaidGroupID(c._paidGroupID) + " " + c._paidGroup._name , teachTxt.ToString() , rinfoTxt.ToString() , StringUtil.Int2StrComma(thePayment._sumAllCost) , StringUtil.Int2StrComma(thePayment._sumMaxPayable) , StringUtil.Int2StrComma(thePayment._sumPaidCost) , StringUtil.Int2StrComma(thePayment._sumMaxPayable - thePayment._sumPaidCost) , phTxt.ToString() ); outBuf.Append(htmlContent); db.Close(); }
protected void DoViewTeacher(string teacherID) { outBuf = new StringBuilder(); DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); theTeacher = new Teacher(); theTeacher.LoadFromDB(db, " teacher_id=" + teacherID); PaidGroup[] memberInGroup = theTeacher.LoadAssosicatedPaidGroup(db); // Query payment // Payment[] pays1 = Payment.LoadListFromDBbyTeacherID(db, teacherID); // Payment[] pays2 = Payment.LoadListFromDBbyTeacherIDInPaidGroup(db, teacherID); db.Close(); // List out all paid group that the teacher is member StringBuilder memberGroupTxt = new StringBuilder(); for (int i = 0; i < memberInGroup.Length; i++) { memberGroupTxt.Append("  " + PaidGroup.GetPaidGroupID(memberInGroup[i]._paidGroupID) + " " + memberInGroup[i]._name + "<br>"); } /* * // Only teach by himself * int sumAllCost = 0; * int sumMaxPayable = 0; * int sumPaidCost = 0; * StringBuilder pay1Txt = new StringBuilder(); * for (int i = 0; i < pays1.Length; i++) * { * sumAllCost += pays1[i]._sumAllCost; * sumMaxPayable += pays1[i]._sumMaxPayable; * sumPaidCost += pays1[i]._sumPaidCost; * string courseTxt = "<a href=\"CourseManage.aspx?actPage=view&targetID=" + pays1[i]._courseID + "\" >" + pays1[i]._btsCourseID + " " + pays1[i]._courseName + "</a>"; * * pay1Txt.AppendLine("<tr>"); * pay1Txt.AppendLine("<td align=left> " + courseTxt + "</td>"); * pay1Txt.AppendLine("<td align=center> " + pays1[i]._courseStartDate.ToString("dd/MM/yyyy", ci) + " - " + pays1[i]._courseEndDate.ToString("dd/MM/yyyy", ci) + "</td>"); * pay1Txt.AppendLine("<td align=center> " + StringUtil.Int2StrComma(pays1[i]._sumAllCost) + "</td>"); * pay1Txt.AppendLine("<td align=center> " + StringUtil.Int2StrComma(pays1[i]._sumMaxPayable) + "</td>"); * pay1Txt.AppendLine("<td align=center> " + StringUtil.Int2StrComma(pays1[i]._sumPaidCost) + "</td>"); * pay1Txt.AppendLine("</tr>"); * } * // Summary * pay1Txt.AppendLine("<tr>"); * pay1Txt.AppendLine("<td align=center colspan=2 > <b>รวม </b></td>"); * pay1Txt.AppendLine("<td align=center><b> " + StringUtil.Int2StrComma(sumAllCost) + "</b></td>"); * pay1Txt.AppendLine("<td align=center><b> " + StringUtil.Int2StrComma(sumMaxPayable) + "</b></td>"); * pay1Txt.AppendLine("<td align=center><b> " + StringUtil.Int2StrComma(sumPaidCost) + "</b></td>"); * pay1Txt.AppendLine("</tr>"); * * // All in paidgroup * int sumAllCost2 = 0; * int sumMaxPayable2 = 0; * int sumPaidCost2 = 0; * StringBuilder pay2Txt = new StringBuilder(); * for (int i = 0; i < pays2.Length; i++) * { * sumAllCost2 += pays2[i]._sumAllCost; * sumMaxPayable2 += pays2[i]._sumMaxPayable; * sumPaidCost2 += pays2[i]._sumPaidCost; * string courseTxt = "<a href=\"CourseManage.aspx?actPage=view&targetID=" + pays2[i]._courseID + "\" >" + pays2[i]._btsCourseID + " " + pays2[i]._courseName + "</a>"; * * pay2Txt.AppendLine("<tr>"); * pay2Txt.AppendLine("<td align=left> " + courseTxt + "</td>"); * pay2Txt.AppendLine("<td align=center> " + pays2[i]._courseStartDate.ToString("dd/MM/yyyy", ci) + " - " + pays2[i]._courseEndDate.ToString("dd/MM/yyyy", ci) + "</td>"); * pay2Txt.AppendLine("<td align=center> " + StringUtil.Int2StrComma(pays2[i]._sumAllCost) + "</td>"); * pay2Txt.AppendLine("<td align=center> " + StringUtil.Int2StrComma(pays2[i]._sumMaxPayable) + "</td>"); * pay2Txt.AppendLine("<td align=center> " + StringUtil.Int2StrComma(pays2[i]._sumPaidCost) + "</td>"); * pay2Txt.AppendLine("</tr>"); * } * // Summary * pay2Txt.AppendLine("<tr>"); * pay2Txt.AppendLine("<td align=center colspan=2 > <b>รวม </b></td>"); * pay2Txt.AppendLine("<td align=center><b> " + StringUtil.Int2StrComma(sumAllCost2) + "</b></td>"); * pay2Txt.AppendLine("<td align=center><b> " + StringUtil.Int2StrComma(sumMaxPayable2) + "</b></td>"); * pay2Txt.AppendLine("<td align=center><b> " + StringUtil.Int2StrComma(sumPaidCost2) + "</b></td>"); * pay2Txt.AppendLine("</tr>"); */ /* * StringBuilder rateTxt = new StringBuilder(); * int currentRate = theTeacher._paidGroup.GetCurrentRate(sumAllCost2); * PaidRateInfo[] rate = theTeacher._paidGroup._rateInfo; * for (int i = 0; i < rate.Length; i++) * { * string bgcolor = ""; * if (currentRate == rate[i]._percent) * { * bgcolor = " bgcolor=\"#FFB148\" "; * } * * rateTxt.AppendLine("<tr>"); * rateTxt.AppendLine("<td align=center " + bgcolor + "> " + StringUtil.Int2StrComma(rate[i]._bound) + " </td>"); * rateTxt.AppendLine("<td align=center " + bgcolor + "> " + rate[i]._percent + "% </td>"); * rateTxt.AppendLine("</tr>"); * } */ TextReader reader = new StreamReader(Config.PATH_APP_ROOT + "\\template\\teacher_view.htm"); String templateContent = reader.ReadToEnd(); reader.Close(); String htmlContent = String.Format(templateContent , Config.URL_PIC_TEACHER + "/" + theTeacher._img , Teacher.GetTeacherID(theTeacher._teacherID) , theTeacher._firstname + " " + theTeacher._surname , theTeacher._subject , Config.URL_PIC_SYS + (theTeacher._sex.Equals("Male") ? "/boy.gif" : "/girl.gif") , theTeacher._birthday.ToString("dd/MM/yyyy", ci) , theTeacher._citizenID , theTeacher._addr , theTeacher._tel , theTeacher._email , memberGroupTxt.ToString() , "" // pay1Txt.ToString() , "" //pay2Txt.ToString() ); outBuf.Append(htmlContent); }
protected void DoListPaymentByTeacher(string teacherID, string searchStr, bool isNewSearch) { DBManager db; db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); db.Connect(); listTeacher = Teacher.LoadListFromDB(db, " WHERE is_active=1 ORDER BY firstname "); if (teacherID == null) { return; } // get Page int pg = 1; if ((!isNewSearch) && (Request["pg"] != null)) { pg = Int32.Parse(Request["pg"]); } string[,] bgclass = new string[, ] { { "class=\"spec\"", "class=\"td1\"", "class=\"td1_grey\"", "class=\"td1_red\"" }, { "class=\"specalt\"", "class=\"alt\"", "class=\"td1_grey\"", "class=\"td1_red\"" } }; string grey = "class=\"thspec_grey\""; string red = "class=\"thspec_red\""; listPayment = new List <Payment>(); AppUser user = (AppUser)Session[SessionVar.USER]; filterPayment = Request["filter_payment"]; if (filterPayment == null) { filterPayment = "0"; // by default } string whereSQL = " pm.course_id=c.course_id AND c.teacher_id=t.teacher_id AND c.room_id = r.room_id "; // only admin can view all payment if (!user.IsAdmin()) { whereSQL = whereSQL + " AND r.branch_id=" + user._branchID; } // filter only payable courses if (filterPayment.Equals("0")) { whereSQL = whereSQL + " AND sum_max_payable<>sum_paid_cost "; } int numRec = db.QueryCount("SELECT Count(*) FROM payment pm, course c, teacher t, room r WHERE " + whereSQL); OdbcDataReader reader = db.Query("SELECT pm.course_id as course_id ,c.bts_course_id as bts_course_id ,c.course_name as course_name, t.paid_group_id as paid_group_id" + ", pm.sum_all_cost as sum_all_cost, pm.sum_max_payable as sum_max_payable, pm.sum_paid_cost as sum_paid_cost " + "FROM payment pm, course c, teacher t, room r WHERE " + whereSQL + " LIMIT " + Config.TBRECORD_PER_PAGE + " OFFSET " + (((pg - 1) * Config.TBRECORD_PER_PAGE))); int i = 0; while (reader.Read()) { Payment payment = Payment.CreateForm(reader); string chbname = "course" + payment._courseID; int sumPayable = payment._sumMaxPayable - payment._sumPaidCost; int n = 1; if (sumPayable == 0) { n = 2; } else if (sumPayable < 0) { n = 3; } string bgcolor = (sumPayable == 0) ? grey : red; outBuf.Append("<tr>"); outBuf.Append("<th scope=\"row\" abbr=\"Model\" " + (sumPayable > 0 ? bgclass[i % 2, 0] : bgcolor) + ">" + payment._btsCourseID + "</th>"); outBuf.Append("<td " + bgclass[i % 2, n] + " align=center ><input type=\"checkbox\" name=\"" + chbname + "\" id=\"" + chbname + "\" />" + "</td>"); outBuf.Append("<td " + bgclass[i % 2, n] + " ><a href=\"CourseManage.aspx?actPage=view&targetID=" + payment._courseID + "\" >" + payment._courseName + "</a></td>"); outBuf.Append("<td " + bgclass[i % 2, n] + " align=center >" + PaidGroup.GetPaidGroupID(payment._paidGroupID) + "</td>"); outBuf.Append("<td " + bgclass[i % 2, n] + " align=center ><b>" + StringUtil.Int2StrComma(payment._sumAllCost) + "</b></td>"); outBuf.Append("<td " + bgclass[i % 2, n] + " align=center ><b><font color=blue>" + StringUtil.Int2StrComma(payment._sumMaxPayable) + "</font></b></td>"); outBuf.Append("<td " + bgclass[i % 2, n] + " align=center ><b><font color=red>" + StringUtil.Int2StrComma(payment._sumPaidCost) + "</font></b></td>"); outBuf.Append("<td " + bgclass[i % 2, n] + " align=center ><b><font color=green>" + StringUtil.Int2StrComma(sumPayable) + "</font></b></td>"); /* outBuf.Append("<td " + bgclass[i % 2, n] + " align=center>" + payment._lastPaidDate.ToString("dd/MM/yyyy HH:mm", ci) + " </td>"); */ outBuf.Append("<td " + bgclass[i % 2, n] + " align=center> "); outBuf.Append("<a href=\"javascript:setVal('actPage','view');setVal('targetID','" + payment._courseID + "');doSubmit()\"><img src=\"img/sys/view.gif\" border=0 alt=\"View detail\"></a> "); // outBuf.Append("<a href=\"javascript:if (confirm('Delete this payment?')) { setVal('actPage','delete');setVal('targetID','" + payment._paymentID + "');doSubmit(); }\"><img src=\"img/sys/delete.gif\" border=0 alt=\"Delete\"></a> "); outBuf.Append("</td>"); outBuf.Append("</tr>\n"); i++; } db.Close(); // calculate max page int maxpg = numRec / Config.TBRECORD_PER_PAGE; if (maxpg < 1) { maxpg = 1; } else if (numRec % Config.TBRECORD_PER_PAGE > 0) { maxpg++; } // Generate Page Navi HTML outBuf2.Append("<b>Page</b> "); for (i = 1; i <= maxpg; i++) { if (i == pg) { outBuf2.Append("<b>" + i + "</b> "); } else { outBuf2.Append(String.Format("<a href=\"PaymentManage.aspx?pg={0}&filter_payment={1}&qsearch={1}\">{0}</a> ", i.ToString(), filterPayment, searchStr)); } } // <a href="#">1</a> <b>2</b> <a href="#">3</a> <a href="#">4</a> }
protected void DoListPaidGroup(string searchStr) { // get Page int pg = 1; if (Request["pg"] != null) { pg = Int32.Parse(Request["pg"]); } string[,] bgclass = new string[, ] { { "class=\"spec\"", "class=\"td1\"" }, { "class=\"specalt\"", "class=\"alt\"" } }; DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); int numRec = db.QueryCount("SELECT Count(*) FROM paid_group " + GetQSearchSQL(searchStr)); OdbcDataReader reader = db.Query("SELECT * FROM paid_group " + GetQSearchSQL(searchStr) + " LIMIT " + Config.TBRECORD_PER_PAGE + " OFFSET " + (((pg - 1) * Config.TBRECORD_PER_PAGE))); int i = 0; while (reader.Read()) { PaidGroup group = BTS.Entity.PaidGroup.CreateForm(reader); // teacher member list Teacher[] memberList = group.LoadMemberTeachers(db); StringBuilder memberTxt = new StringBuilder(); for (int j = 0; j < memberList.Length; j++) { String txt = Teacher.GetTeacherID(memberList[j]._teacherID) + " " + memberList[j]._firstname + " " + memberList[j]._surname; memberTxt.Append("<a href=\"TeacherManage.aspx?actPage=view&targetID=" + memberList[j]._teacherID + "\">" + txt + "<br>"); } outBuf.Append("<tr>"); outBuf.Append("<th scope=\"row\" abbr=\"Model\" " + bgclass[i % 2, 0] + ">" + PaidGroup.GetPaidGroupID(group._paidGroupID) + "</th>"); outBuf.Append("<td " + bgclass[i % 2, 1] + " >" + group._name + " </td>"); outBuf.Append("<td " + bgclass[i % 2, 1] + " >" + group._rawRateInfo + " </td>"); outBuf.Append("<td " + bgclass[i % 2, 1] + " align=left >" + memberTxt + " </td>"); outBuf.Append("<td " + bgclass[i % 2, 1] + " align=center> "); outBuf.Append("<a href=\"javascript:setVal('actPage','edit');setVal('targetID','" + group._paidGroupID + "');doSubmit()\"><img src=\"img/sys/edit.gif\" border=0 alt=\"Edit\"></a> "); outBuf.Append("<a href=\"javascript:if (confirm('Delete this user?')) { setVal('actPage','delete');setVal('targetID','" + group._paidGroupID + "');doSubmit(); }\"><img src=\"img/sys/delete.gif\" border=0 alt=\"Delete\"></a> "); outBuf.Append("</td>"); outBuf.Append("</tr>\n"); i++; } db.Close(); // calculate max page int maxpg = numRec / Config.TBRECORD_PER_PAGE; if (maxpg < 1) { maxpg = 1; } else if (maxpg % Config.TBRECORD_PER_PAGE > 0) { maxpg++; } // Generate Page Navi HTML outBuf2.Append("<b>Page</b> "); for (i = 1; i <= maxpg; i++) { if (i == pg) { outBuf2.Append("<b>" + i + "</b> "); } else { outBuf2.Append(String.Format("<a href=\"PaidGroupManage.aspx?pg={0}\">{1}</a> ", i.ToString(), i.ToString())); } } // <a href="#">1</a> <b>2</b> <a href="#">3</a> <a href="#">4</a> }
protected void DoViewCourse(string courseID) { DBManager db = new MySQLDBManager(Config.DB_SERVER, Config.DB_NAME, Config.DB_USER, Config.DB_PASSWORD, Config.DB_CHAR_ENC); theCourse = new Course(); theCourse.LoadFromDB(db, " course_id=" + courseID); theCourse.LoadTeacher(db); theCourse.LoadPaidGroup(db); db.Close(); TextReader reader = new StreamReader(Config.PATH_APP_ROOT + "\\template\\course_view.htm"); String templateContent = reader.ReadToEnd(); reader.Close(); String[,] students = LoadStudentList(db, courseID); StringBuilder stdTxt = new StringBuilder(); int numStudent = (students.Length / 9); int numCancel = 0; for (int i = 0; i < numStudent; i++) { stdTxt.Append("<tr>"); for (int j = 0; j < 9; j++) { // edit registration if (j == 8) { stdTxt.Append("<td>  <a href=\"javascript:jumpToEditRegistration(" + students[i, j] + ")\"><img src=\"img/sys/edit.gif\" border=\"0\" alt=\"Edit\"></a></td>"); continue; } stdTxt.Append("<td>  " + students[i, j] + "</td>"); if ((j == 6) && (students[i, j].Equals("ยกเลิก"))) { numCancel++; } } stdTxt.Append("</tr>"); } String courseScheduleDetail = "-"; if (theCourse._courseType == "คอร์สสด") { courseScheduleDetail = theCourse._startdate.ToString("dd/MM/yyyy", ci) + " - " + theCourse._enddate.ToString("dd/MM/yyyy", ci) + "<br>" + theCourse._dayOfWeek + " " + theCourse._opentime; } String htmlContent = String.Format(templateContent , Config.URL_PIC_COURSE + "/" + theCourse._img , theCourse._btsCourseID + " " + theCourse._courseName , theCourse._shortName , theCourse._courseType , theCourse._category , courseScheduleDetail , theCourse._teacher._firstname + " " + theCourse._teacher._surname , PaidGroup.GetPaidGroupID(theCourse._paidGroupID) + " " + theCourse._paidGroup._name , StringUtil.Int2StrComma(theCourse._cost) , theCourse._seatLimit.ToString() , theCourse._bankRegisLimit.ToString() , (numStudent - numCancel).ToString() , theCourse._courseDesc , "สมัคร " + numStudent + " คน ยกเลิก " + (numCancel) + " คน คงเหลือ " + (numStudent - numCancel) + " คน" , stdTxt.ToString()); outBuf.Append(htmlContent); }
public void PrintCourseOption(DBManager db) { // validate course filter int a; if ((filterCourseID == null) || (filterCourseID.Length == 0) || (!Int32.TryParse(filterCourseID, out a))) { filterCourseID = "all"; } // load all courses String whereClause = filterCourseID.Equals("all") ? "" : " AND paid_group_id=" + filterCourseID + " "; PaidGroup[] pgroups = PaidGroup.LoadListFromDB(db, " ORDER BY name"); Course[] courses = Course.LoadListFromDB(db, " WHERE is_active=1 " + whereClause + " ORDER BY bts_course_id"); // paint course list fullCost = 0; int numCoursesPerRow = 5; outBuf.Append("<table border=0>"); // print filter courses if (actPage.Equals("add")) { outBuf.Append("<tr><td colspan=\"" + numCoursesPerRow + "\">"); outBuf.Append("แสดงรายการคอร์ส <select name=\"filter_courseid\" id=\"filter_courseid\" onchange=\"doChangeFilterCourse()\">"); outBuf.Append("<option value=\"all\">ทั้งหมด</option>"); foreach (PaidGroup pg in pgroups) { string selected = (filterCourseID.Equals(pg._paidGroupID.ToString())) ? "selected" : ""; outBuf.Append("<option value=\"" + pg._paidGroupID + "\" " + selected + " >" + pg._name + "</option>"); } outBuf.Append("</select>"); outBuf.Append("</td></tr>"); } for (int i = 0; i < courses.Length; i++) { string name = "course" + courses[i]._courseID; string isChecked = ""; string className = " class=\"td2\" "; if ((thePromotion != null) && (thePromotion._courses != null)) { for (int j = 0; j < thePromotion._courses.Length; j++) { if (thePromotion._courses[j]._courseID == courses[i]._courseID) { fullCost += courses[i]._cost; isChecked = " checked "; className = " class=\"td2_2\" "; break; } } } if (i % numCoursesPerRow == 0) { outBuf.Append("<tr>\n"); // outBuf.Append("<th scope=row abbr=Model class=spec>xxx</th>"); } string t = "document.getElementById('" + name + "').checked"; string t2 = t + "=!" + t + ";"; t2 = t2 + " if (document.getElementById('" + name + "').checked) {this.className='td2_2';}"; t2 = t2 + " sumFullCost(); "; string t1 = " if (!" + t + ") {this.className='td2'; }; hideDiv('divdetail');"; outBuf.Append("<td " + className + " onMouseover=\"this.className='td2_2';queryCourseDetail('" + courses[i]._courseID + "')\" onMouseout=\"" + t1 + "\" onclick=\"" + t2 + "\"; return;\" >"); outBuf.Append("<input type=checkbox id=" + name + " name=" + name + " " + isChecked + " onclick=\"" + t + "=!" + t + ";" + "\" ><font class=font01> " + courses[i]._btsCourseID + "</font></td>"); if (i % numCoursesPerRow == numCoursesPerRow - 1) { outBuf.Append("</tr>\n"); } outBuf.Append("<input type=hidden id=cost_" + name + " name=cost_" + name + " value=\"" + courses[i]._cost + "\" >"); } outBuf.Append("</table>"); }