예제 #1
0
        public SOLICITUD_MOD getSolicitud(string num, string num2, string d) //RSG 07.06.2018---------------------------------------------
        {
            TAT001.Models.SOLICITUD_MOD sm     = new SOLICITUD_MOD();
            Services.FormatosC          format = new FormatosC();

            //Obtener info solicitud
            if (num == null | num == "" | num == "0.00")
            {
                sm.S_NUM    = num = "";
                sm.S_MONTOB = format.toShow(Convert.ToDecimal(num2), d);
                sm.S_MONTOP = sm.S_MONTOB;
                sm.S_MONTOA = "-";
                sm.S_REMA   = "-";
                sm.S_IMPA   = "-";
                sm.S_IMPB   = "-";
                sm.S_IMPC   = "-";
                sm.S_RET    = "-";
                sm.S_TOTAL  = format.toShow(Convert.ToDecimal(num2), d);;
            }
            else
            {
                decimal hola = Convert.ToDecimal(num);
                var     rev  = db.DOCUMENTOes.Where(x => x.DOCUMENTO_REF == hola).ToList();
                ;

                if (rev.Count() == 0)
                {
                    //CON UN RELACIONADO
                    var     rev2 = db.DOCUMENTOes.Where(x => x.NUM_DOC == hola).FirstOrDefault();
                    decimal?rem2 = (rev2.MONTO_DOC_MD - Convert.ToDecimal(num2));

                    sm.S_MONTOB = format.toShow(Convert.ToDecimal(num2), d);
                    sm.S_MONTOP = format.toShow(0, d);
                    sm.S_MONTOA = "-";
                    sm.S_REMA   = format.toShow((decimal)rem2, d);
                    sm.S_IMPA   = "-";
                    sm.S_IMPB   = "-";
                    sm.S_IMPC   = "-";
                    sm.S_RET    = "-";
                    sm.S_TOTAL  = format.toShow(Convert.ToDecimal(num2), d);;
                }
                else if (rev.Count() == 1)
                {
                    //CON DOS RELACIONADOS
                    var     rev3  = db.DOCUMENTOes.Where(x => x.NUM_DOC == hola).FirstOrDefault();
                    var     rev33 = db.DOCUMENTOes.Where(x => x.DOCUMENTO_REF == hola).FirstOrDefault();
                    decimal?rem3  = ((rev3.MONTO_DOC_MD - rev33.MONTO_DOC_MD) - (Convert.ToDecimal(num2)));

                    sm.S_MONTOB = format.toShow(Convert.ToDecimal(num2), d);
                    sm.S_MONTOP = format.toShow((decimal)rev3.MONTO_DOC_MD, d);
                    sm.S_MONTOA = format.toShow((decimal)rev33.MONTO_DOC_MD - Convert.ToDecimal(num2), d);
                    sm.S_REMA   = format.toShow((decimal)rem3 + Convert.ToDecimal(num2), d);
                    sm.S_IMPA   = "-";
                    sm.S_IMPB   = "-";
                    sm.S_IMPC   = "-";
                    sm.S_RET    = "-";
                    sm.S_TOTAL  = format.toShow(Convert.ToDecimal(num2), d);;
                }
                else if (rev.Count() > 1)
                {
                    var     rev4  = db.DOCUMENTOes.Where(x => x.NUM_DOC == hola).FirstOrDefault();
                    var     rev44 = db.DOCUMENTOes.Where(x => x.DOCUMENTO_REF == hola).Select(x => x.MONTO_DOC_MD);
                    decimal sum   = 0;

                    foreach (var k in rev44)
                    {
                        sum = sum + k.Value;
                    }
                    decimal?rem4 = ((rev4.MONTO_DOC_MD - sum) - (Convert.ToDecimal(num2)));

                    sm.S_MONTOB = format.toShow(Convert.ToDecimal(num2), d);
                    sm.S_MONTOP = format.toShow((decimal)rev4.MONTO_DOC_MD, d);
                    sm.S_MONTOA = format.toShow(sum - Convert.ToDecimal(num2), d);
                    sm.S_REMA   = format.toShow((-sum + (decimal)rev4.MONTO_DOC_MD + Convert.ToDecimal(num2)), d);
                    sm.S_IMPA   = "-";
                    sm.S_IMPB   = "-";
                    sm.S_IMPC   = "-";
                    sm.S_RET    = "-";
                    sm.S_TOTAL  = format.toShow(Convert.ToDecimal(num2), d);
                }
            }

            //JsonResult cc = Json(sm, JsonRequestBehavior.AllowGet);
            return(sm);
        }
예제 #2
0
        // GET: Correos
        public ActionResult Index(decimal id, bool?mail)  //B20180803 MGC Correos
        {
            var dOCUMENTO = db.DOCUMENTOes.Where(x => x.NUM_DOC == id).FirstOrDefault();
            var flujo     = db.FLUJOes.Where(x => x.NUM_DOC == id).OrderByDescending(o => o.POS).Select(s => s.POS).ToList();

            ViewBag.Pos = flujo[0];
            ViewBag.url = "http://localhost:64497";
            ViewBag.url = "http://192.168.1.77";
            ViewBag.url = Request.Url.AbsoluteUri.Replace(Request.Url.AbsolutePath, "");
            //ViewBag.miles = dOCUMENTOes.PAI.MILES;//LEJGG 090718
            //ViewBag.dec = dOCUMENTOes.PAI.DECIMAL;//LEJGG 090718
            FormatosC fc = new FormatosC();

            ViewBag.monto = fc.toShow((decimal)dOCUMENTO.MONTO_DOC_MD, dOCUMENTO.PAI.DECIMAL) + " " + dOCUMENTO.MONEDA_ID;
            if (mail == null)
            {
                mail = true;
            }
            //B20180803 MGC Correos............
            string mailv = "";

            if (mail != null)
            {
                if (mail == true)
                {
                    mailv = "X";
                }
            }

            ViewBag.mail = mailv;
            //B20180803 MGC Correos............

            //B20180803 MGC Presupuesto............
            Models.PresupuestoModels carga = new Models.PresupuestoModels();
            ViewBag.ultMod = carga.consultarUCarga();

            dOCUMENTO.PAI = db.PAIS.Where(a => a.LAND.Equals(dOCUMENTO.PAIS_ID)).FirstOrDefault();
            if (dOCUMENTO.PAI != null)
            {
                ViewBag.miles = dOCUMENTO.PAI.MILES;   //LEJGG 090718
                ViewBag.dec   = dOCUMENTO.PAI.DECIMAL; //LEJGG 090718
            }

            CLIENTE_MOD cli = new CLIENTE_MOD();

            cli = SelectCliente(dOCUMENTO.PAYER_ID);

            ViewBag.kunnr = cli.KUNNR + "-" + cli.NAME1;
            ViewBag.vtweg = cli.VTWEG;

            Services.FormatosC format = new FormatosC();

            PRESUPUESTO_MOD presu = new PRESUPUESTO_MOD();

            presu = getPresupuesto(dOCUMENTO.PAYER_ID);

            decimal pcanal = 0;

            try
            {
                pcanal = Convert.ToDecimal(presu.P_CANAL) / 1;
            }
            catch (Exception)
            {
            }
            decimal pbanner = 0;

            try
            {
                pbanner = Convert.ToDecimal(presu.P_BANNER) / 1;
            }
            catch (Exception)
            {
            }
            decimal pcc = 0;

            try
            {
                pcc = Convert.ToDecimal(presu.PC_C) / 1 * -1;
            }
            catch (Exception)
            {
            }
            decimal pca = 0;

            try
            {
                pca = Convert.ToDecimal(presu.PC_A) / 1 * -1;
            }
            catch (Exception)
            {
            }
            decimal pcp = 0;

            try
            {
                pcp = Convert.ToDecimal(presu.PC_P) / 1 * -1;
            }
            catch (Exception)
            {
            }
            decimal pct = 0;

            try
            {
                pct = Convert.ToDecimal(presu.PC_T) / 1 * -1;
            }
            catch (Exception)
            {
            }
            decimal consu = 0;

            try
            {
                consu = Convert.ToDecimal(presu.CONSU) / 1;
            }
            catch (Exception)
            {
            }
            ViewBag.pcan  = format.toShowG(pcanal, dOCUMENTO.PAI.DECIMAL);
            ViewBag.pban  = format.toShowG(pbanner, dOCUMENTO.PAI.DECIMAL);
            ViewBag.pcc   = format.toShowG(pcc, dOCUMENTO.PAI.DECIMAL);
            ViewBag.pca   = format.toShowG(pca, dOCUMENTO.PAI.DECIMAL);
            ViewBag.pcp   = format.toShowG(pcp, dOCUMENTO.PAI.DECIMAL);
            ViewBag.pct   = format.toShowG(pct, dOCUMENTO.PAI.DECIMAL);
            ViewBag.consu = format.toShowG(consu, dOCUMENTO.PAI.DECIMAL);

            SOLICITUD_MOD sol = new SOLICITUD_MOD();

            if (dOCUMENTO.DOCUMENTO_REF == null)
            {
                sol = getSolicitud("0.00", dOCUMENTO.MONTO_DOC_MD + "", dOCUMENTO.PAI.DECIMAL);
            }
            else
            {
                sol = getSolicitud(dOCUMENTO.DOCUMENTO_REF + "", dOCUMENTO.MONTO_DOC_MD + "", dOCUMENTO.PAI.DECIMAL);
            }

            ViewBag.S_IMPA     = sol.S_IMPA;
            ViewBag.S_IMPB     = sol.S_IMPB;
            ViewBag.S_IMPC     = sol.S_IMPC;
            ViewBag.S_MONTOA   = sol.S_MONTOA;
            ViewBag.S_MONTOB   = sol.S_MONTOB;
            ViewBag.S_MONTOP   = sol.S_MONTOP;
            ViewBag.S_NUM      = sol.S_NUM;
            ViewBag.S_REMA     = sol.S_REMA;
            ViewBag.rema_color = "";
            if (format.toNum(sol.S_REMA, dOCUMENTO.PAI.MILES, dOCUMENTO.PAI.DECIMAL) < 0)
            {
                ViewBag.rema_color = "#F44336 !important";
            }

            ViewBag.S_RET   = sol.S_RET;
            ViewBag.S_TOTAL = sol.S_TOTAL;

            //B20180803 MGC Presupuesto............

            return(View(dOCUMENTO));
        }