summer/summer/views/__init__.py

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