public UserDTO AssignUserGroup(Guid userid, IDList groupids) { List <Guid> gids = new List <Guid>(); groupids.ForEach(m => { Guid id = new Guid(); if (Guid.TryParse(m, out id)) { gids.Add(id); } }); var user = userRepository.Find(Specification <User> .Eval(u => u.ID.Equals(userid))); using (ITransactionCoordinator coordinator = TransactionCoordinatorFactory.Create(Context, bus)) { if (user == null) { throw new NullReferenceException("无法找指定的用户"); } var groups = groupRespository.GetAll((Specification <Group> .Eval(g => gids.Contains(g.ID)))).ToList(); user.Groups = groups; userRepository.Update(user); user.UpdateGroup(); coordinator.Commit(); } return(Mapper.Map <User, UserDTO>(user)); }
public UserDTO AssignUserRole(Guid userid, IDList roleids) { List <Guid> rids = new List <Guid>(); roleids.ForEach(m => { Guid id = new Guid(); if (Guid.TryParse(m, out id)) { rids.Add(id); } }); var user = userRepository.Find(Specification <User> .Eval(u => u.ID.Equals(userid))); using (ITransactionCoordinator coordinator = TransactionCoordinatorFactory.Create(Context, bus)) { if (user == null) { throw new NullReferenceException("无法找指定的用户"); } var roles = roleRepository.GetAll((Specification <Role> .Eval(r => rids.Contains(r.ID)))).ToList();; user.Roles = roles; userRepository.Update(user); user.UpdateRole(); coordinator.Commit(); } return(Mapper.Map <User, UserDTO>(user).ToViewModel()); }
public void Save(Product product) { //_context = ServiceLocator.Instance.GetService<IContext>(); using (ITransactionCoordinator tran = TransactionCoordinatorFactory.Create(_context)) { _event_Product.Save(product); tran.Commit(); } }
/// <summary> /// 销售订单确认。 /// </summary> /// <param name="orderID">需要被确认的销售订单的全局唯一标识。</param> public void Confirm(Guid orderID) { using (ITransactionCoordinator coordinator = TransactionCoordinatorFactory.Create(Context, EventBus)) { var salesOrder = salesOrderRepository.GetByKey(orderID); salesOrder.Confirm(); salesOrderRepository.Update(salesOrder); coordinator.Commit(); } }
/// <summary> /// 预定取消 /// </summary> /// <param name="ReservationId">预定Id</param> public void Cancel(Guid ReservationId) { using (ITransactionCoordinator coordinator = TransactionCoordinatorFactory.Create(Context, bus)) { Reservation reservation = reservationRepository.GetByKey(ReservationId); reservation.Cancel(); reservationRepository.Update(reservation); coordinator.Commit(); } }
public void Dispatch(Guid orderID) { using (ITransactionCoordinator coordinator = TransactionCoordinatorFactory.Create(Context, bus)) { var salesOrder = salesOrderRepository.Get(orderID); salesOrder.Dispatch(); salesOrderRepository.Update(salesOrder); coordinator.Commit(); } }
public void TestMethod1() { var context = RF.Concrete <IRepositoryContext>();// new EntityFrameworkRepositoryContext(new EFTestDbContext()); var bus = new MSMQEventBus(Helper.EventBus_MessageQueue); var repo = RF.Concrete <IUserRepository>(); var entity = new User { ID = Guid.NewGuid(), Name = "EventsUnitTest", Email = "*****@*****.**", Password = "******" }; repo.Create(entity); repo.Context.Commit(); using (ITransactionCoordinator coordinator = TransactionCoordinatorFactory.Create(context, bus)) { var tongz = repo.GetByKey(entity.ID); tongz.ChangeEmail("*****@*****.**"); coordinator.Commit(); } }