def __init__(self, ticket_type_id, allow_manual, parent): super(NewTicket, self).__init__(parent) config = configparser.ConfigParser() settings_path = os.path.abspath(os.path.dirname(__file__)) config.read(os.path.join(settings_path, 'settings.ini')) self.api = parent.api self.ticket_type_id = ticket_type_id self.ui = Ui_NewTicket() self.ui.setupUi(self) if ticket_type_id == 1: self.setWindowTitle("Nueva Recepción") else: self.setWindowTitle("Nuevo Despacho") self.setModal(True) self.driver = None self.truck = None if not allow_manual: self.ui.manualCheckBox.hide() self.api.createDriverFinished.connect(self.setDriver) self.api.createTruckFinished.connect(self.setTruck) self.ui.addDriverButton.clicked.connect(self.addDriver) self.ui.addTruckButton.clicked.connect(self.addTruck) self.ui.manualCheckBox.stateChanged.connect(self.setManualCapture) self.ui.createTicketButton.clicked.connect(self.createTicket) self.ui.cancelButton.clicked.connect(self.reject) self.st = SerialThread(config.get('Serial', 'PortName'), config.get('Serial', 'Regex'), config.getint('Serial', 'Baudrate'), config.get('Serial', 'Parity'), config.getint('Serial', 'Bytesize'), config.getboolean('Serial', 'Simulate')) self.st.dataReady.connect(self.getWeight, QtCore.Qt.QueuedConnection) self.st.start()
def __init__(self, ticket_data, allow_manual, parent): super(CloseTicket, self).__init__(parent) config = configparser.ConfigParser() settings_path = os.path.abspath(os.path.dirname(__file__)) config.read(os.path.join(settings_path, 'settings.ini')) self.tolerance = config.getint('Other', 'Tolerance') self.api = parent.api self.ticket = ticket_data['ticket'] self.previous_incoming_weight = self.ticket.incoming_weight self.allow_manual = allow_manual self.ui = Ui_CloseTicket() self.ui.setupUi(self) self.setModal(True) if hasattr(self.ticket, 'client'): self.setClient(self.ticket.client) if ticket_data['weight_captured']: self.ui.captureWeightButton.setChecked(True) self.ui.outgoingWeightSpinBox.setValue(self.ticket.outgoing_weight) self.old_driver = self.ticket.driver self.old_truck = self.ticket.truck self.reception_diff = self.dispatch_diff = self.max_diff = 0.5 self.diff_ok = False self.transactions_diff_ok = False self.transactions_diff = 999 self.api.getSettingsFinished.connect(self.updateSettings) self.api.get_settings() self.api.getFeaturesFinished.connect(self.updateFeatures) self.api.get_features() self.api.getDocumentTypesFinished.connect(self.updateDocumentTypes) self.api.get_document_types() if not self.allow_manual: self.ui.manualCheckBox.hide() self.ui.addressWidget.hide() self.ui.documentTypeWidget.hide() self.ui.numberLineEdit.setText(str(self.ticket.number)) self.ui.driverLineEdit.setText( "%s - %s" % (self.ticket.driver.ci, self.ticket.driver.name)) self.ui.truckLineEdit.setText( "%s - %s" % (self.ticket.truck.license_plate, self.ticket.truck.carrier.name)) self.ui.incomingWeightSpinBox.setValue(self.ticket.incoming_weight) self.ui.commentPlainTextEdit.setPlainText(self.ticket.comment) self.transactionsTableModel = TransactionsTableModel( self.ticket.transactions_attributes, ticket_data['lots'], self) self.ui.transactionsTableView.setModel(self.transactionsTableModel) horizontalHeader = self.ui.transactionsTableView.horizontalHeader() horizontalHeader.resizeSection(0, 80) horizontalHeader.resizeSection(1, 80) horizontalHeader.setResizeMode(2, QtGui.QHeaderView.Stretch) horizontalHeader.resizeSection(3, 50) horizontalHeader.resizeSection(4, 50) horizontalHeader.resizeSection(5, 80) if self.ticket.ticket_type_id == 1: self.ui.receptionButton.setChecked(True) else: self.ui.dispatchButton.setChecked(True) self.ui.changeDriverButton.clicked.connect(self.changeDriver) self.ui.changeTruckButton.clicked.connect(self.changeTruck) self.ui.addClientButton.clicked.connect(self.addClient) self.ui.manualCheckBox.stateChanged.connect(self.setManualCapture) self.ui.outgoingWeightSpinBox.valueChanged.connect(self.weightChanged) self.ui.incomingWeightSpinBox.valueChanged.connect( self.updateTicketType) self.ui.netWeightSpinBox.valueChanged.connect(self.updateDiff) self.ui.providerWeightSpinBox.valueChanged.connect(self.updateDiff) self.ui.diffSpinBox.valueChanged.connect(self.updateDiffStyle) self.ui.receptionButton.clicked.connect(self.updateTicketType) self.ui.dispatchButton.clicked.connect(self.updateTicketType) self.ui.addTransactionButton.clicked.connect(self.addTransaction) self.ui.cancelButton.clicked.connect(self.cancel) self.ui.saveButton.clicked.connect(self.saveTicket) self.ui.closeTicketButton.clicked.connect(self.closeTicket) self.ui.transactionsTableView.clicked.connect( self.enableDeleteTransaction) self.ui.removeTransactionButton.clicked.connect(self.removeTransaction) self.transactionsTableModel.totalChanged.connect(self.updateTotal) self.transactionsTableModel.recalculateTotal() self.updateTicketType() self.st = SerialThread(config.get('Serial', 'PortName'), config.get('Serial', 'Regex'), config.getint('Serial', 'Baudrate'), config.get('Serial', 'Parity'), config.getint('Serial', 'Bytesize'), config.getboolean('Serial', 'Simulate')) self.st.dataReady.connect(self.getWeight, QtCore.Qt.QueuedConnection) self.st.start()