コード例 #1
0
 def clickedadd(self):
     try:
         self.nextssn = db.child("nextssn").get().val()
         auth.create_user_with_email_and_password(self.eid2.text(),
                                                  self.randomString(8))
         data2 = {
             "email": self.eid2.text(),
             "name": self.name2.text(),
             "address": self.addr2.text(),
             "phone_no": self.phone2.text(),
             "mngr_ssn": self.eidf,
             "pen_req_made": 0,
             "pen_req_rec": 0,
             "casual_bl": 10,
             "priv_bl": 10,
             "sick_bl": 10,
             "wfh_bl": 10
         }
         db.child("users").child(str(self.nextssn)).set(data2)
         self.n.append(str(self.nextssn))
         self.comboBox.addItem(str(self.nextssn))
         self.nextssn = self.nextssn + 1
         auth.send_password_reset_email(self.eid2.text())
         db.update({"nextssn": self.nextssn})
         self.label_2.setText("add successful")
         self.defaulttxt()
     except Exception:
         self.label_2.setText("add failed")
コード例 #2
0
    def clickedsumbit(self) :
        try:
            self.nextlvid=db.child("nextlvid").get().val()
            self.start_datef1=self.sd_2.text()
            self.typef1=self.typelv_cbox.currentText()
            self.total_daysf1=int(self.td_2.text())
            self.balance=self.switch(self.typef1)-self.total_daysf1
        
            if(self.balance>=0):
            
                if(self.typef1=="Casual leave"):
                    self.casual_bl=self.balance
                elif(self.typef1=="Privilege leave"):
                    self.priv_bl=self.balance
                elif(self.typef1=="Work from home"):
                    self.wfh_bl=self.balance
                elif(self.typef1=="Sick leave"):
                    self.sick_bl=self.balance
                else:
                    print("Error ")

                self.pen_req_made1=self.pen_req_made1+1
                self.pen_req_rec1=db.child("users").child(self.mngridf).child("pen_req_rec").get().val()
                self.pen_req_rec1=self.pen_req_rec1+1
                
                
                
                data1 = {
                        "users/"+self.mngridf+"/pen_req_rec":self.pen_req_rec1,
                        "users/"+self.eidf+"/pen_req_made":self.pen_req_made1,
                        "users/"+self.eidf+"/casual_bl": self.casual_bl,            
                        "users/"+self.eidf+"/priv_bl": self.priv_bl,
                        "users/"+self.eidf+"/wfh_bl": self.wfh_bl,
                        "users/"+self.eidf+"/sick_bl": self.sick_bl
                        }   
                data2={
                        "mngr_ssn":self.mngridf,
                        "ssn": self.eidf,
                        "start_date":self.start_datef1,
                        "status": "pending",
                        "total_days":self.total_daysf1,
                        "type": self.typef1           
                        } 
                db.child("leaves").child(str(self.nextlvid)).set(data2)
                self.lvid.addItem(str(self.nextlvid)) 
                self.nextlvid=self.nextlvid+1
                db.update({"nextlvid":self.nextlvid})
                db.update(data1)
                self.submit_status.setText("leave request submitted")
                self.balv.setText("")
                if(self.ec==0):
                    self.ec=1
                    self.select1.clicked.connect(self.clickedselect1)

            else:
                print("insufficient leave balance")
                self.submit_status.setText("insufficient leave balance")
        except Exception :
            self.submit_status.setText("leave request failed")
コード例 #3
0
 def clickedaccept(self):
     self.pen_lvm = db.child("users").child(
         self.ssnf).child("pen_req_made").get().val()
     self.pen_lvm = self.pen_lvm - 1
     self.pen_lvr = db.child("users").child(
         self.eidf).child("pen_req_rec").get().val()
     self.pen_lvr = self.pen_lvr - 1
     print("00000000000000000000000000000000000000000000000")
     data1 = {
         "leaves/" + self.lvids + "/status": "accepted",
         "users/" + self.ssnf + "/pen_req_made": self.pen_lvm,
         "users/" + self.eidf + "/pen_req_rec": self.pen_lvr
     }
     db.update(data1)
     self.sta.setText("Request Accepted")
     self.delitem(self.lvids)
コード例 #4
0
 def __init__(self, message1):
     self.eidf = message1
     print("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
     self.leave_by_ssn = db.child("leaves").order_by_child(
         "mngr_ssn").equal_to(self.eidf).get()
     self.leave_by_pen = db.child("leaves").order_by_child(
         "status").equal_to("pending").get()
     try:
         self.a1 = self.leave_by_ssn.val()
         self.a2 = self.leave_by_pen.val()
         self.a = set(self.a1.keys()) & set(self.a2.keys())
         print(self.a)
         self.ec = 1
     except Exception:
         self.a = {}
         self.ec = 0
     self.n1 = [key for key in self.a]
     print(self.n1)
コード例 #5
0
 def clickedselect1(self):
     if (self.count != 0):
         self.lvids = self.lvid_cbox.currentText()
         print(self.lvids)
         self.leave_by_id = db.child("leaves").child(self.lvids).get()
         self.v = self.leave_by_id.val()
         print(self.v)
         self.start_datef = self.v['start_date']
         self.total_daysf = self.v['total_days']
         self.typef = self.v['type']
         self.ssnf = self.v['ssn']
         self.enamef = db.child("users").child(
             self.ssnf).child("name").get().val()
         print("00000000000000000000000000000000000000")
         self.sd.setText(self.start_datef)
         self.td.setText(str(self.total_daysf))
         self.ty.setText(self.typef)
         self.empname.setText(self.enamef)
         self.empid.setText(self.ssnf)
コード例 #6
0
    def __init__(self,message1,message2):
        self.eidf=message1
        self.mngridf=message2
        print("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
        self.leave_by_ssn=db.child("leaves").order_by_child("ssn").equal_to(self.eidf).get()
        try:
            self.a1=self.leave_by_ssn.val()
            self.ec=1
        except Exception:
            self.a1={}
            self.ec=0
        self.n=[key for key in self.a1.keys()]
        print(self.n)

        self.user_by_ssn=db.child("users").child(self.eidf).get()
        self.a2=self.user_by_ssn.val()
        self.priv_bl=self.a2['priv_bl']
        self.sick_bl=self.a2['sick_bl']
        self.wfh_bl=self.a2['wfh_bl']
        self.casual_bl=self.a2['casual_bl']
        self.pen_req_made1=self.a2['pen_req_made']
コード例 #7
0
    def __init__(self, message1):

        self.eidf = message1
        print("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
        self.user_by_mngr_ssn = db.child("users").order_by_child(
            "mngr_ssn").equal_to(self.eidf).get()
        try:
            self.a1 = self.user_by_mngr_ssn.val()
            self.ec = 1
        except Exception:
            self.a1 = {}
            self.ec = 0
        print(self.a1)
        self.n = [key for key in self.a1.keys()]
コード例 #8
0
 def clickedselect(self):
     self.eids = self.comboBox.currentText()
     print(self.eids)
     self.users_by_key = db.child("users").child(self.eids).get()
     self.a = self.users_by_key.val()
     print(self.a)
     self.addf = self.a['address']
     self.namef = self.a['name']
     self.phonef = self.a['phone_no']
     self.email = self.a['email']
     self.name1.setText(self.namef)
     self.eid1.setText(self.email)
     self.phone1.setText(self.phonef)
     self.addr1.setText(self.addf)
     self.editstatus.setText("")
コード例 #9
0
 def clickedselect1(self):
     self.lvidf=self.lvid.currentText()
     print(self.lvidf)
     self.users_by_lvid=db.child("leaves").child(self.lvidf).get()
     self.a=self.users_by_lvid.val()
     print(self.a)
     self.start_datef=self.a['start_date']
     self.statusf=self.a['status']
     self.total_daysf=self.a['total_days']
     self.typef=self.a['type']
     print("000000000000000000000000000000000000")
     self.sd_1.setText(self.start_datef)
     self.status.setText(self.statusf)
     self.td_1.setText(str(self.total_daysf))
     self.typelv.setText(self.typef)
コード例 #10
0
    def clickedreject(self):
        self.pen_lvm1 = db.child("users").child(
            self.ssnf).child("pen_req_made").get().val()
        self.pen_lvm1 = self.pen_lvm1 - 1
        self.pen_lvr1 = db.child("users").child(
            self.eidf).child("pen_req_rec").get().val()
        self.pen_lvr1 = self.pen_lvr1 - 1
        self.casual_bl = db.child("users").child(
            self.ssnf).child("casual_bl").get().val()
        self.priv_bl = db.child("users").child(
            self.ssnf).child("priv_bl").get().val()
        self.wfh_bl = db.child("users").child(
            self.ssnf).child("wfh_bl").get().val()
        self.sick_bl = db.child("users").child(
            self.ssnf).child("sick_bl").get().val()

        print("111111111111111111111111111111111111111111111111111")

        if (self.typef == "Casual leave"):
            self.casual_bl = self.casual_bl + self.total_daysf
        elif (self.typef == "Privilege leave"):
            self.priv_bl = self.priv_bl + self.total_daysf
        elif (self.typef == "Work from home"):
            self.wfh_bl = self.wfh_bl + self.total_daysf
        elif (self.typef == "Sick leave"):
            self.sick_bl = self.sick_bl + self.total_daysf
        else:
            print("Error ")

        data2 = {
            "users/" + self.eidf + "/pen_req_rec": self.pen_lvr1,
            "users/" + self.ssnf + "/pen_req_made": self.pen_lvm1,
            "users/" + self.ssnf + "/casual_bl": self.casual_bl,
            "users/" + self.ssnf + "/priv_bl": self.priv_bl,
            "users/" + self.ssnf + "/wfh_bl": self.wfh_bl,
            "users/" + self.ssnf + "/sick_bl": self.sick_bl,
            "leaves/" + self.lvids + "/status": "rejected",
        }
        db.update(data2)
        self.sta.setText("Request rejected")
        self.delitem(self.lvids)