Example #1
0
 public ProductVM(ExpenseEntities db, Product product)
 {
     // TODO: Complete member initialization
     this.db          = db;
     this.product     = product;
     this.ProductList = new SelectList(db.Products.Where(p => p.ProductID == 1).ToList(), "ProductName", "ProductDescription");
 }
Example #2
0
        public void saveProduct(ProductVM productVM, ExpenseEntities db)
        {
            Product product = new Product();

            product.ProductID          = productVM.ProductID;
            product.ProductName        = productVM.ProductName;
            product.Price              = productVM.Price;
            product.ProductDescription = productVM.ProductDescription;

            //residentialVerification.Resi_Final_Remarks = getResidentialVerificationRemarks(productVM, db);
            db.Products.Add(product);
            try
            {
                db.SaveChanges();
            }
            catch (DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                      eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                          ve.PropertyName, ve.ErrorMessage);
                    }
                }
                // throw;
            }
        }
Example #3
0
        public void UpdateStatus(string emailId, int userId)
        {
            string          connectionString = ConfigurationManager.ConnectionStrings["ExpenseEntities"].ConnectionString;
            ExpenseEntities _dbcontext1      = ExpenseEntities.CreateEntitiesForSpecificDatabaseName(connectionString);

            var currentUser = (from usr in _dbcontext1.UsersInfoes
                               where usr.EmailId == emailId
                               select new { usr.Id, usr.EmailId });

            if (currentUser != null)
            {
                var friendId = currentUser.FirstOrDefault().Id;
                if (friendId != 0)
                {
                    var frndList = new FriendsList()
                    {
                        FriendId   = friendId,
                        UserId     = userId,
                        Active     = 1,
                        Created_On = DateTime.Now,
                        Updated_on = DateTime.Now
                    };
                    _dbcontext1.FriendsLists.Add(frndList);
                    _dbcontext1.SaveChanges();
                }
                SendInviteEmail(emailId, currentUser.FirstOrDefault().EmailId);
            }
        }
Example #4
0
        public ActionResult PaidList()
        {
            IEnumerable <Form> forms = null;
            ExpenseEntities    db    = new ExpenseEntities();

            State state  = db.States.Where(s => s.Name == "Paid").FirstOrDefault();
            Guid  userId = Guid.Parse(SessionManager.Get(SessionManager.Keys.UserId).ToString());


            if ((int)SessionManager.Get(SessionManager.Keys.AuthorizeLevel) == AuthorizeLevels.Accountant)
            {
                forms = db.Forms.Where(f => f.StateId.Equals(state.Id)).ToList();
            }

            if ((int)SessionManager.Get(SessionManager.Keys.AuthorizeLevel) == AuthorizeLevels.User)
            {
                forms = db.Forms.Where(f => f.StateId.Equals(state.Id) &&
                                       f.OwnerId == userId).ToList();
            }
            if ((int)SessionManager.Get(SessionManager.Keys.AuthorizeLevel) == AuthorizeLevels.Administrator)
            {
                forms = db.Forms.Where(f => f.StateId.Equals(state.Id)).ToList();
            }
            if ((int)SessionManager.Get(SessionManager.Keys.AuthorizeLevel) == AuthorizeLevels.Manager)
            {
                forms = db.Forms.Where(f => f.StateId.Equals(state.Id) &&
                                       f.User.ManagerId == userId).ToList();
            }



            return(View(forms));
        }
Example #5
0
        partial void BeforeCopyProperties(IBillExpense other, ref bool handled)
        {
            other.CheckArgument(nameof(other));
            other.Bill.CheckArgument(nameof(other.Bill));
            other.Expenses.CheckArgument(nameof(other.Expenses));
            other.Balances.CheckArgument(nameof(other.Balances));

            handled         = true;
            TotalExpense    = other.TotalExpense;
            FriendPortion   = other.FriendPortion;
            NumberOfFriends = other.NumberOfFriends;
            Friends         = other.Friends;
            FriendAmounts   = other.FriendAmounts;
            BilllEntity.CopyProperties(other.Bill);
            ExpenseEntities.Clear();
            foreach (var item in other.Expenses)
            {
                var expense = new Expense();

                expense.CopyProperties(item);
                ExpenseEntities.Add(expense);
            }
            BalanceEntities.Clear();
            foreach (var item in other.Balances)
            {
                var balance = new Balance();

                balance.CopyProperties(item);
                BalanceEntities.Add(balance);
            }
        }
Example #6
0
        // GET api/<controller>
        public IEnumerable <CrmExpenseModel> Get()
        {
            List <CrmExpenseModel> model = new List <CrmExpenseModel>();

            var client   = new CashFlowIntegrationService.CashFlowIntegrationServiceClient();
            var expenses = client.GetExpenses();

            foreach (var e in expenses)
            {
                CrmExpenseModel crmExpense = new CrmExpenseModel()
                {
                    Cost   = e.Cost,
                    Source = "Crm"
                };
                model.Add(crmExpense);
            }

            ExpenseEntities db = new ExpenseEntities();

            foreach (Models.Form f in db.Forms)
            {
                CrmExpenseModel expenseAppExpense = new CrmExpenseModel()
                {
                    Cost   = f.Total,
                    Source = "ExpenseApp"
                };
                model.Add(expenseAppExpense);
            }



            return(model);
        }
Example #7
0
        public static Models.Form Create(string name, double totalCost)
        {
            if (string.IsNullOrEmpty(name))
            {
                name = SessionManager.Get(SessionManager.Keys.FullName).ToString() + " , " + DateTime.Now.ToString();
            }
            ExpenseEntities db = new ExpenseEntities();

            Models.Form form = new Models.Form();
            form.Id          = Guid.NewGuid();
            form.Date        = DateTime.Now;
            form.Description = SessionManager.Get(SessionManager.Keys.FullName).ToString() + " Adlı kullanıcının" + DateTime.Now.ToString() + "Tarihli Formu";
            form.Name        = name;
            form.OwnerId     = Guid.Parse((SessionManager.Get(SessionManager.Keys.UserId).ToString()));
            State state = (State)db.States.Where(s => s.Name == "Pending").FirstOrDefault();

            form.StateId = state.Id;
            form.Total   = (int)totalCost;
            db.Forms.Add(form);
            db.SaveChanges();



            return(form);
        }
Example #8
0
        public void Add(IExpense expense)
        {
            expense.CheckArgument(nameof(expense));

            var newItem = new Expense();

            newItem.CopyProperties(expense);
            ExpenseEntities.Add(newItem);
        }
Example #9
0
        public ActionResult Reject(Guid id)
        {
            Expense.Models.Form form = new Expense.Models.Form();
            ExpenseEntities     db   = new ExpenseEntities();

            form = db.Forms.Where(f => f.Id == id).FirstOrDefault();

            return(View(form));
        }
Example #10
0
        public void Add(IExpense expense)
        {
            expense.CheckArgument(nameof(expense));

            var entity = new Expense();

            entity.CopyProperties(expense);
            ExpenseEntities.Add(entity);
        }
Example #11
0
        public string Create_Expense(int EMP_ID, ExpenseEntities EXP, List <ExpenseFiles> files)
        {
            string response = "";
            ListtoDataTableConverter converter = new ListtoDataTableConverter();

            try
            {
                DataTable dt_files = new DataTable();

                if (files != null)
                {
                    dt_files = converter.ToDataTable(files);
                }
                else
                {
                    dt_files.Columns.Add("file_name");
                }

                connection();
                using (SqlCommand cmd = new SqlCommand("Prc_InsertExpense", con))
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@ID", EXP.EXPENSE_ID);
                    cmd.Parameters.AddWithValue("@EXPENSE_CODE", EXP.EXPENSE_CODE);
                    cmd.Parameters.AddWithValue("@EMP_ID", EMP_ID);
                    cmd.Parameters.AddWithValue("@EXPENSE_TYPE_ID", EXP.EXPENSE_TYPE_ID);
                    cmd.Parameters.AddWithValue("@EXPENSE_DATE", EXP.EXPENSE_DATE);
                    cmd.Parameters.AddWithValue("@PROJECT_ID", EXP.PROJECT_ID);
                    cmd.Parameters.AddWithValue("@TRAVEL_FROM", EXP.TRAVEL_FROM);
                    cmd.Parameters.AddWithValue("@TRAVEL_TO", EXP.TRAVEL_TO);
                    cmd.Parameters.AddWithValue("@TRAVEL_DISTANCE", EXP.TRAVEL_DISTANCE);
                    cmd.Parameters.AddWithValue("@TRAVEL_MODE_ID", EXP.TRAVEL_MODE);
                    cmd.Parameters.AddWithValue("@EXPENSE_AMT", EXP.EXPENSE_AMOUNT);
                    cmd.Parameters.AddWithValue("@DESCRIPTION", EXP.DESCRIPTION);
                    cmd.Parameters.AddWithValue("@files_tbl", dt_files);

                    SqlParameter outData = new SqlParameter();
                    outData.ParameterName = "@MESSAGE";
                    outData.SqlDbType     = SqlDbType.NVarChar;
                    outData.Size          = 250;
                    outData.Direction     = ParameterDirection.Output;
                    cmd.Parameters.Add(outData);
                    con.Open();
                    cmd.ExecuteNonQuery();
                    response = Convert.ToString(outData.Value);
                    con.Close();
                }
            }
            catch (Exception ex)
            {
                response = ex.Message;
            }
            return(response);
        }
Example #12
0
        public void Remove(IExpense expense)
        {
            expense.CheckArgument(nameof(expense));

            var entity = ExpenseEntities.FirstOrDefault(i => (i.Id != 0 && i.Id == expense.Id) ||
                                                        (i.Id == 0 && i.Designation != null && i.Designation.Equals(expense.Designation)));

            if (entity != null)
            {
                ExpenseEntities.Remove(entity);
            }
        }
Example #13
0
        public Product ProductVMToProductModel(ProductVM VMObj, ExpenseEntities db)
        {
            Product ModelObj = null;

            ModelObj                    = new Product();
            ModelObj.ProductID          = VMObj.ProductID;
            ModelObj.ProductName        = VMObj.ProductName;
            ModelObj.Price              = VMObj.Price;
            ModelObj.ProductDescription = VMObj.ProductDescription;


            return(ModelObj);
        }
Example #14
0
        public ActionResult Save(FormCollection form)
        {
            List <string> names, dates, descriptions, costs;

            //Get values
            names        = new List <string>(form.GetValues("name[]"));
            dates        = new List <string>(form.GetValues("date[]"));
            descriptions = new List <string>(form.GetValues("description[]"));
            costs        = new List <string>(form.GetValues("cost[]"));

            string formName = string.Empty;

            //Create new form

            if (!string.IsNullOrEmpty(form["formName"]))
            {
                formName = form["formName"];
            }

            // TODO: validation
            double totalCost = costs.Sum(c => double.Parse(c));

            Models.Form newForm = new Models.Form();
            newForm = FormHelper.Create(formName, totalCost);



            using (ExpenseEntities db = new ExpenseEntities())
            {
                Models.Expense expense;
                for (int i = 0; i < names.Count; i++)
                {
                    expense             = new Models.Expense();
                    expense.Id          = Guid.NewGuid();
                    expense.Name        = names[i];
                    expense.Date        = DateTime.Parse(dates[i]);
                    expense.Description = descriptions[i];
                    expense.Cost        = int.Parse(costs[i]);
                    expense.FormId      = newForm.Id;
                    expense.StateId     = newForm.StateId;
                    db.Expenses.Add(expense);
                }

                db.SaveChanges();
            }



            return(RedirectToAction("New", "Expense"));
        }
Example #15
0
        private void DoWork()
        {
            while (true)
            {
                ////

                var expenseList = db.Expense.Where(q => q.StatusId == 1).Where(q => q.IsNotificationSent == false).Include(e => e.AspNetUsers).Include(e => e.ExpenseStatus);

                foreach (Expense expense in expenseList)
                {
                    using (var myDB = new ExpenseEntities())
                    {
                        var correspondingExpenseHistory = myDB.ExpenseHistory.Where(q => q.ExpenseId == expense.Id).Where(q => q.StatusId == myDB.ExpenseStatus.FirstOrDefault(o => o.Description == "Manager Approval Pending").Id);

                        List <ExpenseHistory> sortedHistoryList = correspondingExpenseHistory.OrderBy(o => o.ModifyDate).ToList();

                        ExpenseHistory expenseHistory = sortedHistoryList.FirstOrDefault();
                        DateTime       sendDate       = expenseHistory.ModifyDate;

                        //if ((DateTime.Now - sendDate).TotalHours > 48)
                        if ((DateTime.Now - sendDate).TotalSeconds > 10)
                        {
                            Console.WriteLine("************");
                            Console.WriteLine(expense.Description + " needs a notification.");
                            Console.WriteLine("************");

                            SendEmail(expense);
                            try
                            {
                                myDB.Expense.Find(expense.Id).IsNotificationSent = true;
                                myDB.Expense.Find(expense.Id).NotificationDate   = DateTime.Now;
                                myDB.SaveChanges();
                            }
                            catch (Exception e)
                            {
                                Console.WriteLine("There is a problem");
                            }
                        }
                    }

                    Console.WriteLine("checking...");

                    if (_semaphoreToRequestStop.Wait(500 * 10 / 2))
                    {
                        Console.WriteLine("Stopped");
                        break;
                    }
                }
            }
        }
Example #16
0
        public ActionResult Reject(Guid id)
        {
            Models.Expense  expense = new Models.Expense();
            ExpenseEntities db      = new ExpenseEntities();

            expense = db.Expenses.Where(e => e.Id == id).FirstOrDefault();
            State state = db.States.Where(s => s.Name == "Reject").FirstOrDefault();

            expense.StateId = state.Id;
            Guid formId = expense.FormId;

            db.SaveChanges();

            return(RedirectToAction("List", "Expense", new { id = formId }));
        }
Example #17
0
        public void CopyProperties(IBillExpense other)
        {
            other.CheckArgument(nameof(other));
            other.Bill.CheckArgument(nameof(other.Bill));
            other.Expenses.CheckArgument(nameof(other.Expenses));

            BillEntity.CopyProperties(other.Bill);
            ExpenseEntities.Clear();
            foreach (var item in other.Expenses)
            {
                var expense = new Expense();

                expense.CopyProperties(item);
                ExpenseEntities.Add(expense);
            }
        }
Example #18
0
        public ActionResult List(Guid id)
        {
            ExpenseEntities db = new ExpenseEntities();
            IEnumerable <Expense.Models.Expense> expenses = db.Expenses.Where(e => e.FormId.Equals(id)).AsEnumerable();
            Form form = db.Forms.Where(f => f.Id == id).FirstOrDefault();

            return(View(
                       new ExpenseViewModel()
            {
                AuthLevel = (SessionManager.Get(SessionManager.Keys.AuthorizeLevel) ?? string.Empty).ToString(),
                Expenses = expenses,
                FormId = id,
                FormState = form.State.Name
            }
                       ));
        }
Example #19
0
 public int Update(ProductVM ProductVMObj, ExpenseEntities db)
 {
     try
     {
         Product ProductObj = ProductVMToProductModel(ProductVMObj, db);
         db.Entry(ProductObj).State = EntityState.Modified;
         db.SaveChanges();
         flag = 1;
     }
     catch (Exception ex)
     {
         flag = 0;
         //new ErrorController().ErrorWithData(ex, " Error while editing Purchase Requiition");
     }
     return(flag);
 }
Example #20
0
        public void Remove(IExpense expense)
        {
            expense.CheckArgument(nameof(expense));

            foreach (var item in ExpenseEntities)
            {
                if (item.Id != 0 && item.Id == expense.Id)
                {
                    ExpenseEntities.Remove(item);
                }
                else if (item.Designation != null && item.Designation.Equals(expense.Designation))
                {
                    ExpenseEntities.Remove(item);
                }
            }
        }
Example #21
0
        public ActionResult List()
        {
            IEnumerable <Form> forms = null;
            User user = new User();

            ExpenseEntities db     = new ExpenseEntities();
            Guid            userId = Guid.Parse(SessionManager.Get(SessionManager.Keys.UserId).ToString());

            //Admin can see all forms
            if ((int)SessionManager.Get(SessionManager.Keys.AuthorizeLevel) == AuthorizeLevels.Administrator)
            {
                forms = db.Forms.ToList();
            }

            //Manager cans see the forms which ones manager is the current manager
            if ((int)SessionManager.Get(SessionManager.Keys.AuthorizeLevel) == AuthorizeLevels.Manager)
            {
                forms = db.Forms
                        .Where(f => (f.OwnerId == userId ||
                                     f.User.ManagerId == userId) &&
                               f.State.Name != "Paid")
                        .ToList();
            }

            //User can see only current users forms
            if ((int)SessionManager.Get(SessionManager.Keys.AuthorizeLevel) == AuthorizeLevels.User)
            {
                forms = db.Forms.Where(f => f.OwnerId == userId).ToList();
            }

            //Accountat can see only approved forms.
            if ((int)SessionManager.Get(SessionManager.Keys.AuthorizeLevel) == AuthorizeLevels.Accountant)
            {
                forms = db.Forms
                        .Where(f => f.State.Name == "Approved")
                        .ToList();
            }



            return(View(forms));
        }
Example #22
0
        public ActionResult Approve(Guid id)
        {
            Models.Form     form = new Models.Form();
            ExpenseEntities db   = new ExpenseEntities();

            form = db.Forms.Where(f => f.Id == id).FirstOrDefault();
            State state = db.States.Where(s => s.Name == "Approved").FirstOrDefault();

            form.StateId = state.Id;
            List <Models.Expense> expenses = new List <Models.Expense>();

            expenses = db.Expenses.Where(e => e.FormId == id).ToList();
            foreach (Models.Expense e in expenses)
            {
                e.StateId = state.Id;
            }
            db.SaveChanges();

            return(RedirectToAction("List", "Form"));
        }
Example #23
0
        public ActionResult Reject(Guid id, string rejectText)
        {
            Expense.Models.Form form = new Expense.Models.Form();
            ExpenseEntities     db   = new ExpenseEntities();

            form = db.Forms.Where(f => f.Id == id).FirstOrDefault();
            IEnumerable <Models.Expense> expenses = db.Expenses.Where(e => e.FormId == id).ToList();

            form.ManagerDescription = rejectText;
            State state = db.States.Where(s => s.Name == "Reject").FirstOrDefault();

            foreach (Models.Expense e in expenses)
            {
                if (e.State.Name != "Approved")
                {
                    e.StateId = state.Id;
                }
            }
            form.StateId = state.Id;
            db.SaveChanges();

            return(RedirectToAction("List", "Form"));
        }
Example #24
0
        public ActionResult Login(string username, string password)
        {
            ExpenseEntities db   = new ExpenseEntities();
            User            user = new User();

            user = (User)db.Users.Where(u => u.Username.Equals(username) && u.Password.Equals(password)).FirstOrDefault();
            if (user != null)
            {
                SessionManager.Register(SessionManager.Keys.UserId, user.Id);
                SessionManager.Register(SessionManager.Keys.FullName, user.FirstName + " " + user.LastName);
                SessionManager.Register(SessionManager.Keys.Username, user.Username);
                SessionManager.Register(SessionManager.Keys.RoleName, user.Role.Name);
                SessionManager.Register(SessionManager.Keys.LoggedIn, true);
                SessionManager.Register(SessionManager.Keys.AuthorizeLevel, user.Role.AuthorizeLevel);

                return(RedirectToAction("Index", "Home"));
            }

            SessionManager.Register(SessionManager.Keys.LoggedIn, null);


            return(View());
        }
Example #25
0
        public ProductVM ProductModelToProductVM(Product ModelObj, ExpenseEntities db)
        {
            // ProductVM VMObj = new ProductVM();
            ProductVM VMObj = new ProductVM(ModelObj, db);

            return(VMObj);

            /*  VMObj.ProductID = ModelObj.ProductID;
             * VMObj.ProductName = ModelObj.ProductName;
             * VMObj.Price = ModelObj.Price;
             * VMObj.ProductDescription = ModelObj.ProductDescription;
             */
            // VMObj.AttachmentVMList = ModelObj.AttachmentVMList;
            // VMObj.Resi_Final_Remarks = getResidentialVerificationRemarks(residentialVerificationVM, db);
            //db.ResidentialVerificationVM.Add(VMObj);
            try
            {
                db.SaveChanges();
            }
            catch (DbEntityValidationException e)
            {
                foreach (var eve in e.EntityValidationErrors)
                {
                    Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                      eve.Entry.Entity.GetType().Name, eve.Entry.State);
                    foreach (var ve in eve.ValidationErrors)
                    {
                        Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"",
                                          ve.PropertyName, ve.ErrorMessage);
                    }
                }
                // throw;
            }

            return(VMObj);
        }
 public ExpenseEntities Init()
 {
     return(dbContext ?? (dbContext = new ExpenseEntities()));
     //throw new NotImplementedException();
 }
Example #27
0
 public ProductVM(Product ModelObj, ExpenseEntities db)
 {
     // TODO: Complete member initialization
     this.ModelObj = ModelObj;
     this.db       = db;
 }
Example #28
0
        public ProductVM()
        {
            ExpenseEntities db = new ExpenseEntities();

            this.ProductList = new SelectList(db.Products.Where(p => p.ProductID == 1).ToList(), "ProductName", "ProductDescription");
        }