diff --git a/models/organization.xlsx b/models/organization.xlsx index fd5a87b..0e48571 100644 Binary files a/models/organization.xlsx and b/models/organization.xlsx differ diff --git a/rbac/init.py b/rbac/init.py index 3ecec9e..b4ad0fa 100644 --- a/rbac/init.py +++ b/rbac/init.py @@ -4,7 +4,10 @@ from rbac.check_perm import objcheckperm, get_user_roles, checkUserPassword, reg from rbac.set_role_perms import set_role_perm, set_role_perms from rbac.userperm import UserPermisions -async def get_owner_orgid(sor, orgid): +async def get_owner_orgid(*args, **kw): + return '0' + +async def sor_get_owner_orgid(sor, orgid): return '0' def load_rbac(): diff --git a/wwwroot/add_provider.dspy b/wwwroot/add_provider.dspy index 7a44acc..f5be3e0 100644 --- a/wwwroot/add_provider.dspy +++ b/wwwroot/add_provider.dspy @@ -7,11 +7,12 @@ db = DBPools() dbname = get_module_dbname('rbac') async with db.sqlorContext(dbname) as sor: ownerid = await get_userorgid() - await create_org(sor, ns, orgtypes=['customer', 'provider']) - if openCustomerAccounts: - await openCustomerAccounts(sor, ownerid, orgid) - if openProviderAccounts: - await openProviderAccounts(sor, ownerid, id) + orgid = id + await create_org(sor, ns, orgtypes=['provider']) + try: + await openRetailRelationshipAccounts(sor, ownerid, ownerid, orgid) + except Exception as e: + exception(f'{e}') return { "widgettype":"Message", "options":{ diff --git a/wwwroot/add_provider.ui b/wwwroot/add_provider.ui new file mode 100644 index 0000000..04684dc --- /dev/null +++ b/wwwroot/add_provider.ui @@ -0,0 +1,41 @@ +{% set orgid = get_userorgid() %} +{% if orgid != get_owner_orgid() %} +{ + "widgettype":"Text", + "options":{ + "i18n":true, + "otext":"you are not owner user" + } +} +{% else %} +{ + "widgettype":"Form", + "options":{ + "width":"100%", + "height":"100%", + "fields":[ + { + "name":"orgname", + "label":"机构名称", + "uitype":"str", + "required":true + },{ + "name":"orgabbr", + "label":"机构简称", + "uitype":"str" + } + ] + }, + "binds":[ + { + "wid":"self", + "event":"submit", + "actiontype":"urlwidget", + "target":"self", + "options":{ + "url":"{{entire_url('add_provider.dspy')}}" + } + } + ] +} +{% endif %} diff --git a/wwwroot/user/reset_password/reset_password.dspy b/wwwroot/user/reset_password/reset_password.dspy index c118a57..d251eae 100644 --- a/wwwroot/user/reset_password/reset_password.dspy +++ b/wwwroot/user/reset_password/reset_password.dspy @@ -7,7 +7,7 @@ if userid is None: ns = { 'id':userid, - 'password':params_kw.password + 'password': password_encode(params_kw.password) } db = DBPools() dbname = get_module_dbname('rbac')