Example #1
0
        public void ShouldLogAtDebugLevel()
        {
            //arrange
            var logger = new ConsoleOutLogger("Testing", LogLevel.Trace, true, true, true, string.Empty);
            var target = new DataContext(Settings.Default.Connection, new DriversEducationMappings(), logger);

            //act
            var firstDriver = new Driver("Devlin", "Liles");

            target.Add(firstDriver);
            target.Add(new Driver("Tim", "Rayburn"));
            target.Add(new Driver("Jay", "Smith"));
            target.Add(new Driver("Brian", "Sullivan"));
            target.Add(new Driver("Cori", "Drew"));

            target.Commit();

            target.Reload(firstDriver);

            foreach (var driver in target.AsQueryable <Driver>())
            {
                target.Remove(driver);
            }


            target.Commit();

            target.ExecuteSqlQuery <Driver>("Select * from Drivers Where LastName = @lastName",
                                            new DbParameter[] { new SqlParameter("lastName", "Liles") });

            //assert
            //Assert.Inconclusive("We fail here to get the output from console nice and easy");
        }
        public void ShouldLogAtDebugLevel()
        {
            //arrange 
            var logger = new ConsoleOutLogger("Testing", LogLevel.Trace, true, true, true, string.Empty);
            var target = new DataContext(Settings.Default.Connection, new DriversEducationMappings(), logger);

            //act
            var firstDriver = new Driver("Devlin", "Liles");
            target.Add(firstDriver);
            target.Add(new Driver("Tim", "Rayburn"));
            target.Add(new Driver("Jay", "Smith"));
            target.Add(new Driver("Brian", "Sullivan"));
            target.Add(new Driver("Cori", "Drew"));

            target.Commit();

            target.Reload(firstDriver);

            foreach (var driver in target.AsQueryable<Driver>())
            {
                target.Remove(driver);
            }


            target.Commit();

            target.ExecuteSqlQuery<Driver>("Select * from Drivers Where LastName = @lastName",
                new DbParameter[] {new SqlParameter("lastName", "Liles")});

            //assert
            //Assert.Inconclusive("We fail here to get the output from console nice and easy");
        }
Example #3
0
        void InitializeUserWithLoyaltyCard(string emailAddress)
        {
            var configuration = new GlobalmanticsMappingConfiguration();
            var context       = new DataContext("GlobalmanticsContext", configuration);
            var user          = context.Add(User.Create(emailAddress));

            context.Commit();
            context.Add(LoyaltyCard.Create(user, "35196429541"));
            context.Commit();
        }
        public async Task <IActionResult> AddTeam(Team team)
        {
            teamRepository.Add(team);

            if (await dataContext.Commit())
            {
                return(CreatedAtRoute("GetTeam", new { id = team.Id }, team));
            }

            return(BadRequest("Could not add team."));
        }
Example #5
0
        private void InitializeCartWithOneItem(string emailAddress)
        {
            var configuration = new GlobalmanticsMappingConfiguration();
            var context       = new DataContext("GlobalmanticsContext", configuration);
            var user          = context.Add(User.Create(emailAddress));

            context.Commit();
            var cart        = context.Add(Cart.Create(user));
            var catalogItem = context.AsQueryable <CatalogItem>()
                              .Single(x => x.Sku == "CAFE-314");

            cart.AddItem(catalogItem, 2);
            context.Commit();
        }
Example #6
0
        public static void InsertFakeData()
        {
            var optionsBuilder = new DbContextOptionsBuilder <DataBase>();

            optionsBuilder.UseSqlServer(ConfigurationHelper.GetConnectionString("Entity"));
            using (var db = new DataContext(optionsBuilder.Options))
            {
                db.Roles.Add(new Role {
                    Name = "Admin", Description = "Administration"
                });
                db.Roles.Add(new Role {
                    Name = "User", Description = "Formal User"
                });

                db.Commit();

                db.Users.Add(new User {
                    Login = @"U_021L1", FIO = "Tom"
                });
                db.Users.Add(new User {
                    Login = @"U_021L2", FIO = "Alice"
                });
                db.Users.Add(new User {
                    Login = @"U_021L3", FIO = "Oleg"
                });
                db.Users.Add(new User {
                    Login = @"U_021L4", FIO = "Dima"
                });
                db.Commit();

                var role = db.Roles.GetById(1);

                foreach (var u in db.Users.Get(u => u.Id > 0))
                {
                    db.RolesUsers.Add(new RolesUsers {
                        User = u, Role = role
                    });
                }

                var role2 = db.Roles.GetById(2);
                foreach (var u in db.Users.Get(u => u.Id > 2))
                {
                    db.RolesUsers.Add(new RolesUsers {
                        User = u, Role = role2
                    });
                }
                db.Commit();
            }
        }
Example #7
0
        public void UpdateUserSelfProfile(one.Service.ViewModels.ViewUserProfile model) {

            Auth_Users user = new Auth_Users() {

                UserId = model.UserId,
                Email = model.Email,
                PhoneNumber = model.Phone,
            };

            Auth_UserInfor userinfor = new Auth_UserInfor()
            {
                UserId = model.UserId,
                Name = model.NickName,
                QQ = model.QQ,
                Mobile = model.Mobile,
                LastUpdateTime = DateTime.Now,
                Department = model.Department
                
            };

            user.Auth_UserInfor = userinfor;
            DataContext.Auth_Users.Attach(user);
            DataContext.Entry(user).Property(s => s.Email).IsModified = true;
            DataContext.Entry(user).Property(s =>s.PhoneNumber).IsModified = true;

            DataContext.Auth_UserInfor.Attach(userinfor);
            DataContext.Entry(userinfor).Property(a => a.Department).IsModified = true;
            DataContext.Entry(userinfor).Property(a => a.Name).IsModified = true;
            DataContext.Entry(userinfor).Property(a => a.QQ).IsModified = true;
            DataContext.Entry(userinfor).Property(a => a.Mobile).IsModified = true;
            DataContext.Entry(userinfor).Property(a => a.LastUpdateTime).IsModified = true;

            DataContext.Commit();

        }
Example #8
0
        public void destroyUserInfo(ViewUser viewuser) { 
        
            
            Delete(a=>a.UserId == viewuser.UserId);
            DataContext.Commit();

        }
Example #9
0
        public async Task <HttpResponseMessage> PostGender([FromBody] UserGenderModel model)
        {
            try
            {
                var response = await Task.Run(() =>
                {
                    var user = DataContext.AspNetUsers.Find(model.UserId);

                    if (user == null)
                    {
                        return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, String.Format("That user does not exist: {0}", model.UserId)));
                    }

                    if (model.Gender != null)
                    {
                        user.Gender = DataContext.Genders.FirstOrDefault(g => g.Id == model.Gender.Id);
                        DataContext.Commit();
                    }

                    return(Request.CreateResponse(HttpStatusCode.OK));
                });

                return(response);
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
Example #10
0
        public void DataObjectQuery_Should_Select_All_Items_From_Database_With_Array_Parameter_Binding_And_Context_Transaction()
        {
            commandMock.Setup(c => c.CommandText).Returns("SELECT [Id], [Name], [FirstFlight] FROM Airplane WHERE Name = @0");

            using (var context = new DataContext())
            {
                // Execute a command to open transaction.
                context.Execute("DELETE FROM Airplane");

                // Simulate connection open state later the first execute.
                connectionMock.Setup(c => c.State).Returns(ConnectionState.Open);

                select.With(context).All("WHERE Name = @0", "Omega");

                context.Commit();
            }

            connectionMock.Verify(c => c.CreateCommand(), Times.Exactly(2));
            connectionMock.Verify(c => c.Open(), Times.Once());
            connectionMock.Verify(c => c.BeginTransaction(), Times.Once());
            connectionMock.Verify(c => c.Close(), Times.Once());
            commandMock.Verify(c => c.ExecuteReader(), Times.Once());
            commandMock.VerifySet(c => c.CommandText = "SELECT [Id], [Name], [FirstFlight] FROM Airplane WHERE Name = @0");
            commandMock.VerifySet(c => c.Connection  = connectionMock.Object);
            commandMock.VerifySet(c => c.Transaction = transactionMock.Object);
            commandMock.Verify(c => c.CreateParameter(), Times.Once());
            parameterMock.VerifySet(p => p.ParameterName = "@0");
            parameterMock.VerifySet(p => p.Value         = "Omega");
            parameterCollectionMock.Verify(p => p.Add(parameterMock.Object), Times.Once());
            transactionMock.Verify(t => t.Commit(), Times.Once());
        }
Example #11
0
        public void S_DataObject_Should_CRUD_An_Item_With_Shared_Transactional_Data_Context()
        {
            using (var context = new DataContext())
            {
                var dodge = new Manufacturer {
                    Name = "Dodge", BuildYear = 1900
                };
                manufacturerDataObject.Insert(dodge, context);

                dodge.BuildYear = 1915;
                manufacturerDataObject.Update(dodge, context);
                var updatedDodge = context.First <Manufacturer>("SELECT TOP 1 * FROM Le_Manufacturer WHERE Name = 'Dodge'");

                var m4s = new Car {
                    Name = "M4S", ModelYear = 1984, Category = CarCategory.Prototype, ManufacturerId = dodge.TheId
                };
                carDataObject.Insert(m4s, context);
                var createdM4s = carDataObject.Select.With(context).First("WHERE Name = 'M4S'");

                carDataObject.Delete(m4s, context);
                var deletedM4s = carDataObject.Select.With(context).First("WHERE Name = 'M4S'");

                updatedDodge.BuildYear.Should().Be(1915);
                createdM4s.Should().NotBeNull();
                deletedM4s.Should().BeNull();

                context.Commit();
            }

            var createdDodgeOutsiteContext = manufacturerDataObject.Select.First("WHERE Name = 'Dodge'");

            createdDodgeOutsiteContext.Should().NotBeNull();
        }
Example #12
0
        public void F_DataContext_Should_Read_Data_With_One_Field_And_Insert_A_Data_With_Some_Parameters_Types()
        {
            using (var context = new DataContext())
            {
                var selectParameters = new { Name = "Lotus" };
                var manufacturer     = context.First <Manufacturer>("SELECT TheId FROM Le_Manufacturer WHERE Name = @Name", selectParameters);

                var insertParameters = new Car
                {
                    Name           = "Esprit Turbo",
                    ModelYear      = 1981,
                    Mileage        = 318.19850801,
                    ManufacturerId = manufacturer.TheId,
                    Category       = CarCategory.Sport
                };

                context.Execute("INSERT INTO Car VALUES (@Name, @ModelYear, @CreatedAt, @Chassis, @Mileage, @Category, @ManufacturerId)", insertParameters);
                var car = context.First <Car>("SELECT TOP 1 * FROM Car");
                context.Commit();

                car.Id.Should().BeGreaterThan(0);
                car.Name.Should().Be("Esprit Turbo");
                car.ModelYear.Should().Be(1981);
                car.Mileage.Should().Be(318.19850801);
                car.ManufacturerId.Should().Be(manufacturer.TheId);
                car.CreatedAt.Date.Should().Be(DateTime.Today.Date);
                car.Category.Should().Be(CarCategory.Sport);
            }
        }
Example #13
0
        public HttpResponseMessage PostForgotPassword(ResetPasswordModel model)
        {
            try
            {
                string email = model.Email;
                User   user  = DataContext.User.FirstOrDefault(x => x.Email == email);
                if (user == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.NotFound));
                }

                var password = GenerateRandomPassword();
                user.Password = PasswordHash.CreateHash(password);
                DataContext.Commit();

                _emailService.SendPasswordToEmail(password, email);

                return(Request.CreateResponse(HttpStatusCode.OK));
            }
            catch (Exception ex)
            {
                _log.Error(ex);
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
Example #14
0
        public HttpResponseMessage PostResetPassword(ResetPasswordModel model)
        {
            try
            {
                User user = DataContext.User.FirstOrDefault(x => x.Email == model.Email);
                if (user == null)
                {
                    return(Request.CreateResponse(HttpStatusCode.NotFound));
                }

                //if (!PasswordHash.ValidatePassword(model.Password, user.Password))
                //    return Request.CreateResponse(HttpStatusCode.Unauthorized);

                user.Password = PasswordHash.CreateHash(model.NewPassword);

                DataContext.Commit();

                return(Request.CreateResponse(HttpStatusCode.OK));
            }
            catch (Exception ex)
            {
                _log.Error(ex);
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
Example #15
0
        public HttpResponseMessage PostRegister(AccountModel model)
        {
            try
            {
                if (String.IsNullOrEmpty(model.Email) || String.IsNullOrEmpty(model.Password) || !EmailVerification.IsValidEmail(model.Email))
                {
                    return(Request.CreateResponse(HttpStatusCode.NotAcceptable));
                }

                if (DataContext.User.Any(x => x.Email == model.Email))
                {
                    return(Request.CreateResponse(HttpStatusCode.Conflict));
                }

                var newUser = new User
                {
                    Username = String.IsNullOrEmpty(model.Username) ? model.Email.Split('@')[0] : model.Username,
                    Email    = model.Email,
                    Password = PasswordHash.CreateHash(model.Password)
                };
                DataContext.User.Add(newUser);
                DataContext.Commit();
                model.UserId    = newUser.Id;
                model.Username  = newUser.Username;
                model.OpenGames = new OpenGamesModel();
                return(Request.CreateResponse(HttpStatusCode.Created, model));
            }
            catch (Exception ex)
            {
                _log.Error(ex);
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
        public void DataContext_Should_Execute_And_Commit_Some_SQL_Commands_With_Transaction()
        {
            using (var context = new DataContext())
            {
                context.Execute("DELETE FROM Airplane");

                // Simulate connection open state later the first execute.
                connectionMock.Setup(c => c.State).Returns(ConnectionState.Open);

                context.Execute("DELETE FROM Tools");
                context.Commit();
            }

            connectionMock.Verify(c => c.CreateCommand(), Times.Exactly(2));
            connectionMock.Verify(c => c.Open(), Times.Once());
            connectionMock.Verify(c => c.BeginTransaction(), Times.Once());
            connectionMock.Verify(c => c.Close(), Times.Once());
            commandMock.Verify(c => c.ExecuteNonQuery(), Times.Exactly(2));
            commandMock.VerifySet(c => c.CommandText = "DELETE FROM Airplane");
            commandMock.VerifySet(c => c.CommandText = "DELETE FROM Tools");
            commandMock.VerifySet(c => c.Connection = connectionMock.Object);
            commandMock.VerifySet(c => c.Transaction = transactionMock.Object);
            commandMock.Verify(c => c.CreateParameter(), Times.Never());
            transactionMock.Verify(t => t.Commit(), Times.Once());
            providerMock.Object.DbTransaction.Should().NotBeNull();
        }
        public void DataContext_Should_Execute_And_Commit_Some_SQL_Commands_With_Transaction()
        {
            using (var context = new DataContext())
            {
                context.Execute("DELETE FROM Airplane");

                // Simulate connection open state later the first execute.
                connectionMock.Setup(c => c.State).Returns(ConnectionState.Open);

                context.Execute("DELETE FROM Tools");
                context.Commit();
            }

            connectionMock.Verify(c => c.CreateCommand(), Times.Exactly(2));
            connectionMock.Verify(c => c.Open(), Times.Once());
            connectionMock.Verify(c => c.BeginTransaction(), Times.Once());
            connectionMock.Verify(c => c.Close(), Times.Once());
            commandMock.Verify(c => c.ExecuteNonQuery(), Times.Exactly(2));
            commandMock.VerifySet(c => c.CommandText = "DELETE FROM Airplane");
            commandMock.VerifySet(c => c.CommandText = "DELETE FROM Tools");
            commandMock.VerifySet(c => c.Connection  = connectionMock.Object);
            commandMock.VerifySet(c => c.Transaction = transactionMock.Object);
            commandMock.Verify(c => c.CreateParameter(), Times.Never());
            transactionMock.Verify(t => t.Commit(), Times.Once());
            providerMock.Object.DbTransaction.Should().NotBeNull();
        }
Example #18
0
        public void ForgetPayPassword(string mobile, string new_pass)
        {
            using (var db = new DataContext())
            {
                var userDao = unity.GetInstance <IUserDAL>(db);

                var obj = userDao.GetByMobile(mobile);


                if (obj == null)
                {
                    throw new ApplicationException("不存在此手机号");
                }

                obj.Pay_Password = new_pass.ToMD5();

                try
                {
                    //开启事务
                    db.BeginTransaction();
                    //此处可支持多个DAL
                    userDao.Update(obj);

                    //提交事务
                    db.Commit();
                }
                catch (Exception ex)
                {
                    //出现异常事务回滚
                    db.Rollback();
                    Logger.GetLogger().Error("忘记密码逻辑发生异常", ex);
                    throw new ApplicationException("系统异常,请稍候重试");
                }
            }
        }
        private void CreateTables()
        {
            var createManufacturerTable = new StringBuilder("CREATE TABLE Le_Manufacturer (")
                .Append("[TheId] NUMERIC(8) NOT NULL IDENTITY PRIMARY KEY,")
                .Append("[Name] VARCHAR(32) NOT NULL,")
                .Append("[BuildYear] NUMERIC(4) NOT NULL)")
                .ToString();

            var createCarTable = new StringBuilder("CREATE TABLE Car (")
                .Append("[Id] NUMERIC(8) NOT NULL IDENTITY PRIMARY KEY,")
                .Append("[Name] VARCHAR(32) NOT NULL,")
                .Append("[ModelYear] NUMERIC(4) NOT NULL,")
                .Append("[Date] DATETIME NOT NULL,")
                .Append("[Chassis] VARCHAR(32) NOT NULL,")
                .Append("[Mileage] FLOAT,")
                .Append("[ManufacturerId] NUMERIC(8) REFERENCES Le_Manufacturer(TheId))")
                .ToString();

            using (var data = new DataContext())
            {
                data.Execute(createManufacturerTable);
                data.Execute(createCarTable);
                data.Commit();
            }
        }
Example #20
0
        public async Task <HttpResponseMessage> PostEmailPreferences([FromBody] UserEmailModel model)
        {
            try
            {
                var response = await Task.Run(() =>
                {
                    var user = DataContext.AspNetUsers.Find(model.UserId);

                    if (user == null)
                    {
                        return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, String.Format("That user does not exist: {0}", model.UserId)));
                    }

                    if (user.UserPreference == null)
                    {
                        user.UserPreference = new Data.UserPreference();
                    }
                    user.UserPreference.EmailMyWonders = model.EmailMyWonders;
                    user.UserPreference.Reminder       = DataContext.Reminders.SingleOrDefault(r => r.Id == model.ReminderId);
                    DataContext.Commit();

                    return(Request.CreateResponse(HttpStatusCode.OK));
                });

                return(response);
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
        public void DataObjectQuery_Should_Select_All_Items_From_Database_With_Parameter_Binding_And_Context_Transaction()
        {
            commandMock.Setup(c => c.CommandText).Returns("SELECT [Id], [Name], [FirstFlight] FROM Airplane WHERE Name = @Name");

            using (var context = new DataContext())
            {
                // Execute a command to open transaction.
                context.Execute("DELETE FROM Airplane");

                // Simulate connection open state later the first execute.
                connectionMock.Setup(c => c.State).Returns(ConnectionState.Open);

                select.With(context).All("WHERE Name = @Name", new { Name = "Omega" });

                context.Commit();
            }

            connectionMock.Verify(c => c.CreateCommand(), Times.Exactly(2));
            connectionMock.Verify(c => c.Open(), Times.Once());
            connectionMock.Verify(c => c.BeginTransaction(), Times.Once());
            connectionMock.Verify(c => c.Close(), Times.Once());
            commandMock.Verify(c => c.ExecuteReader(), Times.Once());
            commandMock.VerifySet(c => c.CommandText = "SELECT [Id], [Name], [FirstFlight] FROM Airplane WHERE Name = @Name");
            commandMock.VerifySet(c => c.Connection = connectionMock.Object);
            commandMock.VerifySet(c => c.Transaction = transactionMock.Object);
            commandMock.Verify(c => c.CreateParameter(), Times.Once());
            parameterMock.VerifySet(p => p.ParameterName = "@Name");
            parameterMock.VerifySet(p => p.Value = "Omega");
            parameterCollectionMock.Verify(p => p.Add(parameterMock.Object), Times.Once());
            transactionMock.Verify(t => t.Commit(), Times.Once());
        }
Example #22
0
        private void CreateTables()
        {
            var createManufacturerTable = new StringBuilder("CREATE TABLE Le_Manufacturer (")
                                          .Append("[TheId] NUMERIC(8) NOT NULL IDENTITY PRIMARY KEY,")
                                          .Append("[Name] VARCHAR(32) NOT NULL,")
                                          .Append("[BuildYear] NUMERIC(4) NOT NULL)")
                                          .ToString();

            var createCarTable = new StringBuilder("CREATE TABLE Car (")
                                 .Append("[Id] NUMERIC(8) NOT NULL IDENTITY PRIMARY KEY,")
                                 .Append("[Name] VARCHAR(32),")
                                 .Append("[ModelYear] NUMERIC(4) NOT NULL,")
                                 .Append("[CreatedAt] DATETIME NOT NULL,")
                                 .Append("[Chassis] VARCHAR(32) NOT NULL,")
                                 .Append("[Mileage] FLOAT,")
                                 .Append("[Category] NUMERIC(1) NOT NULL,")
                                 .Append("[ManufacturerId] NUMERIC(8) REFERENCES Le_Manufacturer(TheId))")
                                 .ToString();

            using (var data = new DataContext())
            {
                data.Execute(createManufacturerTable);
                data.Execute(createCarTable);
                data.Commit();
            }
        }
Example #23
0
        public string UpdateImprovementPlan(OEE_ImprovementPlanDTO item)
        {
            try
            {
                DateTime nowDate = DateTime.Now;

                using (var trans = DataContext.Database.BeginTransaction())
                {
                    var result = DataContext.OEE_ImprovementPlan.Where(p => p.ImprovementPlan_UID == item.ImprovementPlan_UID).FirstOrDefault();
                    if (result != null)
                    {
                        result.ImprovementPlan_ID   = item.ImprovementPlan_ID;
                        result.ImprovementPlan_Name = item.ImprovementPlan_Name;
                        result.Status              = item.Status;
                        result.Audience            = item.Audience;
                        result.Responsible         = item.Responsible;
                        result.Problem_Description = item.Problem_Description;
                        result.Root_Cause          = item.Root_Cause;
                        result.Comment             = item.Comment;
                        result.Modified_UID        = item.Modified_UID;
                        result.Modified_Date       = item.Modified_Date;
                        result.Commit_Date         = item.Commit_Date;
                        result.DirDueDate          = item.DirDueDate;
                        if (item.Status == 4)
                        {
                            result.Close_Date = item.Close_Date;
                        }

                        result.Due_Date = item.Due_Date;
                    }
                    DataContext.SaveChanges();
                    DataContext.Commit();

                    var deleteSql = $"delete from OEE_ImprovementPlanD where ImprovementPlan_UID={ item.ImprovementPlan_UID}";
                    DataContext.Database.ExecuteSqlCommand(deleteSql);
                    DataContext.SaveChanges();
                    DataContext.Commit();

                    foreach (var dtoItem in item.OEE_ImprovementPlanDetailList)
                    {
                        dtoItem.ImprovementPlan_UID = item.ImprovementPlan_UID;
                        var sql = GetInsertDetailSql(dtoItem);
                        DataContext.Database.ExecuteSqlCommand(sql);
                    }

                    DataContext.SaveChanges();
                    DataContext.Commit();

                    trans.Commit();
                }
                return("SUCCESS");
            }
            catch (Exception ex)
            {
                return("FAILD");
            }
        }
Example #24
0
        public async Task <HttpResponseMessage> Delete(string userId)
        {
            try
            {
                var aspNetUser = DataContext.AspNetUsers.Where(u => u.Id == userId).FirstOrDefault();

                if (aspNetUser != null)
                {
                    aspNetUser.MyRejects.Clear();
                    aspNetUser.MyWonders.Clear();

                    DataContext.Commit();

                    if (DataContext.Deals.Count(w => w.Creator_User_Id == aspNetUser.Id) > 0)
                    {
                        try
                        {
                            //Move all Wonders to a default admin user
                            var adminUser     = DataContext.AspNetUsers.FirstOrDefault(u => u.UserName.Equals("*****@*****.**"));
                            var wondersToMove = DataContext.Deals.Where(w => w.Creator_User_Id == aspNetUser.Id);
                            foreach (var deal in wondersToMove)
                            {
                                deal.Creator_User_Id = adminUser.Id;
                            }
                        }
                        catch (Exception e)
                        {
                            return(Request.CreateErrorResponse(HttpStatusCode.Forbidden, "This user has created Wonders - please remove these before attempting to delete this user"));
                        }
                    }

                    aspNetUser.Categories.Clear();
                    if (aspNetUser.UserPreference != null)
                    {
                        DataContext.Preferences.Remove(aspNetUser.UserPreference);
                    }
                    UserManager.RemoveFromRoles(aspNetUser.Id, UserManager.GetRoles(aspNetUser.Id).ToArray());

                    foreach (var login in DataContext.AspNetUserLogins.Where(u => u.UserId == aspNetUser.Id))
                    {
                        DataContext.AspNetUserLogins.Remove(login);
                    }

                    DataContext.AspNetUsers.Remove(aspNetUser);
                    DataContext.Commit();

                    return(Request.CreateResponse(HttpStatusCode.OK));
                }

                return(Request.CreateErrorResponse(HttpStatusCode.Forbidden, "This user does not exist"));
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex));
            }
        }
Example #25
0
        public void updateUserInfo(ref ViewUser viewuser) {

            AutoMapper.IMapper mapper;
            AutoMapper.MapperConfiguration config;
            System.Data.Entity.EntityState entitystate;
            var currentTime = DateTime.Now;

            string guid = string.Empty;

            if (string.IsNullOrEmpty(viewuser.UserId))
            {

                entitystate = System.Data.Entity.EntityState.Added;
                viewuser.UserId = one.Core.Utilities.ShortGuid();
                viewuser.CreateTime = currentTime;

            }
            else 
            {
                entitystate = System.Data.Entity.EntityState.Modified;
                viewuser.LastUpdateTime = currentTime;
            }


            config = new AutoMapper.MapperConfiguration(cfg => cfg.CreateMap<ViewUser, Auth_Users>());
            mapper = config.CreateMapper();
            Auth_Users user = mapper.Map<Auth_Users>(viewuser);

            config = new AutoMapper.MapperConfiguration(cfg => cfg.CreateMap<ViewUser, Auth_UserInfor>());
            mapper = config.CreateMapper();
            Auth_UserInfor userInfo = mapper.Map<Auth_UserInfor>(viewuser);

            DataContext.Auth_Users.Attach(user);
            DataContext.Auth_UserInfor.Attach(userInfo);

            if (entitystate == System.Data.Entity.EntityState.Added)
            {
                DataContext.Entry(user).State = System.Data.Entity.EntityState.Added;
                DataContext.Entry(userInfo).State = System.Data.Entity.EntityState.Added;
            }
            else
            {
                DataContext.Entry(user).Property(s => s.UserName).IsModified = true;
                DataContext.Entry(user).Property(s => s.Email).IsModified = true;
                DataContext.Entry(user).Property(s => s.PhoneNumber).IsModified = true;
                DataContext.Entry(userInfo).Property(a => a.Describe).IsModified = true;
                DataContext.Entry(userInfo).Property(a => a.Mobile).IsModified = true;
                DataContext.Entry(userInfo).Property(a => a.LastUpdateTime).IsModified = true;
                DataContext.Entry(userInfo).Property(a => a.Name).IsModified = true;
                DataContext.Entry(userInfo).Property(a => a.QQ).IsModified = true;
                DataContext.Entry(userInfo).Property(a => a.Remark).IsModified = true;
                DataContext.Entry(userInfo).Property(a => a.Department).IsModified = true;
            }

            DataContext.Commit();
        }
        public void Save(Agenda agenda)
        {
            try
            {
                _dataContext.BeginTransaction();

                agenda.Medico   = _medicoRepository.Get(_dataContext, agenda.Medico.Crm);
                agenda.Paciente = _pacienteRepository.Get(_dataContext, agenda.Paciente.Cpf);

                if (ValidaAgenda(agenda))
                {
                    if (agenda.Id > 0)
                    {
                        _agendaRepository.Update(_dataContext, agenda);
                    }
                    else
                    {
                        _agendaRepository.Add(_dataContext, agenda);
                    }

                    _dataContext.Commit();

                    ResponseService = new ResponseService()
                    {
                        Type    = ResponseTypeEnum.Success,
                        Message = "Agenda cadastrada com sucesso."
                    };
                }
            }
            catch (Exception e)
            {
                ResponseService = new ResponseService()
                {
                    Type    = ResponseTypeEnum.Error,
                    Message = "Houve uma falha ao cadastrar a agenda."
                };
                _dataContext.Rollback();
            }
            finally
            {
                _dataContext.Finally();
            }
        }
Example #27
0
        public HttpResponseMessage UpdateNullEmails()
        {
            var usersWithNullEmails = DataContext.User.Where(x => String.IsNullOrEmpty(x.Email));

            foreach (var user in usersWithNullEmails)
            {
                user.Email = user.Username + "@passapic.com";
            }
            DataContext.Commit();
            return(Request.CreateResponse(HttpStatusCode.OK));
        }
Example #28
0
        public HttpResponseMessage UpdateNullPasswords()
        {
            var usersWithNullPasswords = DataContext.User.Where(x => String.IsNullOrEmpty(x.Password));

            foreach (var user in usersWithNullPasswords)
            {
                user.Password = PasswordHash.CreateHash("password01");
            }
            DataContext.Commit();
            return(Request.CreateResponse(HttpStatusCode.OK));
        }
Example #29
0
        public async Task <HttpResponseMessage> GetFacebookLogin(string accessToken)
        {
            FacebookUserViewModel fbUser = null;
            var path     = "https://graph.facebook.com/me?access_token=" + accessToken;
            var client   = new HttpClient();
            var uri      = new Uri(path);
            var response = await client.GetAsync(uri);

            if (!response.IsSuccessStatusCode)
            {
                return(Request.CreateResponse(HttpStatusCode.Unauthorized));
            }

            var content = await response.Content.ReadAsStringAsync();

            fbUser = Newtonsoft.Json.JsonConvert.DeserializeObject <FacebookUserViewModel>(content);
            var fbUserId = long.Parse(fbUser.ID);

            var user = DataContext.User.FirstOrDefault(x => x.FacebookId == fbUserId);

            if (user == null)
            {
                var papUser = new User
                {
                    Username   = String.Format("{0} {1}", fbUser.FirstName, fbUser.LastName),
                    Email      = String.IsNullOrEmpty(fbUser.Email) ? null : fbUser.Email,
                    FacebookId = long.Parse(fbUser.ID),
                    IsOnline   = true
                };
                DataContext.User.Add(papUser);
                DataContext.Commit();
                var accountModel = new AccountModel
                {
                    UserId    = papUser.Id,
                    Username  = papUser.Username,
                    OpenGames = new OpenGamesModel()
                };
                return(Request.CreateResponse(HttpStatusCode.Created, accountModel));
            }
            else
            {
                var guesses       = DataContext.Guess.Where(x => x.NextUser.Id == user.Id && !x.Complete);
                var openGameModel = PopulateOpenGamesModel(guesses);

                var accountModel = new AccountModel
                {
                    UserId    = user.Id,
                    Username  = user.Username,
                    OpenGames = openGameModel
                };

                return(Request.CreateResponse(HttpStatusCode.OK, accountModel));
            }
        }
Example #30
0
        public void DestoryRole(ref ViewRole role)
        {
            Auth_Roles entity = new Auth_Roles()
            {
                RoleId = role.RoleId
            };

            DataContext.Auth_Roles.Attach(entity);
            DataContext.Entry(entity).State = System.Data.Entity.EntityState.Deleted;
            DataContext.Commit();
        }
Example #31
0
        public async Task <IActionResult> PlaceBet(BetForPlaceDto betForPlace)
        {
            int userId;

            Int32.TryParse(User.FindFirst(ClaimTypes.NameIdentifier)?.Value, out userId);

            var match = await matchRepository.GetMatch(betForPlace.MatchId);

            float odds;

            if (match.Date < DateTime.Now)
            {
                return(BadRequest("You cannot bet on a past match."));
            }

            if (await betRepository.BetPlaced(userId, match.Id))
            {
                return(BadRequest("You already placed a bet on this match!"));
            }

            if (betForPlace.Prediction == 0)
            {
                odds = match.DrawOdds;
            }
            else if (betForPlace.Prediction == 1)
            {
                odds = match.TeamAOdds;
            }
            else if (betForPlace.Prediction == 2)
            {
                odds = match.TeamBOdds;
            }
            else
            {
                return(BadRequest("Something went wrong. Try again."));
            }

            var bet = new Bet
            {
                Match      = match,
                Prediction = betForPlace.Prediction,
                UserId     = userId,
                Odds       = odds
            };

            betRepository.Place(bet);

            if (await dataContext.Commit())
            {
                return(CreatedAtRoute("GetBet", new { id = bet.Id }, bet));
            }

            return(BadRequest("Could not place bet."));
        }
Example #32
0
        /// <summary>
        /// delete matching roles of user
        /// </summary>
        /// <param name="UserId"></param>
        /// <param name="Roles"></param>
        public void DeleteRoleForUser(string UserId, String[] Roles)
        {
            for (int i = 0; i < Roles.Length; i++)
            {
                var m = DataContext.Auth_Users.Find(UserId);
                var b = DataContext.Auth_Roles.Find(Roles[i]);
                m.Auth_Roles.Remove(b);
            }

            DataContext.Commit();
        }
Example #33
0
        public bool AddRole(string RoleName)
        {
            bool result = false;
            var  role   = new Auth_Roles()
            {
                Name = ""
            };

            DataContext.Auth_Roles.Add(role);
            DataContext.Commit();
            return(result);
        }
Example #34
0
        public void UpdateRole(ref ViewRole role)
        {
            Auth_Roles entity = new Auth_Roles()
            {
                RoleId   = role.RoleId ?? one.Core.Utilities.ShortGuid(),
                Name     = role.RoleName,
                Describe = role.Describe
            };

            DataContext.Auth_Roles.Attach(entity);
            DataContext.Entry(entity).State = getEntitystate(role.RoleId);
            DataContext.Commit();
        }
        public void DataContext_Should_Execute_And_Commit_A_SQL_Command_With_Transaction()
        {
            using (var context = new DataContext())
            {
                context.Execute("DELETE FROM Airplane");
                context.Commit();
            }

            connectionMock.Verify(c => c.CreateCommand(), Times.Once());
            connectionMock.Verify(c => c.Open(), Times.Once());
            connectionMock.Verify(c => c.BeginTransaction(), Times.Once());
            connectionMock.Verify(c => c.Close(), Times.Once());
            commandMock.Verify(c => c.ExecuteNonQuery(), Times.Once());
            commandMock.VerifySet(c => c.CommandText = "DELETE FROM Airplane");
            commandMock.VerifySet(c => c.Connection = connectionMock.Object);
            commandMock.VerifySet(c => c.Transaction = transactionMock.Object);
            commandMock.Verify(c => c.CreateParameter(), Times.Never());
            transactionMock.Verify(t => t.Commit(), Times.Once());
            providerMock.Object.DbTransaction.Should().NotBeNull();
        }
Example #36
0
        public void B_DataContext_Transitional_Should_Execute_A_Insert_SQL_Command_With_Array_Parameters_And_Read_Created_Data_In_Same_And_Count_Data_In_Another_Context()
        {
            using (var context = new DataContext())
            {
                context.Execute("INSERT INTO Le_Manufacturer VALUES (@0, @1)", "McLaren", 1963);
                var manufacturer = context.First<Manufacturer>("SELECT TOP 1 * FROM Le_Manufacturer WHERE Name = @0", "McLaren");
                context.Commit();

                manufacturer.TheId.Should().BeGreaterThan(0);
                manufacturer.Name.Should().Be("McLaren");
                manufacturer.BuildYear.Should().Be(1963);
            }

            using (var context = new DataContext())
            {
                var manufacturerCount = context.GetValue<int>("SELECT COUNT(TheId) FROM Le_Manufacturer");

                manufacturerCount.Should().Be(2);
            }
        }
Example #37
0
        public void A_DataContext_Transitional_Should_Execute_A_Insert_SQL_Command_With_Anonymous_Object_Parameters_And_Read_Created_Data_In_Same_And_Count_Data_In_Another_Context()
        {
            using (var context = new DataContext())
            {
                var insertParameters = new { Name = "Lotus", Year = 1952 };
                context.Execute("INSERT INTO Le_Manufacturer VALUES (@Name, @Year)", insertParameters);
                var manufacturer = context.First<Manufacturer>("SELECT TOP 1 * FROM Le_Manufacturer");
                context.Commit();

                manufacturer.TheId.Should().BeGreaterThan(0);
                manufacturer.Name.Should().Be("Lotus");
                manufacturer.BuildYear.Should().Be(1952);
            }

            using (var context = new DataContext())
            {
                var manufacturerCount = context.GetValue<int>("SELECT COUNT(TheId) FROM Le_Manufacturer");

                manufacturerCount.Should().Be(1);
            }
        }
Example #38
0
        public void RegisterDeleted_WithPost_RemovesPost(
            string databaseName,
            Post post)
        {
            // Given
            var sut = new DataContext(databaseName);
            sut.RegisterAdded(post);
            sut.Commit();

            // When
            sut.RegisterDeleted(post);
            sut.Commit();
            var result = sut.Get<Post>().Any();

            // Then
            Assert.False(result);
            sut.Database.Delete();
            sut.Dispose();
        }
Example #39
0
        public void F_DataContext_Should_Read_Data_With_One_Field_And_Insert_A_Data_With_Some_Parameters_Types()
        {
            using (var context = new DataContext())
            {
                var selectParameters = new { Name = "Lotus" };
                var manufacturer = context.First<Manufacturer>("SELECT TheId FROM Le_Manufacturer WHERE Name = @Name", selectParameters);

                var insertParameters = new Car
                {
                    Name = "Esprit Turbo",
                    ModelYear = 1981,
                    Mileage = 318.19850801,
                    ManufacturerId = manufacturer.TheId,
                    Category = CarCategory.Sport
                };

                context.Execute("INSERT INTO Car VALUES (@Name, @ModelYear, @CreatedAt, @Chassis, @Mileage, @Category, @ManufacturerId)", insertParameters);
                var car = context.First<Car>("SELECT TOP 1 * FROM Car");
                context.Commit();

                car.Id.Should().BeGreaterThan(0);
                car.Name.Should().Be("Esprit Turbo");
                car.ModelYear.Should().Be(1981);
                car.Mileage.Should().Be(318.19850801);
                car.ManufacturerId.Should().Be(manufacturer.TheId);
                car.CreatedAt.Date.Should().Be(DateTime.Today.Date);
                car.Category.Should().Be(CarCategory.Sport);
            }
        }
Example #40
0
        public void S_DataObject_Should_CRUD_An_Item_With_Shared_Transactional_Data_Context()
        {
            using (var context = new DataContext())
            {
                var dodge = new Manufacturer { Name = "Dodge", BuildYear = 1900 };
                manufacturerDataObject.Insert(dodge, context);

                dodge.BuildYear = 1915;
                manufacturerDataObject.Update(dodge, context);
                var updatedDodge = context.First<Manufacturer>("SELECT TOP 1 * FROM Le_Manufacturer WHERE Name = 'Dodge'");

                var m4s = new Car { Name = "M4S", ModelYear = 1984, Category = CarCategory.Prototype, ManufacturerId = dodge.TheId };
                carDataObject.Insert(m4s, context);
                var createdM4s = carDataObject.Select.With(context).First("WHERE Name = 'M4S'");

                carDataObject.Delete(m4s, context);
                var deletedM4s = carDataObject.Select.With(context).First("WHERE Name = 'M4S'");

                updatedDodge.BuildYear.Should().Be(1915);
                createdM4s.Should().NotBeNull();
                deletedM4s.Should().BeNull();

                context.Commit();
            }

            var createdDodgeOutsiteContext = manufacturerDataObject.Select.First("WHERE Name = 'Dodge'");
            createdDodgeOutsiteContext.Should().NotBeNull();
        }
Example #41
0
        public void RegisterModified_WithModifiedPost_PersistsPost(
            string databaseName,
            Post post,
            string modifiedValue)
        {
            // Given
            var sut = new DataContext(databaseName);
            sut.RegisterAdded(post);
            sut.Commit();

            // When
            post.Title = modifiedValue;
            sut.RegisterModified(post);
            sut.Commit();
            var result = sut.Get<Post>().FirstOrDefault();

            // Then
            Assert.Equal(post, result);
            sut.Database.Delete();
            sut.Dispose();
        }
        public void DataObjectCommand_Should_Receive_A_Context_To_Make_Transactional_Commands()
        {
            using (var context = new DataContext())
            {
                command.Insert(target, context);

                // Simulate connection open state later the first execute.
                connectionMock.Setup(c => c.State).Returns(ConnectionState.Open);

                command.Insert(target, context);

                context.Commit();
            }

            connectionMock.Verify(c => c.CreateCommand(), Times.Exactly(2));
            connectionMock.Verify(c => c.Open(), Times.Once());
            connectionMock.Verify(c => c.BeginTransaction(), Times.Once());
            connectionMock.Verify(c => c.Close(), Times.Once());
            commandMock.Verify(c => c.ExecuteScalar(), Times.Exactly(2));
            commandMock.VerifySet(c => c.Connection = connectionMock.Object);
            transactionMock.Verify(t => t.Commit(), Times.Once());
        }