예제 #1
0
        public IActionResult ValidateName([FromBody] MoistureReader model)
        {
            if (model == null)
            {
                return(NotFound());
            }
            if (General.IsDevelopment)
            {
                logger.LogDebug(ModelState.ToJson());
            }
            var existing = repository.Get().FirstOrDefault(a => a.Description == model.Description);

            if (existing == null)
            {
                return(Accepted(true));
            }
            if (existing.MoistureReaderId != model.MoistureReaderId)
            {
                return(UnprocessableEntity(Constants.ErrorMessages.EntityExists("Description")));
            }
            else
            {
                return(Accepted(true));
            }
        }
예제 #2
0
        public MoistureReader Update(MoistureReader model)
        {
            var entity = dbContext.MoistureReaders.Find(model.MoistureReaderId);

            if (entity == null)
            {
                throw new Exception("Selected Record does not exists.");
            }

            if (entity.Description.Trim() != model.Description?.Trim())
            {
                var qry = $@"UPDATE PurchaseTransactions SET 
                    {nameof(PurchaseTransaction.MoistureReaderDesc)} = '{model.Description}' 
                    WHERE {nameof(PurchaseTransaction.MoistureReaderId)} = {entity.MoistureReaderId}";
                dbContext.Database.ExecuteSqlRaw(qry);

                qry = $@"UPDATE SaleTransactions SET
                    { nameof(SaleTransaction.MoistureReaderDesc)} = '{model.Description}'
                    WHERE { nameof(SaleTransaction.MoistureReaderId)} = { entity.MoistureReaderId}";
                dbContext.Database.ExecuteSqlRaw(qry);
            }

            entity.Description = (model.Description ?? "").ToUpper();

            dbContext.MoistureReaders.Update(entity);

            dbContext.SaveChanges();
            return(entity);
        }
예제 #3
0
        public bool ValidateName(MoistureReader model)
        {
            var existing = Get().FirstOrDefault(a => a.Description == model.Description);

            if (existing == null)
            {
                return(true);
            }
            return(existing.MoistureReaderId == model.MoistureReaderId);
        }
예제 #4
0
        private bool validateEntity(MoistureReader model)
        {
            var validName = repository.ValidateName(model);

            if (!validName)
            {
                ModelState.AddModelError(nameof(MoistureReader.Description), Constants.ErrorMessages.EntityExists("MC Reader"));
            }
            return(ModelState.ErrorCount == 0);
        }
예제 #5
0
 public IActionResult Get([FromQuery] MoistureReader parameters = null)
 {
     try
     {
         var model = repository.Get(parameters);
         return(Ok(model));
     }
     catch (Exception ex)
     {
         logger.LogError(ex.GetExceptionMessages());
         return(StatusCode(StatusCodes.Status500InternalServerError, Constants.ErrorMessages.FetchError));
     }
 }
예제 #6
0
 public IActionResult Post([FromBody] MoistureReader model)
 {
     try
     {
         if (!ModelState.IsValid)
         {
             return(InvalidModelStateResult());
         }
         if (!validateEntity(model))
         {
             return(InvalidModelStateResult());
         }
         return(Accepted(repository.Create(model)));
     }
     catch (Exception ex)
     {
         logger.LogError(ex.GetExceptionMessages());
         return(StatusCode(StatusCodes.Status500InternalServerError, Constants.ErrorMessages.CreateError));
     }
 }
예제 #7
0
 public IActionResult Put([FromBody] MoistureReader model)
 {
     try
     {
         if (!ModelState.IsValid)
         {
             return(InvalidModelStateResult());
         }
         if (!validateEntity(model))
         {
             return(InvalidModelStateResult());
         }
         if (repository.Get().Count(a => a.MoistureReaderId.Equals(model.MoistureReaderId)) == 0)
         {
             return(NotFound(Constants.ErrorMessages.NotFoundEntity));
         }
         return(Accepted(repository.Update(model)));
     }
     catch (Exception ex)
     {
         logger.LogError(ex.GetExceptionMessages());
         return(StatusCode(StatusCodes.Status500InternalServerError, Constants.ErrorMessages.UpdateError));
     }
 }
예제 #8
0
 public bool ValidateCode(MoistureReader model)
 {
     throw new NotFiniteNumberException();
 }
예제 #9
0
 public IQueryable <MoistureReader> Get(MoistureReader parameters = null)
 {
     return(dbContext.MoistureReaders.AsNoTracking());
 }
예제 #10
0
 public bool Delete(MoistureReader model)
 {
     dbContext.MoistureReaders.Remove(model);
     dbContext.SaveChanges();
     return(true);
 }
예제 #11
0
 public MoistureReader Create(MoistureReader model)
 {
     dbContext.MoistureReaders.Add(model);
     dbContext.SaveChanges();
     return(model);
 }
예제 #12
0
 public SqlRawParameter GetSqlRawParameter(MoistureReader parameters)
 {
     throw new NotImplementedException();
 }