public async Task <TenantRequest> ExecuteTenantRequestCommandAsync(string propCode, string tenantUnit,
                                                                           string requestCode,
                                                                           ITenantRequestCommand command)
        {
            var tenantRequest = this.GetTenantRequest(propCode, tenantUnit, requestCode);

            GetClaims().Check(() => GetClaims().IsUserCommand(command.GetType()));
            tenantRequest = tenantRequest.ExecuteCommand(command);

            _propertyRepository.UpdateTenantRequest(tenantRequest);

            await _notifyPartiesService.CreateAndSendEmailAsync(tenantRequest);

            return(tenantRequest);
        }
Beispiel #2
0
 public TenantRequestChange(TenantRequestStatusEnum tenantRequestStatus, ITenantRequestCommand command, int num = 1, DateTime?dateCreated = null, Guid?id = null) : base(dateCreated, id)
 {
     TenantRequestStatus = tenantRequestStatus;
     Command             = command;
     Num = num;
 }