コード例 #1
0
ファイル: GAClass.cs プロジェクト: prfagun1/GA
        public static async Task <bool> SaveFiles(IFormFileCollection files, int id, String step, int type, GALibrary.Models.Parameter parameter)
        {
            foreach (IFormFile file in files)
            {
                string fname;

                try
                {
                    string[] testfiles = file.FileName.Split(new char[] { '\\' });
                    fname = testfiles[testfiles.Length - 1];
                }
                catch
                {
                    fname = file.FileName;
                }

                string erro = await SaveFile(id, file, fname, type);

                if (erro == null)
                {
                    GALibrary.GALogs.SaveLog(step, "Arquivos salvos com sucesso para o ID - " + id, 2, GALibrary.Models.DB.Context.Parameter.FirstOrDefault());
                }
                else
                {
                    GALibrary.GALogs.SaveLog(step, "Erro ao salvar arquivos para o ID - " + id + " - " + erro, 1, GALibrary.Models.DB.Context.Parameter.FirstOrDefault());
                    return(false);
                }
            }

            //Caso sejam arquivos SQL compacta a pasta
            if (type == 1)
            {
                GALibrary.GAFiles.CompressSQLFiles(id, step, parameter);
            }

            return(true);
        }
コード例 #2
0
ファイル: GAMail.cs プロジェクト: prfagun1/GA
        //Envio de e-mail
        //Tipo:
        //1 = Envio de log para quem criou atualização;
        //2 = Envio de comunicado para grupo

        public static void SendMail(string toEmail, int type, GALibrary.Models.UpdateGA update, GALibrary.Models.EmailSettings emailSettings, GALibrary.Models.Parameter parameter, String aplicacao, Models.Ldap ldap)
        {
            try
            {
                string        body   = "";
                Models.UserAD userAD = GALibrary.GAAD.GetADUserData(ldap, update.User);


                if (toEmail == null)
                {
                    toEmail = userAD.Mail;
                }

                MailMessage mail = new MailMessage();

                body = SendMailBody(type, update, aplicacao, userAD.FullName);
                LinkedResource header = new LinkedResource(parameter.MailHeader);
                header.ContentId = "header";
                LinkedResource footer = new LinkedResource(parameter.MailFooter);
                footer.ContentId = "footer";


                mail.To.Add(new MailAddress(toEmail));
                AlternateView bodyImages = AlternateView.CreateAlternateViewFromString(body, null, MediaTypeNames.Text.Html);
                bodyImages.LinkedResources.Add(header);
                bodyImages.LinkedResources.Add(footer);
                mail.AlternateViews.Add(bodyImages);


                mail.Subject    = $"GA - {aplicacao} - {update.Name}";
                mail.Body       = body;
                mail.IsBodyHtml = true;
                mail.Priority   = MailPriority.High;
                mail.From       = new MailAddress(emailSettings.From);



                SmtpClient smtp = new SmtpClient(emailSettings.Server, emailSettings.Port);

                smtp.Credentials = new NetworkCredential(emailSettings.Username, emailSettings.Password);
                smtp.EnableSsl   = false;
                smtp.Send(mail);
                smtp.Dispose();
                mail.Dispose();

                GALogs.SaveLog("Email", "email enviado com sucesso para " + toEmail, 2, parameter);
            }
            catch (Exception erro)
            {
                GALogs.SaveLog("Email", "Erro ao enviar e-mail a atualização - " + update.Name + " - " + erro, 1, parameter);
            }
        }