Exemplo n.º 1
0
        public ActionResult AddIncome(DSRCManagementSystem.Models.Income objmodel)
        {
            DSRCManagementSystemEntities1 objdb = new DSRCManagementSystemEntities1();
            string ServerName = AppValue.GetFromMailAddress("ServerName");

            DSRCManagementSystem.Income obj = new DSRCManagementSystem.Income();
            try
            {
                obj.IncomeDescription = objmodel.IncomeDescription.Trim();
                obj.IncomeDate        = objmodel.IncomeDate;
                obj.IncomeAmount      = objmodel.IncomeAmount;
                obj.CreatedAt         = Convert.ToDateTime(objmodel.ScheduleDate);
                obj.IsActive          = true;
                objdb.AddToIncomes(obj);
                objdb.SaveChanges();

                var      IncomeDes   = objmodel.IncomeDescription.Trim();
                DateTime?Incomedate  = objmodel.IncomeDate;
                var      Income      = objmodel.IncomeAmount;
                int      userId      = int.Parse(Session["UserID"].ToString());
                var      createdby   = objdb.Users.Where(x => x.UserID == userId).Select(o => o.FirstName + " " + o.LastName).FirstOrDefault();
                var      FromEmailID = objdb.Users.Where(x => x.UserID == userId).Select(o => o.UserName).FirstOrDefault();
                //foreach (var eids in GetUsersFromDept)
                //{
                var Getmailid = objdb.Users.Where(x => x.UserID == 1).Select(o => o.EmailAddress).FirstOrDefault();
                var GetName   = objdb.Users.Where(x => x.UserID == 1).Select(o => o.FirstName + " " + o.LastName).FirstOrDefault();

                var objcom = objdb.Master_ApplicationSettings.Where(x => x.AppKey == "Company Name")
                             .Select(o => o.AppValue)
                             .FirstOrDefault();

                // string ServerName = WebConfigurationManager.AppSettings["SeverName"];

                var check  = objdb.EmailTemplates.Where(x => x.TemplatePurpose == "Add Income").Select(o => o.EmailTemplateID).FirstOrDefault();
                var folder = objdb.EmailTemplates.Where(x => x.TemplatePurpose == "Add Income").Select(o => o.TemplatePath).FirstOrDefault();
                if ((check != null) && (check != 0))
                {
                    var obj1 = (from p in objdb.EmailPurposes.Where(x => x.EmailPurposeName == "Add Income")
                                join q in objdb.EmailTemplates on p.EmailTemplateID equals q.EmailTemplateID
                                select new DSRCManagementSystem.Models.Email
                    {
                        To = p.To,
                        CC = p.CC,
                        BCC = p.BCC,
                        Subject = p.Subject,
                        Template = q.TemplatePath
                    }).FirstOrDefault();

                    string TemplatePath = Server.MapPath(obj1.Template);
                    string html         = System.IO.File.ReadAllText(TemplatePath);

                    //string Title = " " + objcom + "   calendar event Created";
                    string Subject = "Income Added on " + DateTime.Today.ToString("dd MMM yyyy");
                    obj1.Subject = " " + objcom + " Management Portal-New Income Added";


                    html = html.Replace("#IncomeDescription", IncomeDes);
                    html = html.Replace("#Date", DateTime.Today.ToString("dd MMM yyyy"));
                    html = html.Replace("#IncomeDate", Incomedate.ToString().Substring(0, 10));
                    html = html.Replace("#IncomeAmount", Income.ToString());
                    html = html.Replace("#CompanyName", objcom.ToString());
                    html = html.Replace("#ServerName", ServerName);
                    List <string> MailIds      = objdb.TestMailIDs.Select(o => o.MailAddress).ToList();
                    string        EmailAddress = "";

                    foreach (string mail in MailIds)
                    {
                        EmailAddress += mail + ",";
                    }
                    EmailAddress = EmailAddress.Remove(EmailAddress.Length - 1);

                    if (ServerName != "http://*****:*****@dsrc.co.in", EmailAddress, Server.MapPath(pathvalue.ToString()));
                        });
                    }
                    else
                    {
                        Task.Factory.StartNew(() =>
                        {
                            string pathvalue = CommonLogic.getLogoPath();
                            DsrcMailSystem.MailSender.TaskMail(null, Subject, html, "*****@*****.**", EmailAddress, Server.MapPath(pathvalue.ToString()));
                        });
                    }
                }
                else
                {
                    ExceptionHandlingController.TemplateMissing("Add Income", folder, ServerName);
                }
            }


            catch (Exception Ex)
            {
                string actionName     = this.ControllerContext.RouteData.Values["action"].ToString();
                string controllerName = this.ControllerContext.RouteData.Values["controller"].ToString();
                ExceptionHandlingController.ExceptionDetails(Ex, actionName, controllerName);
            }
            return(Json(new { Result = "Success", URL = @Url.Action("AlertPopUp", "Popup") }, JsonRequestBehavior.AllowGet));
        }