예제 #1
0
        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();
        }
예제 #2
0
        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 + "&nbsp</td>");
                outBuf.Append("<td " + bgclass[i % 2, 1] + "  >" + group._rawRateInfo + "&nbsp</td>");
                outBuf.Append("<td " + bgclass[i % 2, 1] + " align=left >" + memberTxt + "&nbsp</td>");
                outBuf.Append("<td " + bgclass[i % 2, 1] + "  align=center>&nbsp");
                outBuf.Append("<a href=\"javascript:setVal('actPage','edit');setVal('targetID','" + group._paidGroupID + "');doSubmit()\"><img src=\"img/sys/edit.gif\" border=0 alt=\"Edit\"></a>&nbsp");
                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>&nbsp");

                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>
        }
예제 #3
0
        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();
        }