Exemplo n.º 1
0
        public ActionResult SolicitaPgtoCampanha(int id, int estagio,
                                                 int formapgto, string Obs, decimal vlr_pgto, string ind_total, string des_agencia = "", string des_banco = "", string des_conta = "")
        {
            CampanhaMarketing data       = db.CampanhaMarketing.Find(id);
            string            nome_forma = db.FormaPgto.Where(a => a.formapgtoid == formapgto).Select(a => a.des_forma).FirstOrDefault();

            if (formapgto == 4)
            {
                if ((string.IsNullOrEmpty(des_agencia)) || (string.IsNullOrEmpty(des_banco)) || (string.IsNullOrEmpty(des_conta)))
                {
                    return(Json(new { id = data.campanhaID, Msg = "Dados da conta devem ser informados", hasError = true }));
                }
            }

            try
            {
                string emailcopia = db.Usuario.Where(a => a.CD_USUARIO == cd_usuario).Select(a => a.EMAIL).FirstOrDefault();
                string nomecopia  = db.Usuario.Where(a => a.CD_USUARIO == cd_usuario).Select(a => a.NOME).FirstOrDefault();


                _email.EnviarEmailSolicitacaoPgto
                    (data.campanhaID, "SolicitacaoPgto.htm", estagio, Obs, nome_forma, vlr_pgto.ToString("c"),
                    ind_total.ToString(), emailcopia, nomecopia, des_agencia, des_banco, des_conta);


                return(Json(new { id = data.campanhaID, Msg = "Ok, enviado e-mail com sucesso ", hasError = false,
                                  Obs = Obs, nome_forma = nome_forma, vlr_pgto = vlr_pgto.ToString("c"), int_total = ind_total.ToString() }));
            }
            catch (Exception e)
            {
                return(Json(new { id = data.campanhaID, Msg = e.Message, hasError = true }));
            }
        }
Exemplo n.º 2
0
        public ActionResult Interagindo(int id,
                                        string Obs
                                        )
        {
            CampanhaMarketing data_update = db.CampanhaMarketing.Find(id);

            data_update.dta_alteracao         = System.DateTime.Now;
            data_update.des_ult_obs           = Obs;
            data_update.cod_usuario_alteracao = cd_usuario;

            CampanhaMarketingEstagios altera_linha = AddDataSaidaEstagioAnterior(data_update.campanhaID);
            CampanhaMarketingEstagios nova_linha   = AddNovaLinhaTrocaEstagio(data_update.campanhaID, data_update.estagioId, data_update.estagioId, Obs);

            db.Entry(altera_linha).State = EntityState.Modified;
            db.Entry(data_update).State  = EntityState.Modified;
            db.CampanhaMarketingEstagios.Add(nova_linha);

            try
            {
                db.SaveChanges();
                return(Json(new { id = data_update.campanhaID, Msg = "Ok, Gerado OC com sucesso ", hasError = false }));
            }
            catch (Exception e)
            {
                return(Json(new { id = data_update.campanhaID, Msg = e.Message, hasError = true }));
            }
        }
Exemplo n.º 3
0
        public ActionResult Edit(int id)
        {
            CampanhaMarketing data = db.CampanhaMarketing.Find(id);

            data.vlr_custo_medio = data.vlr_custo_medio ?? 0;
            data.vlr_contrato    = data.vlr_contrato ?? 0;
            data.vlr_meta        = data.vlr_meta ?? 0;
            data.per_contrato    = data.per_contrato ?? 0;



            if (data == null)
            {
                return(InvokeHttpNotFound());
            }
            ViewBag.cod_representante = new SelectList(db.Ps_Representantes.OrderBy(a => a.des_pessoa), "cod_pessoa", "des_pessoa", data.cod_representante);
            ViewBag.cod_pessoa        = new SelectList(db.Ps_Pessoas.Where(a => a.cod_pessoa == data.cod_pessoa), "cod_pessoa", "des_pessoa", data.cod_pessoa);
            ViewBag.segmentoid        = new SelectList(db.Segmentos, "segmentoid", "des_segmento", data.segmentoid);
            ViewBag.tipoacaoid        = new SelectList(db.TipoAcao, "tipoacaoid", "des_acao", data.tipoacaoid);
            ViewBag.formapgtoid       = new SelectList(db.FormaPgto, "formapgtoid", "des_forma", data.formapgtoid);


            return(View(data));
        }
Exemplo n.º 4
0
        public FileStreamResult PrintFormaPgto(int campanhaid, int campanhamarketingpgtoid)
        {
            CampanhaMarketing     campanha     = db.CampanhaMarketing.Find(campanhaid);
            CampanhaMarketingPgto campanhapgto = db.CampanhaMarketingPgto.Find(campanhamarketingpgtoid, campanhaid);

            MemoryStream workStream = new MemoryStream();
            Rectangle    rec        = new Rectangle(iTextSharp.text.PageSize.A5);
            Document     document   = new Document(rec);
            PdfWriter    writer     = PdfWriter.GetInstance(document, workStream);

            writer.CloseStream = false;


            if (campanha == null)
            {
                writer.PageEvent = new PDFFooter(titulo: "CAMPANHA DE MARKETING", canhoto: true);
                document.Open();
                document.Add(new Paragraph(" "));
                document.Add(new Paragraph("  NÃO EXISTEM DADSO PARA LISTAR "));

                document.Close();

                byte[] byteInfoS = workStream.ToArray();
                workStream.Write(byteInfoS, 0, byteInfoS.Length);
                workStream.Position = 0;


                return(new FileStreamResult(workStream, "application/pdf"));
            }


            //PdfWriter.GetInstance(document, workStream).CloseStream = false;
            BaseFont bfTimes    = BaseFont.CreateFont(BaseFont.TIMES_ROMAN, BaseFont.CP1252, false);
            Font     times_12   = new Font(bfTimes, 12, Font.NORMAL, Color.RED);
            Font     arial_12   = FontFactory.GetFont("Arial", 12, Color.BLACK);
            Font     verdana_16 = FontFactory.GetFont("Verdana", 16, Font.BOLD, Color.ORANGE);
            Font     verdana_12 = FontFactory.GetFont("Verdana", 12, Color.BLACK);
            Font     verdana_8  = FontFactory.GetFont("Verdana", 8, Font.BOLD, Color.BLACK);

            Font palatino = FontFactory.GetFont(
                "palatino linotype italique",
                BaseFont.CP1252,
                BaseFont.EMBEDDED,
                10,
                Font.NORMAL, Color.ORANGE
                );

            Font palatino_xs = FontFactory.GetFont(
                "palatino linotype italique",
                BaseFont.CP1252,
                BaseFont.EMBEDDED,
                12,
                Font.BOLD, Color.RED
                );


            Font smallfont = FontFactory.GetFont("Arial", 6, Color.GRAY);
            Font xarial    = FontFactory.GetFont("Arial");

            xarial.SetStyle("Bold");

            Font palatino_i = FontFactory.GetFont(
                "palatino linotype italique",
                BaseFont.CP1252,
                BaseFont.EMBEDDED,
                8,
                Font.NORMAL, Color.GRAY
                );

            Font palatino_i_red = FontFactory.GetFont(
                "palatino linotype italique",
                BaseFont.CP1252,
                BaseFont.EMBEDDED,
                8,
                Font.NORMAL, Color.RED
                );

            Font palatino_bold = FontFactory.GetFont(
                "palatino linotype italique",
                BaseFont.CP1252,
                BaseFont.EMBEDDED,
                8,
                Font.BOLD, Color.BLACK
                );


            writer.PageEvent = new PDFFooter(titulo: "DADOS DE PAGAMENTO CAMPANHA", canhoto: true);

            document.Open();

            //gif.ScalePercent(45);
            //document.Add(gif);
            document.Add(new Paragraph(" "));

            //PdfContentByte cb = writer.DirectContent;
            //cb.Rectangle(10f, 200f, 800f, 600f);
            //cb.Stroke();

            float[]  largura_colunas = new float[] { 1f, 2f };
            Chunk    linebreak       = new Chunk(new LineSeparator(1f, 100f, Color.LIGHT_GRAY, Element.ALIGN_CENTER, -1));
            PdfPCell celula          = new PdfPCell();



            Paragraph _TituloParagrafo = new Paragraph();

            _TituloParagrafo.Alignment = Element.ALIGN_LEFT;



            PdfPTable header = new PdfPTable(2);

            header.TotalWidth              = document.PageSize.Width - 10;
            header.LockedWidth             = true;
            header.DefaultCell.BorderWidth = 1;
            header.HorizontalAlignment     = Element.ALIGN_LEFT;
            float[] largura_col = new float[] { 20f, 100f };
            header.SetWidths(largura_col);



            Thread.CurrentThread.CurrentCulture = new CultureInfo("pt-BR");


            Paragraph _TITULO = new Paragraph();

            _TITULO.Alignment = Element.ALIGN_CENTER;
            _TITULO.Add(new Chunk("Pinhais " + System.DateTime.Now.ToLongDateString(), verdana_8));
            document.Add(linebreak);
            document.Add(_TITULO);
            document.Add(linebreak);



            document.Add(new Paragraph(" "));

            _TITULO           = new Paragraph();
            _TITULO.Alignment = Element.ALIGN_LEFT;
            _TITULO.Add(new Chunk("Dados da Campanha:", palatino_i_red));
            document.Add(_TITULO);
            document.Add(new Paragraph(" "));

            //linha do numero
            celula = new PdfPCell(new Paragraph(new Chunk("Número:", palatino_bold)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            celula = new PdfPCell(new Paragraph(new Chunk(campanha.campanhaID.ToString(), palatino_i)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            celula = new PdfPCell(new Paragraph(new Chunk("Código Cliente:", palatino_bold)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            celula = new PdfPCell(new Paragraph(new Chunk(campanha.cod_pessoa_string, palatino_i)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);


            celula = new PdfPCell(new Paragraph(new Chunk("Nome :", palatino_bold)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            celula = new PdfPCell(new Paragraph(new Chunk(campanha.DadosDoCrm.des_pessoa, palatino_i)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            celula = new PdfPCell(new Paragraph(new Chunk("Descrição :", palatino_bold)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            celula = new PdfPCell(new Paragraph(new Chunk(campanha.des_nome, palatino_i)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            document.Add(header);

            document.Add(new Paragraph(" "));



            _TITULO           = new Paragraph();
            _TITULO.Alignment = Element.ALIGN_LEFT;
            _TITULO.Add(new Chunk("Dados do Pagamento", palatino_i_red));
            document.Add(_TITULO);
            document.Add(new Paragraph(" "));



            header                         = new PdfPTable(2);
            header.TotalWidth              = document.PageSize.Width - 10;
            header.LockedWidth             = true;
            header.DefaultCell.BorderWidth = 1;
            header.HorizontalAlignment     = Element.ALIGN_LEFT;
            largura_col                    = new float[] { 20f, 100f };
            header.SetWidths(largura_col);



            //linha do numero
            celula = new PdfPCell(new Paragraph(new Chunk("Forma:", palatino_bold)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.FormaPgto.des_forma, palatino_i)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);



            if (campanhapgto.formapgtoid == 1)
            {
                celula = new PdfPCell(new Paragraph(new Chunk("Título :", palatino_bold)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);

                celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.num_titulo.ToString(), palatino_i)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);

                celula = new PdfPCell(new Paragraph(new Chunk("Parcela :", palatino_bold)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);

                celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.num_parcela.ToString(), palatino_i)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);
            }


            if (campanhapgto.formapgtoid == 2)
            {
                celula = new PdfPCell(new Paragraph(new Chunk("Pedido :", palatino_bold)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);

                celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.num_pedido.ToString(), palatino_i)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);

                celula = new PdfPCell(new Paragraph(new Chunk("Complemento :", palatino_bold)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);

                celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.cod_compl.ToString(), palatino_i)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);
            }



            if (campanhapgto.formapgtoid == 4)
            {
                celula = new PdfPCell(new Paragraph(new Chunk("Agência :", palatino_bold)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);

                celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.des_agencia, palatino_i)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);

                celula = new PdfPCell(new Paragraph(new Chunk("Banco :", palatino_bold)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);

                celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.des_banco, palatino_i)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);

                celula = new PdfPCell(new Paragraph(new Chunk("Conta :", palatino_bold)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);

                celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.des_conta, palatino_i)))
                {
                    HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
                };
                header.AddCell(celula);
            }


            celula = new PdfPCell(new Paragraph(new Chunk("Nº Documento :", palatino_bold)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.des_documento, palatino_i)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);


            celula = new PdfPCell(new Paragraph(new Chunk("Valor :", palatino_bold)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.vlr_pgto.ToString("c"), palatino_i)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);


            celula = new PdfPCell(new Paragraph(new Chunk("Usuário :", palatino_bold)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.Usuario.NOME, palatino_i)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);


            celula = new PdfPCell(new Paragraph(new Chunk("Data Inclusão :", palatino_bold)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);

            celula = new PdfPCell(new Paragraph(new Chunk(campanhapgto.dta_inclusao.ToString(), palatino_i)))
            {
                HorizontalAlignment = Element.ALIGN_LEFT, Border = 0
            };
            header.AddCell(celula);



            document.Add(header);


            //document.Add(new Paragraph(" "));

            //_TITULO = new Paragraph();
            //_TITULO.Alignment = Element.ALIGN_CENTER;
            //_TITULO.Add(new Chunk("Comunicamos que lançamos o seguinte débito em sua conta na Foxlux Ltda", verdana_8));
            //document.Add(_TITULO);



            //PdfPTable table = new PdfPTable(3);
            //table.TotalWidth = document.PageSize.Width - 10;
            //table.LockedWidth = true;
            //table.DefaultCell.BorderWidth = 0;
            //table.HorizontalAlignment = 1;
            //float[] largura_colunas_coleta = new float[] { 300f, 100f, 100f };
            //table.SetWidths(largura_colunas_coleta);
            //document.Add(new Paragraph(" "));
            //celula = new PdfPCell(new Paragraph(new Chunk("Dados do lançamento ", palatino))) { Colspan = 3, Border = 0, HorizontalAlignment = Element.ALIGN_CENTER };
            //table.AddCell(celula);
            //document.Add(table);

            //_TITULO = new Paragraph();
            //_TITULO.Alignment = Element.ALIGN_RIGHT;
            //_TITULO.Add(new Chunk("Total Geral da Nota " + campanha.des_nome, palatino_xs));
            //document.Add(_TITULO);


            //document.Add(new Paragraph(" "));

            //_TITULO = new Paragraph();
            //_TITULO.Alignment = Element.ALIGN_CENTER;
            //_TITULO.Add(new Chunk("Data de Vencimento .: ", verdana_8));
            //document.Add(_TITULO);


            document.Close();

            byte[] byteInfo = workStream.ToArray();
            workStream.Write(byteInfo, 0, byteInfo.Length);
            workStream.Position = 0;


            return(new FileStreamResult(workStream, "application/pdf"));
        }
Exemplo n.º 5
0
        public ActionResult Input(CampanhaMarketing data, bool continueAdd, FormCollection form, IEnumerable <HttpPostedFileBase> files)
        {
            ViewBag.cod_representante = new SelectList(db.Ps_Representantes.Where(a => a.ind_inativo == 0), "cod_pessoa", "des_pessoa", data.cod_representante);
            ViewBag.cod_pessoa        = new SelectList(db.Ps_Pessoas.Where(a => a.cod_pessoa == data.cod_pessoa), "cod_pessoa", "des_pessoa", data.cod_pessoa);
            ViewBag.segmentoid        = new SelectList(db.Segmentos, "segmentoid", "des_segmento", data.segmentoid);
            ViewBag.tipoacaoid        = new SelectList(db.TipoAcao.Where(a => a.tipoacaoid == data.tipoacaoid), "tipoacaoid", "des_acao", data.tipoacaoid);
            ViewBag.formapgtoid       = new SelectList(db.FormaPgto, "formapgtoid", "des_forma", data.formapgtoid);

            ModelState.Clear();
            data.dta_inclusao = System.DateTime.Now;
            Estagio estagioinicial = db.Estagio.Where(a => a.ind_inicio == "S").FirstOrDefault();

            data.estagioId  = estagioinicial.estagioId;
            data.statusId   = Convert.ToInt32(estagioinicial.statusid);
            data.ind_renova = (string.IsNullOrEmpty(data.ind_renova) ? "S" : "N");


            if (data.cod_representante == 0)
            {
                ModelState.AddModelError("cod_representante", "Representante deve ser informado");
                return(View(data));
            }

            if (data.cod_pessoa == 0)
            {
                ModelState.AddModelError("", "Cliente deve ser informado");
                return(View(data));
            }

            if (string.IsNullOrEmpty(data.des_nome))
            {
                ModelState.AddModelError("des_nome", "Nome deve ser informado");
                return(View(data));
            }

            if (string.IsNullOrEmpty(data.des_email))
            {
                ModelState.AddModelError("des_email", "Email deve ser informado");
                return(View(data));
            }

            if (data.segmentoid == 0)
            {
                ModelState.AddModelError("segmentoid", "Tipo deve ser informado");
                return(View(data));
            }

            if (data.tipoacaoid == 0)
            {
                ModelState.AddModelError("tipoacaoid", "Ação deve ser informado");
                return(View(data));
            }

            if (data.formapgtoid == 0)
            {
                ModelState.AddModelError("formapgtoid", "Forma Pgto deve ser informado");
                return(View(data));
            }

            if (!data.dta_inicial.HasValue)
            {
                ModelState.AddModelError("dta_inicial", "Data deve ser informado");
                return(View(data));
            }



            if (data.segmentoid == 1)
            {
                if (!data.vlr_custo_medio.HasValue)
                {
                    ModelState.AddModelError("", "Custo deve ser informado");
                    return(View(data));
                }
            }


            if (data.segmentoid == 3)
            {
                if ("V".Equals(data.tip_pgto_premiacao))
                {
                    if (!data.vlr_contrato.HasValue)
                    {
                        ModelState.AddModelError("", "Custo deve ser informado");
                        return(View(data));
                    }
                }


                if ("P".Equals(data.tip_pgto_premiacao))
                {
                    if (!data.per_contrato.HasValue)
                    {
                        ModelState.AddModelError("", "Custo deve ser informado");
                        return(View(data));
                    }
                }
            }


            if (data.segmentoid == 2)
            {
                if (!data.vlr_meta.HasValue)
                {
                    ModelState.AddModelError("", "Meta deve ser informado");
                    return(View(data));
                }
                if (!data.vlr_contrato.HasValue)
                {
                    ModelState.AddModelError("", "Meta deve ser informado");
                    return(View(data));
                }


                if (!data.dta_final.HasValue)
                {
                    ModelState.AddModelError("dta_final", "Data deve ser informado");
                    return(View(data));
                }
            }



            data.campanhaID        = db.Database.SqlQuery <Int32>("select CampanhaMarketing_Seq.NextVal from dual ").FirstOrDefault <Int32>();
            data.cod_pessoa_string = data.cod_pessoa.ToString();
            data.des_nome          = data.des_nome.ToUpper().FormatToB2y();

            // pega a pessoa do dados crm
            var dados_da_pessoa = db.Dados_crm.Find(data.cod_pessoa.ToString());

            if (dados_da_pessoa != null)
            {
                try
                {
                    data.cod_regional = Convert.ToInt32(dados_da_pessoa.cod_gerente);
                }catch
                {
                    data.cod_regional = 1001;
                }


                try
                {
                    data.cod_diretoria = Convert.ToInt32(dados_da_pessoa.cod_diretoria);
                }catch
                {
                    data.cod_diretoria = 2;
                }


                try
                {
                    data.des_segmento = dados_da_pessoa.segmento;
                }catch
                {
                    data.des_segmento = "ELETRICA";
                }
            }


            CampanhaMarketingEstagios nova_linha = AddNovaLinhaTrocaEstagio(data.campanhaID, null, data.estagioId, data.des_observacao);

            TryValidateModel(data);
            if (ModelState.IsValid)
            {
                db.CampanhaMarketingEstagios.Add(nova_linha);
                db.CampanhaMarketing.Add(data);
            }
            else
            {
                return(View(data));
            }


            if (files != null)
            {
                foreach (var a in files)
                {
                    if (a != null)
                    {
                        if (a.ContentLength > 0)
                        {
                            int    tamanho    = (int)a.InputStream.Length;
                            string contentype = a.ContentType;
                            byte[] arq        = new byte[tamanho];

                            a.InputStream.Read(arq, 0, tamanho);
                            byte[] arqUp = arq;


                            int    CampanhaDocId = db.Database.SqlQuery <Int32>("select CampanhaMarketingDoc_Seq.NextVal from dual ").FirstOrDefault <Int32>();
                            string NomeArquivo   = a.FileName; //data.campanhaID.ToString() + '_' + CampanhaDocId.ToString() + '_' + string.Format("{0}", Path.GetFileName(a.FileName));

                            //var path = Path.Combine(Server.MapPath("~/Arquivos/uploads"), NomeArquivo);


                            CampanhaMarketingDoc doc = new CampanhaMarketingDoc
                            {
                                CampanhaMarketingDocId = CampanhaDocId,
                                campanhaID             = data.campanhaID,
                                Caminho         = NomeArquivo,
                                des_contenttype = contentype,
                                des_imagem      = arqUp,
                                nome_arquivo    = NomeArquivo
                            };
                            db.CampanhaMarketingDoc.Add(doc);

                            //a.SaveAs(path);
                        }
                    }
                }
            }

            try
            {
                db.SaveChanges();
                string nome = "";

                try
                {
                    nome = data.Ps_Representantes.des_pessoa;
                }
                catch
                {
                    nome = data.des_email;
                }



                try
                {
                    _email.EnviarEmailCampanhaEntrada(data.campanhaID, "NovaCampanha.htm", data.des_email, nome);
                    _email.EnviarEmailCampanha(data.campanhaID, "ChangeCampanhaEstagio.htm");
                }catch (Exception e)
                {
                    _email.EnviarEmailCampanha(data.campanhaID, "ChangeCampanhaEstagio.htm");
                }


                return(RedirectToAction("Done"));
            }
            catch (Exception e)
            {
                Response.StatusCode = 500; // Replace .AddHeader
                return(Json(new { Error = e.Message }, JsonRequestBehavior.AllowGet));
            }
            return(View(data));
        }
Exemplo n.º 6
0
        public ActionResult Edit(CampanhaMarketing data, bool continueAdd, bool isDelete, FormCollection form, IEnumerable <HttpPostedFileBase> files)
        {
            ViewBag.cod_representante = new SelectList(db.Ps_Representantes.OrderBy(a => a.des_pessoa), "cod_pessoa", "des_pessoa", data.cod_representante);
            ViewBag.cod_pessoa        = new SelectList(db.Ps_Pessoas.Where(a => a.cod_pessoa == data.cod_pessoa), "cod_pessoa", "des_pessoa", data.cod_pessoa);
            ViewBag.segmentoid        = new SelectList(db.Segmentos, "segmentoid", "des_segmento", data.segmentoid);
            ViewBag.tipoacaoid        = new SelectList(db.TipoAcao, "tipoacaoid", "des_acao", data.tipoacaoid);
            ViewBag.formapgtoid       = new SelectList(db.FormaPgto, "formapgtoid", "des_forma", data.formapgtoid);



            if (data.cod_pessoa == 0)
            {
                ModelState.AddModelError("", "Cliente deve ser informado");
                return(View(data));
            }


            if (!isDelete)
            {
                if (ModelState.IsValid)
                {
                    var dados_da_pessoa = db.Dados_crm.Find(data.cod_pessoa.ToString());
                    if (dados_da_pessoa != null)
                    {
                        try
                        {
                            data.cod_regional = Convert.ToInt32(dados_da_pessoa.cod_gerente);
                        }
                        catch
                        {
                            data.cod_regional = 1001;
                        }


                        try
                        {
                            data.cod_diretoria = Convert.ToInt32(dados_da_pessoa.cod_diretoria);
                        }
                        catch
                        {
                            data.cod_diretoria = 2;
                        }


                        try
                        {
                            data.des_segmento = dados_da_pessoa.segmento;
                        }
                        catch
                        {
                            data.des_segmento = "ELETRICA";
                        }
                    }


                    data.dta_inicial       = data.dta_inicial ?? null;
                    data.dta_final         = data.dta_final ?? null;
                    data.cod_pessoa_string = data.cod_pessoa.ToString();
                    data.des_nome          = data.des_nome.ToUpper().FormatToB2y();
                    data.cod_regional      = Convert.ToInt32(dados_da_pessoa.cod_gerente);
                    data.dta_alteracao     = System.DateTime.Now;


                    if (files != null)
                    {
                        foreach (var a in files)
                        {
                            if (a != null)
                            {
                                if (a.ContentLength > 0)
                                {
                                    int    tamanho    = (int)a.InputStream.Length;
                                    string contentype = a.ContentType;
                                    byte[] arq        = new byte[tamanho];

                                    a.InputStream.Read(arq, 0, tamanho);
                                    byte[] arqUp = arq;


                                    int    CampanhaDocId = db.Database.SqlQuery <Int32>("select CampanhaMarketingDoc_Seq.NextVal from dual ").FirstOrDefault <Int32>();
                                    string NomeArquivo   = a.FileName; //data.campanhaID.ToString() + '_' + CampanhaDocId.ToString() + '_' + string.Format("{0}", Path.GetFileName(a.FileName));

                                    //var path = Path.Combine(Server.MapPath("~/Arquivos/uploads"), NomeArquivo);


                                    CampanhaMarketingDoc doc = new CampanhaMarketingDoc
                                    {
                                        CampanhaMarketingDocId = CampanhaDocId,
                                        campanhaID             = data.campanhaID,
                                        Caminho         = NomeArquivo,
                                        des_contenttype = contentype,
                                        des_imagem      = arqUp,
                                        nome_arquivo    = NomeArquivo
                                    };
                                    db.CampanhaMarketingDoc.Add(doc);

                                    //a.SaveAs(path);
                                }
                            }
                        }
                    }


                    db.Entry(data).State = EntityState.Modified;
                    db.SaveChanges();
                    return(RedirectToAction("Details", new { id = data.campanhaID }));
                }
                return(View(data));
            }
            else
            {
                try
                {
                    CampanhaMarketing dataDelete = db.CampanhaMarketing.Find(data.campanhaID);
                    db.CampanhaMarketing.Remove(dataDelete);

                    var dataestagio = db.CampanhaMarketingEstagios.Where(a => a.campanhaId == data.campanhaID).ToList();
                    foreach (var sid in dataestagio)
                    {
                        db.CampanhaMarketingEstagios.Remove(sid);
                    }

                    var dataDoc = db.CampanhaMarketingDoc.Where(a => a.campanhaID == data.campanhaID).ToList();
                    foreach (var sid in dataDoc)
                    {
                        db.CampanhaMarketingDoc.Remove(sid);
                    }



                    db.SaveChanges();
                    RedirectToAction("WorkFlow");
                }
                catch (DbEntityValidationException e)
                {
                    //foreach (var result in e.EntityValidationErrors)
                    // {
                    //   foreach (var error in result.ValidationErrors)
                    // {
                    ModelState.AddModelError("", e.Message);
                    //}
                    // }
                    return(RedirectToAction("Edit", new { id = data.estagioId }));
                }
                return(RedirectToAction("List"));
            }
        }
Exemplo n.º 7
0
        public ActionResult AprovaReprova(CampanhaMarketing_Model data, bool aprovado)
        {
            bool _ind_finalizada = false;

            if (_ind_finalizada)
            {
                return(RedirectToAction("Details", new { id = data.CampanhaMarketing.campanhaID }));
            }
            CampanhaMarketing data_update = db.CampanhaMarketing.Find(data.CampanhaMarketing.campanhaID);

            if (data_update == null)
            {
                return(View(data));
            }
            string ids = data.CampanhaMarketing.campanhaID.ToString();

            ViewBag.comentarios   = db.ListaComentarios.Where(a => a.cod_interno == ids && a.tipo_nota == "CAMPANHA").ToList();
            ViewBag.troca_estagio = db.CampanhaMarketingEstagios.Where(a => a.campanhaId == data.CampanhaMarketing.campanhaID).OrderBy(p => p.num_seq).ToList();
            if (ModelState.IsValid)
            {
                int     estagioId = 0;
                int     statusId  = 0;
                Estagio estagio   = db.Estagio.Where(a => a.estagioId == data_update.estagioId).FirstOrDefault();


                if (aprovado)
                {
                    estagioId = Convert.ToInt32(estagio.estagioid_proximo);
                    Estagio proximo_estagio = db.Estagio.Where(a => a.estagioId == estagioId).FirstOrDefault();
                    statusId = Convert.ToInt32(proximo_estagio.statusid);
                }
                else
                {
                    estagioId = Convert.ToInt32(estagio.estagioid_anterior);

                    if (data_update.estagioId == 23)
                    {
                        estagioId = 21;
                    }

                    statusId = 2;

                    Estagio estagio_anterior = db.Estagio.Where(a => a.estagioId == estagioId).FirstOrDefault();

                    if (estagio_anterior.ind_liberado == "S")
                    {
                        statusId = Convert.ToInt32(estagio_anterior.statusid);
                    }
                }
                CampanhaMarketingEstagios altera_linha = AddDataSaidaEstagioAnterior(data_update.campanhaID);
                CampanhaMarketingEstagios nova_linha   = AddNovaLinhaTrocaEstagio(data_update.campanhaID, data_update.estagioId, estagioId, data.Obs);
                data_update.dta_alteracao         = System.DateTime.Now;
                data_update.cod_usuario_alteracao = cd_usuario;
                data_update.estagioId             = estagioId;
                data_update.statusId    = statusId;
                data_update.des_ult_obs = data.Obs;
                try
                {
                    db.Entry(data_update).State  = EntityState.Modified;
                    db.Entry(altera_linha).State = EntityState.Modified;
                    db.CampanhaMarketingEstagios.Add(nova_linha);
                    db.SaveChanges();
                    _email.EnviarEmailCampanha(data_update.campanhaID, "NovaCampanha.htm");
                    return(RedirectToAction("WorkFlow"));
                }
                catch (Exception e)
                {
                    Response.StatusCode = 500; // Replace .AddHeader
                    return(Json(new { Error = e.Message }, JsonRequestBehavior.AllowGet));
                }
            }
            return(View(data));
        }