def add(self):
        if self.fld_regNo.get() == '' or self.fld_colour.get(
        ) == '' or self.fld_numOfDoors.get() == '' or self.combo_modelName.get(
        ) == '':
            mb.showwarning('Message from system',
                           'Some field values are empty, check it.')
        else:
            # Covert the model name to model Id
            modelId = OfficeStaff().covert_modelId(self.combo_modelName.get())

            # Read the value from each input from user that will add to car class
            car = Car(self.fld_regNo.get(), self.fld_colour.get(),
                      self.fld_numOfDoors.get(), modelId)

            # Call the add car function from office staff class and pass carModel object
            # The return value store in output variable
            output = OfficeStaff().addCar(car)

            if output:
                mb.showinfo('Message from system',
                            'Successfully add car on database')
                self.fld_regNo.delete(0, 'end')
                self.fld_colour.delete(0, 'end')
                self.fld_numOfDoors.delete(0, 'end')
                self.combo_modelName.delete(0, 'end')

            else:
                mb.showwarning(
                    'Message from system',
                    'The insertion is failed registration number already exist. try again'
                )
    def search(self):
        """Get the values (Manufacture name , model name) that are selected by user. pass those values-
          to Office staff class search method. that method contact the DAO class and get the details-
          (Car details) under the user selection that are model name, manufacture name or model and
           manufacture name. the result will be a list."""

        if self.combo_selectManufacture.get() == '' and self.combo_selectModel.get() == '':
            mb.showwarning('Message from system', 'Select at least  one model or manufacture')

        else:
            # call the controller class method and get the result as list.
            searchList = OfficeStaff().searchCar(self.combo_selectModel.get(), self.combo_selectManufacture.get())

            # Create a temporary window to show the result as table
            tempWindow = Tk()
            tempWindow.title("Search Result")

            # code for creating table
            # find total number of rows and columns in list
            for i in range(len(searchList)):
                for j in range(len(searchList[0])):
                    tempEntry = Entry(tempWindow, width=20, fg='blue',
                                      font=('Arial', 16, 'bold'))
                    tempEntry.grid(row=i, column=j)
                    tempEntry.insert(END, searchList[i][j])
            tempWindow.mainloop()
Beispiel #3
0
    def delete(self):
        if self.combo_selectCar.get() == '':
            mb.showwarning('Message from system', 'The car not selected')
        else:

            car = Car(regNo=self.combo_selectCar.get())

            output = OfficeStaff().deleteCar(car)
            if output:
                mb.showinfo('Message from system', 'Successfully deleted car')
                self.combo_selectCar.delete(0, 'end')
            else:
                mb.showwarning('Message from system', 'The operation failed')
 def search(self):
     """Call the viewSoldCarDetails method from controller class and get all sold car details
     finally add those values into particular entries. the for loops use for enter the upgrades-
     values one by one into entries."""
     if self.combo_selectCar.get() == '':
         mb.showwarning('Message from system', 'Please select one car above')
     else:
         car = Car(regNo=self.combo_selectCar.get())
         soldCarDetails = OfficeStaff().viewSoldCarDetails(car)
         self.fld_showFinalPrice.insert(END, soldCarDetails[1])
         # for i in range(1, len(soldCarDetails[0])):
         #     self.fld_showUpgrades.insert(END, soldCarDetails[0][i])
         #     self.fld_showUpgrades.insert(END, ',')
         for i in soldCarDetails[0]:
             self.fld_showUpgrades.insert(END, i)
             self.fld_showUpgrades.insert(END, ',')
    def add(self):

        manufacture = Manufacture(manufactureId=None, manufactureName=None)
        if self.fld_manufactureId.get() == '' or self.fld_manufactureName.get() == '':
            mb.showwarning('Message from system', 'Please give an manufacture ID and manufacture name')
        else:
            manufacture.setManufactureId(self.fld_manufactureId.get())
            manufacture.setManufactureName(self.fld_manufactureName.get())

            output = OfficeStaff().addManufacture(manufacture)

            if output:
                mb.showinfo('Message from system', 'Successfully add manufacture on database')
                self.fld_manufactureName.delete(0, 'end')
                self.fld_manufactureId.delete(0, 'end')
            else:
                mb.showwarning('Message from system', 'The insertion is failed manufacture ID or manufacture name already exit try again')
 def getCar(self):
     self.combo_selectCar['values'] = OfficeStaff().getSoldCarRegNo()
 def getModelName(self):
     # Office staff object calls the function getModelName()
     # It'll return model name as list.
     self.combo_modelName['values'] = OfficeStaff().getModelName()
 def getManufactureName(self):
     self.combo_selectManufacture['values'] = OfficeStaff().getManufactureName()
 def getModelName(self):
     self.combo_selectModel['values'] = OfficeStaff().getModelName()
Beispiel #10
0
 def getCarRegNo(self):
     self.combo_selectCar['values'] = OfficeStaff().getNonSalesCarRegNo()