using System.Threading.Tasks; using System.Web.Mvc; using Abp.Web.Mvc.Authorization; using Abp.Runtime.Caching; using Abp.UI; using ContractService.Authorization; using ContractService.Configuration; using ContractService.LegalContract; using IwbZero.Runtime.Session; using IwbZero.ToolCommon.StringModel; namespace ContractService.Controllers { [AbpMvcAuthorize] public class LawFirmController : IwbControllerBase { public LawFirmController( ICacheManager cacheManager, LegalManager legalManager) { LegalManager = legalManager; CacheManager = cacheManager; } public LegalManager LegalManager { get; } public async Task Index() { if (AbpSession.AccountType == AccountTypeDefinition.System) { return View(); } if (AbpSession.AccountType == AccountTypeDefinition.Lawyer&&LegalManager.IsLawFirmMaster(AbpSession.AccountNo)) { var lawFirmNo = await LegalManager.QueryLawFirmNoByLawyerAsync(AbpSession.AccountNo); ViewBag.LawFirmNo = lawFirmNo; return View("LawFirmDetail"); } if (AbpSession.AccountType == AccountTypeDefinition.Lawyer && AbpSession.GetClaimValue(IwbConsts.UserCompanyLawFirmClaimType).Empty()) { throw new UserFriendlyException("当前账号未绑定律师,不能访问!"); } CheckErrors("非法账号,不能访问!"); return View(); } public ActionResult Lawyer() { if (AbpSession.AccountType != AccountTypeDefinition.Lawyer && AbpSession.AccountType != AccountTypeDefinition.System) { CheckErrors("非法账号,不能访问!"); } if (AbpSession.AccountType == AccountTypeDefinition.Lawyer && AbpSession.GetClaimValue(IwbConsts.UserCompanyLawFirmClaimType).Empty()) { throw new UserFriendlyException("当前账号未绑定律师,不能访问!"); } ViewBag.LawFirmNo = AbpSession.AccountType == AccountTypeDefinition.Lawyer ? AbpSession.GetClaimValue(IwbConsts.UserCompanyLawFirmClaimType) : null; return View(); } public ActionResult Organization() { if (AbpSession.AccountType != AccountTypeDefinition.Lawyer) { CheckErrors("非法账号,不能访问!"); } if (AbpSession.AccountType == AccountTypeDefinition.Lawyer && AbpSession.GetClaimValue(IwbConsts.UserCompanyLawFirmClaimType).Empty()) { throw new UserFriendlyException("当前账号未绑定律师,不能访问!"); } ViewBag.LawFirmNo = AbpSession.AccountType == AccountTypeDefinition.Lawyer ? AbpSession.GetClaimValue(IwbConsts.UserCompanyLawFirmClaimType) : null; return View(); } } }