示例#1
0
        public int Create(EditionDiscountApproverEntity entity, int userId)
        {
            try
            {
                var discountApprover = new EditionDiscountApprover
                {
                    EditionId               = entity.EditionId,
                    ApprovingUser           = entity.ApprovingUser,
                    ApprovalLowerPercentage = entity.ApprovalLowerPercentage,
                    ApprovalUpperPercentage = entity.ApprovalUpperPercentage,
                    CreatedOn               = DateTime.Now,
                    CreatedBy               = userId
                };

                _unitOfWork.EditionDiscountApproverRepository.Insert(discountApprover);
                _unitOfWork.Save();

                return(discountApprover.EditionDiscountApproverId);
            }
            catch (Exception exc)
            {
                return(-1);
            }
        }
示例#2
0
        public ActionResult _AddEditionDiscountApprover(EditionDiscountApproverAddModel model)
        {
            if (!ModelState.IsValid)
            {
                return(Json(new { success = false, message = ModelState.GetErrors() }, JsonRequestBehavior.AllowGet));
            }

            var edition = EditionServices.GetEditionById(model.EditionId);

            if (edition == null)
            {
                return(Json(new { success = false, message = "Edition doesn't exist." }, JsonRequestBehavior.AllowGet));
            }

            var existingDiscountApprover = EditionDiscountApproverServices.Get(model.EditionId, model.ApprovingUser);

            if (existingDiscountApprover != null)
            {
                return(Json(
                           new
                {
                    success = false,
                    message =
                        $"Discount approver already exists: {existingDiscountApprover.ApprovingUser}"
                }, JsonRequestBehavior.AllowGet));
            }

            var discountApprover = new EditionDiscountApproverEntity
            {
                EditionId               = edition.EditionId,
                ApprovingUser           = model.ApprovingUser,
                ApprovalLowerPercentage = model.ApprovalLowerPercentage.GetValueOrDefault(),
                ApprovalUpperPercentage = model.ApprovalUpperPercentage.GetValueOrDefault()
            };

            EditionDiscountApproverServices.Create(discountApprover, CurrentCedUser.CurrentUser.UserId);

            var scopeName = "Edition Discount Approver";

            // UPDATE EDITION
            UpdateEditionUpdateInfo(edition);

            // DIFF
            var diff = new List <Variance>
            {
                new Variance
                {
                    Prop = scopeName, ValA = null,
                    ValB = discountApprover.ApprovingUser
                }
            };

            OnEditionUpdated(edition, diff);

            // UPDATE LOG
            var updatedFields = NotificationControllerHelper.GetUpdatedFieldsAsJson(scopeName,
                                                                                    new List <Variance> {
                new Variance {
                    Prop = scopeName
                }
            });

            UpdateLogInMemory(edition, updatedFields);

            return(Json(
                       new
            {
                success = true,
                message =
                    $"Discount approver has been added: {discountApprover.ApprovingUser}"
            }, JsonRequestBehavior.AllowGet));
        }