fix last bugs

This commit is contained in:
2025-09-16 10:47:18 +03:00
parent a43277cb7b
commit cf27903e10
13 changed files with 345 additions and 145 deletions

View File

@@ -330,11 +330,17 @@ class OrdersEditPage:
self.unloading_query = addresses
self.unloading.controls = self.create_unloading_list(addresses, self.on_delete_unloading_address_btn_click)
self.currency = ft.Dropdown(
self.currency_received = ft.Dropdown(
editable=True,
label="Currency",
options=self.get_currency(),
value=self.order['currency'],
value=self.order['currency_received'],
)
self.currency_paid = ft.Dropdown(
editable=True,
label="Currency",
options=self.get_currency(),
value=self.order['currency_paid'],
)
def get_currency(self):
@@ -924,7 +930,8 @@ class OrdersEditPage:
'paid_price': self.paid_price.value,
'loading_addresses': loading_addresses,
'unloading_addresses': unloading_addresses,
'currency': self.currency.value
'currency_received': self.currency_received.value,
'currency_paid': self.currency_paid.value
}
#print(saved_data)
if self.order_number.value == None or len(self.order_number.value)==0:
@@ -1189,12 +1196,21 @@ class OrdersEditPage:
ft.Row(
[
ft.Text("Price", size=18, weight=ft.FontWeight.BOLD),
self.currency
],
alignment=ft.MainAxisAlignment.START
),
self.received_price,
self.paid_price
ft.Row(
[
self.received_price,
self.currency_received
]
),
ft.Row(
[
self.paid_price,
self.currency_paid
]
)
],
expand=2.5
)

View File

@@ -261,7 +261,13 @@ class OrdersInPage:
self.filename = ft.Text()
self.currency = ft.Dropdown(
self.currency_received = ft.Dropdown(
editable=True,
label="Currency",
options=self.get_currency(),
value="EURO",
)
self.currency_expenses = ft.Dropdown(
editable=True,
label="Currency",
options=self.get_currency(),
@@ -842,7 +848,8 @@ class OrdersInPage:
'unloading_addresses': unloading_addresses,
'file':self.filename.value,
'expenses': self.expenses.value,
'currency': self.currency.value
'currency_received': self.currency_received.value,
'currency_expenses': self.currency_expenses.value
}
#print(saved_data)
if self.order_number.value == None or len(self.order_number.value)==0:
@@ -1055,12 +1062,21 @@ class OrdersInPage:
ft.Row(
[
ft.Text("Price / Expenses", size=18, weight=ft.FontWeight.BOLD),
self.currency
],
alignment=ft.MainAxisAlignment.START
),
self.received_price,
self.expenses
ft.Row(
[
self.received_price,
self.currency_received,
]
),
ft.Row(
[
self.expenses,
self.currency_expenses
]
)
],
expand=2.5
)

View File

@@ -236,7 +236,13 @@ class OrdersOutPage:
replacement_string=""
),
)
self.currency = ft.Dropdown(
self.currency_received = ft.Dropdown(
editable=True,
label="Currency",
options=self.get_currency(),
value="EURO",
)
self.currency_paid = ft.Dropdown(
editable=True,
label="Currency",
options=self.get_currency(),
@@ -778,7 +784,8 @@ class OrdersOutPage:
'paid_price': self.paid_price.value,
'loading_addresses': loading_addresses,
'unloading_addresses': unloading_addresses,
'currency':self.currency.value
'currency_received':self.currency_received.value,
'currency_paid': self.currency_paid.value
}
#print(saved_data)
if self.order_number.value == None or len(str(self.order_number.value))==0:
@@ -1054,13 +1061,22 @@ class OrdersOutPage:
ft.Row(
[
ft.Text("Price", size=18, weight=ft.FontWeight.BOLD),
self.currency
],
expand = True,
alignment=ft.MainAxisAlignment.SPACE_BETWEEN
),
self.received_price,
self.paid_price
ft.Row(
[
self.received_price,
self.currency_received
]
),
ft.Row(
[
self.paid_price,
self.currency_paid
]
)
],
expand=2.5,
alignment=ft.MainAxisAlignment.END

View File

@@ -1,4 +1,5 @@
ISO = {"EURO": "EUR", "USD": "USD", "CHF": "CHF", "GBP": "GBP"}
ALL_OPTION = "--ALL--"
def fetch_rates_for_base(base_ui: str) -> dict:
"""
@@ -45,7 +46,7 @@ class ReportOrderInPage:
ft.DataColumn(label=ft.Text("Expenses")),
ft.DataColumn(label=ft.Text("Received")),
ft.DataColumn(label=ft.Text("Profit")),
ft.DataColumn(label=ft.Text("Currency")),
#ft.DataColumn(label=ft.Text("Currency")),
],
rows=[],
border=ft.border.all(1, ft.Colors.GREY_300),
@@ -58,12 +59,13 @@ class ReportOrderInPage:
self.clients_filter = ft.Dropdown(
options=[
ft.dropdown.Option(text = client['name'], key=client['name']) for client in self.all_clients
ft.dropdown.Option(text=ALL_OPTION, key=ALL_OPTION),
*[ft.dropdown.Option(text=client['name'], key=client['name']) for client in self.all_clients]
],
width=250,
label="Clients",
hint_text= "Select client",
on_change= self.filter_by_client
hint_text="Select client",
on_change=self.filter_by_client
)
self.clients_filter_placeholder = ft.Container(content=self.clients_filter)
@@ -220,16 +222,19 @@ class ReportOrderInPage:
return amt / rate
# Rebuild table in base currency
self.rows_copy = list(self.rows)
total = 0.0
self.data_table.rows.clear()
# Keep current filters by working on the visible subset (self.rows_copy)
source_rows = list(self.rows_copy)
for r in self.rows_copy:
for r in source_rows:
# r structure: [order_number, client_name, transporter_name, order_date, paid, received, profit, currency]
original_currency = r[6]
paid_base = to_base(r[3], original_currency)
received_base = to_base(r[4], original_currency)
paid_number = r[3].split(" ")[0]
paid_currency = r[3].split(" ")[1]
received_number = r[4].split(" ")[0]
received_currency = r[4].split(" ")[1]
paid_base = to_base(paid_number, paid_currency)
received_base = to_base(received_number, received_currency)
profit_base = round(float(received_base) - float(paid_base), 2)
# Update a display row (do not mutate self.rows source amounts)
@@ -238,10 +243,10 @@ class ReportOrderInPage:
ft.DataCell(ft.Text(r[0])),
ft.DataCell(ft.Text(r[1])),
ft.DataCell(ft.Text(r[2])),
ft.DataCell(ft.Text(f"{paid_base:.2f}")),
ft.DataCell(ft.Text(f"{received_base:.2f}")),
ft.DataCell(ft.Text(f"{profit_base:.2f}")),
ft.DataCell(ft.Text(base)),
ft.DataCell(ft.Text(f"{paid_base:.2f} {base}")),
ft.DataCell(ft.Text(f"{received_base:.2f} {base}")),
ft.DataCell(ft.Text(f"{profit_base:.2f} {base}")),
#ft.DataCell(ft.Text(base)),
],
)
self.data_table.rows.append(row)
@@ -288,7 +293,7 @@ class ReportOrderInPage:
ft.DataCell(ft.Text(r[3])),
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
#ft.DataCell(ft.Text(r[6])),
],
)
self.data_table.rows.append(row)
@@ -304,20 +309,24 @@ class ReportOrderInPage:
print(all_orders)
total = 0
for order in all_orders:
if order['currency'] not in self.currency_list:
self.currency_list.append(order['currency'])
if len(self.currency_list) > 1:
self.convert_currency_placeholder.content=self.convert_currency
self.convert_currency_placeholder.content=self.convert_currency
if order['currency_received'] not in self.currency_list:
self.currency_list.append(order['currency_received'])
if order['currency_expenses'] not in self.currency_list:
self.currency_list.append(order['currency_expenses'])
order_number = order['order_number']
client_name = self.get_client(order['client_id'])['name']
order_date = order['created_at'].split("T")[0]
paid = order['expenses']
received = order['received_price']
currency = order['currency']
try:
profit = round(float(received) - float(paid), 2)
except:
profit = 0.00
paid = f"{order['expenses']} {order['currency_expenses']}"
received = f"{order['received_price']} {order['currency_received']}"
currency = order['currency_received'] if order['currency_expenses'] == order['currency_received'] else ''
if len(currency)>1:
try:
profit = f"{round(float(order['received_price']) - float(order['expenses']), 2)} {currency}"
except:
profit = ''
else:
profit = ''
row = ft.DataRow(
cells=[
@@ -327,13 +336,16 @@ class ReportOrderInPage:
ft.DataCell(ft.Text(paid)),
ft.DataCell(ft.Text(received)),
ft.DataCell(ft.Text(profit)),
ft.DataCell(ft.Text(currency)),
#ft.DataCell(ft.Text(currency)),
],
)
row_data = [order_number, client_name, order_date, paid, received, profit, currency]
self.rows.append(row_data)
self.data_table.rows.append(row)
total += profit
try:
total += float(profit.split(" ")[0])
except Exception:
pass
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
self.rows_copy = self.rows
@@ -368,11 +380,14 @@ class ReportOrderInPage:
ft.DataCell(ft.Text(r[3])),
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
#ft.DataCell(ft.Text(r[6])),
],
)
self.data_table.rows.append(row)
total += r[5]
try:
total += float(r[5].split(" ")[0])
except Exception:
pass
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
self.total.update()
@@ -389,7 +404,7 @@ class ReportOrderInPage:
buffer = []
data = datetime.strptime(self.start_date.value, '%Y-%m-%d')
for r in self.rows_copy:
obj_date = datetime.strptime(r[3], '%Y-%m-%d')
obj_date = datetime.strptime(r[2], '%Y-%m-%d')
if data <= obj_date:
row = ft.DataRow(
cells=[
@@ -399,12 +414,15 @@ class ReportOrderInPage:
ft.DataCell(ft.Text(r[3])),
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
#ft.DataCell(ft.Text(r[6])),
],
)
self.data_table.rows.append(row)
buffer.append(r)
total += r[5]
try:
total += float(r[5].split(" ")[0])
except Exception:
pass
self.rows_copy = buffer
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
@@ -418,7 +436,7 @@ class ReportOrderInPage:
buffer = []
data = datetime.strptime(self.end_date.value, '%Y-%m-%d')
for r in self.rows_copy:
obj_date = datetime.strptime(r[3], '%Y-%m-%d')
obj_date = datetime.strptime(r[2], '%Y-%m-%d')
if data >= obj_date:
row = ft.DataRow(
cells=[
@@ -428,12 +446,15 @@ class ReportOrderInPage:
ft.DataCell(ft.Text(r[3])),
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
#ft.DataCell(ft.Text(r[6])),
],
)
self.data_table.rows.append(row)
buffer.append(r)
total += r[5]
try:
total += float(r[5].split(" ")[0])
except Exception:
pass
self.rows_copy = buffer
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
@@ -442,10 +463,33 @@ class ReportOrderInPage:
def filter_by_client(self, e):
total = 0
self.data_table.rows.clear()
# If ALL or None is selected, show all rows
if self.clients_filter.value in (None, ALL_OPTION):
self.rows_copy = list(self.rows)
for r in self.rows_copy:
row = ft.DataRow(
cells=[
ft.DataCell(ft.Text(r[0])),
ft.DataCell(ft.Text(r[1])),
ft.DataCell(ft.Text(r[2])),
ft.DataCell(ft.Text(r[3])),
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
#ft.DataCell(ft.Text(r[6])),
],
)
self.data_table.rows.append(row)
try:
total += float(r[5].split(" ")[0])
except Exception:
pass
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
self.total.update()
return
# Otherwise filter by selected client
buffer = []
for r in self.rows_copy:
#print(r[1])
#print(self.clients_filter.value)
if r[1] == self.clients_filter.value:
row = ft.DataRow(
cells=[
@@ -455,12 +499,15 @@ class ReportOrderInPage:
ft.DataCell(ft.Text(r[3])),
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
#ft.DataCell(ft.Text(r[6])),
],
)
self.data_table.rows.append(row)
buffer.append(r)
total += r[5]
try:
total += float(r[5].split(" ")[0])
except Exception:
pass
self.rows_copy = buffer
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""

View File

@@ -1,4 +1,5 @@
ISO = {"EURO": "EUR", "USD": "USD", "CHF": "CHF", "GBP": "GBP"}
ALL_OPTION = "--ALL--"
def fetch_rates_for_base(base_ui: str) -> dict:
"""
@@ -46,7 +47,7 @@ class ReportOrderOutPage:
ft.DataColumn(label=ft.Text("Paid")),
ft.DataColumn(label=ft.Text("Received")),
ft.DataColumn(label=ft.Text("Profit")),
ft.DataColumn(label=ft.Text("Currency")),
#ft.DataColumn(label=ft.Text("Currency")),
],
rows=[],
border=ft.border.all(1, ft.Colors.GREY_300),
@@ -59,23 +60,25 @@ class ReportOrderOutPage:
self.clients_filter = ft.Dropdown(
options=[
ft.dropdown.Option(text = client['name'], key=client['name']) for client in self.all_clients
ft.dropdown.Option(text=ALL_OPTION, key=ALL_OPTION),
*[ft.dropdown.Option(text=client['name'], key=client['name']) for client in self.all_clients]
],
width=250,
label="Clients",
hint_text= "Select client",
on_change= self.filter_by_client
hint_text="Select client",
on_change=self.filter_by_client
)
self.clients_filter_placeholder = ft.Container(content=self.clients_filter)
self.transporters_filter = ft.Dropdown(
options=[
ft.dropdown.Option(text = transporter['name'], key=transporter['name']) for transporter in self.all_transporters
ft.dropdown.Option(text=ALL_OPTION, key=ALL_OPTION),
*[ft.dropdown.Option(text=transporter['name'], key=transporter['name']) for transporter in self.all_transporters]
],
width=250,
label="Transporters",
hint_text= "Select transporter",
on_change= self.filter_by_transporter
hint_text="Select transporter",
on_change=self.filter_by_transporter
)
self.transporters_filter_placeholder = ft.Container(content=self.transporters_filter)
@@ -232,16 +235,20 @@ class ReportOrderOutPage:
return amt / rate
# Rebuild table in base currency
self.rows_copy = list(self.rows)
#self.rows_copy = list(self.rows)
total = 0.0
self.data_table.rows.clear()
source_rows = list(self.rows_copy)
for r in self.rows_copy:
#for r in self.rows_copy:
for r in source_rows:
# r structure: [order_number, client_name, transporter_name, order_date, paid, received, profit, currency]
original_currency = r[7]
paid_base = to_base(r[4], original_currency)
received_base = to_base(r[5], original_currency)
paid_number = r[4].split(" ")[0]
paid_currency = r[4].split(" ")[1]
received_number = r[5].split(" ")[0]
received_currency = r[5].split(" ")[1]
paid_base = to_base(paid_number, paid_currency)
received_base = to_base(received_number, received_currency)
profit_base = round(float(received_base) - float(paid_base), 2)
# Update a display row (do not mutate self.rows source amounts)
@@ -251,10 +258,10 @@ class ReportOrderOutPage:
ft.DataCell(ft.Text(r[1])),
ft.DataCell(ft.Text(r[2])),
ft.DataCell(ft.Text(r[3])),
ft.DataCell(ft.Text(f"{paid_base:.2f}")),
ft.DataCell(ft.Text(f"{received_base:.2f}")),
ft.DataCell(ft.Text(f"{profit_base:.2f}")),
ft.DataCell(ft.Text(base)),
ft.DataCell(ft.Text(f"{paid_base:.2f} {base}")),
ft.DataCell(ft.Text(f"{received_base:.2f} {base}")),
ft.DataCell(ft.Text(f"{profit_base:.2f} {base}")),
#ft.DataCell(ft.Text(base)),
],
)
self.data_table.rows.append(row)
@@ -312,7 +319,7 @@ class ReportOrderOutPage:
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
ft.DataCell(ft.Text(r[7])),
#ft.DataCell(ft.Text(r[7])),
],
)
self.data_table.rows.append(row)
@@ -327,25 +334,27 @@ class ReportOrderOutPage:
all_orders = self.get_orders()
total = 0
for order in all_orders:
if order['currency'] not in self.currency_list:
self.currency_list.append(order['currency'])
if len(self.currency_list) > 1:
self.convert_currency_placeholder.content=self.convert_currency
# Skip non-active orders from reports
#print(order.get('status'))
self.convert_currency_placeholder.content=self.convert_currency
if order['currency_received'] not in self.currency_list:
self.currency_list.append(order['currency_received'])
if order['currency_paid'] not in self.currency_list:
self.currency_list.append(order['currency_paid'])
if order.get('status') != 'active':
continue
order_number = order['order_number']
client_name = self.get_client(order['client_id'])['name']
transporter_name = self.get_transporter(order['transporter_id'])['name']
order_date = order['created_at'].split("T")[0]
paid = order['paid_price']
received = order['received_price']
currency = order['currency']
try:
profit = round(float(received) - float(paid), 2)
except:
profit = 0.00
paid = f"{order['paid_price']} {order['currency_paid']}"
received = f"{order['received_price']} {order['currency_received']}"
currency = order['currency_received'] if order['currency_paid'] == order['currency_received'] else ''
if len(currency)>1:
try:
profit = f"{round(float(order['received_price']) - float(order['paid_price']), 2)} {currency}"
except:
profit = ''
else:
profit = ''
row = ft.DataRow(
cells=[
@@ -356,13 +365,16 @@ class ReportOrderOutPage:
ft.DataCell(ft.Text(paid)),
ft.DataCell(ft.Text(received)),
ft.DataCell(ft.Text(profit)),
ft.DataCell(ft.Text(currency)),
#ft.DataCell(ft.Text(currency)),
],
)
row_data = [order_number, client_name, transporter_name, order_date, paid, received, profit, currency]
self.rows.append(row_data)
self.data_table.rows.append(row)
total += profit
try:
total += float(profit.split(" ")[0])
except Exception:
pass
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
self.rows_copy = self.rows
@@ -415,11 +427,14 @@ class ReportOrderOutPage:
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
ft.DataCell(ft.Text(r[7])),
#ft.DataCell(ft.Text(r[7])),
],
)
self.data_table.rows.append(row)
total += r[6]
try:
total += float(r[6].split(" ")[0])
except Exception:
pass
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
self.total.update()
@@ -447,12 +462,15 @@ class ReportOrderOutPage:
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
ft.DataCell(ft.Text(r[7])),
#ft.DataCell(ft.Text(r[7])),
],
)
self.data_table.rows.append(row)
buffer.append(r)
total += r[6]
try:
total += float(r[6].split(" ")[0])
except Exception:
pass
self.rows_copy = buffer
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
@@ -477,12 +495,15 @@ class ReportOrderOutPage:
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
ft.DataCell(ft.Text(r[7])),
#ft.DataCell(ft.Text(r[7])),
],
)
self.data_table.rows.append(row)
buffer.append(r)
total += r[6]
try:
total += float(r[6].split(" ")[0])
except Exception:
pass
self.rows_copy = buffer
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
@@ -491,10 +512,33 @@ class ReportOrderOutPage:
def filter_by_client(self, e):
total = 0
self.data_table.rows.clear()
# If ALL or None is selected, show all rows
if self.clients_filter.value in (None, ALL_OPTION):
self.rows_copy = list(self.rows)
for r in self.rows_copy:
row = ft.DataRow(
cells=[
ft.DataCell(ft.Text(r[0])),
ft.DataCell(ft.Text(r[1])),
ft.DataCell(ft.Text(r[2])),
ft.DataCell(ft.Text(r[3])),
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
#ft.DataCell(ft.Text(r[7])),
],
)
self.data_table.rows.append(row)
try:
total += float(r[6].split(" ")[0])
except Exception:
pass
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
self.total.update()
return
buffer = []
for r in self.rows_copy:
#print(r[1])
#print(self.clients_filter.value)
if r[1] == self.clients_filter.value:
row = ft.DataRow(
cells=[
@@ -505,12 +549,15 @@ class ReportOrderOutPage:
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
ft.DataCell(ft.Text(r[7])),
#ft.DataCell(ft.Text(r[7])),
],
)
self.data_table.rows.append(row)
buffer.append(r)
total += r[6]
try:
total += float(r[6].split(" ")[0])
except Exception:
pass
self.rows_copy = buffer
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
@@ -519,10 +566,33 @@ class ReportOrderOutPage:
def filter_by_transporter(self, e):
total = 0
self.data_table.rows.clear()
# If ALL or None is selected, show all rows
if self.transporters_filter.value in (None, ALL_OPTION):
self.rows_copy = list(self.rows)
for r in self.rows_copy:
row = ft.DataRow(
cells=[
ft.DataCell(ft.Text(r[0])),
ft.DataCell(ft.Text(r[1])),
ft.DataCell(ft.Text(r[2])),
ft.DataCell(ft.Text(r[3])),
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
#ft.DataCell(ft.Text(r[7])),
],
)
self.data_table.rows.append(row)
try:
total += float(r[6].split(" ")[0])
except Exception:
pass
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""
self.total.update()
return
buffer = []
for r in self.rows_copy:
#print(r[2])
#print(self.transporters_filter.value)
if r[2] == self.transporters_filter.value:
row = ft.DataRow(
cells=[
@@ -533,12 +603,15 @@ class ReportOrderOutPage:
ft.DataCell(ft.Text(r[4])),
ft.DataCell(ft.Text(r[5])),
ft.DataCell(ft.Text(r[6])),
ft.DataCell(ft.Text(r[7])),
#ft.DataCell(ft.Text(r[7])),
],
)
self.data_table.rows.append(row)
buffer.append(r)
total += r[6]
try:
total += float(r[6].split(" ")[0])
except Exception:
pass
self.rows_copy = buffer
self.data_table.update()
self.total.value = f"Total: {total}" if len(self.currency_list)==1 else ""

View File

@@ -298,11 +298,17 @@ class ViewOrdersIn:
self.filename = ft.Text(value=self.order['file'])
self.currency = ft.Dropdown(
self.currency_received = ft.Dropdown(
editable=True,
label="Currency",
options=self.get_currency(),
value=self.order['currency'],
value=self.order['currency_received'],
)
self.currency_expenses = ft.Dropdown(
editable=True,
label="Currency",
options=self.get_currency(),
value=self.order['currency_expenses'],
)
def get_currency(self):
@@ -851,7 +857,8 @@ class ViewOrdersIn:
'unloading_addresses': unloading_addresses,
'file':self.filename.value,
'expenses': self.expenses.value,
'currency': self.currency.value
'currency_received': self.currency_received.value,
'currency_expenses': self.currency_expenses.value
}
#print(saved_data)
if self.order_number.value == None or len(self.order_number.value)==0:
@@ -1065,12 +1072,21 @@ class ViewOrdersIn:
ft.Row(
[
ft.Text("Price / Expenses", size=18, weight=ft.FontWeight.BOLD),
self.currency
],
alignment=ft.MainAxisAlignment.START
),
self.received_price,
self.expenses,
ft.Row(
[
self.received_price,
self.currency_received
]
),
ft.Row(
[
self.expenses,
self.currency_expenses
]
)
],
expand=2.5
)