public void loadFromDB(string userName) { ordersUser = OrdersUser.loadFromCache(userName); FullName = ordersUser.FullName; AllowCreateOrder = ordersUser.AllowCreateOrder; AllowCreateCrashOrder = ordersUser.AllowCreateCrashOrder; AllowEditTree = ordersUser.AllowEditTree; AllowEditUsers = ordersUser.AllowEditUsers; AllowCreateCranTask = ordersUser.CanCreateCranTask; UserID = ordersUser.UserID; }
public void checkPremissions(Orders dbOrder, OrdersUser currentUser) { OrderCreated = dbOrder.orderCreated; OrderReviewed = dbOrder.orderReviewed; OrderOpened = dbOrder.orderOpened; OrderClosed = dbOrder.orderClosed; OrderCanceled = dbOrder.orderCanceled; OrderCompleted = dbOrder.orderCompleted; OrderCompletedWithoutEnter = dbOrder.orderCompletedWithoutEnter; OrderExtended = dbOrder.orderExtended; OrderAskExtended = dbOrder.orderAskExtended; OrderIsExtend = dbOrder.orderIsExtend; OrderIsFixErrorEnter = dbOrder.orderIsFixErrorEnter; OrderState = (OrderStateEnum)Enum.Parse(typeof(OrderStateEnum), dbOrder.orderState, true); OrderType = (OrderTypeEnum)Enum.Parse(typeof(OrderTypeEnum), dbOrder.orderType, true); OrderCanceledWithoutReview = OrderCanceled && !OrderReviewed; OrderBanned = OrderState == OrderStateEnum.banned; int creator = dbOrder.userCreateOrderID; OrdersUser CreatorUser = OrdersUser.loadFromCache(creator); IsCurrentUser = currentUser.UserID == creator || (CreatorUser.AddFinishLogins.ToLower() + ";").Contains(currentUser.Name.ToLower() + ";"); AllowReviewOrder = currentUser.AllowReviewOrder && OrderState == OrderStateEnum.created; AllowOpenOrder = currentUser.AllowChangeOrder && OrderState == OrderStateEnum.accepted; AllowCloseOrder = (IsCurrentUser && OrderState == OrderStateEnum.opened) || currentUser.AllowChangeOrder && OrderState == OrderStateEnum.opened; AllowCompleteWithoutEnterOrder = currentUser.AllowChangeOrder && currentUser.AllowCreateCrashOrder && OrderState == OrderStateEnum.closed; AllowCompleteOrder = currentUser.AllowChangeOrder && OrderState == OrderStateEnum.closed; AllowChangeOrder = (IsCurrentUser || currentUser.AllowChangeOrder) && OrderState == OrderStateEnum.created || (currentUser.AllowChangeOrder && (OrderType == OrderTypeEnum.no || OrderType == OrderTypeEnum.crash) && OrderState == OrderStateEnum.opened); AllowExtendOrder = (currentUser.AllowChangeOrder || currentUser.UserID == creator) && OrderState == OrderStateEnum.opened; AllowCancelOrder = ((IsCurrentUser || currentUser.AllowChangeOrder) && (OrderState == OrderStateEnum.created || OrderState == OrderStateEnum.accepted || orderState == OrderStateEnum.opened && OrderIsExtend)) || currentUser.AllowChangeOrder && OrderState == OrderStateEnum.opened && orderIsFixErrorEnter; string[] ids = dbOrder.agreeUsersIDS.Split(';'); AllowCommentOrder = true; AllowRejectReviewOrder = (currentUser.AllowEditOrders || currentUser.AllowReviewOrder) && (OrderState == OrderStateEnum.accepted || OrderState == OrderStateEnum.banned && !OrderIsExtend || OrderState == OrderStateEnum.opened && OrderIsExtend); AllowRejectOpenOrder = (currentUser.AllowEditOrders || currentUser.AllowChangeOrder) && OrderState == OrderStateEnum.opened && !OrderIsExtend && !OrderIsFixErrorEnter && !OrderExtended && !OrderAskExtended && OrderType != OrderTypeEnum.crash && OrderType != OrderTypeEnum.no; AllowRejectCloseOrder = (currentUser.AllowEditOrders || currentUser.AllowChangeOrder) && OrderState == OrderStateEnum.closed; AllowRejectCancelOrder = (currentUser.AllowEditOrders || currentUser.AllowChangeOrder) && OrderState == OrderStateEnum.canceled && !OrderIsExtend && !OrderIsFixErrorEnter; AllowRejectCompleteOrder = (currentUser.AllowEditOrders || currentUser.AllowChangeOrder) && OrderState == OrderStateEnum.completed; AllowEditOrder = currentUser.AllowEditOrders; }
public static OrdersUser getCurrentUser() { string login = "******"; if (System.Web.HttpContext.Current != null) { login = System.Web.HttpContext.Current.User.Identity.Name.ToLower(); } else { login = System.Security.Principal.WindowsIdentity.GetCurrent().Name; } return(OrdersUser.loadFromCache(login)); }
private void refreshAgreeUsers() { AgreeUsers = new List <OrdersUser>(); AgreeUsersDict = new Dictionary <int, string>(); try { string[] ids = AgreeUsersIDSText.Split(';'); foreach (string id in ids) { try { OrdersUser user = OrdersUser.loadFromCache(Int32.Parse(id)); AgreeUsers.Add(user); AgreeUsersDict.Add(user.UserID, user.FullName); } catch { } } } catch { } }
public void refreshOrderFromDB(Orders dbOrder, OrdersUser currentUser, bool readRelated, List <Order> listOrders) { if (listOrders != null) { if (!listOrders.Contains(this)) { listOrders.Add(this); } } OrderOperation = OrderOperationEnum.none; checkPremissions(dbOrder, currentUser); SelOrderObject = OrderObject.getByID(dbOrder.orderObjectID); OrderNumber = dbOrder.orderNumber; if (dbOrder.orderYearNumber.HasValue) { OrderYearNumber = dbOrder.orderYearNumber.Value; } else { OrderYearNumber = OrderNumber; } OrderType = (OrderTypeEnum)Enum.Parse(typeof(OrderTypeEnum), dbOrder.orderType, true); ReadyTime = dbOrder.readyTime; CreateText = dbOrder.createText; ReviewText = dbOrder.reviewText; OpenText = dbOrder.openText; CloseText = dbOrder.closeText; CompleteText = dbOrder.completeText; CancelText = dbOrder.cancelText; OrderObjectAddInfo = dbOrder.orderObjectAddInfo; OrderText = dbOrder.orderText; AgreeText = dbOrder.agreeText; AgreeUsersIDSText = dbOrder.agreeUsersIDS; refreshAgreeUsers(); FaktStartDate = dbOrder.faktStartDate; FaktStopDate = dbOrder.faktStopDate; FaktCompleteDate = dbOrder.faktCompleteDate; PlanStartDate = dbOrder.planStartDate; PlanStopDate = dbOrder.planStopDate; OrderDateReview = dbOrder.orderDateReview; OrderDateClose = dbOrder.orderDateClose; OrderDateOpen = dbOrder.orderDateOpen; OrderDateCreate = dbOrder.orderDateCreate; OrderDateComplete = dbOrder.orderDateComplete; OrderDateCancel = dbOrder.orderDateCancel; ExpiredReglamentHours = dbOrder.expiredReglamentHours; ExpiredOpenHours = dbOrder.expiredOpenHours; ExpiredCompleteHours = dbOrder.expiredCompleteHours; ExpiredCloseHours = dbOrder.expiredCloseHours; OrderIsExpiredClose = ExpiredCloseHours.HasValue && ExpiredCloseHours.Value < 0; OrderIsExpiredOpen = ExpiredOpenHours.HasValue && ExpiredOpenHours.Value < 0; OrderIsExpriredComplete = ExpiredCompleteHours.HasValue && ExpiredCompleteHours.Value < 0; OrderIsExpiredReglament = ExpiredReglamentHours.HasValue && ExpiredReglamentHours.Value < 0; CommentsText = dbOrder.commentsText; HasComments = !String.IsNullOrEmpty(CommentsText) || !String.IsNullOrEmpty(CreateText); UserCreateOrder = OrdersUser.loadFromCache(dbOrder.userCreateOrderID); if (dbOrder.userReviewOrderID != null) { UserReviewOrder = OrdersUser.loadFromCache(dbOrder.userReviewOrderID.Value); } if (dbOrder.userCloseOrderID != null) { UserCloseOrder = OrdersUser.loadFromCache(dbOrder.userCloseOrderID.Value); } if (dbOrder.userCancelOrderID != null) { UserCancelOrder = OrdersUser.loadFromCache(dbOrder.userCancelOrderID.Value); } if (dbOrder.userOpenOrderID != null) { UserOpenOrder = OrdersUser.loadFromCache(dbOrder.userOpenOrderID.Value); } if (dbOrder.userCompleteOrderID != null) { UserCompleteOrder = OrdersUser.loadFromCache(dbOrder.userCompleteOrderID.Value); } if (OrderExtended || OrderAskExtended || OrderCompletedWithoutEnter) { if (readRelated) { ChildOrder = GetOrder(dbOrder.childOrderNumber.Value, currentUser, readRelated, listOrders); } else { ChildOrderNumber = dbOrder.childOrderNumber.Value; } ChildOrderYearNumber = Math.Floor(OrderYearNumber) + ChildOrderNumber - Math.Floor(ChildOrderNumber); } else { ChildOrderNumber = 0; ChildOrderYearNumber = 0; } if (OrderIsExtend || OrderIsFixErrorEnter) { if (readRelated) { ParentOrder = GetOrder(dbOrder.parentOrderNumber.Value, currentUser, readRelated, listOrders); } else { ParentOrderNumber = dbOrder.parentOrderNumber.Value; } ParentOrderYearNumber = Math.Floor(OrderYearNumber) + ParentOrderNumber - Math.Floor(ParentOrderNumber); } else { ParentOrderNumber = 0; ParentOrderYearNumber = 0; } OrderYearNumber = checkOrderNumber(OrderYearNumber); ParentOrderYearNumber = checkOrderNumber(ParentOrderYearNumber); ChildOrderYearNumber = checkOrderNumber(ChildOrderYearNumber); if (OrderIsExtend || OrderIsFixErrorEnter) { try { OrderYear = GetOrder(Math.Floor(OrderNumber), currentUser, false, null).OrderDateCreate.Year; } catch (Exception e) { OrderYear = OrderDateCreate.Year; } } else { OrderYear = OrderDateCreate.Year; } OrderNumberFloor = Math.Floor(OrderNumber).ToString(); OrderNumberExp = Math.Round(((OrderNumber - Math.Floor(OrderNumber)) * 100)).ToString(); if (OrderNumberExp.Length == 1) { OrderNumberExp = "0" + OrderNumberExp; } IsCurrentYear = OrderYear == DateTime.Now.Year; OrderHasChildOrder = ChildOrderNumber > 0; OrderHasParentOrder = ParentOrderNumber > 0; checkTimeToOpen(); }