Exemplo n.º 1
0
class UserController:
    def __init__(self):
        self.model = User()
        self.view = UserView()
        self.menu()

    def menu(self):
        while True:
            # Render User Menu and get command value
            command = self.view.menu()
            if command == 0:
                return
            elif command == 1:
                self.addUser()
            elif command == 4:
                self.deleteUser()
            elif command == 5:
                self.listUser()
            else:
                pass

    def listUser(self):
        res = self.model.select()
        self.view.listUser(res)

    def addUser(self):
        data = self.view.addUser()
        data['password'] = bcrypt.hashpw(data['password'].encode('utf-8'),
                                         bcrypt.gensalt()).decode('utf-8')
        if self.model.insert(data):
            print("OK")
        else:
            print("Failed")

    def deleteUser(self):
        data = self.view.deleteUser()
        if data == 'cancelled':
            return
        else:
            if self.model.delete(data):
                print("Deleted")
            else:
                print("Failed")
Exemplo n.º 2
0
 def userSlot(self):
     from View.UserView import UserView
     self.userView = UserView()
     self.userView.show()
     self.userView.exec_()
Exemplo n.º 3
0
class MainMenuView(QWidget):
    def __init__(self, username, hakakses):
        super().__init__()

        self.showMaximized()
        self.setWindowFlag(QtCore.Qt.WindowCloseButtonHint, False)
        self.setWindowTitle("MAIN MENU")

        # ========== SIDEBAR SECTION =============
        frameSideBar = QFrameReuse("white")
        frameSideBar.setContentsMargins(10, 10, 10, 10)

        sideBarLayout = QGridLayout(frameSideBar)
        sideBarLayout.setSpacing(5)
        btnMainMenu = QPushButtonReuse("Main Menu", "assets/img/medication.png")
        self.btnPasien = QPushButtonReuse("Form.Pasien", "assets/img/pasien.png")
        self.btnDokter = QPushButtonReuse("Form.Dokter", "assets/img/dokter.png")
        self.btnApoteker = QPushButtonReuse("Form.Apoteker", "assets/img/apoteker.png")
        self.btnObat = QPushButtonReuse("Form.Obat", "assets/img/obat.png")
        self.btnUser = QPushButtonReuse("Form.User", "assets/img/user.png")
        self.btnLogOut = QPushButtonReuse("Log Out", "assets/img/log_out.png")

        # =========== EVENT SECTION =============
        self.btnLogOut.clicked.connect(lambda: self.logOutSlot())
        self.btnPasien.clicked.connect(lambda: self.pasienSlot())
        self.btnDokter.clicked.connect(lambda: self.dokterSlot())
        self.btnApoteker.clicked.connect(lambda: self.apotekerSlot())
        self.btnObat.clicked.connect(lambda: self.obatSlot())
        self.btnUser.clicked.connect(lambda: self.userSlot())

        # ========== DASHBOARD SECTION TITLE ===========
        frameTitle = QFrameReuse("white")

        headerLayout = QGridLayout(frameTitle)
        self.hakAkses = QLabelReuse(str(hakakses), "black")

        self.hakAkses.setAlignment(QtCore.Qt.AlignLeft)

        layoutRightTitle = QHBoxLayout()
        self.btnnotification = QPushButtonReuse(str(PemeriksaanOrm.countNotif()), "assets/img/notification.png")
        self.btnnotification.setStyleSheet("background-color : transparent;\n"
                                           "color : red")
        profile = QPushButtonReuse("", "assets/img/profile.png")

        # =========== TITLE SECTION EVENT ============
        self.btnnotification.clicked.connect(lambda: self.pemeriksaanNotif())

        # ========== DASHBOARD SECTION BODY ===========
        frameDashboard = QFrameReuse("rgb(58, 150, 248)")
        frameLayout = QHBoxLayout(frameDashboard)
        frameLayout.setContentsMargins(40, 40, 40, 40)

        frameLayoutLeft = QVBoxLayout()
        frameLayoutRight = QVBoxLayout()

        font = QtGui.QFont()
        font.setFamily("Arial Rounded")
        font.setPointSize(11)
        font.setWeight(50)
        welcome = QLabelReuse("Welcome", "white")
        welcome.setFont(font)

        font = QtGui.QFont()
        font.setFamily("Product Sans")
        font.setPointSize(12)
        font.setWeight(75)
        self.username = QLabelReuse(username, "white")
        self.username.setFont(font)

        font = QtGui.QFont()
        font.setFamily("Arial Rounded")
        font.setPointSize(11)
        font.setItalic(True)
        font.setWeight(50)
        quote = QLabelReuse("\n\n\n\n\nTo keep the body in good health is a duty.. otherwise \n\n"
                            "we shall not be able to keep our mind strong and clear.\n", "white")
        quote.setFont(font)

        lbllogo = QLabelReuse("", "")
        lbllogo.setPixmap(QtGui.QPixmap("assets/img/medical256.png"))
        lbllogo.setAlignment(QtCore.Qt.AlignRight)

        self.framePemeriksaan = QFrameReuse("white")
        layoutPemeriksaan = QVBoxLayout(self.framePemeriksaan)
        layoutPemeriksaan.setContentsMargins(45, 45, 45, 45)

        lblPemeriksaan = QLabelReuse("", "")
        lblPemeriksaan.setPixmap(QtGui.QPixmap("assets/img/medical-tool.png"))
        lblPemeriksaan.setAlignment(QtCore.Qt.AlignCenter)
        lblPemeriksaanjudul = QLabelReuse("\nForm. Pemeriksaan\n", "black")
        lblPemeriksaanjudul.setAlignment(QtCore.Qt.AlignCenter)
        self.btnPemeriksaan = QPushButtonReuse("Get Started", "")

        self.frameTransaksi = QFrameReuse("white")
        layoutTransaksi = QVBoxLayout(self.frameTransaksi)
        layoutTransaksi.setContentsMargins(45, 45, 45, 45)

        lblTransaksi = QLabelReuse("", "")
        lblTransaksi.setPixmap(QtGui.QPixmap("assets/img/transaksi.png"))
        lblTransaksi.setAlignment(QtCore.Qt.AlignCenter)
        lblTransaksijudul = QLabelReuse("\nForm. Transaksi\n", "black")
        lblTransaksijudul.setAlignment(QtCore.Qt.AlignCenter)
        self.btnTransaksi = QPushButtonReuse("Get Started", "")

        # ========== DASHBOARD BODY EVENT =========
        self.btnPemeriksaan.clicked.connect(lambda: self.pemeriksaanSlot())

        # ========== LAYOUT SECTION ==============
        sideBarLayout.addWidget(btnMainMenu, 0, 0)
        sideBarLayout.addWidget(self.btnPasien, 1, 0)
        sideBarLayout.addWidget(self.btnDokter, 2, 0)
        sideBarLayout.addWidget(self.btnApoteker, 3, 0)
        sideBarLayout.addWidget(self.btnObat, 4, 0)
        sideBarLayout.addWidget(self.btnUser, 5, 0)
        sideBarLayout.addWidget(self.btnLogOut, 6, 0, QtCore.Qt.AlignBottom)

        layoutRightTitle.addWidget(self.btnnotification)
        layoutRightTitle.addWidget(profile)

        headerLayout.addWidget(self.hakAkses, 0, 0, QtCore.Qt.AlignLeft)
        headerLayout.addLayout(layoutRightTitle, 0, 2, QtCore.Qt.AlignRight)

        frameLayout.addLayout(frameLayoutLeft)
        frameLayout.addLayout(frameLayoutRight)

        frameLayoutLeft.addWidget(welcome)
        frameLayoutLeft.addWidget(self.username)
        frameLayoutLeft.addWidget(quote)

        frameLayoutRight.addWidget(lbllogo)

        layoutPemeriksaan.addWidget(lblPemeriksaan)
        layoutPemeriksaan.addWidget(lblPemeriksaanjudul)
        layoutPemeriksaan.addWidget(self.btnPemeriksaan)

        layoutTransaksi.addWidget(lblTransaksi)
        layoutTransaksi.addWidget(lblTransaksijudul)
        layoutTransaksi.addWidget(self.btnTransaksi)

        layoutUtama = QGridLayout()
        layoutUtama.addWidget(frameSideBar, 0, 0, 6, 1, QtCore.Qt.AlignLeft)
        layoutUtama.addWidget(frameTitle, 0, 1, 1, 9, QtCore.Qt.AlignTop)
        layoutUtama.addWidget(frameDashboard, 1, 1, 3, 9, QtCore.Qt.AlignTop)
        layoutUtama.addWidget(self.framePemeriksaan, 4, 1, 2, 2, QtCore.Qt.AlignHCenter)
        layoutUtama.addWidget(self.frameTransaksi, 4, 3, 2, 2, QtCore.Qt.AlignHCenter)
        layoutUtama.setSpacing(10)
        self.hakAksesVisible()
        self.setLayout(layoutUtama)

    @pyqtSlot()
    def logOutSlot(self):
        from View.LoginView import LoginView
        self.login = LoginView()
        self.login.show()
        self.close()

    @pyqtSlot()
    def pasienSlot(self):
        from View.PasienView import PasienView
        self.pasienview = PasienView()
        self.pasienview.show()
        self.pasienview.exec_()

    @pyqtSlot()
    def dokterSlot(self):
        from View.DokterView import DokterView
        self.dokterView = DokterView()
        self.dokterView.show()
        self.dokterView.exec_()

    @pyqtSlot()
    def apotekerSlot(self):
        from View.ApotekerView import ApotekerView
        self.apotekerView = ApotekerView()
        self.apotekerView.show()
        self.apotekerView.exec_()

    @pyqtSlot()
    def obatSlot(self):
        from View.ObatView import ObatView
        self.obatView = ObatView()
        self.obatView.show()
        self.obatView.exec_()

    @pyqtSlot()
    def userSlot(self):
        from View.UserView import UserView
        self.userView = UserView()
        self.userView.show()
        self.userView.exec_()

    @pyqtSlot()
    def pemeriksaanSlot(self):
        from View.PemeriksaanView import PemeriksaanView
        self.periksaView = PemeriksaanView()
        self.periksaView.show()
        self.periksaView.exec_()

    @pyqtSlot()
    def pemeriksaanNotif(self):
        from View.notificationView import notificationView
        self.notifView = notificationView()
        self.notifView.show()
        self.notifView.exec_()

    def hakAksesVisible(self):
        hakAkses = self.hakAkses.text()
        if (hakAkses == str(HakAkses.DOKTER)):
            self.btnUser.setVisible(False)
            self.btnObat.setVisible(False)
            self.btnApoteker.setVisible(False)
            self.btnDokter.setVisible(False)
            self.btnPasien.setVisible(False)
            self.framePemeriksaan.setVisible(False)
            self.frameTransaksi.setVisible(False)
        elif (hakAkses == str(HakAkses.APOTEKER)):
            self.btnUser.setVisible(False)
            self.btnnotification.setVisible(False)
            self.btnApoteker.setVisible(False)
            self.btnDokter.setVisible(False)
            self.btnPasien.setVisible(False)
            self.framePemeriksaan.setVisible(False)
            self.frameTransaksi.setVisible(False)
        else:
            self.btnnotification.setVisible(False)
Exemplo n.º 4
0
class MainMenu(QWidget):
    def __init__(self, username, authority):
        super().__init__()
        self.showMaximized()
        self.setWindowFlag(QtCore.Qt.WindowCloseButtonHint, False)
        self.setWindowTitle("MAIN MENU")

        # >>>> MENU SECTION <<<<
        MenuBar = QFrameRC("white")
        MenuBar.setContentsMargins(10, 10, 10, 10)

        MenuLayout = QGridLayout(MenuBar)
        MenuLayout.setSpacing(5)
        self.btnCheckIn = QPushButtonRC2("Book now", "assets/img/bed.png")
        self.btnRoom = QPushButtonRC2("Occupied Room", "assets/img/no.png")
        self.btnBRUH2 = QPushButtonRC2("Reserved", "assets/img/back.png")


        # >>>> MENU EVENT SECTION <<<<
        self.btnCheckIn.clicked.connect(lambda: self.bookSlot())
        #self.btnBRUH2.clicked.connect(lambda: self.logOutSlot())
        self.btnRoom.clicked.connect(lambda: self.logOutSlot())
        #self.btnRoom.clicked.connect(lambda: self.roomSlot())

        # >>>> LOGOUT SECTION <<<<
        LogoutBar = QFrameRC("transparent")
        LogoutBar.setContentsMargins(10, 10, 10, 10)

        LogoutLayout = QGridLayout(LogoutBar)
        LogoutLayout.setSpacing(5)

        # >>>> BOTTOMBAR SECTION <<<<
        frameBottomBar = QFrameRC("white")
        frameBottomBar.setContentsMargins(10, 10, 10, 10)

        bottomBarLayout = QGridLayout(frameBottomBar)
        bottomBarLayout.setSpacing(5)
        btnMainMenu = QPushButtonRC2("Tambah Data : ", "")
        self.btnAdministrator = QPushButtonRC2("Administrator", "assets/img/add.png")
        self.btnEmployee = QPushButtonRC2("Employee", "assets/img/add.png")
        self.btnReceptionist = QPushButtonRC2("Receptionist", "assets/img/add.png")
        self.btnMarketing_crew = QPushButtonRC2("Marketing Crew", "assets/img/add.png")
        self.btnCashier = QPushButtonRC2("Cashier", "assets/img/add.png")
        self.btnVisitor = QPushButtonRC2("Visitor", "assets/img/add.png")
        self.btnUser = QPushButtonRC2("User", "assets/img/add.png")
        self.btnLogOut = QPushButtonRC2("Log Out", "assets/img/logout.png")

        # >>>> EVENT SECTION <<<<
        self.btnLogOut.clicked.connect(lambda: self.logOutSlot())
        self.btnAdministrator.clicked.connect(lambda: self.adminSlot())
        self.btnEmployee.clicked.connect(lambda: self.empSlot())
        self.btnReceptionist.clicked.connect(lambda: self.recSlot())
        self.btnMarketing_crew.clicked.connect(lambda: self.mcSlot())
        self.btnCashier.clicked.connect(lambda: self.casSlot())
        self.btnVisitor.clicked.connect(lambda: self.visSlot())
        self.btnUser.clicked.connect(lambda: self.userSlot())

        # >>>> DASHBOARD SECTION TITLE <<<<
        frameTitle = QFrameRC("white")

        headerLayout = QGridLayout(frameTitle)
        self.authority = QLabelRC(str(authority), "black")
        self.authority.setAlignment(QtCore.Qt.AlignLeft)
        profile = QPushButtonRC2("", "assets/img/profile.png")

        # >>>> DASHBOARD SECTION BODY <<<<
        frameDashboard = QFrameRC("rgb(125, 15, 15)")
        frameLayout = QHBoxLayout(frameDashboard)
        frameLayout.setContentsMargins(40, 40, 40, 40)

        frameLayoutLeft = QVBoxLayout()
        frameLayoutRight = QVBoxLayout()

        font = QtGui.QFont()
        font.setFamily("Arial Rounded")
        font.setPointSize(11)
        font.setWeight(50)
        welcome = QLabelRC("Selamat datang,", "white")
        welcome.setFont(font)

        font = QtGui.QFont()
        font.setFamily("Product Sans")
        font.setPointSize(12)
        font.setWeight(75)
        self.username = QLabelRC(username, "white")
        self.username.setFont(font)

        font = QtGui.QFont()
        font.setFamily("Arial Rounded")
        font.setPointSize(11)
        font.setItalic(True)
        font.setWeight(50)
        quote = QLabelRC("\n\n\n\n\nWhen you get into a hotel room, you lock the door, and you know there is a secrecy, there is a luxury, there is fantasy. There is comfort. There is reassurance.", "white")
        quote.setFont(font)

        lbllogo = QLabelRC("", "")
        lbllogo.setPixmap(QtGui.QPixmap("assets/img/medical256.png"))
        lbllogo.setAlignment(QtCore.Qt.AlignRight)

        # >>>> LAYOUT SECTION <<<<
        bottomBarLayout.addWidget(btnMainMenu, 0, 0)
        bottomBarLayout.addWidget(self.btnAdministrator, 0, 1)
        bottomBarLayout.addWidget(self.btnEmployee, 0, 2)
        bottomBarLayout.addWidget(self.btnReceptionist, 0, 3)
        bottomBarLayout.addWidget(self.btnMarketing_crew, 0, 4)
        bottomBarLayout.addWidget(self.btnCashier, 0, 5)
        bottomBarLayout.addWidget(self.btnVisitor, 0, 6)
        bottomBarLayout.addWidget(self.btnLogOut, 0, 7)
        #Menu
        MenuLayout.addWidget(self.btnCheckIn, 0, 0)
        MenuLayout.addWidget(self.btnRoom, 0, 1)
        MenuLayout.addWidget(self.btnBRUH2, 0, 2)
        LogoutLayout.addWidget(self.btnLogOut, 0, 0, QtCore.Qt.AlignRight)
        #Header
        headerLayout.addWidget(self.authority, 0, 0, QtCore.Qt.AlignLeft)
        headerLayout.addWidget(profile, 0, 2, QtCore.Qt.AlignRight)

        frameLayout.addLayout(frameLayoutLeft)
        frameLayout.addLayout(frameLayoutRight)

        frameLayoutLeft.addWidget(welcome)
        frameLayoutLeft.addWidget(self.username)
        frameLayoutLeft.addWidget(quote)

        frameLayoutRight.addWidget(lbllogo)
        #Main
        layoutUtama = QGridLayout()
        layoutUtama.addWidget(frameTitle, 0, 1, 1, 9, QtCore.Qt.AlignTop)
        layoutUtama.addWidget(frameDashboard, 1, 1, 5, 9, QtCore.Qt.AlignTop)
        layoutUtama.addWidget(frameBottomBar, 6, 1, 10, 9, QtCore.Qt.AlignTop)
        layoutUtama.addWidget(MenuBar, 13, 1, 10, 9, QtCore.Qt.AlignTop)
        layoutUtama.addWidget(LogoutBar, 18, 1, 10, 9, QtCore.Qt.AlignBottom)
        layoutUtama.setSpacing(10)
        self.authorityVisible()
        self.setLayout(layoutUtama)

    @pyqtSlot()
    def roomSlot(self):
        from GUI.RoomGUI import RoomView
        self.room = RoomView()
        self.room.show()

    @pyqtSlot()
    def bookSlot(self):
        from GUI.BookGUI import BookView
        self.book = BookView()
        self.book.show()

    @pyqtSlot()
    def logOutSlot(self):
        from GUI.AuthenticationGUI import LoginView
        self.login = LoginView()
        self.login.show()
        self.close()

    @pyqtSlot()
    def adminSlot(self):
        from GUI.administratorGUI import AdminView
        self.AdminView = AdminView()
        self.AdminView.show()


    @pyqtSlot()
    def empSlot(self):
        from GUI.EmployeeGUI import EmployeeView
        self.EmployeeView = EmployeeView()
        self.EmployeeView.show()


    @pyqtSlot()
    def recSlot(self):
        from GUI.ReceptionistGUI import ReceptionistView
        self.ReceptionistView = ReceptionistView()
        self.ReceptionistView.show()

    @pyqtSlot()
    def mcSlot(self):
        from GUI.Marketing_crewGUI import Marketing_crewView
        self.mcView = Marketing_crewView()
        self.mcView.show()

    @pyqtSlot()
    def userSlot(self):
        from View.UserView import UserView
        self.userView = UserView()
        self.userView.show()

    @pyqtSlot()
    def casSlot(self):
        from GUI.CashierGUI import CashierView
        self.casView = CashierView()
        self.casView.show()

    @pyqtSlot()
    def visSlot(self):
        from GUI.VisitorGUI import VisitorView
        self.visView = VisitorView()
        self.visView.show()

    def authorityVisible(self):
        authority = self.authority.text()
        if (authority == str(Authority.Employee)):
            self.btnAdministrator.setVisible(False)
            self.btnReceptionist.setVisible(False)
            self.btnMarketing_crew.setVisible(False)
            self.btnCashier.setVisible(False)
            self.btnVisitor.setVisible(False)
            self.btnCheckIn.setVisible(False)
            self.btnRoom.setVisible(False)
        elif (authority == str(Authority.Receptionist)):
            self.btnAdministrator.setVisible(False)
            self.btnEmployee.setVisible(False)
            self.btnMarketing_crew.setVisible(False)
            self.btnCashier.setVisible(False)
            self.btnVisitor.setVisible(False)
        elif (authority == str(Authority.Marketing_crew)):
            self.btnAdministrator.setVisible(False)
            self.btnEmployee.setVisible(False)
            self.btnReceptionist.setVisible(False)
            self.btnCashier.setVisible(False)
            self.btnVisitor.setVisible(False)
            self.btnCheckIn.setVisible(False)
            self.btnRoom.setVisible(False)
        elif (authority == str(Authority.Cashier)):
            self.btnAdministrator.setVisible(False)
            self.btnEmployee.setVisible(False)
            self.btnReceptionist.setVisible(False)
            self.btnMarketing_crew.setVisible(False)
            self.btnVisitor.setVisible(False)
            self.btnCheckIn.setVisible(False)
            self.btnRoom.setVisible(False)
        elif (authority == str(Authority.Visitor)):
            self.btnAdministrator.setVisible(False)
            self.btnEmployee.setVisible(False)
            self.btnReceptionist.setVisible(False)
            self.btnCashier.setVisible(False)
            self.btnMarketing_crew.setVisible(False)
        else:
            self.btnVisitor.setVisible(False)
Exemplo n.º 5
0
 def __init__(self):
     self.model = UserModel()
     self.view = UserView()
Exemplo n.º 6
0
class UserController(object):
    #初始化,有model 和 view作为属性
    def __init__(self):
        self.model = UserModel()
        self.view = UserView()

    #登录控制器
    #传入的参数为登录提供的表单 例子为 {userName: passWord: }
    def UserLoginController(self, request):
        userName = request['userName']
        passWord = request['passWord']

        userId = self.model.login(userName, passWord)
        print(userId)
        res = self.view.UserLoginView(userId)
        return res

    #登录控制器
    #传入的参数为注册提供的表单 例子为 {userName: passWord: }
    def UserRigisterController(self, request):
        userName = request['userName']
        passWord = request['passWord']

        userId = self.model.rigister(userName, passWord)
        res = self.view.UserRegisterView(userId)
        return res

    #登出控制器
    #传入的参数为登出提供的表单 ,userId
    def UserLogOutController(self, request):
        userId = int(request['userId'])

        result = self.model.logout(userId)
        res = self.view.UserLogOutView(result)
        return res

    #删除控制器
    #传入的参数为删除提供的表单 ,userId
    def UserCloseAccountController(self, request):
        userId = int(request['userId'])

        result = self.model.CloseAccount(userId)
        res = self.view.UserCloseView(result)
        return res

    #修改用户信息
    def UserChangeInfoController(self, request):

        userId = request.get('userId', default=0)
        userName = request.get('userName', default=None)
        passWord = request.get('passWord', default=None)
        userIcon = request.get('userIcon', default=None)

        result = self.model.ChangeUserInfo(userId,
                                           userName=userName,
                                           passWord=passWord,
                                           userIcon=userIcon)
        res = self.view.UserChangeInfoView(result)
        return res

    #查询用户信息
    def UserQueryInfoController(self, request):
        userId = request.get('userId', default=0)
        userName = request.get('userName', default=None)

        result = self.model.QueryUserInfo(userId=userId, userName=userName)
        res = self.view.UserQueryView(userDict=result)

        return res
Exemplo n.º 7
0
 def __init__(self):
     self.model = User()
     self.view = UserView()
     self.menu()
Exemplo n.º 8
0
class MainMenuView(QWidget):
    def __init__(self, username, hakakses):
        super().__init__()

        self.showMaximized()
        self.setWindowFlag(QtCore.Qt.WindowCloseButtonHint, False)
        self.setWindowTitle("MENU")

        frameheadBar = QFrameComponent("white")

        headBarLayout = QGridLayout(frameheadBar)
        headBarLayout.setSpacing(5)

        self.btnPetugas = QPushButtonComponent("Data Petugas")
        self.btnAnggota = QPushButtonComponent("Data Anggota")
        self.btnTransaksi = QPushButtonComponent("Transaksi")
        self.btnBuku = QPushButtonComponent("Data Buku")
        self.btnUser = QPushButtonComponent("Data User")
        self.btnLogOut = QPushButtonComponent("Log Out")
        self.hak_akses = QLabel(str(hakakses))
        self.username = QLabel(str(username))
        framebodybar = QFrameComponent("maroon")
        bodyBarLayout = QHBoxLayout(framebodybar)

        headBarLayout.addWidget(self.btnPetugas, 0, 1)
        headBarLayout.addWidget(self.btnAnggota, 0, 2)
        headBarLayout.addWidget(self.btnBuku, 0, 3)
        headBarLayout.addWidget(self.btnTransaksi, 0, 4)
        headBarLayout.addWidget(self.btnUser, 0, 5)
        headBarLayout.addWidget(self.btnLogOut, 0, 6, QtCore.Qt.AlignBottom)
        bodyBarLayout.addWidget(self.username)
        bodyBarLayout.addWidget(self.hak_akses)

        layoutUtama = QGridLayout()
        layoutUtama.addWidget(frameheadBar, 0, 1, 1, 10, QtCore.Qt.AlignTop)
        layoutUtama.addWidget(framebodybar, 2, 1, 1, 10)

        self.btnPetugas.clicked.connect(lambda: self.openpetugas())
        self.btnAnggota.clicked.connect(lambda: self.openanggota())
        self.btnBuku.clicked.connect(lambda: self.openbuku())
        self.btnUser.clicked.connect(lambda: self.openuser())
        self.btnTransaksi.clicked.connect(lambda: self.openpeminjaman())
        self.btnLogOut.clicked.connect(lambda: self.openlogout())
        self.cekhak_akses()
        self.setLayout(layoutUtama)
        self.show()

    def openpetugas(self):
        from View.PetugasView import PetugasView
        self.petugasview = PetugasView()
        self.petugasview.show()

    def openanggota(self):
        from View.AnggotaView import AnggotaView
        self.anggotaview = AnggotaView()
        self.anggotaview.show()

    def openbuku(self):
        from View.BukuView import BukuView
        self.bukuview = BukuView()
        self.bukuview.show()

    def openuser(self):
        from View.UserView import UserView
        self.userview = UserView()
        self.userview.show()

    def openpeminjaman(self):
        from View.PeminjamanView import PeminjamanView
        self.pinjamview = PeminjamanView()
        self.pinjamview.show()

    #
    # def openpengembalian(self):
    #     from View.PengembalianView import PengembalianView
    #     self.kembaliview = PengembalianView()
    #     self.kembaliview.show()
    #     self.kembaliview.exec_()
    #

    #
    def openlogout(self):
        from View.LoginView import LoginView
        self.loginview = LoginView()
        self.loginview.show()
        self.close()

    def cekhak_akses(self):
        hak_akses = self.hak_akses.text()
        if (hak_akses == str(HakAkses.Petugas)):
            self.btnPetugas.setVisible(False)
            self.btnUser.setVisible(False)
        elif (hak_akses == str(HakAkses.Admin)):
            self.btnPetugas.setVisible(True)
            self.btnUser.setVisible(True)
Exemplo n.º 9
0
 def openuser(self):
     from View.UserView import UserView
     self.userview = UserView()
     self.userview.show()