104 lines
5.8 KiB
C#
104 lines
5.8 KiB
C#
using OliviaAddInPro.Model;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace OliviaAddInPro.Services.LanzaSrv
|
|
{
|
|
class LanzaRecoSrv: LanzaOlvServ
|
|
{
|
|
public LanzaRecoSrv()
|
|
{
|
|
}
|
|
/**
|
|
* Comienza las funciones de ejecución
|
|
* modo 0 la primera vez, va a sectorizar, modo 1 la segunda vez, planifica
|
|
*/
|
|
public Respuesta<bool> ejec(Recogida reco, int modo, string NombreTratamiento)
|
|
{
|
|
var res = new Respuesta<bool>();
|
|
res.Value = false;
|
|
if (reco == null)
|
|
{
|
|
res.Error.Add( "Error en la recopilación de datos para el procesado");
|
|
return res;
|
|
}
|
|
|
|
//OliviaGlob.tip_oliv = OliviaDef.GeneralDef.TiposOliv.OlivResi;
|
|
OliviaGlob.TipoEjec = TiposEjecucion.Reco;//OliviaDef.GeneralDef.TiposOliv.OlivResi;
|
|
/*if (!OliviaGlob.gdb_reco.exporta(reco, modo == (int)Ejecuta.ModosEjec.Planif))
|
|
{
|
|
err_str = OliviaGlob.gdb_reco.err_st;
|
|
return false;
|
|
}*/
|
|
|
|
//configura el string de opciones
|
|
if (!configura_ops_geo(reco, modo))
|
|
{
|
|
res.Error.Add("Error al configurar opciones");
|
|
return res;
|
|
}
|
|
|
|
//this.reco = reco;
|
|
|
|
//Llama al ejecuta del padre
|
|
return base.ejec(NombreTratamiento);
|
|
|
|
}
|
|
|
|
/**
|
|
* Configura el str de opciones que va a mandar a OliviaTask
|
|
* modo 0 la primera vez, va a sectorizar, modo 1 la segunda vez, planifica
|
|
*/
|
|
public bool configura_ops_geo(Recogida reco, int modo)
|
|
{
|
|
string str, modo_str = "";
|
|
|
|
if (modo == (int)ModosEjec.Secto)
|
|
modo_str = GeneralDef.SockConf;
|
|
else if (modo == (int)ModosEjec.Planif)
|
|
modo_str = GeneralDef.SockConfPlan;
|
|
else if (modo == (int)ModosEjec.SoloPlanif)
|
|
modo_str = GeneralDef.SockConfTodo;
|
|
var conf = ConfigServ.Serv.Leer();
|
|
//van ParamLimpN parámetros, sin incluir "CONFIGURACION", si se añaden, incrementar ParamLimpN
|
|
str = GeneralDef.EjecGeoParamSep + modo_str + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_camp_cap + GeneralDef.EjecGeoParamIgual + conf.capac + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_kgM + GeneralDef.EjecGeoParamIgual + reco.KgMaxVehic + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_camp_kgrec + GeneralDef.EjecGeoParamIgual + conf.kgrec + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_camp_uds + GeneralDef.EjecGeoParamIgual + conf.uds + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_kgrecog + GeneralDef.EjecGeoParamIgual + conf.kgrec_val + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_carga_cont + GeneralDef.EjecGeoParamIgual + 0 + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_dens + GeneralDef.EjecGeoParamIgual + reco.DensCont + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GG_tco + GeneralDef.EjecGeoParamIgual + reco.TConv + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GG_tdc + GeneralDef.EjecGeoParamIgual + reco.TDescan + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_tvc + GeneralDef.EjecGeoParamIgual + reco.TVaciCont + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_tdca + GeneralDef.EjecGeoParamIgual + reco.TDescarg + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_tsal + GeneralDef.EjecGeoParamIgual + reco.TDesplIniFin + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GG_hini + GeneralDef.EjecGeoParamIgual + reco.HIni + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GG_trafic + GeneralDef.EjecGeoParamIgual + reco.Trafico + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GG_npt + GeneralDef.EjecGeoParamIgual + reco.NPtosCtrl + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GG_sec + GeneralDef.EjecGeoParamIgual + reco.NSect + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_anc + GeneralDef.EjecGeoParamIgual + reco.AnchoVehiculo + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_gir + GeneralDef.EjecGeoParamIgual + reco.GiroVehic + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GG_coox + GeneralDef.EjecGeoParamIgual + reco.CoordsInstal.X + " " +//coordenadas
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GG_cooy + GeneralDef.EjecGeoParamIgual + reco.CoordsInstal.Y + " " +//coordenadas
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_descx + GeneralDef.EjecGeoParamIgual + reco.CoordsPlanta.X + " " +//coordenadas
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_descy + GeneralDef.EjecGeoParamIgual + reco.CoordsPlanta.Y + " " +//coordenadas
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_id + GeneralDef.EjecGeoParamIgual + 0 + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_url + GeneralDef.EjecGeoParamIgual + 0 + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_fecha + GeneralDef.EjecGeoParamIgual + 0 + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_fechaf + GeneralDef.EjecGeoParamIgual + 0 + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_sens_modo + GeneralDef.EjecGeoParamIgual + 0 + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GG_ais + GeneralDef.EjecGeoParamIgual + (reco.IgnoAis?1:0) + " " +
|
|
GeneralDef.EjecGeoParamSep + GeneralDef.GR_lateral + GeneralDef.EjecGeoParamIgual + reco.TipoLate + " ";
|
|
|
|
base.str_cfg = str;
|
|
|
|
return true;
|
|
}
|
|
}
|
|
}
|