183 lines
6.6 KiB
Python
183 lines
6.6 KiB
Python
from summer.templates import RoleDetail, RoleList, UserDetail, UserList, ProductGroupList, ProductGroupDetail, TaxList, \
|
|
TaxDetail, ProductList, ProductDetail
|
|
from summer.templates.SaleWindow import SaleWindow
|
|
from summer.views.user import show_list as user_list, user_info, save_user, update_user
|
|
from summer.views.role import show_list as role_list, role_info, save_role, update_role
|
|
from summer.views.product_group import show_list as product_group_list, product_group_info, save_product_group, \
|
|
update_product_group
|
|
from summer.views.tax import show_list as tax_list, tax_info, save_tax, update_tax
|
|
from summer.views.product import show_list as product_list, product_info, save_product, update_product
|
|
|
|
__author__ = 'tanshu'
|
|
|
|
|
|
class Router():
|
|
def __init__(self):
|
|
self.user_list_form = None
|
|
self.user_detail_form = None
|
|
self.role_list_form = None
|
|
self.role_detail_form = None
|
|
self.product_group_list_form = None
|
|
self.product_group_detail_form = None
|
|
self.tax_list_form = None
|
|
self.tax_detail_form = None
|
|
self.product_list_form = None
|
|
self.product_detail_form = None
|
|
self.sales_form = None
|
|
|
|
def show_users(self):
|
|
users = user_list()
|
|
if self.user_list_form is None:
|
|
self.user_list_form = UserList(self, users)
|
|
self.user_list_form.destroyed.connect(self.user_list_form_destroyed)
|
|
self.user_list_form.show()
|
|
|
|
def user_list_form_destroyed(self):
|
|
self.user_list_form = None
|
|
|
|
def show_user(self, id=None):
|
|
user = user_info(id)
|
|
if self.user_detail_form is None:
|
|
self.user_detail_form = UserDetail(self, user)
|
|
self.user_detail_form.destroyed.connect(self.user_detail_form_destroyed)
|
|
self.user_detail_form.show()
|
|
|
|
def user_detail_form_destroyed(self):
|
|
self.user_detail_form = None
|
|
if self.user_list_form is not None:
|
|
self.user_list_form.update_data(user_list())
|
|
|
|
def save_user(self, user):
|
|
if 'UserID' not in user:
|
|
save_user(user)
|
|
else:
|
|
update_user(user)
|
|
|
|
|
|
def show_roles(self):
|
|
roles = role_list()
|
|
if self.role_list_form is None:
|
|
self.role_list_form = RoleList(self, roles)
|
|
self.role_list_form.destroyed.connect(self.role_list_form_destroyed)
|
|
self.role_list_form.show()
|
|
|
|
def role_list_form_destroyed(self):
|
|
self.role_list_form = None
|
|
|
|
def show_role(self, id=None):
|
|
role = role_info(id)
|
|
if self.role_detail_form is None:
|
|
self.role_detail_form = RoleDetail(self, role)
|
|
self.role_detail_form.destroyed.connect(self.role_detail_form_destroyed)
|
|
self.role_detail_form.show()
|
|
|
|
def role_detail_form_destroyed(self):
|
|
self.role_detail_form = None
|
|
if self.role_list_form is not None:
|
|
self.role_list_form.update_data(role_list())
|
|
|
|
def save_role(self, role):
|
|
if 'RoleID' not in role:
|
|
save_role(role)
|
|
else:
|
|
update_role(role)
|
|
|
|
|
|
def show_product_groups(self):
|
|
product_groups = product_group_list()
|
|
if self.product_group_list_form is None:
|
|
self.product_group_list_form = ProductGroupList(self, product_groups)
|
|
self.product_group_list_form.destroyed.connect(self.product_group_list_form_destroyed)
|
|
self.product_group_list_form.show()
|
|
|
|
def product_group_list_form_destroyed(self):
|
|
self.product_group_list_form = None
|
|
|
|
def show_product_group(self, id=None):
|
|
product_group = product_group_info(id)
|
|
if self.product_group_detail_form is None:
|
|
self.product_group_detail_form = ProductGroupDetail(self, product_group)
|
|
self.product_group_detail_form.destroyed.connect(self.product_group_detail_form_destroyed)
|
|
self.product_group_detail_form.show()
|
|
|
|
def product_group_detail_form_destroyed(self):
|
|
self.product_group_detail_form = None
|
|
if self.product_group_list_form is not None:
|
|
self.product_group_list_form.update_data(product_group_list())
|
|
|
|
def save_product_group(self, product_group):
|
|
if 'ProductGroupID' not in product_group:
|
|
save_product_group(product_group)
|
|
else:
|
|
update_product_group(product_group)
|
|
|
|
|
|
def show_taxes(self):
|
|
taxes = tax_list()
|
|
if self.tax_list_form is None:
|
|
self.tax_list_form = TaxList(self, taxes)
|
|
self.tax_list_form.destroyed.connect(self.tax_list_form_destroyed)
|
|
self.tax_list_form.show()
|
|
|
|
def tax_list_form_destroyed(self):
|
|
self.tax_list_form = None
|
|
|
|
def show_tax(self, id=None):
|
|
tax = tax_info(id)
|
|
if self.tax_detail_form is None:
|
|
self.tax_detail_form = TaxDetail(self, tax)
|
|
self.tax_detail_form.destroyed.connect(self.tax_detail_form_destroyed)
|
|
self.tax_detail_form.show()
|
|
|
|
def tax_detail_form_destroyed(self):
|
|
self.tax_detail_form = None
|
|
if self.tax_list_form is not None:
|
|
self.tax_list_form.update_data(tax_list())
|
|
|
|
def save_tax(self, tax):
|
|
if 'TaxID' not in tax:
|
|
save_tax(tax)
|
|
else:
|
|
update_tax(tax)
|
|
|
|
|
|
def show_products(self):
|
|
products = product_list()
|
|
if self.product_list_form is None:
|
|
self.product_list_form = ProductList(self, products)
|
|
self.product_list_form.destroyed.connect(self.product_list_form_destroyed)
|
|
self.product_list_form.show()
|
|
|
|
def product_list_form_destroyed(self):
|
|
self.product_list_form = None
|
|
|
|
def show_product(self, id=None):
|
|
pass
|
|
product = product_info(id)
|
|
product_group = product_group_list()
|
|
taxes = tax_list()
|
|
if self.product_detail_form is None:
|
|
self.product_detail_form = ProductDetail(self, product, product_group, taxes)
|
|
self.product_detail_form.destroyed.connect(self.product_detail_form_destroyed)
|
|
self.product_detail_form.show()
|
|
|
|
def product_detail_form_destroyed(self):
|
|
self.product_detail_form = None
|
|
if self.product_list_form is not None:
|
|
self.product_list_form.update_data(product_list())
|
|
|
|
def save_product(self, product):
|
|
if 'ProductID' not in product:
|
|
save_product(product)
|
|
else:
|
|
update_product(product)
|
|
|
|
def show_sales(self):
|
|
if self.sales_form is None:
|
|
self.sales_form = SaleWindow(self)
|
|
self.sales_form.destroyed.connect(self.sales_form_destroyed)
|
|
self.sales_form.show()
|
|
|
|
def sales_form_destroyed(self):
|
|
self.sales_form = None
|