コード例 #1
0
ファイル: UnitsController.cs プロジェクト: mrjohndowe/Core
        public async Task <IActionResult> DeleteUnit(int unitId, CancellationToken cancellationToken)
        {
            if (!await _authorizationService.CanUserModifyUnitAsync(UserId, unitId))
            {
                Unauthorized();
            }

            var unit = await _unitsService.GetUnitByIdAsync(unitId);

            var auditEvent = new AuditEvent();

            auditEvent.DepartmentId = DepartmentId;
            auditEvent.UserId       = UserId;
            auditEvent.Type         = AuditLogTypes.UnitRemoved;
            auditEvent.Before       = unit.CloneJson();
            _eventAggregator.SendMessage <AuditEvent>(auditEvent);

            await _unitsService.DeleteUnitAsync(unitId, cancellationToken);

            return(RedirectToAction("Index"));
        }