示例#1
0
 def insertNewStudent(self):
     name    = self.text_ctrl_student_name.GetValue()
     gender    = fetch.cmbID(self.choice_gender)
     register_course_id   = fetch.cmbID(self.choice_joining_course)
     registration_status  = self.choice_status.GetCurrentSelection()
     
     sql = "SELECT MAX (student_id) \
              FROM students"
     student_id = fetch.getDig(sql)+1
     try:     dob = self.date_dob.caldate
     except:  dob = 0
         
     if name and register_course_id and registration_status and dob and gender <2:
         sql = "INSERT INTO students (student_id, name, dob, schYr, \
                                      registration_status, register_course_id, gender) \
                              VALUES (%d, '%s', '%s', %d, %d, %d, %d)" % (
                                      student_id, name, dob,  gVar.schYr,
                                      registration_status, register_course_id, gender)
         return sql, []
     
         """
         sql = "INSERT INTO students (student_id, name, dob, schYr, registration_status, register_course_id, gender) \
                            VALUES (?, ?, ?, ?, ?, ?, ?)"
         return sql, (student_id, name, dob,  gVar.schYr, registration_status, register_course_id, gender)"""
         
     else:
         fetch.msg('Fields Name, Course, DOB, registration_status & Gender need to be filled')
         return 'fail', []
 def activityNameAvailable(self, activity_name):
     sql = "SELECT * FROM excul_activities WHERE name = '%s'" % (activity_name,)
     if fetch.getDig(sql):
         fetch.ask("Duplicate course name, please try another")
         return False
         
     else:       
         return True
示例#3
0
文件: SchYr.py 项目: ckSchool/bucky
 def OnAddYear(self, evt):
     if not self.new_year:
         res = fetch.getDig( "SELECT MAX(schYr) FROM schYrs" )
         yid = fetch.nextID('schYrs')
         if res :
             self.new_year = res + 1
             self.choice_schYr.Append(str(self.new_year), yid)
             loadCmb.restore(self.choice_schYr, yid)
     else:
         fetch.msg('A new year has already been added. Save First')
示例#4
0
    def schoolNameAvailable(self, school_name):
        sql = (
            "SELECT id FROM schools \
                WHERE name = %s "
            % (school_name)
        )

        if self.editMode:
            sql += " AND NOT id = %d" % gVar.school_id

        # rint sql
        if fetch.getDig(sql):
            fetch.msg("Duplicate name, please try another")
            return False

        else:
            return True
示例#5
0
    def displayData(self):
        self.student_id = student_id = gVar.student_id
        #return
        #rint"panel_edit_booking : displayData"
        self.clearCtrls()
        
        if student_id == 0:
            self.enableCtrls(True)
            self.button_edit.SetLabelText('Cancel')
            sql = "SELECT MAX (id) FROM students"
            student_id = fetch.getDig(sql)+1
            self.label_ctrl_booking_id.SetLabelText(str(student_id))
            
        else:
            self.button_save.Hide()
            self.button_edit.SetLabelText('Edit')
            self.enableCtrls(False)
            
        loadCmb.courses_forYear(self.choice_joining_course, gVar.schYr)

        self.text_ctrl_student_name.Enable(student_id == 0)
        if student_id:
            
            sql = "SELECT * FROM students WHERE student_id = %d" % int(student_id)
            res = fetch.getOneDict(sql)

            name                 = res['name']
            student_id           = res['student_id']
            gender               = res['gender']
            register_course_id   = res['register_course_id']
            registration_status  = res['reg_status']
            dob                  = res['dob']
            schYr                = res['register_schYr']
  
            self.label_heading.SetLabelText('Editing Booking For:')
            self.label_ctrl_booking_id.SetLabelText(str(student_id))
    
            self.text_ctrl_student_name.SetValue(name)

            if gender:
                self.choice_gender.SetSelection(0)
            else:
                self.choice_gender.SetSelection(1)
            
            self.date_dob.SetValue(dob)
            
            course_id = res['register_course_id']
            loadCmb.restore(self.choice_joining_course, course_id)
            
            #KSekolahPindah = res['KSekolahPindah']
            #loadCmb.restore(self.choice_previous_school, KSekolahPindah)

            #if not registration_status: registration_status = 0
            loadCmb.restore(self.choice_status, registration_status)
            
            sql = "SELECT * \
                     FROM acc_invoices i \
                     JOIN acc_invoice_items ii ON ii.invoice_id = i.id \
                    WHERE i.student_id = %d ORDER BY (ck_ref)" % gVar.student_id
            res = fetch.getAllDict(sql)

            mystr =""
            for r in res: 
                k = r.pop('student_id')
                
                ck_ref = r.pop('ck_ref')
                mystr += '%s : %s \n' % ('ck_ref', ck_ref)
                
                date = r.pop('Tanggal')
                mystr += '%s : %s \n' % ('Date', date)
                
                for key in r:
                    val = r[key]
                    if val: 
                        l = '%s : %s \n' % (key, r[key])
                        mystr += l
                mystr += "\n"    
   
            self.text_ctrl_notes.SetValue(mystr)
            """
            
            self.date_booking_fee            = DateCtrl(self.panel_booking, -1)
            
            self.text_ctrl_booking_receiptNo = wx.TextCtrl(self.panel_booking, -1, "")
            
            self.date_test                   = DateCtrl(self.panel_booking, -1)
            
            self.choice_result_test          = wx.Choice(self.panel_booking, -1, choices=["A: Strong", "B: Good", "C: Medium", "D:Weak", "E:Very Weak"])
            
            self.date_retest                 = DateCtrl(self.panel_booking, -1)
            
            self.choice_result_retest        = wx.Choice(self.panel_booking, -1, choices=["Acceptable", "Not Acceptable"])
            
            self.date_offer_letter_sent      = DateCtrl(self.panel_booking, -1)
            
            self.text_ctrl_offer_ref         = wx.TextCtrl(self.panel_booking, -1, "")
            
            self.date_offer_accepted         = DateCtrl(self.panel_booking, -1)
            
            self.text_ctrl_accept_receiptNo  = wx.TextCtrl(self.panel_booking, -1, "")
            
            self.text_ctrl_notes             = wx.TextCtrl(self.panel_notes, -1, "", style=wx.TE_MULTILINE)"""
            
        else:
            self.enableCtrls()