public List <Models.OutletModel> UpdateOutlet(Models.OutletModel outlet)
        {
            List <Models.OutletModel> response = new List <Models.OutletModel>();

            try
            {
                Outlet oldData = _outletManagerRepo.AsQueryable().FirstOrDefault(x => x.OutletId == outlet.OutletId);

                if (oldData != null)
                {
                    oldData.OutletAddresss = outlet.OutletAddresss;
                    oldData.OutletName     = outlet.OutletName;
                    oldData.UserId         = outlet.UserId;

                    _outletManagerRepo.Update(oldData);
                }

                response = _outletManagerRepo.AsQueryable().Where(x => x.UserId == outlet.UserId && x.Status == CommonConstants.StatusTypes.Active).Select(x => new Models.OutletModel {
                    OutletId = x.OutletId, OutletName = x.OutletName
                }).ToList();
            }
            catch (Exception ex)
            {
                _outletManagerRepo.Rollback();

                int pk;
                if (_crashLogRepo.AsQueryable().Any())
                {
                    pk = 0;
                }
                else
                {
                    pk = _crashLogRepo.AsQueryable().Max(x => x.CrashLogId) + 1;
                }

                if (ex.InnerException != null)
                {
                    _crashLogRepo.Add(new Crashlog
                    {
                        CrashLogId   = pk,
                        ClassName    = "OutletManagerService",
                        MethodName   = "UpdateOutlet",
                        ErrorMessage = ex.Message,
                        ErrorInner   =
                            (string.IsNullOrEmpty(ex.Message) || ex.Message == CommonConstants.MsgInInnerException
                                ? ex.InnerException.Message
                                : ex.Message),
                        Data      = outlet.UserId,
                        TimeStamp = DateTime.Now
                    });
                }
            }

            return(response);
        }
        public Models.OutletModel GetOutlet(int outletId)
        {
            Models.OutletModel response;
            try
            {
                Outlet outlet = _outletManagerRepo.Get(outletId);
                response = new Models.OutletModel
                {
                    OutletId       = outlet.OutletId,
                    OutletName     = outlet.OutletName,
                    OutletAddresss = outlet.OutletAddresss,
                    UserId         = outlet.UserId
                };
            }
            catch (Exception ex)
            {
                _outletManagerRepo.Rollback();

                int pk;
                if (_crashLogRepo.AsQueryable().Any())
                {
                    pk = 0;
                }
                else
                {
                    pk = _crashLogRepo.AsQueryable().Max(x => x.CrashLogId) + 1;
                }

                if (ex.InnerException != null)
                {
                    _crashLogRepo.Add(new Crashlog
                    {
                        CrashLogId   = pk,
                        ClassName    = "OutletManagerService",
                        MethodName   = "GetOutlet",
                        ErrorMessage = ex.Message,
                        ErrorInner   =
                            (string.IsNullOrEmpty(ex.Message) || ex.Message == CommonConstants.MsgInInnerException
                                ? ex.InnerException.Message
                                : ex.Message),
                        Data      = outletId.ToString(NumberFormatInfo.CurrentInfo),
                        TimeStamp = DateTime.Now
                    });
                }
                response = null;
            }

            return(response);
        }
        public List <Models.OutletModel> AddOutlet(Models.OutletModel outlet)
        {
            List <Models.OutletModel> response = new List <Models.OutletModel>();

            try
            {
                bool status = _outletManagerRepo.Add(new Outlet
                {
                    OutletAddresss = outlet.OutletAddresss,
                    OutletName     = outlet.OutletName,
                    UserId         = outlet.UserId,
                    Status         = CommonConstants.StatusTypes.Active
                });

                if (status)
                {
                    response = _outletManagerRepo.AsQueryable().Where(x => x.UserId == outlet.UserId && x.Status == CommonConstants.StatusTypes.Active).Select(x => new Models.OutletModel {
                        OutletId = x.OutletId, OutletName = x.OutletName
                    }).ToList();
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception ex)
            {
                _outletManagerRepo.Rollback();

                if (ex.InnerException != null)
                {
                    _crashLogRepo.Add(new Crashlog
                    {
                        ClassName    = "OutletManagerService",
                        MethodName   = "AddOutlet",
                        ErrorMessage = ex.Message,
                        ErrorInner   =
                            (string.IsNullOrEmpty(ex.Message) || ex.Message == CommonConstants.MsgInInnerException
                                ? ex.InnerException.Message
                                : ex.Message),
                        Data      = outlet.UserId,
                        TimeStamp = DateTime.Now
                    });
                }
            }

            return(response);
        }