public static void TemplateMissing(string template, string folder, string servername)
        {
            DSRCManagementSystemEntities1 db = new DSRCManagementSystemEntities1();

            DsrcMailSystem.MailSender AppValue = new DsrcMailSystem.MailSender();
            //string ServerName = WebConfigurationManager.AppSettings["SeverName"];
            string   ServerName  = AppValue.GetFromMailAddress("ServerName");
            DateTime indianTime  = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, INDIAN_ZONE);
            var      UserID      = Convert.ToInt64(System.Web.HttpContext.Current.Session["UserID"]);
            var      username    = db.Users.Where(x => x.UserID == UserID).Select(o => o.FirstName + " " + o.LastName).FirstOrDefault();
            DateTime currentdate = DateTime.Now;

            var Assignobj = db.MissingTemplates.CreateObject();

            Assignobj.TemplateName  = template;
            Assignobj.MissedProcess = folder;
            Assignobj.ProcessedBy   = username;
            Assignobj.ProcessedDate = currentdate;
            db.MissingTemplates.AddObject(Assignobj);
            db.SaveChanges();

            MailMessage mail        = new System.Net.Mail.MailMessage();
            string      EmailAddres = "*****@*****.**";

            mail.To.Add(EmailAddres);
            mail.From    = new MailAddress("*****@*****.**");
            mail.Subject = "HRMS-Test Template Missing Exception";
            var company = db.Master_ApplicationSettings.Where(x => x.AppKey == "Company Name").Select(o => o.AppValue).FirstOrDefault();

            mail.Body       = "Template Missing Exception: " + "  " + template + " <br/><br/>ServerName: " + " " + servername + " <br/><br/>Date: " + "  " + indianTime + " " + "<br/><br/>This email has been automatically generated.</br>Please do not reply to this email address as all responses are directed to an unattended,<br/>mailbox, and you will not receive a response.</p><br/><p style=font-size:15px>Thanks,<br/>" + company + "HRMS</p>";
            mail.IsBodyHtml = true;
            SmtpClient smtp = new SmtpClient();
            string     port = db.Master_ApplicationSettings.Where(x => x.AppKey == "Port").Select(o => o.AppValue).FirstOrDefault();

            smtp.Host = db.Master_ApplicationSettings.Where(x => x.AppKey == "Host Name").Select(o => o.AppValue).FirstOrDefault();
            smtp.Port = Convert.ToInt32(port.ToString());
            smtp.UseDefaultCredentials = false;
            smtp.Credentials           = new System.Net.NetworkCredential
                                             ("*****@*****.**", "dsrc1234");// Enter senders User name and password
            smtp.EnableSsl = false;
            smtp.Send(mail);
        }
        public static void Mail_Trigger(Exception ex, string actionName, string controllerName)
        {
            DSRCManagementSystemEntities1 db = new DSRCManagementSystemEntities1();

            DsrcMailSystem.MailSender AppValue = new DsrcMailSystem.MailSender();
            //string ServerName = WebConfigurationManager.AppSettings["SeverName"];
            string ServerName        = AppValue.GetFromMailAddress("ServerName");
            string AssignedbyEmailId = System.Web.HttpContext.Current.Application["UserName"].ToString();
            // var userid = Convert.ToInt32(Session["UserID"].ToString());
            var      objuser          = db.Users.Where(o => o.UserName == AssignedbyEmailId).Select(o => o).FirstOrDefault();
            string   UserName         = objuser.FirstName + "  " + objuser.LastName;
            DateTime indianTime       = TimeZoneInfo.ConvertTimeFromUtc(DateTime.UtcNow, INDIAN_ZONE);
            var      MethodName       = (ex.InnerException != null) ? (ex.InnerException.TargetSite.Name == null ? "" : ex.InnerException.TargetSite.Name) : (ex.TargetSite.Name == null ? "" : ex.TargetSite.Name);;
            var      ExceptionDate    = DateTime.Now;
            var      ExceptionMessage = (ex.InnerException != null) ? ex.InnerException.Message : ex.Message;
            var      Source           = (ex.InnerException != null) ? ex.InnerException.Source : ex.Source;
            var      StackTrace       = (ex.InnerException != null) ? ex.InnerException.StackTrace : ex.StackTrace;
            var      url    = ServerName + controllerName + "/" + actionName;
            var      objcom = db.Master_ApplicationSettings.Where(x => x.AppKey == "Company Name").Select(o => o.AppValue).FirstOrDefault();
            //var company = db.Master_ApplicationSettings.Where(x => x.AppKey == "Company Name").Select(o => o.AppValue).FirstOrDefault();
            var obj1 = (from p in db.EmailPurposes.Where(x => x.EmailPurposeName == "Error Message")
                        join q in db.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();
            var path = System.Web.Hosting.HostingEnvironment.MapPath(obj1.Template);

            //var file = server.MapPath("~/SomeDirectory/Somefile");
            //string TemplatePath = Server.MapPath(obj1.Template);
            string html       = System.IO.File.ReadAllText(path);
            string FromMailId = "*****@*****.**";
            //string Title = " " + objcom + "   calendar event Created";
            string Subject = "Management Portal : Error Report" + " " + "on" + " " + DateTime.Today.ToString("ddd, MMM d, yyyy");

            obj1.Subject = " " + objcom + " " + "Management Portal : Error Report";

            html = html.Replace("#Error", ExceptionMessage);
            html = html.Replace("#Subject", Subject);
            html = html.Replace("#Date", DateTime.Today.ToString("dd/MM/yyyy"));
            html = html.Replace("#url", url);
            html = html.Replace("#UserName", UserName);
            html = html.Replace("#CompanyName", objcom.ToString());
            html = html.Replace("#ServerName", ServerName);

            List <string> MailIds     = db.TestMailIDs.Select(o => o.MailAddress).ToList();
            string        EmailAddres = "";

            for (int i = 0; i < MailIds.Count(); i++)
            {
                if (i != MailIds.Count() - 1)
                {
                    EmailAddres += MailIds[i] + ",";
                }
                else
                {
                    EmailAddres += MailIds[i];
                }
            }
            if (ServerName != "http://win2012srv:88/")
            {
                Task.Factory.StartNew(() =>
                {
                    string pathvalue = CommonLogic.getLogoPath();
                    DsrcMailSystem.MailSender.TaskMail(null, Subject, html, FromMailId, EmailAddres, System.Web.Hosting.HostingEnvironment.MapPath(pathvalue.ToString()));
                });
            }
            else
            {
                Task.Factory.StartNew(() =>
                {
                    string pathvalue = CommonLogic.getLogoPath();
                    DsrcMailSystem.MailSender.TaskMail(null, Subject, html, FromMailId, EmailAddres, System.Web.Hosting.HostingEnvironment.MapPath(pathvalue.ToString()));
                });
            }
        }
Exemplo n.º 3
0
        public ActionResult Skills(skilllist model, FormCollection formData)
        {
            DSRCManagementSystemEntities1 db = new DSRCManagementSystemEntities1();

            DsrcMailSystem.MailSender AppValue = new DsrcMailSystem.MailSender();
            int UserId = (int)Session["UserId"];

            List <string> Technology     = new List <string>();
            List <string> Specialization = new List <string>();
            List <string> Lastused       = new List <string>();
            List <string> Experience     = new List <string>();
            int           t = 0;
            int?          s = 0;

            string ServerName = AppValue.GetFromMailAddress("ServerName");

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


            for (int i = 0; i < model.skilllists.Count; i++)
            {
                var LDobj = db.Skills.CreateObject();
                if (model.skilllists[i].Id != 0)
                {
                    try
                    {
                        LDobj.Technology = model.skilllists[i].Id;
                        t = model.skilllists[i].Id;
                        var Techname = db.SkillsTechnologies.Where(o => o.SkillId == t).Select(o => o.SkillName).FirstOrDefault();
                        Technology.Add(Convert.ToString(Techname));

                        LDobj.Specialization = model.skilllists[i].SpecificationId;
                        s = model.skilllists[i].SpecificationId;
                        var SpecializationName = db.SkillsSpecifications.Where(o => o.SpecificationId == s).Select(o => o.Specification).FirstOrDefault();
                        Specialization.Add(Convert.ToString(SpecializationName));

                        LDobj.Level    = model.skilllists[i].LevelId;
                        LDobj.Date     = Convert.ToDateTime(model.skilllists[i].DateAssessed);
                        LDobj.LastUsed = model.skilllists[i].yearid;
                        Lastused.Add(Convert.ToString(model.skilllists[i].yearid));

                        LDobj.UserId    = Convert.ToInt32(Session["UserID"]);
                        LDobj.Primary   = Convert.ToBoolean(model.skilllists[i].Primary);
                        LDobj.Secondary = Convert.ToBoolean(model.skilllists[i].Secondary);

                        LDobj.experiance = model.skilllists[i].experiance.Trim();
                        Experience.Add(Convert.ToString(model.skilllists[i].experiance));
                        LDobj.Isactive   = true;
                        LDobj.status     = 2;
                        LDobj.ApprovedBy = model.skilllists[i].ApprovedBy;
                        db.Skills.AddObject(LDobj);
                        db.SaveChanges();
                    }
                    catch (Exception)
                    {
                    }
                }
                TempData["Success"] = "Skill details Saved Successfully";
            }

            var LevelList = db.Master_TrainingLevel.ToList();

            var TechList = db.SkillsTechnologies.ToList();

            var yearlist = db.Master_years.ToList();
            var specList = db.SkillsSpecifications.ToList();

            skilllist     sk     = new skilllist();
            List <Skills> skl    = new List <Skills>();
            Skills        lModel = new Skills();

            List <SelectListItem> LevelList1 = new List <SelectListItem>();
            List <SelectListItem> TechList1  = new List <SelectListItem>();
            List <SelectListItem> yearlist11 = new List <SelectListItem>();
            List <SelectListItem> specList1  = new List <SelectListItem>();

            foreach (var list in specList)
            {
                specList1.Add(new SelectListItem {
                    Text = list.Specification, Value = Convert.ToString(list.SpecificationId)
                });
            }
            lModel.speciIdList = specList1;

            foreach (var list in LevelList)
            {
                LevelList1.Add(new SelectListItem {
                    Text = list.LevelName, Value = Convert.ToString(list.LevelId)
                });
            }
            lModel.LevelIDList = LevelList1;

            foreach (var list in TechList)
            {
                TechList1.Add(new SelectListItem {
                    Text = list.SkillName, Value = Convert.ToString(list.SkillId)
                });
            }
            lModel.TechIDList = TechList1;

            foreach (var list in yearlist)
            {
                //yearlist11.Add(new SelectListItem { Text = list.year1.ToString(), Value = Convert.ToString(list.ID) });
                yearlist11.Add(new SelectListItem {
                    Text = list.year.ToString(), Value = Convert.ToString(list.ID)
                });
            }
            lModel.yearidlist = yearlist11;

            for (int i = 0; i < 1; i++)
            {
                Skills lm = new Skills();
                lm.SpecificationId = 0;
                lm.LevelId         = 0;
                lm.Id           = 0;
                lm.DateAssessed = null;
                lm.LastUsed     = 0;
                lm.Primary      = false;
                lm.Secondary    = false;
                skl.Add(lm);
            }

            sk.skilllists = skl;
            sk.SKL        = lModel;

            var skillid        = db.Skills.Where(o => o.UserId == UserId && o.Technology == t && o.Specialization == s).Select(o => o.Id).FirstOrDefault();
            var empname        = db.Users.Where(o => o.UserID == UserId).Select(o => o.FirstName + " " + ((o.LastName).Length > 0? o.LastName:" ")).FirstOrDefault();
            var reporting      = db.Skills.Where(o => o.UserId == UserId && o.Technology == t && o.Specialization == s).Select(o => o.ApprovedBy).FirstOrDefault();
            int reportingid    = (int)reporting;
            var reportingname  = db.Users.Where(o => o.UserID == reportingid).Select(o => o.FirstName + " " + ((o.LastName).Length > 0 ? o.LastName : " ")).FirstOrDefault();
            var reportingemail = db.Users.Where(o => o.UserID == reportingid).Select(o => o.EmailAddress).FirstOrDefault();
            var checks         = db.EmailTemplates.Where(x => x.TemplatePurpose == "Skill Added").Select(o => o.EmailTemplateID).FirstOrDefault();
            var folder         = db.EmailTemplates.Where(o => o.TemplatePurpose == "Skill Added").Select(x => x.TemplatePath).FirstOrDefault();

            if ((checks != null) && (checks != 0))
            {
                var objRequest = (from p in db.EmailPurposes.Where(x => x.EmailPurposeName == "Skill Added")
                                  join q in db.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();

                var    company      = db.Master_ApplicationSettings.Where(x => x.AppKey == "Company Name").Select(o => o.AppValue).FirstOrDefault();
                string TemplatePath = Server.MapPath(objRequest.Template);
                string html         = System.IO.File.ReadAllText(TemplatePath);
                string Title        = " Following Skills were Added by " + " " + empname + " " + "for Approval";
                html = html.Replace("#Title", Title);
                html = html.Replace("#Technology", Technology[0]);
                html = html.Replace("#Specialization", Specialization[0]);
                html = html.Replace("#LastUsed", Lastused[0]);
                html = html.Replace("#Experience", Experience[0]);
                html = html.Replace("#RequestedId", Convert.ToString(skillid));
                html = html.Replace("#ReportingPersonName", Convert.ToString(reportingname));
                html = html.Replace("#ServerName", ServerName);
                html = html.Replace("#CompanyName", objcompany);
                html = html.Replace("#ReqUser", empname);


                var logo = CommonLogic.getLogoPath();

                if (ServerName != "http://*****:*****@dsrc.co.in", EmailAddress, Server.MapPath(logo.ToString()));
                    });
                }
                //else
                //{
                //    Task.Factory.StartNew(() =>
                //    {

                //        DsrcMailSystem.MailSender.SendMail(null, objRequest.Subject, null, html, "*****@*****.**", Convert.ToString(reportingemail), Server.MapPath(logo.ToString()));
                //    });
                //}
            }
            else
            {
                ExceptionHandlingController.TemplateMissing("Skill Added", folder, ServerName);
            }



            return(RedirectToAction("Skills", sk));
        }