public Response <bool> AddMoreFriend(InviteMoreFriendDTO request) { bool result = false; BusinessProcess.Current.Process(p => { result = IoC.Get <IOrderBusiness>().AddMoreFriend(request); }); return(BusinessProcess.Current.ToResponse(result)); }
public Response <IList <FriendDTO> > SyncFriends(InviteMoreFriendDTO request) { IList <FriendDTO> result = null; BusinessProcess.Current.Process(p => { result = IoC.Get <IAccountBusiness>().SyncFriends(request); }); return(BusinessProcess.Current.ToResponse(result)); }
public IHttpActionResult SyncFriends(InviteMoreFriendDTO request) { try { var result = _Service.SyncFriends(request); return(Ok(result.ToJsonResult(result.Data))); } catch (Exception ex) { logger.Error("SyncFriends Exception is {0}", ex); return(null); } }
public IList <FriendDTO> SyncFriends(InviteMoreFriendDTO request) { if (request.Context == null) { base.AddError("Authenticate failed !"); return(null); } if (request.Friends == null) { base.AddError("No contact to sync !"); return(null); } try { var m_accountRepository = UnitOfWork.Repository <DB_TB_ACCOUNTS>(); var m_friendshipRepository = UnitOfWork.Repository <DB_TB_FRIENDSHIP>(); var IorderBusiness = IoC.Get <IOrderBusiness>(); foreach (var item in request.Friends) { var checkAccount = m_accountRepository.GetQueryable().Where(a => a.ACC_EMAIL == item.Email).FirstOrDefault(); if (checkAccount != null) { if (!IorderBusiness.CheckExistFriendShip(request.Context.Id, checkAccount.ACC_SYS_ID)) { m_friendshipRepository.Add(IorderBusiness.BuildRowFriendShip(request.Context.Id, checkAccount.ACC_SYS_ID)); m_friendshipRepository.Add(IorderBusiness.BuildRowFriendShip(checkAccount.ACC_SYS_ID, request.Context.Id)); } } else { var rowAccount = new DB_TB_ACCOUNTS() { ACC_EMAIL = item.Email, ACC_FIRSTNAME = item.FirstName, ACC_IS_ACTIVED = false }; m_accountRepository.Add(rowAccount); } UnitOfWork.Commit(); } SearchDTO search = new SearchDTO() { Token = request.Token }; return(GetFriends(search)); } catch (Exception) { return(null); } }
public IHttpActionResult AddMoreFriend(InviteMoreFriendDTO request) { logger.InfoFormat("data AddMoreFriend controller is {0}", Newtonsoft.Json.JsonConvert.SerializeObject(request, Newtonsoft.Json.Formatting.Indented)); try { var result = _Service.AddMoreFriend(request); return(Ok(result.ToJsonResult(result.Data))); } catch (Exception ex) { logger.Error("AddMoreFriend Exception is {0}", ex); return(null); } }
public bool AddMoreFriend(InviteMoreFriendDTO request) { if (request.Context == null) { base.AddError("Authenticate failed !"); return(false); } if (request.Friends == null) { base.AddError("Data invaild!"); return(false); } var m_orderDetailRepository = UnitOfWork.Repository <DB_TB_ORDER_DETAIL>(); var m_orderDetails = m_orderDetailRepository.GetQueryable().Where(a => a.OrderId == request.OrderId).ToList(); var m_orderAccountRepository = UnitOfWork.Repository <DB_TB_INVITE_ACCOUNT>(); if (!m_orderDetails.Any()) { base.AddError("Data invaild!"); return(false); } foreach (var item in request.Friends) { if (!string.IsNullOrEmpty(item.Email)) { if (item.Id > 0) { bool checkExist = m_orderDetails.Where(a => a.AccountId == item.Id).FirstOrDefault() != null; if (!checkExist) { var m_friendDetail = new DB_TB_ORDER_DETAIL() { OrderId = request.OrderId, AccountId = item.Id, CreatedDate = DateTime.Now }; m_orderDetailRepository.Add(m_friendDetail); // add account in invite m_orderAccountRepository.Add(new DB_TB_INVITE_ACCOUNT() { AccountId = item.Id, IsConfirmed = false, IsSent = false, InviteId = request.OrderId }); } } } } UnitOfWork.Commit(); // update friend ship AddFriendShip(request.OrderId); // update restaurant per account addRestaurantAccount(request.OrderId); // send email SendMessageInvite(request.OrderId); return(!this.HasError); }