public Entity.Crop Get(Guid id)
 {
     try
     {
         return(_cropRepository.FindBy(r => r.Guid == id).Select(p => Mapper.Configuration.Mapper.Map <Entity.Crop>(p)).FirstOrDefault());
     }
     catch (Exception ex)
     {
         _logger.ErrorLog(ex, this.GetType().Name, MethodBase.GetCurrentMethod().Name);
         return(null);
     }
 }
 public Entity.ActionStatus Delete(Guid id)
 {
     Entity.ActionStatus actionStatus = new Entity.ActionStatus(true);
     try
     {
         var dbGreenHouse = _greenHouseRepository.FindBy(x => x.Guid.Equals(id)).FirstOrDefault();
         if (dbGreenHouse == null)
         {
             throw new NotFoundCustomException($"{CommonException.Name.NoRecordsFound} : GreenHouse");
         }
         var dbCrop   = _cropRepository.FindBy(x => x.GreenHouseGuid.Equals(id) && x.IsDeleted.Equals(false)).FirstOrDefault();
         var dbDevice = _deviceRepository.FindBy(x => x.GreenHouseGuid.Equals(id) && x.IsDeleted.Equals(false)).FirstOrDefault();
         if (dbCrop == null && dbDevice == null)
         {
             var deleteEntityResult = _iotConnectClient.GreenHouse.Delete(id.ToString()).Result;
             if (deleteEntityResult != null && deleteEntityResult.status)
             {
                 dbGreenHouse.IsDeleted   = true;
                 dbGreenHouse.UpdatedDate = DateTime.Now;
                 dbGreenHouse.UpdatedBy   = SolutionConfiguration.CurrentUserId;
                 return(_greenHouseRepository.Update(dbGreenHouse));
             }
             else
             {
                 _logger.ErrorLog(new Exception($"GreenHouse is not deleted from iotconnect, Error: {deleteEntityResult.message}"), this.GetType().Name, MethodBase.GetCurrentMethod().Name);
                 actionStatus.Success = false;
                 actionStatus.Message = new UtilityHelper().IOTResultMessage(deleteEntityResult.errorMessages);
             }
         }
         else
         {
             _logger.ErrorLog(new Exception($"GreenHouse is not deleted from solution database.Crop/Device exists, Error: {actionStatus.Message}"), this.GetType().Name, MethodBase.GetCurrentMethod().Name);
             actionStatus.Success = false;
             actionStatus.Message = "GreenHouse is not deleted from solution database.Crop/Device exists";
         }
     }
     catch (Exception ex)
     {
         _logger.ErrorLog(ex, this.GetType().Name, MethodBase.GetCurrentMethod().Name);
         actionStatus.Success = false;
         actionStatus.Message = ex.Message;
     }
     return(actionStatus);
 }