Example #1
0
 public UnitOfWork(EasyFindPropertiesEntities dbCtx)
 {
     _dbCtx              = dbCtx;
     PropertyType        = new PropertyTypeRepository(_dbCtx);
     AdPriority          = new AdPriorityRepository(_dbCtx);
     AdType              = new AdTypeRepository(_dbCtx);
     PropertyCategory    = new PropertyCategoryRepository(_dbCtx);
     PropertyCondition   = new PropertyConditionRepository(_dbCtx);
     PropertyImage       = new PropertyImageRepository(_dbCtx);
     PropertyPurpose     = new PropertyPurposeRepository(_dbCtx);
     PropertyRating      = new PropertyRatingRepository(_dbCtx);
     Property            = new PropertyRepository(_dbCtx);
     PropertyRequisition = new PropertyRequisitionRepository(_dbCtx);
     SubscriptionType    = new SubscriptionTypeRepository(_dbCtx);
     Subscription        = new SubscriptionRepository(_dbCtx);
     TagType             = new TagTypeRepository(_dbCtx);
     Tennant             = new TennantRepository(_dbCtx);
     Owner          = new OwnerRepository(_dbCtx);
     Tags           = new TagsRepository(_dbCtx);
     Message        = new MessageRepository(_dbCtx);
     User           = new UserRepository(_dbCtx);
     UserType       = new UserTypeRepository(_dbCtx);
     UserTypeAssoc  = new UserTypeAssocRepository(_dbCtx);
     MessageTrash   = new MessageTrashRepository(_dbCtx);
     Meeting        = new MeetingRepository(_dbCtx);
     MeetingMembers = new MeetingMembersRepository(_dbCtx);
 }
Example #2
0
        public ActionResult StoreInRedis()
        {
            PropertyRepository ir = new PropertyRepository();

            try
            {
                if (ir.MyConnection.State == System.Data.ConnectionState.Closed)
                {
                    ir.MyConnection.Open();
                }

                var list = ir.GetProperty();
                //foreach (var item in list)
                //{
                //    var name = ir.GetPropertyName(item.Name);
                //    item.Name = name;
                //}

                RedisRepository rr = new RedisRepository();

                return(View("Index", list));
            }
            catch (Exception ex)
            {
                ViewBag.Error = ex + " - (Error occurred. Items were not deleted)";
                return(View(new List <Property>()));
            }
            finally
            {
                if (ir.MyConnection.State == System.Data.ConnectionState.Open)
                {
                    ir.MyConnection.Close();
                }
            }
        }
        public void UpdatePropertySuccess()
        {
            //Arrange
            var propertyRepository = new PropertyRepository(_container);
            var dbContext          = _serviceProvider.GetRequiredService <DeviserDbContext>();
            var properties         = TestDataRepository.GetProperties();

            foreach (var item in properties)
            {
                propertyRepository.CreateProperty(item);
            }
            var propertyToUpdate = propertyRepository.GetProperties().First();

            propertyToUpdate.Value = "Updated Value";

            //Act
            var result = propertyRepository.UpdateProperty(propertyToUpdate);

            //Assert
            Assert.NotNull(result);
            Assert.NotEqual(result.Id, Guid.Empty);
            Assert.True(!string.IsNullOrEmpty(result.Name));
            Assert.True(!string.IsNullOrEmpty(result.Label));
            Assert.True(propertyToUpdate.Value == result.Value);
            Assert.True(result.CreatedDate > DateTime.MinValue);
            Assert.True(result.LastModifiedDate > DateTime.MinValue);

            //Clean
            dbContext.Property.RemoveRange(dbContext.Property);
        }
        public void GetPropertiesSuccess()
        {
            //Arrange
            var propertyRepository = new PropertyRepository(_container);
            var dbContext          = _serviceProvider.GetRequiredService <DeviserDbContext>();
            var properties         = TestDataRepository.GetProperties();

            foreach (var item in properties)
            {
                propertyRepository.CreateProperty(item);
            }

            //Act
            var result     = propertyRepository.GetProperties();
            var resultItem = result.First();

            //Assert
            Assert.NotNull(result);
            Assert.True(result.Count > 0);
            Assert.NotNull(resultItem);
            Assert.NotEqual(resultItem.Id, Guid.Empty);
            Assert.True(resultItem.CreatedDate > DateTime.MinValue);
            Assert.True(resultItem.LastModifiedDate > DateTime.MinValue);

            //Clean
            dbContext.Property.RemoveRange(dbContext.Property);
        }
Example #5
0
        /// <summary>
        /// 删除实体属性信息信息
        /// </summary>
        /// <param name="ids">要删除的实体属性信息编号</param>
        /// <returns>业务操作结果</returns>
        public async Task <OperationResult> DeleteCodeProperties(params Guid[] ids)
        {
            List <string> names = new List <string>();

            UnitOfWork.EnableTransaction();
            foreach (var id in ids)
            {
                var property = await PropertyRepository.GetAsync(id);

                if (property == null)
                {
                    continue;
                }

                int count = await PropertyRepository.DeleteAsync(property);

                if (count > 0)
                {
                    names.Add(property.Name);
                }
            }

            await UnitOfWork.CommitAsync();

            return(names.Count > 0
                ? new OperationResult(OperationResultType.Success, $"属性“{names.ExpandAndToString()}”删除成功")
                : OperationResult.NoChanged);
        }
Example #6
0
        public ActionResult RefreshCache()
        {
            //1. Load items from cache
            RedisRepository rr    = new RedisRepository();
            var             items = rr.LoadItems();

            //2. hash the serialized value of items
            PropertyRepository pr = new PropertyRepository();

            pr.MyConnection.Open();
            var itemsFromDb = pr.GetProperty();

            pr.MyConnection.Close();

            if (items == null)
            {
                rr.StoreItems(itemsFromDb);
                return(Content("done"));
            }

            //3. compare the digest produced with the digest produced earlier while stored in application variable
            if (rr.HashValue(JsonConvert.SerializeObject(items)) != rr.HashValue(JsonConvert.SerializeObject(itemsFromDb)))
            {
                //4. if they do not match; storeincache method and re-produce a new hashcode
                rr.StoreItems(itemsFromDb); return(Content("done"));
            }

            return(Content("properties were not updated since they are still the same"));
        }
Example #7
0
    public IPropertyService Create()
    {
        IPropertyRepository repository = new PropertyRepository();
        PropertyService     service    = new PropertyService(repository);

        return(service);
    }
        public void Setup()
        {
            InitialiseMapping();

            _connection = new SqliteConnection("DataSource=:memory:");
            _connection.Open();

            var options = new DbContextOptionsBuilder <PropertyContext>()
                          .UseSqlite(_connection)
                          .Options;

            var inMemoryContext = new PropertyContext(options);

            inMemoryContext.Properties.AddRange(GenerateFakeProperties());
            inMemoryContext.SaveChanges();

            // While working with a inMemoryDb there is no need for mocking IPropertyRepository
            // Instead working to implementation provides implementation test without affecting Db

            // var service = new Mock<IPropertyRepository>();
            // service.Setup(p => p.GetProperties()).Returns(inMemoryContext.Properties);
            var service = new PropertyRepository(inMemoryContext);

            Sut = new PropertiesController(service);
        }
Example #9
0
        void OnSave(object sender, EventArgs e)
        {
            var repository = new PropertyRepository();

            repository.SaveOrUpdate(Model.GetEntity());

            Navigation.PopAsync();
        }
Example #10
0
        public JsonResult GetSearchList(string latitude1, string latitude2)
        {
            var property             = new List <Property>();
            PropertyRepository pRepo = new PropertyRepository();

            property = pRepo.GetSearchList(latitude1, latitude2);
            return(Json(property));
        }
        public ActionResult ViewProperty(int propertyId)
        {
            PropertyRepository propRepo = new PropertyRepository();
            var propertyObj             = propRepo.GetByID(propertyId);
            var viewModel = new ViewPropertyViewModel(propertyObj);

            return(View(viewModel));
        }
Example #12
0
 public UnitOfWork(PMSContext context)
 {
     _context = context;
     //Courses = new CourseRepository(_context);
     //Authors = new AuthorRepository(_context);
     Properties = new PropertyRepository(_context);
     Ventures   = new VentureRepository(_context);
 }
 /// <summary>
 /// Contructor de la clase
 /// </summary>
 /// <param name="context">Contexto de base de datos</param>
 public UnitOfWorkSqlServerRepository(WeeloDbContext context)
 {
     this.context  = context;
     Owner         = new OwnerRepository(this.context);
     PropertyImage = new PropertyImageRepository(this.context);
     Property      = new PropertyRepository(this.context);
     PropertyTrace = new PropertyTraceRepository(this.context);
 }
Example #14
0
        public ActionResult DeleteAll(List <int> items)
        {
            PropertyRepository ir     = new PropertyRepository();
            List <Property>    myList = new List <Property>();

            try
            {
                if (ir.MyConnection.State == System.Data.ConnectionState.Closed)
                {
                    ir.MyConnection.Open();
                    ir.MyTransaction = ir.MyConnection.BeginTransaction(); //pending until committed
                }

                foreach (int id in items)
                {
                    ir.DeleteProperty(id);
                }

                if (items.Count > 1)
                {
                    ViewBag.Success = "Items were deleted successfully";
                }
                else
                {
                    ViewBag.Success = "Item was deleted successfully";
                }

                ir.MyTransaction.Commit(); //committed

                //this doesnt need to participate in transaction cos its not changing anything in database, its just getting.
                myList = ir.GetProperty();

                return(View("Index", myList));
            }
            catch (Exception ex)
            {
                ir.MyTransaction.Rollback();

                if (items.Count > 1)
                {
                    ViewBag.Error = ex + " - (Error occurred. Items were not deleted)";
                }
                else
                {
                    ViewBag.Error = ex + " - (Error occurred. Item was not deleted)";
                }

                myList = ir.GetProperty();
                return(View("Index", myList));
            }
            finally
            {
                if (ir.MyConnection.State == System.Data.ConnectionState.Open)
                {
                    ir.MyConnection.Close();
                }
            }
        }
Example #15
0
 public IActionResult EditHouse(House selectedHouse)
 {
     //Open Edit house window with existing house
     using (IPropertyRepository propRep = new PropertyRepository())
     {
         selectedHouse.Photos = propRep.SelectPhotos(selectedHouse.MLSNum);
     }
     return(View("~/Views/Property/EditProperty.cshtml", selectedHouse));
 }
Example #16
0
        public ActionResult Index()
        {
            ViewBag.Greeting = "Bienvenido";
            PropertiesResume propertiesResume = new PropertiesResume();
            var repository = new PropertyRepository();

            propertiesResume.Properties = repository.GetAll().Take(9).ToList();
            return(View(propertiesResume));
        }
        public List <PropertyResponse> GetPropertyInRange(int low, int high)
        {
            var propertyEntities = PropertyRepository.GetPropertyInRange(low, high);

            foreach (var property in propertyEntities)
            {
                PropertyResponses.Add(_mapper.Map <PropertyResponse>(property));
            }
            return(PropertyResponses);
        }
        public IEnumerable <PropertyResponse> GetAllProperties()
        {
            var propertyEntities = PropertyRepository.GetAllProperties();

            foreach (var property in propertyEntities)
            {
                PropertyResponses.Add(_mapper.Map <PropertyResponse>(property));
            }
            return(PropertyResponses);
        }
Example #19
0
        public ListEntryView(ListEntry listEntry)
        {
            _PropertyRepository = new PropertyRepository();

            Model.Date  = listEntry.Date;
            Model.Title = listEntry.Title;
            Model.Id    = listEntry.Id;

            CreateLayout();
        }
Example #20
0
        public IEnumerable <Property> Get()
        {
            var service  = new PropertyRepository();
            var property = redis.Read <IEnumerable <Property> >("property", 0);

            if (property.Count() == 0)
            {
                return(service.GetProperties());
            }
            return(property);
        }
Example #21
0
        public ActionResult DeleteItems(List <int> items)
        {
            if (items.Count > 0)
            {
                PropertyRepository pr     = new PropertyRepository();
                List <Property>    myList = new List <Property>();
                try
                {
                    if (pr.MyConnection.State == System.Data.ConnectionState.Closed)
                    {
                        pr.MyConnection.Open();
                        pr.MyTransaction = pr.MyConnection.BeginTransaction();
                    }

                    //delete all items
                    foreach (int id in items)
                    {
                        pr.DeleteProperty(id);
                    }

                    pr.MyTransaction.Commit();

                    if (items.Count == 1)
                    {
                        ViewBag.Success = "Property was deleted";
                    }
                    else
                    {
                        ViewBag.Success = "Properties were deleted";
                    }
                }
                catch (Exception ex)
                {
                    pr.MyTransaction.Rollback();

                    //log exception
                    LoggingRepository.ReportError(ex);
                    ViewBag.Error = "Error occurred. Nothing was deleted; Try again later";
                }
                finally
                {
                    myList = pr.GetProperty().ToList(); //to refresh the now updated list

                    if (pr.MyConnection.State == System.Data.ConnectionState.Open)
                    {
                        pr.MyConnection.Close();
                    }
                }

                return(View("Index", myList));
            }

            return(RedirectToAction("Index"));
        }
 /// <summary>
 /// InsertPropertyDetails
 /// </summary>
 /// <param name="propertyDetail"></param>
 public static void InsertPropertyDetails(PropertyDetail propertyDetail)
 {
     using (var propertyRepository = new PropertyRepository(new SQLiteInfoMonodroid()))
     {
         var detail = propertyRepository.GetPropertyDetailById(propertyDetail.ListingID);
         if (detail.Result == null)
         {
             propertyRepository.InsertPropertyDetail(propertyDetail);
         }
     }
 }
Example #23
0
        public ActionResult Create(PropertyViewModel p)
        {
            PropertyRepository cc = new PropertyRepository();

            try
            {
                if (cc.MyConnection.State == System.Data.ConnectionState.Closed)
                {
                    cc.MyConnection.Open();
                }

                //save in bucket
                var myStorageManager = StorageClient.Create();
                var guid             = Guid.NewGuid();
                var mynewobj         = myStorageManager.UploadObject("programmingcloud", guid.ToString() + Path.GetExtension(p.File.FileName), p.File.ContentType, p.File.InputStream,
                                                                     options: new Google.Cloud.Storage.V1.UploadObjectOptions()
                {
                    PredefinedAcl = Google.Cloud.Storage.V1.PredefinedObjectAcl.PublicRead
                });

                string imgName = guid.ToString() + Path.GetExtension(p.File.FileName);
                string us      = User.Identity.Name;
                string u       = us.Substring(0, us.IndexOf("@"));
                p.Username = u;
                var prop = new Property()
                {
                    Username        = p.Username,
                    Location        = p.Location,
                    Name            = p.Name,
                    Description     = p.Description,
                    Price           = p.Price,
                    PropertyPicture = imgName
                };
                cc.AddProperty(prop);


                ViewBag.Success = "Property was created successfully";
                return(View());
            }
            catch (Exception ex)
            {
                LoggingRepository.ReportError(ex);
                ViewBag.Error = ex + " - (Error occurred. Property was not added)";
                return(View());
            }
            finally
            {
                if (cc.MyConnection.State == System.Data.ConnectionState.Open)
                {
                    cc.MyConnection.Close();
                }
            }
        }
Example #24
0
        public IActionResult DeleteHouse(int houseId)
        {
            //Delete house from database
            List <House> Properties;

            using (IPropertyRepository propRep = new PropertyRepository())
            {
                propRep.DeleteHouse(houseId);
                Properties = propRep.PopulateHouses();
            }
            return(View("~/Views/Property/Houses.cshtml", Properties));
        }
        public async void BeginUpdateAsync(Dispatcher dispatcher)
        {
            this.dispatcher = dispatcher;
            IsUpdating      = true;
            Items           = null;

            await ThreadPool.RunAsync(async delegate
            {
                var entries = await PropertyRepository.GetAllAsync();
                PopulateData(entries);
            });
        }
 /// <summary>
 /// InsertProperty
 /// </summary>
 /// <param name="propertyList"></param>
 public static void InsertProperty(List <Property> propertyList)
 {
     using (var propertyRepository = new PropertyRepository(new SQLiteInfoMonodroid()))
     {
         if (propertyRepository.GetPropertyCount() < propertyList.Count)
         {
             foreach (var property in propertyList)
             {
                 propertyRepository.InsertProperty(property);
             }
         }
     }
 }
        public async void Validate_Get_States()
        {
            var opts = new AcmeDirectorySearch.Infrastructure.DatabaseOptions();

            opts.ConnectionString = fixture.DatabaseConnectionString;

            var iopts = Options.Create <AcmeDirectorySearch.Infrastructure.DatabaseOptions>(opts);
            var repo  = new PropertyRepository(iopts);

            var results = await repo.GetStates();

            Assert.Equal(50, results.ToList <string>().Count);
        }
Example #28
0
        /// <summary>
        /// 更新实体属性信息信息
        /// </summary>
        /// <param name="dtos">包含更新信息的实体属性信息输入DTO</param>
        /// <returns>业务操作结果</returns>
        public async Task <OperationResult> UpdateCodeProperties(params CodePropertyInputDto[] dtos)
        {
            List <string> names = new List <string>();

            UnitOfWork.EnableTransaction();
            foreach (var dto in dtos)
            {
                dto.Validate();
                CodeEntity entity = await EntityRepository.GetAsync(dto.EntityId);

                if (entity == null)
                {
                    return(new OperationResult(OperationResultType.Error, $"编号为“{dto.EntityId}”的实体信息不存在"));
                }

                if (await CheckCodePropertyExists(m => m.Name == dto.Name && m.EntityId == dto.EntityId, dto.Id))
                {
                    return(new OperationResult(OperationResultType.Error, $"实体“{entity.Name}”中名称为“{dto.Name}”的属性信息已存在"));
                }

                if (dto.Order == 0)
                {
                    dto.Order = PropertyRepository.Query(m => m.EntityId == entity.Id).Count() + 1;
                }
                int count;
                if (dto.Id == default)
                {
                    CodeProperty property = dto.MapTo <CodeProperty>();
                    count = await PropertyRepository.InsertAsync(property);
                }
                else
                {
                    CodeProperty property = await PropertyRepository.GetAsync(dto.Id);

                    property = dto.MapTo(property);
                    count    = await PropertyRepository.UpdateAsync(property);
                }

                if (count > 0)
                {
                    names.Add(dto.Name);
                }
            }

            await UnitOfWork.CommitAsync();

            return(names.Count > 0
                ? new OperationResult(OperationResultType.Success, $"属性“{names.ExpandAndToString()}”保存成功")
                : OperationResult.NoChanged);
        }
        public void UpdatePropertyFail()
        {
            //Arrange
            var propertyRepository = new PropertyRepository(_container);
            var dbContext          = _serviceProvider.GetRequiredService <DeviserDbContext>();
            var properties         = TestDataRepository.GetProperties();

            //Act
            var result = propertyRepository.UpdateProperty(null);

            //Assert
            Assert.Null(result);

            //Clean
            dbContext.Property.RemoveRange(dbContext.Property);
        }
Example #30
0
        public IActionResult EditProperty(House house, IFormFile fileSelect)
        {
            //Edit house in database
            using (var target = new MemoryStream())
            {
                fileSelect.CopyTo(target);
                house.PhotoData = target.ToArray();
            }
            List <House> Properties;

            using (IPropertyRepository propRep = new PropertyRepository())
            {
                propRep.EditHouse(house);
                Properties = propRep.PopulateHouses();
            }
            return(View("~/Views/Property/Houses.cshtml", Properties));
        }
 public PropertyController()
 {
     this.propertyRepository = new PropertyRepository();
 }
 public void Context()
 {
     _entities = new ConstructionEntities();
     _target = new PropertyRepository(_entities);
     _results = _target.Retrieve(prop => prop.NumUnits > 5).ToList();
 }
 public PropertyController(PropertyRepository propertyRepository)
 {
     this.propertyRepository = propertyRepository;
 }