public JsonResult JsonEditarLiquidacion(DateTime?fechaentrega, string horaentrega, bool?archivado, long?idorden)
        {
            LiquidacionModel model = new LiquidacionModel();

            var      hm = horaentrega.Split(':');
            TimeSpan ts = new TimeSpan(Convert.ToInt32(hm[0]), Convert.ToInt32(hm[1]), 0);

            model.fechaentregaconciliacion = fechaentrega.Value.Date + ts;
            model.archivado             = archivado.Value;
            model.idusuarioconciliacion = Convert.ToInt32(Usuario.Idusuario);

            InsertarEtapaParameterDto param;
            InsertarEtapaParameter    parameters = new InsertarEtapaParameter();

            parameters.Hits = new List <InsertarEtapaParameterDto>();

            if (archivado.Value)
            {
                model.idestado = (Int32)DataAccess.Constantes.EstadoOT.PendienteFacturacion;

                param                   = new InsertarEtapaParameterDto();
                param.descripcion       = "";
                param.documento         = "";
                param.fechaetapa        = model.fechaentregaconciliacion.Value;
                param.fecharegistro     = DateTime.Now;
                param.idordentrabajo    = Convert.ToInt64(idorden);
                param.idusuarioregistro = (Int32)Usuario.Idusuario;
                param.recurso           = "";
                param.visible           = true;
                param.idmaestroetapa    = 21;
                parameters.Hits.Add(param);
                parameters.Execute();
            }
            else
            {
                model.idestado = (Int32)DataAccess.Constantes.EstadoOT.PendienteRetornoDocumentario;
            }
            model.idordentrabajo = idorden.Value;

            DataAccess.Liquidacion.LiquidacionData.ActualizarLiquidacion(model);

            return(Json(new { res = true }, JsonRequestBehavior.AllowGet));
        }
Beispiel #2
0
        public static long  InsertarEtapa(EtapaModel model, List <IncidenciaGuiasRechazadas> guias)
        {
            string[] ordenes = model.idsorden.Split(',');
            InsertarEtapaParameterDto param;
            InsertarEtapaParameter    parameters = new InsertarEtapaParameter();

            parameters.Hits = new List <InsertarEtapaParameterDto>();

            foreach (var item in ordenes)
            {
                var orden = Seguimiento.OrdenData.GetObtenerOrden_model(Convert.ToInt64(item));
                if (orden.idtipooperacion == 124) // estacion a estacion
                //Desasociar la OT
                {
                    if (model.idmaestroetapa == 4) //Confirmar Recibo
                    {
                        orden._tipoop          = 9;
                        orden.iddespacho       = null;
                        orden.idmanifiesto     = null;
                        orden.idcarga          = null;
                        orden.idestado         = (Int32)DataAccess.Constantes.EstadoOT.PendienteProgramacion;
                        orden.activo           = true;
                        orden.idestacionorigen = orden.idestaciondestino;
                        var resultot = OrdenData.InsertarActualizarOrdenTransporte(orden, null);
                    }
                }
                else
                {
                    if (model.tipoetapa.Trim() == "E")
                    {
                        orden._tipoop           = 8;
                        orden.idordentrabajo    = orden.idordentrabajo;
                        orden.idestado          = (Int32)DataAccess.Constantes.EstadoOT.PendienteRetornoDocumentario;
                        orden.fechaentrega      = model.fechaetapa;
                        orden.activo            = true;
                        orden.idusuarioregistro = model.idusuarioregistro;
                        orden.idusuarioentrega  = model.idusuarioregistro;
                        var resultot = OrdenData.InsertarActualizarOrdenTransporte(orden, null);
                    }
                }

                param                   = new InsertarEtapaParameterDto();
                param.descripcion       = model.descripcion;
                param.documento         = model.documento;
                param.fechaetapa        = model.fechaetapa.Value;
                param.fecharegistro     = model.fecharegistro;
                param.idordentrabajo    = Convert.ToInt64(item);
                param.idusuarioregistro = model.idusuarioregistro;
                param.recurso           = model.recurso;
                param.visible           = model.visible;
                param.idmaestroetapa    = model.idmaestroetapa;
                parameters.Hits.Add(param);
            }

            if (guias != null)
            {
                //insertar ot nueva por el rechazo
                var  cantidad     = guias.Select(x => x.cantidad).Sum();
                long idordennueva = duplicarOT(Convert.ToInt64(ordenes[0]), model.idusuarioregistro, cantidad, false);

                foreach (var item in guias)
                {
                    item.idordentrabajo = Convert.ToInt64(ordenes[0]);
                    DataAccess.Monitoreo.MonitoreoData.InsertarGuiaRechazada(item);
                    duplicarGuia(item.idordentrabajo, false, item.idguia, idordennueva);
                }
            }
            else if (model.idmaestroetapa.Equals((Int32)Constantes.MaestroEtapas.EntregaRechazoTotal))
            {
                long idordennueva = duplicarOT(Convert.ToInt64(ordenes[0]), model.idusuarioregistro, 0, true);
                long resp         = duplicarGuia(Convert.ToInt64(ordenes[0]), true, 0, idordennueva);
            }

            parameters.Execute();
            return(1);
        }