def use_setting_date_value(self): """ 将日期恢复到原值 """ start_time = settings.value(Configs.start_time) self.dateEdit.setDate(QDate.fromString(start_time, "yyyy-MM-dd")) end_time = settings.value(Configs.end_time) self.dateEdit_2.setDate(QDate.fromString(end_time, "yyyy-MM-dd"))
def show_detail(self, r): """ 选中table行后,显示数据明细 :param r: 选中的行号 :return: """ self.dateEdit.setDate( QDate.fromString(self.tableWidget.item(r.row(), 0).text(), 1)) # 时间 self.comboBox.setCurrentText(self.tableWidget.item(r.row(), 1).text()) # 工作分类 self.textEdit.setPlainText(self.tableWidget.item(r.row(), 2).text()) # 事项内容 self.comboBox_2.setCurrentText( self.tableWidget.item(r.row(), 3).text()) # 工时 self.comboBox_3.setCurrentText( self.tableWidget.item(r.row(), 4).text()) # 性质 self.comboBox_4.setCurrentText( self.tableWidget.item(r.row(), 5).text()) # 重要等级 self.comboBox_5.setCurrentText( self.tableWidget.item(r.row(), 6).text()) # 状态 self.comboBox_6.setCurrentText( self.tableWidget.item(r.row(), 7).text()) # 工作配合 self.textEdit_2.setPlainText(self.tableWidget.item(r.row(), 8).text()) # 问题和困难 self.id = self.tableWidget.item(r.row(), 9).text()
def import_expenses(self): try: row = int(self.le_initial_row.text()) - 1 description_col = int(self.le_description_col.text()) - 1 date_col = int(self.le_date_col.text()) - 1 default_date = self.default_date.date() date_format = self.le_date_format.text() percent = 1.0 / len(list(self.current_group.getMembers())) while self.model.item(row) is not None: print("Row ", row) expense = Expense() expense.setDescription( self.model.item(row, description_col).text()) print("Expense: ", expense.getDescription()) date = QDate.fromString( self.model.item(row, date_col).text(), date_format) if not date.isValid(): date = default_date expense.setDate(date.toString(Qt.ISODate)) print("Date: ", expense.getDate()) cost = 0 users = [] for member in self.current_group.getMembers(): print("Processing member ", member.getFirstName()) member_column = int( self.member_widget_map[member.getId()].text()) - 1 paid = 0 try: paid = float( self.model.item(row, member_column).text()) print("Expense: ", self.model.item(row, member_column).text()) except: pass cost = cost + paid expense_user = ExpenseUser() expense_user.setId(member.getId()) expense_user.setPaidShare(str(paid)) users.append(expense_user) for expense_user in users: expense_user.setOwedShare(str(cost * percent)) if cost == 0: raise Exception( self.tr('No se ha introducido monto para el gasto')) expense.setCost(str(cost)) expense.setUsers(users) expense.setGroupId(self.current_group.id) self.sObj.createExpense(expense) row = row + 1 self.le_initial_row.setText(str(row + 1)) except Exception as inst: QMessageBox.critical( self, self.tr("Error"), self.tr("Se ha producido un error en la fila") + str(row + 1) + "\n" + str(inst)) traceback.print_exc()