Exemplo n.º 1
0
        public List <CheckInDto> ReadData(int eventId, string search)
        {
            string     query = "SELECT eventAttendeesID,name,email,other,checked FROM dbo.tblCheckIn WHERE eventID=@id AND name LIKE @search";
            SqlCommand cmd   = new SqlCommand(query, con);

            cmd.Parameters.AddWithValue("@id", eventId);
            cmd.Parameters.AddWithValue("@search", "%" + search + "%");
            List <CheckInDto> checkInDtos = new List <CheckInDto>();

            try
            {
                con.Open();
                SqlDataReader dataReader = cmd.ExecuteReader();
                while (dataReader.Read())
                {
                    CheckInDto checkInDto = new CheckInDto();
                    checkInDto.EventAttendeesID = dataReader.GetInt32(0);
                    checkInDto.Name             = dataReader.GetString(1);
                    checkInDto.Email            = dataReader.GetString(2);
                    checkInDto.Other            = dataReader.GetString(3);
                    checkInDto.Check            = dataReader.GetBoolean(4);
                    checkInDtos.Add(checkInDto);
                }
            }
            finally
            {
                con.Close();
            }
            return(checkInDtos);
        }
Exemplo n.º 2
0
        public void AddCheckInWithExistingPerson()
        {
            _stubUow.Query <Person>().Returns(info => new List <Person>
            {
                new Person
                {
                    FirstName = "firstName",
                    LastName  = "lastName",
                    BirthDate = new DateTime(2017, 7, 19),
                    Sex       = Sex.Female
                }
            }.AsQueryable());
            var checkInDto = new CheckInDto
            {
                PersonFirstName = "firstName",
                PersonLastName  = "lastName",
                PersonBirthDate = new DateTime(2017, 7, 19),
                PersonSex       = Sex.Female
            };

            var checkIn = _checkInService.Add(checkInDto);

            Assert.NotEqual(DateTime.MinValue, checkIn.VisitDateTime);
            _stubUow.Received().Add(checkIn);
        }
Exemplo n.º 3
0
        public async Task <IActionResult> Post(CheckInDto model)
        {
            var helper   = new Helper(_configuration, _userManager);
            var response = helper.VerifyToken(HttpContext);

            if (!response.Flagged)
            {
                return(BadRequest(new { message = response.Message }));
            }

            if (!model.CheckedIn)
            {
                return(BadRequest(new { message = "Enter check in value" }));
            }
            var attendance = new AttendanceModel
            {
                Id           = Guid.NewGuid().ToString(),
                CheckedInAt  = DateTime.Now,
                CheckedOutAt = DateTime.Now,
                CheckIn      = model.CheckedIn,
                OwnerId      = response.UserId,
                Reason       = "no reason",
            };

            await _attendanceRepository.PostAttendance(attendance);

            return(Created("", attendance));
        }
Exemplo n.º 4
0
        public CheckIn Add(CheckInDto checkInDto)
        {
            using (var transaction = _uow.BeginTransaction())
            {
                var person = _uow
                             .Query <Person>()
                             .SingleOrDefault(p => p.LastName == checkInDto.PersonLastName &&
                                              p.FirstName == checkInDto.PersonFirstName &&
                                              p.BirthDate.Date == checkInDto.PersonBirthDate.Date &&
                                              p.Sex == checkInDto.PersonSex);
                if (person == null)
                {
                    person = new Person
                    {
                        FirstName = checkInDto.PersonFirstName,
                        LastName  = checkInDto.PersonLastName,
                        BirthDate = checkInDto.PersonBirthDate,
                        Sex       = checkInDto.PersonSex
                    }
                }
                ;

                var checkIn = new CheckIn {
                    Person = person, VisitDateTime = DateTime.Now
                };
                _uow.Add(checkIn);

                transaction.Commit();

                return(checkIn);
            }
        }
    }
Exemplo n.º 5
0
        public CheckInDto CheckInByAttendeesID(int eventAttendeesID)
        {
            SqlCommand cmd = new SqlCommand("SELECT name,email,other,checked FROM tblCheckIn where eventAttendeesID=@eventAttendeesID;", con);

            cmd.Parameters.AddWithValue("@eventAttendeesID", eventAttendeesID);
            try
            {
                con.Open();
                SqlDataReader dataReader = cmd.ExecuteReader();
                if (dataReader.Read())
                {
                    CheckInDto checkInDto = new CheckInDto();
                    checkInDto.EventAttendeesID = eventAttendeesID;
                    checkInDto.Name             = dataReader.GetString(0);
                    checkInDto.Email            = dataReader.GetString(1);
                    checkInDto.Other            = dataReader.GetString(2);
                    checkInDto.Check            = dataReader.GetBoolean(3);
                    return(checkInDto);
                }
            }
            finally
            {
                con.Close();
            }
            return(null);
        }
Exemplo n.º 6
0
 public ActionResult CheckIn(CheckInDto checkInDto)
 {
     if (ModelState.IsValid)
     {
         //get the service
         //todo use ioc debendency injection here
         var service = MyService;
         //todo replace this with real authentication and users
         checkInDto.UserId = AppUser.Id;
         //get the real check in object, and populate the useful field
         //var chekcin = Mapper.Map<CheckIn>(checkInDto);
         var asset   = Mapper.Map <List <Jtext103.BlogSystem.Asset> >(checkInDto.Images);
         var chekcin = new Jtext103.OldHouse.Business.Models.CheckIn(new Jtext103.BlogSystem.BasicUser {
             Id = checkInDto.UserId
         }, checkInDto.TargetId, checkInDto.Titile, checkInDto.Content, asset, HouseService.GetGeoPoint(checkInDto.Lnt + @";" + checkInDto.Lat));
         //the house id is redeundent
         service.CheckInHouse(chekcin.TargetId, chekcin);
         return(RedirectToRoute("HouseDetail", new { id = checkInDto.TargetId, dis = checkInDto.Distance }));
     }
     else
     {
         ModelState.AddModelError("", "请一定说点什么吧。");
         return(View("NewCheckIn", checkInDto));
     }
 }
Exemplo n.º 7
0
        public void AddCheckInWithNewPerson()
        {
            var checkInDto = new CheckInDto();

            var checkIn = _checkInService.Add(checkInDto);

            Assert.NotEqual(DateTime.MinValue, checkIn.VisitDateTime);
            _stubUow.Received().Add(checkIn);
        }
        public void CheckIn()
        {
            BitmapSource srs    = (BitmapSource)checkInWindow.ImageSource;
            Bitmap       bitmap = null;

            if (srs != null)
            {
                using (MemoryStream outStream = new MemoryStream())
                {
                    BitmapEncoder enc = new BmpBitmapEncoder();

                    enc.Frames.Add(BitmapFrame.Create(srs));
                    enc.Save(outStream);
                    bitmap = new Bitmap(outStream);
                }
            }
            try
            {
                String         content        = QRModuleLib.QRModule.DecodeFromQRCode(bitmap);
                DataEncryption dataEncryption = new DataEncryption(null, content);
                content = dataEncryption.InputCode;
                if (content == null)
                {
                    checkInWindow.Status = "Waiting....";
                }
                else
                {
                    CheckInDao checkInDao = new CheckInDao();
                    checkInDao.MakeConnection(Properties.Resources.strConnection);
                    try
                    {
                        int        id         = int.Parse(content);
                        CheckInDto checkInDto = checkInDao.CheckInByAttendeesID(id);
                        if (checkInDto.Check)
                        {
                            checkInWindow.Status = "QR code is checked!";
                        }
                        else
                        {
                            checkInDao.UpdateStatus(id, true);
                            LoadMemberEvent();
                            checkInWindow.Status = checkInDto.Name;
                        }
                    }
                    catch
                    {
                        checkInWindow.Status = "QR code is not existed!";
                    }
                }
            }
            catch (NullReferenceException ex)
            {
                checkInWindow.Status = "Waiting";
            }
        }
Exemplo n.º 9
0
        public void AddCheckInWithTransaction()
        {
            var checkInDto      = new CheckInDto();
            var stubTransaction = Substitute.For <ITransaction>();

            _stubUow.BeginTransaction().Returns(info => stubTransaction);

            _checkInService.Add(checkInDto);

            _stubUow.Received().BeginTransaction();
            stubTransaction.Received().Commit();
        }
Exemplo n.º 10
0
        public CheckIn Update(int id, CheckInDto checkInDto)
        {
            var checkIn = GetQuery().FirstOrDefault(o => o.Id == id);

            if (checkIn == null)
            {
                throw new NotFoundExpection("Изменяемое посещение не найдено");
            }

            checkIn.Person.FirstName = checkInDto.PersonFirstName;
            checkIn.Person.LastName  = checkInDto.PersonLastName;
            checkIn.Person.BirthDate = checkInDto.PersonBirthDate.Date;
            checkIn.Person.Sex       = checkInDto.PersonSex;

            _uow.SaveChanges();

            return(checkIn);
        }
        public bool AddEvent()
        {
            if (addEventWindow.EventName.Length == 0)
            {
                addEventWindow.Status = "Event name is empty";
                return(false);
            }
            if (addEventWindow.EventName.Length > 50)
            {
                addEventWindow.Status = "Event name have length lower than 50";
                return(false);
            }
            EventDao eventDao = new EventDao();

            eventDao.MakeConnection(Properties.Resources.strConnection);
            if (eventDao.Create(new EventDto(addEventWindow.EventName, addEventWindow.Desciption, "", ((App)Application.Current).UserName)))
            {
                List <CheckBox> groupShowList = (List <CheckBox>)addEventWindow.Group;
                int             index         = 0;
                foreach (CheckBox checkBox in groupShowList)
                {
                    if ((bool)checkBox.IsChecked)
                    {
                        EventAttendeesDao eventAttendeesDao = new EventAttendeesDao();
                        List <GroupDto>   groupDtos         = (List <GroupDto>)addEventWindow.GroupData;
                        eventAttendeesDao.MakeConnection(Properties.Resources.strConnection);
                        List <EventAttendeesDto> eventAttendeesDtos = eventAttendeesDao.ReadData(groupDtos[index].Id, "");
                        foreach (EventAttendeesDto eventAttendeesDto in eventAttendeesDtos)
                        {
                            CheckInDao checkInDao = new CheckInDao();
                            checkInDao.MakeConnection(Properties.Resources.strConnection);
                            CheckInDto checkInDto = new CheckInDto();
                            checkInDto.EventID = eventDao.GetLastId();
                            checkInDto.Name    = eventAttendeesDto.Name;
                            checkInDto.Email   = eventAttendeesDto.Email;
                            checkInDto.Other   = eventAttendeesDto.Other;
                            checkInDao.Create(checkInDto);
                        }
                    }
                    index++;
                }
            }
            return(true);
        }
Exemplo n.º 12
0
        public bool Update(CheckInDto dto)
        {
            SqlCommand cmd = new SqlCommand("Update tblCheckIn set name=@name,email=@email,other=@other where eventAttendeesID=@eventAttendeesID;", con);

            cmd.Parameters.AddWithValue("@eventAttendeesID", dto.EventAttendeesID);
            cmd.Parameters.AddWithValue("@name", dto.Name);
            cmd.Parameters.AddWithValue("@email", dto.Email);
            cmd.Parameters.AddWithValue("@other", dto.Other);
            int count = 0;

            try
            {
                con.Open();
                count = cmd.ExecuteNonQuery();
            }
            finally
            {
                con.Close();
            }

            return(count == 1);
        }
Exemplo n.º 13
0
        public bool Create(CheckInDto dto)
        {
            SqlCommand cmd = new SqlCommand("Insert Into tblCheckIn(name,email,other,eventID,checked) VALUES(@name,@email,@other,@eventID,@checked);", con);

            cmd.Parameters.AddWithValue("@name", dto.Name);
            cmd.Parameters.AddWithValue("@email", dto.Email);
            cmd.Parameters.AddWithValue("@other", dto.Other);
            cmd.Parameters.AddWithValue("@eventID", dto.EventID);
            cmd.Parameters.AddWithValue("@checked", false);
            int count = 0;

            try
            {
                con.Open();
                count = cmd.ExecuteNonQuery();
            }
            finally
            {
                con.Close();
            }
            return(count == 1);
        }
Exemplo n.º 14
0
        public async Task <IActionResult> AddStockEntry(CheckInDto checkInDto)
        {
            if (!await _authService.IsPermitted(User, checkInDto.EnvironmentId,
                                                PermissionFlags.IsOwner | PermissionFlags.CanScan))
            {
                return(Unauthorized());
            }

            checkInDto.ExpireDate = checkInDto.ExpireDate.AddMinutes(checkInDto.ClientTimezoneOffset);
            var entryValues = _mapper.Map <StockEntryValue>(checkInDto);

            entryValues.AmountRemaining = 1;

            StockEntryValue newEntry = await _repo.AddStockEntry(entryValues, checkInDto.UsualLifetime);

            var ret = _mapper.Map <ArticleDto>(newEntry.Article);

            await _repo.WriteActivityLog(ActivityLogAction.CheckIn, User, checkInDto.EnvironmentId,
                                         checkInDto.ArticleId, checkInDto.AmountOnStock.ToString());

            return(CreatedAtRoute(nameof(LookupArticle),
                                  new { controller = "Articles", barcode = checkInDto.Barcode, environmentId = checkInDto.EnvironmentId }, ret));
        }
Exemplo n.º 15
0
 public ActionResult CheckIn(CheckInDto checkInDto)
 {
     if (ModelState.IsValid)
     {
         //get the service
         //todo use ioc debendency injection here
         var service = MyService;
         //todo replace this with real authentication and users
         var user = AppUser;
         checkInDto.UserId = user.Id;
         //get the real check in object, and populate the useful field
         var chekcin = Mapper.Map <CheckIn>(checkInDto);
         chekcin.CreateTime = DateTime.Now;
         //the house id is redeundent
         service.CheckInHouse(chekcin.TargetId, chekcin);
         return(RedirectToRoute("HouseDetail", new { id = checkInDto.TargetId, dis = checkInDto.Distance }));
     }
     else
     {
         ModelState.AddModelError("", "请一定说点什么吧。");
         return(View("NewCheckIn", checkInDto));
     }
 }
Exemplo n.º 16
0
        public bool AddMemberInEvent()
        {
            if (detailMemberWindow.DataName.Length == 0)
            {
                detailMemberWindow.Status = "Member name is empty";
                return(false);
            }
            if (!IsValidEmail(detailMemberWindow.Email))
            {
                detailMemberWindow.Status = "Email invalidate";
                return(false);
            }
            CheckInDao checkInDao = new CheckInDao();

            checkInDao.MakeConnection(Properties.Resources.strConnection);
            CheckInDto checkInDto = new CheckInDto();

            checkInDto.Name    = detailMemberWindow.DataName;
            checkInDto.Email   = detailMemberWindow.Email;
            checkInDto.Other   = detailMemberWindow.Other;
            checkInDto.EventID = detailMemberWindow.Id;
            return(checkInDao.Create(checkInDto));
        }
Exemplo n.º 17
0
        public void UpdateCheckIn()
        {
            _checkIns.Add(new CheckIn
            {
                Id     = 10,
                Person = new Person()
            });
            var checkInDto = new CheckInDto
            {
                PersonFirstName = "newFirstName",
                PersonLastName  = "newLastName",
                PersonSex       = Sex.Female,
                PersonBirthDate = new DateTime(2000, 1, 1)
            };

            var checkIn = _checkInService.Update(10, checkInDto);

            Assert.Equal("newFirstName", checkIn.Person.FirstName);
            Assert.Equal("newLastName", checkIn.Person.LastName);
            Assert.Equal(Sex.Female, checkIn.Person.Sex);
            Assert.Equal(new DateTime(2000, 1, 1), checkIn.Person.BirthDate);

            _stubUow.Received().SaveChanges();
        }
Exemplo n.º 18
0
        public CheckInDto Post(CheckInDto checkIn)
        {
            var addedCheckIn = _checkInService.Add(checkIn);

            return(_mapper.Map <CheckInDto>(addedCheckIn));
        }
Exemplo n.º 19
0
        public async Task <ActionResult> CheckIn(CheckInDto checkInDto)
        {
            await hubContext.Clients.All.SendAsync("checkIn", checkInDto);

            return(Ok());
        }
Exemplo n.º 20
0
        public CheckInDto Put(int id, [FromBody] CheckInDto checkInDto)
        {
            var updatedCheckIn = _checkInService.Update(id, checkInDto);

            return(_mapper.Map <CheckInDto>(updatedCheckIn));
        }