Ejemplo n.º 1
0
        public async Task <ApiResultCode> DeleteTestAsync(DeleteTestCommand datamodel)
        {
            if (_unit.Context.Tblusersubmitedanswer.Where(t => t.TestId == datamodel.Id).Any())
            {
                return(new ApiResultCode(ApiResultType.Error, messageText: "Exist test will not delete from record. user have already tacken test!"));
            }

            var tbltest = new Tbltest();

            tbltest.Id             = datamodel.Id;
            tbltest.Status         = 0;
            tbltest.LastUpdatedBy  = datamodel.CurrentUserId;
            tbltest.LastUpdateDate = DateTime.Now;

            _unit.Context.Tbltest.Attach(tbltest);
            _unit.Context.Entry(tbltest).Property(t => t.Status).IsModified         = true;
            _unit.Context.Entry(tbltest).Property(t => t.LastUpdatedBy).IsModified  = true;
            _unit.Context.Entry(tbltest).Property(t => t.LastUpdateDate).IsModified = true;


            var result = await _unit.SaveChangesAsync();

            if (result.ResultType == ApiResultType.Success)
            {
                return(new ApiResultCode(ApiResultType.Success, messageText: "Test Deleted!"));
            }
            return(new ApiResultCode(ApiResultType.Error, messageText: "Can not Delete!"));
        }
Ejemplo n.º 2
0
        public async Task <ApiResultCode> CreateTestAsync(CreateTestCommand request)
        {
            try
            {
                string filter   = _unit.Context.Tbltest.Where(t => t.CategoryId == request.CatetoryId).Select(t => t.Name).FirstOrDefault();
                var    modeldto = new Tbltest();
                modeldto.Name           = request.Name;
                modeldto.Description    = request.Description;
                modeldto.NoOfQuestion   = request.NoOfQuestion;
                modeldto.CategoryId     = request.CatetoryId;
                modeldto.InsertDate     = DateTime.Now;
                modeldto.LastUpdateDate = DateTime.Now;
                modeldto.Status         = 1;
                modeldto.InsertedBy     = request.CurrentUserId;
                modeldto.LastUpdatedBy  = request.CurrentUserId;
                modeldto.ClientId       = request.CurrentCientId;
                if (request.Id > 0)
                {
                    modeldto.Id = request.Id;
                    _unit.Context.Tbltest.Attach(modeldto);
                    _unit.Context.Entry(modeldto).Property(t => t.Name).IsModified           = true;
                    _unit.Context.Entry(modeldto).Property(t => t.Description).IsModified    = true;
                    _unit.Context.Entry(modeldto).Property(t => t.NoOfQuestion).IsModified   = true;
                    _unit.Context.Entry(modeldto).Property(t => t.CategoryId).IsModified     = true;
                    _unit.Context.Entry(modeldto).Property(t => t.LastUpdateDate).IsModified = true;
                    _unit.Context.Entry(modeldto).Property(t => t.LastUpdatedBy).IsModified  = true;
                }
                else
                {
                    if (filter != null && filter.ToLower() == request.Name.ToLower())
                    {
                        return(new ApiResultCode(ApiResultType.Error, messageText: " Duplicate Test can not be Allowed"));
                    }
                    _ = _unit.GetRepository <Tbltest>().Add(modeldto);
                }
                var result = await _unit.SaveChangesAsync();

                if (result.ResultType == ApiResultType.Success)
                {
                    return(new ApiResultCode(ApiResultType.Success, messageText: "Added"));
                }
                return(new ApiResultCode(ApiResultType.Error, messageText: " Can not be Added"));
            }
            catch (Exception ex)
            {
                ErrorTrace.Logger(LogArea.RepositoryLayer, ex);
                return(new ApiResultCode(ApiResultType.Error, messageText: " Can not be Added"));
            }
        }