public QuestionController(UserManager <ApplicationUser> userManager,
                                  IHttpContextAccessor httpContextAccessor,
                                  MardisContext mardisContext,
                                  ILogger <QuestionController> logger,
                                  ILogger <ServicesFilterController> loggeFilter,
                                  IDataProtectionProvider protectorProvider,
                                  IMemoryCache memoryCache,
                                  RedisCache distributedCache)
            : base(userManager, httpContextAccessor, mardisContext, logger)
        {
            _cache                            = distributedCache;
            _protector                        = protectorProvider.CreateProtector(GetType().FullName);
            _logger                           = logger;
            ControllerName                    = CTask.Controller;
            TableName                         = CTask.TableName;
            _taskCampaignBusiness             = new TaskCampaignBusiness(mardisContext, distributedCache);
            _taskNotImplementedReasonBusiness = new TaskNotImplementedReasonBusiness(mardisContext);
            _branchImageBusiness              = new BranchImageBusiness(mardisContext);
            _userBusiness                     = new UserBusiness(mardisContext);
            _questionBusiness                 = new QuestionBusiness(mardisContext);

            if (ApplicationUserCurrent.UserId != null)
            {
                _userId = new Guid(ApplicationUserCurrent.UserId);
            }

            _idAccount = ApplicationUserCurrent.AccountId;
        }
        public TaskController(UserManager <ApplicationUser> userManager,
                              IHttpContextAccessor httpContextAccessor,
                              MardisContext mardisContext,
                              ILogger <TaskController> logger,
                              ILogger <ServicesFilterController> loggeFilter,
                              IDataProtectionProvider protectorProvider,
                              IMemoryCache memoryCache,
                              RedisCache distributedCache, IHostingEnvironment envrnmt)
            : base(userManager, httpContextAccessor, mardisContext, logger)
        {
            _protector                        = protectorProvider.CreateProtector(GetType().FullName);
            _logger                           = logger;
            ControllerName                    = CTask.Controller;
            TableName                         = CTask.TableName;
            _taskCampaignBusiness             = new TaskCampaignBusiness(mardisContext, distributedCache);
            _statusTaskBusiness               = new StatusTaskBusiness(mardisContext, distributedCache);
            _taskNotImplementedReasonBusiness = new TaskNotImplementedReasonBusiness(mardisContext);
            _branchImageBusiness              = new BranchImageBusiness(mardisContext);
            _userBusiness                     = new UserBusiness(mardisContext);
            _questionBusiness                 = new QuestionBusiness(mardisContext);
            _questionDetailBusiness           = new QuestionDetailBusiness(mardisContext);
            _cache           = memoryCache;
            _serviceBusiness = new ServiceBusiness(mardisContext);
            _Env             = envrnmt;
            if (ApplicationUserCurrent.UserId != null)
            {
                _userId          = new Guid(ApplicationUserCurrent.UserId);
                Global.UserID    = _userId;
                Global.AccountId = ApplicationUserCurrent.AccountId;
                Global.ProfileId = ApplicationUserCurrent.ProfileId;
                Global.PersonId  = ApplicationUserCurrent.PersonId;
            }

            _idAccount = ApplicationUserCurrent.AccountId;
        }
 public BranchController(UserManager <ApplicationUser> userManager,
                         IHttpContextAccessor httpContextAccessor,
                         MardisContext mardisContext,
                         ILogger <BranchController> logger,
                         ILogger <ServicesFilterController> loggeFilter,
                         IMemoryCache memoryCache,
                         RedisCache distributedCache)
     : base(userManager, httpContextAccessor, mardisContext, logger)
 {
     TableName             = CBranch.TableName;
     ControllerName        = CBranch.Controller;
     _cache                = memoryCache;
     _branchBusiness       = new BranchBusiness(mardisContext);
     _branchImageBusiness  = new BranchImageBusiness(mardisContext);
     _taskCampaignBusiness = new TaskCampaignBusiness(mardisContext, distributedCache);
     _countryBusiness      = new CountryBusiness(mardisContext, memoryCache);
     _provinceBusiness     = new ProvinceBusiness(mardisContext, memoryCache);
     _districtBusiness     = new DistrictBusiness(mardisContext);
     _parishBusiness       = new ParishBusiness(mardisContext);
     _sectorBusiness       = new SectorBusiness(mardisContext);
     _smsBusiness          = new SmsBusiness(mardisContext);
 }