Example #1
0
        public Model.Employee InsertOrUpdate(Model.Employee employee)
        {
            using (var context = new DataModelDataContext())
            {
                Employee target = null;
                if (employee.Id != Guid.Empty)
                {
                    target = context.Employees.SingleOrDefault(e => e.Id == employee.Id);
                    if (target == null)
                    {
                        return(null);
                    }
                }
                else
                {
                    target = new Employee
                    {
                        Id = Guid.NewGuid(),
                    };
                    context.Employees.InsertOnSubmit(target);
                }
                target.Name   = employee.Name;
                target.RoleId = employee.RoleId;
                context.SubmitChanges();

                employee.Id = target.Id;
                return(employee);
            }
        }
Example #2
0
        public Model.Order InsertOrUpdate(Model.Order order)
        {
            using (var context = new DataModelDataContext())
            {
                Order target = null;
                if (order.Id != Guid.Empty)
                {
                    target = context.Orders.SingleOrDefault(e => e.Id == order.Id);
                    if (target == null)
                    {
                        return(null);
                    }
                    target.State = order.State;
                }
                else
                {
                    target = new Order
                    {
                        Id        = Guid.NewGuid(),
                        State     = "ManagerApproving",
                        StateName = "Manager approving",
                    };
                    context.Orders.InsertOnSubmit(target);
                }
                target.OwnerId = order.OwnerId;
                context.SubmitChanges();

                order.Id = target.Id;
                return(order);
            }
        }
Example #3
0
        public void ChangeState(Guid id, string nextState, string nextStateName)
        {
            using (var context = new DataModelDataContext())
            {
                var order = Get(id, context);
                if (order == null)
                {
                    return;
                }

                order.State     = nextState;
                order.StateName = nextStateName;
                context.SubmitChanges();
            }
        }
Example #4
0
        public void UpdateOrderHistory(Guid id, string currentState, string nextState, string command, Guid?employeeId)
        {
            using (var context = new DataModelDataContext())
            {
                var historyItem = new OrderHistory
                {
                    Id = Guid.NewGuid(),
                    DestinationState = nextState,
                    OrderId          = id,
                    InitialState     = currentState
                };
                context.OrderHistories.InsertOnSubmit(historyItem);

                historyItem.Command        = command;
                historyItem.TransitionTime = DateTime.Now;
                historyItem.EmployeeId     = employeeId;

                context.SubmitChanges();
            }
        }