Пример #1
0
        public async Task <IActionResult> AddSubject(SubjectDtoForAdd model)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            //if (await _repo.SubjectExists(subject.Name))
            //    return BadRequest(new { message = CustomMessage.RecordAlreadyExist });

            _response = await _repo.AddSubject(model);

            return(Ok(_response));
        }
Пример #2
0
        public async Task <ServiceResponse <object> > AddSubject(SubjectDtoForAdd model)
        {
            try
            {
                var ListToAdd = new List <Subject>();
                var subject   = model;
                if (!await SubjectExists(subject.Name))
                {
                    ListToAdd.Add(new Subject
                    {
                        Name            = subject.Name,
                        Active          = true,
                        CreditHours     = subject.CreditHours,
                        CreatedById     = _LoggedIn_UserID,
                        CreatedDateTime = DateTime.UtcNow,
                        SchoolBranchId  = _LoggedIn_BranchID,
                    });
                    await _context.Subjects.AddRangeAsync(ListToAdd);

                    await _context.SaveChangesAsync();

                    _serviceResponse.Message = CustomMessage.Added;
                    _serviceResponse.Success = true;
                }
                else
                {
                    _serviceResponse.Message = CustomMessage.RecordAlreadyExist;
                    _serviceResponse.Success = false;
                }
                return(_serviceResponse);
            }
            catch (DbUpdateException ex)
            {
                if (ex.InnerException.Message.Contains("Cannot insert duplicate key row"))
                {
                    _serviceResponse.Success = false;
                    _serviceResponse.Message = CustomMessage.SqlDuplicateRecord;
                }
                else
                {
                    throw ex;
                }
                return(_serviceResponse);
            }
        }