public void Given_Valid_Id_Update_Contact() { //Arrange ContactsDTO updatedContact = new ContactsDTO(); updatedContact = new ContactsDTO() { ContactId = nonUpdatedContactId, FirstName = "Shamina", LastName = "Singh", Telephone = "0325523816", Mobile = "0728788180", Email = "*****@*****.**", DateCreated = unUpdatedDate, DateUpdated = DateTime.Now }; //Act var result = dataLayer.UpdateContactAsync(nonUpdatedContactId, updatedContact).Result; //Assert var dbContact = contactsContext.Contacts.First(); Assert.AreEqual(result.Result.ContactId, dbContact.ContactId); Assert.AreSame(result.Result.FirstName, dbContact.FirstName); Assert.AreSame(result.Result.LastName, dbContact.LastName); Assert.AreSame(result.Result.Telephone, dbContact.Telephone); Assert.AreSame(result.Result.Mobile, dbContact.Mobile); Assert.AreSame(result.Result.Email, dbContact.Email); Assert.AreEqual(result.Result.DateCreated, dbContact.DateCreated); Assert.AreNotSame(result.Result.DateUpdated, unUpdatedDate); }
public async Task When_Invalid_Information_Inserted_Return_Error() { //Arrange var options = new DbContextOptionsBuilder <ContactsContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; contactsContext = new ContactsContext(options); dataLayer = new ContactsDataLayer(contactsContext); var contacts = new ContactsDTO() { ContactId = 1, FirstName = "Shamina", LastName = "Maharaj", Telephone = "032abcs", Mobile = "12345po", Email = "maharajshamina1gmailcom", DateCreated = DateTime.Now, DateUpdated = DateTime.Now, }; //Act BaseResponse <ContactsDTO> result = await dataLayer.AddNewContact(contacts); //Assert Assert.AreEqual(result.Result, null); Assert.AreEqual(result.ErrorStatus, ErrorStatus.Error); }
public async Task <BaseResponse <ContactsDTO> > AddNewContact(ContactsDTO contact) { var validator = new ContactsDTOValidator(); var result = validator.Validate(contact); if (!result.IsValid) { return(new BaseResponse <ContactsDTO>() { ErrorStatus = ErrorStatus.Error, ErrorInfo = new ErrorInfo() { ErrorMessage = result.Errors.First().ErrorMessage } }); } _context.Contacts.Add(contact); await _context.SaveChangesAsync(); return(new BaseResponse <ContactsDTO>() { ErrorStatus = ErrorStatus.Success, Result = contact }); }
/// <summary> /// 根据 姓名、电话号码和身份证 查询数据 /// </summary> /// <param name="reg">包含姓名、电话号码和身份证的实体类</param> /// <returns></returns> public async Task <ResultDTO> Get(ContactsDTO reg) { IEnumerable <Contacts> Contact = null; if ((reg.Name == null || reg.Name == "") && (reg.Phone == null || reg.Phone == "") && (reg.IdCard == null || reg.IdCard == "")) { //return null; return(new ResultDTO(200, "获取失败,条件不能全部为空", "", ResultStatus.Fail)); } var sql = PetaPoco.Sql.Builder .Select("*") .From("hnInfo"); if (reg.Id != null && reg.Id.ToString() != "" && reg.Id != Guid.Empty) { sql.Where("id = @0", reg.Id); } if (reg.Name != null && reg.Name != "") { sql.Where("name=@0", reg.Name); } if (reg.Phone != null && reg.Phone != "") { sql.Where("Phone=@0", reg.Phone); } if (reg.IdCard != null && reg.IdCard != "") { sql.Where("IdCard=@0", reg.IdCard); } Contact = Db.Query <Contacts>(sql); await Task.Delay(10); return(new ResultDTO(200, "获取成功", Contact, ResultStatus.Suceess)); }
public void When_Requesting_Contact_With_Valid_ID_Return_Contact() { //Arrange var contact = new ContactsDTO() { ContactId = validContactId, FirstName = "Shamina", LastName = "Maharaj", Telephone = "0325516332", Mobile = "0829519581", Email = null, DateCreated = DateTime.Now, DateUpdated = DateTime.Now, }; contactsContext.Contacts.Add(contact); contactsContext.SaveChanges(); //Act var result = dataLayer.GetContactByIdAsync(validContactId).Result; //Assert Assert.AreSame(result, contact); }
public async Task <ResultDTO> TextPutInfo(ContactsDTO contactsDTO, string id) { var content = new StringContent(JsonConvert.SerializeObject(contactsDTO), Encoding.UTF8, "application/json"); var response = await _client.PutAsync(@"http://localhost:5000/v1/Contacts/" + id, content); var stringResponse = await response.Content.ReadAsStringAsync(); var result = JsonConvert.DeserializeObject <ResultDTO>(stringResponse); return(result); }
public async Task <IActionResult> Post([FromBody] ContactsDTO reg) { yanz rules = new yanz(); var Result = rules.Validate(reg); if (!Result.IsValid) { return(Ok(new ResultDTO(200, Result.ToString(), "", ResultStatus.Error))); } return(Ok(await contactRepository.AddData(reg))); }
public async Task GetByPropInfoSuceess(string name, string phone, string idcard) { var data = new ContactsDTO() { Name = name, Phone = phone, IdCard = idcard }; var result = await funca.TextGetByPropInfo(data); Assert.NotNull(result.Result); }
public async Task <ResultDTO> TextGetByPropInfo(ContactsDTO contactsDTO) { var conent = new StringContent(JsonConvert.SerializeObject(contactsDTO), Encoding.UTF8, "application/json"); var response = await _client.PostAsync(@"http://localhost:5000/v1/Contacts/propselect", conent); var stringResonse = await response.Content.ReadAsStringAsync(); Output.WriteLine(stringResonse); var result = JsonConvert.DeserializeObject <ResultDTO>(stringResonse); return(result); }
public async Task GetByPropInfoError(string name, string phone, string idcard) { var data = new ContactsDTO() { Name = name, Phone = phone, IdCard = idcard }; var result = await funca.TextGetByPropInfo(data); Assert.Equal(ResultStatus.Fail, result.ResultStatus); }
public async Task PostInfoSuceess(string name, string phone, string idcard) { var data = new ContactsDTO() { Name = name, Phone = phone, IdCard = idcard }; //var exPostInfo = new Funca(); var result = await funca.TextPostInfo(data); Output.WriteLine(result.Message); Assert.Equal(ResultStatus.Suceess, result.ResultStatus); }
public async Task <BaseResponse <ContactsDTO> > UpdateContactAsync(int id, ContactsDTO contact) { var validator = new ContactsDTOValidator(); var result = validator.Validate(contact); if (!result.IsValid) { return(new BaseResponse <ContactsDTO>() { ErrorStatus = ErrorStatus.Error, ErrorInfo = new ErrorInfo() { ErrorMessage = result.Errors.First().ErrorMessage } }); } var contactData = await _context.Contacts.FirstOrDefaultAsync(i => i.ContactId == id); if (contactData != null) { contactData.DateUpdated = DateTime.Now; contactData.LastName = contact.LastName; contactData.Telephone = contact.Telephone; contactData.Mobile = contact.Mobile; contactData.Email = contact.Email; _context.Contacts.Attach(contactData); _context.Entry(contactData).State = EntityState.Modified; await _context.SaveChangesAsync(); return(new BaseResponse <ContactsDTO>() { ErrorStatus = ErrorStatus.Success, Result = contact }); } else { return(new BaseResponse <ContactsDTO>() { ErrorStatus = ErrorStatus.Failed, ErrorInfo = new ErrorInfo() { ErrorMessage = "Contact Not Found" }, Result = null }); } }
//public void CreateUser(UserProfileDTO UserProfile) public void AddContact(ContactsDTO contact) { db.Contacts.Add(new Contact { // Contacts =ContactDTO.UserProfileDTOId, Title = contact.Title, CellNumber = contact.CellNumber, Email = contact.Email, Name = contact.Name, Surname = contact.Surname, Telephone = contact.Telephone, ContactID = contact.ContactID }); db.SaveChanges(); }
/// <summary> /// 添加数据的方法 /// </summary> /// <param name="reg">数据</param> /// <returns></returns> public async Task <ResultDTO> AddData(ContactsDTO reg) { var soucreContacts = _mapper.Map <Contacts>(reg); soucreContacts.Id = System.Guid.NewGuid(); var selectData = await Db.SingleOrDefaultAsync <Contacts>("where phone = @0", soucreContacts.Phone); if (selectData != null) { return(new ResultDTO(200, "该号码已存在", selectData, ResultStatus.Error)); } if (await Db.InsertAsync(soucreContacts) != null) { var result = _mapper.Map <ContactsDTO>(soucreContacts); return(new ResultDTO(200, "添加成功", soucreContacts, ResultStatus.Suceess)); } else { return(new ResultDTO(200, "添加失败", reg, ResultStatus.Fail)); } }
public async Task Information_Needs_To_Be_Correctly_InsertedAsync() { //Arrange var options = new DbContextOptionsBuilder <ContactsContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; contactsContext = new ContactsContext(options); dataLayer = new ContactsDataLayer(contactsContext); var contacts = new ContactsDTO() { ContactId = 1, FirstName = "Shamina", LastName = "Maharaj", Telephone = "0325516332", Mobile = "0829519581", Email = "*****@*****.**", DateCreated = DateTime.Now, DateUpdated = DateTime.Now, }; //Act BaseResponse <ContactsDTO> result = await dataLayer.AddNewContact(contacts); //Assert Assert.NotNull(result.Result); Assert.AreEqual(result.ErrorStatus, ErrorStatus.Success); Assert.AreEqual(result.Result.ContactId, contacts.ContactId); Assert.AreEqual(result.Result.FirstName, contacts.FirstName); Assert.AreEqual(result.Result.LastName, contacts.LastName); Assert.AreEqual(result.Result.Telephone, contacts.Telephone); Assert.AreEqual(result.Result.Mobile, contacts.Mobile); Assert.AreEqual(result.Result.Email, contacts.Email); Assert.AreEqual(result.Result.DateCreated, contacts.DateCreated); Assert.AreEqual(result.Result.DateUpdated, contacts.DateUpdated); }
public async Task <List <ContactsDTO> > GetAllContactsAsync() { var result = new List <ContactsDTO>(); var dataset = await _context.Contacts.OrderBy(i => i.ContactId).ToListAsync(); if (dataset != null) { foreach (var item in dataset) { ContactsDTO contact = new ContactsDTO(); contact.ContactId = item.ContactId; contact.FirstName = item.FirstName; contact.LastName = item.LastName; contact.Telephone = item.Telephone; contact.Mobile = item.Mobile; contact.Email = item.Email; contact.DateCreated = item.DateCreated; contact.DateUpdated = item.DateUpdated; result.Add(contact); } } return(result); }
public void Setup() { var options = new DbContextOptionsBuilder <ContactsContext>() .UseInMemoryDatabase(Guid.NewGuid().ToString()) .Options; contactsContext = new ContactsContext(options); dataLayer = new ContactsDataLayer(contactsContext); contacts = new ContactsDTO() { ContactId = correctId, FirstName = "Shamina", LastName = "Maharaj", Telephone = "0325516332", Mobile = "0829519581", Email = "*****@*****.**", DateCreated = DateTime.Now.AddDays(-1), DateUpdated = DateTime.Now }; contactsContext.Contacts.Add(contacts); contactsContext.SaveChanges(); }
/// <summary> /// 更新数据的方法 /// </summary> /// <param name="id">Guid</param> /// <param name="req">包含姓名、电话号码和身份证的实体类</param> /// <returns></returns> public async Task <ResultDTO> UpdateData(Guid id, ContactsDTO req) { var contactReq = _mapper.Map <Contacts>(req); if (contactReq.Name == "" && contactReq.Phone == "" && contactReq.IdCard == "") { return(new ResultDTO(200, "没有修改后的数据。", "", ResultStatus.Fail)); } if (await Db.SingleOrDefaultAsync <Contacts>("where Id = @0", id) == null) { return(new ResultDTO(200, "修改的数据不存在。", "", ResultStatus.Fail)); } var sql = PetaPoco.Sql.Builder.Append("set "); if (contactReq.Name != null && contactReq.Name != "") { sql.Append("name = @0 ", contactReq.Name); } if (contactReq.IdCard != null && contactReq.IdCard != "") { sql.Append(", IdCard = @0 ", contactReq.IdCard); } if (contactReq.Phone != null && contactReq.Phone != "") { sql.Append(", Phone = @0 ", contactReq.Phone); } sql.Append(" where id = @0", id); var ContactNum = await Db.UpdateAsync <Contacts>(sql); if (ContactNum <= 0) { return(new ResultDTO(200, "更新失败。", "", ResultStatus.Fail)); } var selectData = await Db.SingleOrDefaultAsync <Contacts>("where Id = @0", id); return(new ResultDTO(200, "更新成功。", _mapper.Map <ContactsDTO>(selectData), ResultStatus.Suceess)); }
public async Task <IActionResult> UpdateContactAsync(int id, ContactsDTO contacts) { if (id != contacts.ContactId) { return(BadRequest()); } try { var result = await dataLayer.UpdateContactAsync(id, contacts); } catch (DbUpdateConcurrencyException) { if (!(await ContactsExists(id))) { return(NotFound()); } else { throw; } } return(Ok("Contact Updated Successfully")); }
public async Task <IActionResult> PostByPropGetInfo([FromBody] ContactsDTO reg) { return(Ok(await contactRepository.Get(reg))); }
public async Task <IActionResult> Put(Guid id, [FromBody] ContactsDTO req) { return(Ok(await contactRepository.UpdateData(id, req))); }
// POST: api/User public IHttpActionResult AddContact(ContactsDTO contactDTO) { con.AddContact(contactDTO); return(Ok()); }
public async Task <ActionResult <BaseResponse <ContactsDTO> > > AddNewContact(ContactsDTO contacts) { return(await dataLayer.AddNewContact(contacts)); }