コード例 #1
0
        public async Task <IActionResult> PutMemberCards(int id, MemberCard MemberCards)
        {
            if (id != MemberCards.MemberCardId)
            {
                return(BadRequest());
            }

            if (!DateHelper.IsDateExpired(MemberCards.ExpiryCardDate) && DateHelper.IsDateExpired(MemberCards.CreationCardDate))
            {
                // Auto blacklist if not matching the conditions
                MemberCards.IsDeactivated = DateHelper.IsDateExpired(MemberCards.ExpiryCardDate) ? true : false;
                MemberCards.IsBlacklist   = !DateHelper.IsDateExpired(MemberCards.BlacklistEndDate) && !MemberCards.IsDeactivated ? false : true;

                _context.Entry(MemberCards).State = EntityState.Modified;

                try
                {
                    await _context.SaveChangesAsync();
                }
                catch (System.Data.Entity.Infrastructure.DbUpdateConcurrencyException)
                {
                    if (!MemberCardsExists(id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
            }
            else
            {
                return(StatusCode(406, "Please check the dates."));
            }


            return(NoContent());
        }
コード例 #2
0
        public async Task <IActionResult> PutMember(int id, Member member)
        {
            if (id != member.MemberId)
            {
                return(BadRequest());
            }
            // Login and phone number are unique.
            if (!_context.Members.Any(m => (m.EmailAddress == member.EmailAddress || member.PhoneNumber == m.PhoneNumber) && m.MemberId != id))
            {
                if (member.IsValidUser())
                {
                    // When a member is modified, it's only the member data. Nor the IdCard or the MemberCard. -> could be made different but develop choice
                    dynamic oldMemberData = CreatedAtAction("GetMember", new { id = member.MemberId }, member).Value;

                    member.IdCard      = oldMemberData.IdCard;
                    member.MemberCards = oldMemberData.MemberCards;

                    _context.Entry(member).State = EntityState.Modified;

                    try
                    {
                        await _context.SaveChangesAsync();
                    }
                    catch (DbUpdateConcurrencyException)
                    {
                        if (!MemberExists(id))
                        {
                            return(NotFound());
                        }
                        else
                        {
                            throw;
                        }
                    }
                    return(CreatedAtAction("GetMember", new { id = member.MemberId }, member));
                }
                else
                {
                    return(StatusCode(406, "Member not valid."));
                }
            }
            else
            {
                return(StatusCode(406, "Incorrect data."));
            }
        }
コード例 #3
0
        public async Task <IActionResult> PutIdCard(int id, IdCard idCard)
        {
            if (IdCardVerificator(idCard))
            {
                // Need to define if it's the ID or nationalID
                // Card ID
                if (id != idCard.IdCardId)
                {
                    return(BadRequest());
                }

                _context.Entry(idCard).State = EntityState.Modified;

                try
                {
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!IdCardExists(idCard.IdCardId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }

                return(CreatedAtAction("GetIdCard", new { id = idCard.IdCardId }, idCard));
            }
            else
            {
                return(StatusCode(406, "Data not valid."));
            }
        }