コード例 #1
0
        public async Task <IActionResult> Edit(Guid id, PersonViewModel vm)
        {
            if (ModelState.IsValid)
            {
                var getOperation = await _bo.ReadAsync(id);

                if (!getOperation.Success)
                {
                    return(View("Error", new ErrorViewModel()
                    {
                        RequestId = getOperation.Exception.Message
                    }));
                }
                if (getOperation.Result == null)
                {
                    return(NotFound());
                }
                var result = getOperation.Result;
                if (!vm.CompareToModel(result))
                {
                    result = vm.ToModel(result);
                    var updateOperation = await _bo.UpdateAsync(result);

                    if (!updateOperation.Success)
                    {
                        return(View("Error", new ErrorViewModel()
                        {
                            RequestId = updateOperation.Exception.Message
                        }));
                    }
                }
            }
            return(RedirectToAction(nameof(Index)));
        }
コード例 #2
0
        public async Task <IActionResult> Update([FromBody] PersonViewModel vm)
        {
            var getResult = await _bo.ReadAsync(vm.Id);

            if (!getResult.Success)
            {
                return(InternalServerError(getResult.Exception));
            }
            var item = getResult.Result;

            if (item == null)
            {
                return(NotFound());
            }
            if (vm.CompareToModel(item))
            {
                return(NotModified());
            }
            item = vm.ToModel(item);
            var updateResult = await _bo.UpdateAsync(item);

            if (!updateResult.Success)
            {
                return(InternalServerError(updateResult.Exception));
            }
            return(Ok());
        }
コード例 #3
0
        public async Task <IActionResult> Edit(Guid id, [Bind("Id, VatNumber, PhoneNumber, FirstName, LastName, BirthDate")] PersonViewModel vm)
        {
            if (ModelState.IsValid)
            {
                var getOperation = await _bo.ReadAsync((Guid)id);

                if (!getOperation.Success)
                {
                    return(View("Error", new ErrorViewModel()
                    {
                        RequestId = getOperation.Exception.Message
                    }));
                }
                if (getOperation.Result == null)
                {
                    return(NotFound());
                }
                var result = getOperation.Result;
                result.VatNumber   = vm.VatNumber;
                result.PhoneNumber = vm.PhoneNumber;
                result.FirstName   = vm.FirstName;
                result.LastName    = vm.LastName;
                result.BirthDate   = vm.BirthDate;
                var updateOperation = await _bo.UpdateAsync(result);

                if (!updateOperation.Success)
                {
                    return(View("Error", new ErrorViewModel()
                    {
                        RequestId = updateOperation.Exception.Message
                    }));
                }
            }
            return(RedirectToAction(nameof(Index)));
        }
コード例 #4
0
        public void TestUpdatePersonAsync()
        {
            ContextSeeders.Seed();
            var pbo     = new PersonBusinessObject();
            var resList = pbo.List();
            var item    = resList.Result.FirstOrDefault();

            var lubo = new LennyouseUserBusinessObject();

            var _lennyouseUser = new LennyouseUser(Guid.NewGuid());

            lubo.Create(_lennyouseUser);

            var _newPerson = new Person(3654324444, 1111111, "Marco", "Figueirinha", DateTime.UtcNow, _lennyouseUser.Id);

            item.VatNumber       = _newPerson.VatNumber;
            item.PhoneNumber     = _newPerson.PhoneNumber;
            item.FirstName       = _newPerson.FirstName;
            item.LastName        = _newPerson.LastName;
            item.BirthDate       = _newPerson.BirthDate;
            item.LennyouseUserId = _newPerson.LennyouseUserId;

            var resUpdate = pbo.UpdateAsync(item).Result;

            resList = pbo.ListAsync().Result;

            Assert.IsTrue(resList.Success && resUpdate.Success &&
                          resList.Result.First().VatNumber == _newPerson.VatNumber &&
                          resList.Result.First().PhoneNumber == _newPerson.PhoneNumber &&
                          resList.Result.First().FirstName == _newPerson.FirstName &&
                          resList.Result.First().LastName == _newPerson.LastName &&
                          resList.Result.First().BirthDate == _newPerson.BirthDate &&
                          resList.Result.First().LennyouseUserId == _newPerson.LennyouseUserId
                          );
        }
コード例 #5
0
        public void TestUpdatePersonAsync()
        {
            RestaurantSeeder.Seed();
            var bo      = new PersonBusinessObject();
            var resList = bo.ListAsync().Result;
            var item    = resList.Result.FirstOrDefault();

            item.FirstName = "another";
            var resUpdate = bo.UpdateAsync(item).Result;

            resList = bo.ListNonDeletedAsync().Result;
            Assert.IsTrue(resList.Success && resUpdate.Success && resList.Result.First().FirstName == "another");
        }