예제 #1
0
        public IResponse <NoValue> AddOffer(OfferCreateModel model)
        {
            Logger.Message($"AddOffer({model.Title})");

            var result = new Response <NoValue>();

            try
            {
                var offer = new Offer
                {
                    Title         = model.Title,
                    DateFrom      = model.DateFrom,
                    DateTo        = model.DateTo,
                    UserSegmentID = model.UserSegment,
                    Messages      = model.Messages,
                    Active        = true,
                };

                _uow.Offers.Add(offer);
                _uow.Complete();
                result.Status = Status.Success;
            }
            catch (Exception ex)
            {
                result.Message = Message.SomethingWrongError;
                result.Status  = Status.Error;
                Logger.ErrorWithException(ex);
            }

            return(result);
        }
예제 #2
0
        public IResponse <NoValue> UpdateOffer(OfferCreateModel model)
        {
            Logger.Message($"UpdateOffer({model.OfferID})");

            var result = new Response <NoValue>();

            try
            {
                var offer = _uow.Offers.Get(model.OfferID);

                offer.Title         = model.Title;
                offer.DateFrom      = model.DateFrom;
                offer.DateTo        = model.DateTo;
                offer.UserSegmentID = model.UserSegment;
                offer.Messages      = model.Messages;
                offer.Active        = model.Active;

                _uow.Complete();
                result.Status = Status.Success;
            }
            catch (Exception ex)
            {
                result.Message = Message.SomethingWrongError;
                result.Status  = Status.Error;
                Logger.ErrorWithException(ex);
            }

            return(result);
        }
예제 #3
0
        public IResponse <OfferCreateModel> EditOffer(int id)
        {
            Logger.Message($"EditOffer({id})");

            var result = new Response <OfferCreateModel>();

            try
            {
                var offer = _uow.Offers.Get(id);
                OfferCreateModel model = new OfferCreateModel
                {
                    OfferID     = offer.OfferID,
                    Title       = offer.Title,
                    DateFrom    = offer.DateFrom,
                    DateTo      = offer.DateTo,
                    UserSegment = offer.UserSegmentID,
                    Messages    = offer.Messages,
                    Active      = offer.Active,

                    UserSegmentList = _uow.UserSegments
                                      .GetAll()
                                      .Select(us => new Item
                    {
                        Id    = us.UserSegmentID,
                        Value = us.Name
                    })
                                      .ToList()
                };
                result.Value  = model;
                result.Status = Status.Success;
            }
            catch (Exception ex)
            {
                result.Message = Message.SomethingWrongError;
                result.Status  = Status.Error;
                Logger.ErrorWithException(ex);
            }
            return(result);
        }
예제 #4
0
        public IResponse <OfferCreateModel> NewOfferModel()
        {
            Logger.Message("NewOfferModel");

            OfferCreateModel model = new OfferCreateModel()
            {
                UserSegmentList = _uow.UserSegments
                                  .GetAll()
                                  .Select(v => new Item
                {
                    Id    = v.UserSegmentID,
                    Value = v.Name
                })
                                  .ToList()
            };

            return(new Response <OfferCreateModel>()
            {
                Value = model,
                Status = Status.Success
            });
        }
예제 #5
0
        public ActionResult Edit(OfferCreateModel model)
        {
            IResponse <NoValue> result = _offerManager.UpdateOffer(model);

            return(Json(result));
        }
예제 #6
0
        public ActionResult Create(OfferCreateModel createModel)
        {
            IResponse <NoValue> result = _offerManager.AddOffer(createModel);

            return(Json(result));
        }