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()
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()
def getCarRegNo(self): self.combo_selectCar['values'] = OfficeStaff().getNonSalesCarRegNo()