Anda di halaman 1dari 5

//abans de passar l0inspector, a SystemConfiguration sha de posar la data de cie

rre al 2000 (abans que hi havien incidències). igual amb la data de "carrega". i q
uan ja estiguem
//tornar a dexiar la data com estava
namespace Projecte.Standard.SystemConfigurations.Policies.Inspectors.InspectorsE
mployeesBucle
{
using System;
using System.Collections.Generic;
using System.Text;
using GttDataTypes;
public class EffectsFullDay : ServerObjects.SystemConfigurations.Policies.In
spectors.SpecificTypes.InspectorsEmployeesBucle.IInspectorsEmployeesBucle
{
bool ENABLETRANSACTIONS = true;
public string seffectsrecalculate = "EffectsRecalculate";
public GttDataTypes.GttDate firstdate = new GttDataTypes.GttDate(2000, 1
, 1);
int TEMPSDEPROCESS = 3;
public bool Process()
{
try
{
if (GttObjects == null)
{
InfoMessage("Impossible calcular. GttObjects is null");
return false;
}
if (DateFrom == null || DateTo == null)
{
InfoMessage("Impossible calcular. DateFrom/DateTo is null");
return false;
}
if (DateFrom.IsNullDate() || DateTo.IsNullDate())
{
InfoMessage("Impossible calcular. DateFrom/DateTo is null da
te");
return false;
}
ServerObjects.SystemConfigurations.ParameterTypes.clsParameterTy
pe effectsrecalculate = GttObjects.ParameterTypes[seffectsrecalculate];
if (effectsrecalculate == null)
{
InfoMessage("Imposible calcular el parametro tipo " + effect
srecalculate + " no existe");
return false;
}
int Origen = DateFrom.Year;
int Desti = DateTo.Year;
InfoMessage("Inspector iniciado");
DateTime Now = DateTime.Now;
DateTime IniciProcess = DateTime.Now;

GttDataTypes.GttDate dosmildeu = new GttDataTypes.GttDate(2010,


1, 1);
foreach (ServerObjects.Employees.clsEmployee employee in GttObje
cts.Employees[dosmildeu, DateTo].FirstSort())
{
ServerObjects.SystemConfigurations.ParameterTypes.Employ
eeParameters.clsEmployeeParameter employeeparameter = employee.EmployeeParameter
s[effectsrecalculate, firstdate];
if (employeeparameter == null)
{
InfoMessage(employee);
foreach (ServerObjects.Effects.clsEffect effect in e
mployee.Effects[dosmildeu, dosmildeu.YearEnds])
{
if (effect != null && effect.EffectTypeObject !=
null && !effect.EffectTypeObject.Accident && !effect.EffectTypeObject.Disease &
& !effect.EffectTypeObject.Maternity && !effect.EffectTypeObject.PartialStrike &
& !effect.EffectTypeObject.PregnancyRisk && !effect.EffectTypeObject.Profesional
Disease && !effect.EffectTypeObject.Strike && !effect.EffectTypeObject.TwinsMate
rnity)
{ //si són legals no entra pq no les podrem modifi
car
try
{
InfoMessage(effect);
if (effect.AllDay || effect.EffectTypeOb
ject.FullDay)
{
effect.AllDay = false;
effect.AllDay = true;
InfoMessage(effect.TimeFrom.ToString
() + effect.TimeFrom2.ToString());
}
else
effect.CalculateEffectHours();
}
catch (Exception ex)
{
InfoMessage(ex.Message);
}
if (ENABLETRANSACTIONS)
GttObjects.Commit();
}
}
InfoMessage("aaa");
employeeparameter = new ServerObjects.SystemConfigur
ations.ParameterTypes.EmployeeParameters.clsEmployeeParameter(GttObjects);
employeeparameter.EmployeeObject = employee;
employeeparameter.ParameterObject = effectsrecalcula
te;
InfoMessage("ccc");
employeeparameter.DateFrom = firstdate;
employeeparameter.String_Value_1 = System.DateTime.N
ow.ToString("o");
employee.EmployeeParameters.Add(employeeparameter);
InfoMessage("bbb");
}
//employee.EmployeeParameters.Add(employeeparameter);
if (ENABLETRANSACTIONS)
GttObjects.Commit();
TimeSpan ts = DateTime.Now - IniciProcess;
if (ts.Minutes > TEMPSDEPROCESS)
{
InfoMessage("S'ha parat el procés ja que triga més de "
+ TEMPSDEPROCESS + " minuts");
break;
}

//fi filtre de employee


}
InfoMessage("Inspector terminado correctamente");
return true;
}
catch (System.Exception ex)
{
InfoMessage(ex.Message);
return false;
}
}

public string InspectorSurname


{
get
{
return "ActualitzarHoresdelesIncidencies";
}
}
public void InfoMessage(ServerObjects.Employees.clsEmployee employee)
{
InfoMessage("Iniciant " + employee.Employee + " " + employee.FullNam
e);
}
public void InfoMessage(ServerObjects.Effects.clsEffect effect)
{
InfoMessage("Actualizando " + effect.Effect.ToString() + " del " + e
ffect.DateFrom.ToShortDateString() + "-" + effect.DateTo.ToShortDateString() + "
" + effect.EffectType + " del profesional " + effect.Employee);
}
public void InfoMessage(string message)
{
if (InspectorMessage != null)
InspectorMessage.InfoMessage(message);
}
public string Definition
{
get
{
return "Ejemplo de cálculo";
}
}
protected ServerObjects.GttObjects _GttObjects;
public ServerObjects.GttObjects GttObjects
{
get
{
return _GttObjects;
}
set
{
_GttObjects = value;
}
}
protected GttDataTypes.IGttInspectorMessage _InspectorMessage;
public GttDataTypes.IGttInspectorMessage InspectorMessage
{
get
{
return _InspectorMessage;
}
set
{
_InspectorMessage = value;
}
}
public ServerObjects.Employees.colEmployees EmployeesCollectionObject
{
get
{
return null;
}
set
{
}
}
protected GttDataTypes.GttDate _DateFrom;
public GttDataTypes.GttDate DateFrom
{
get
{
return _DateFrom;
}
set
{
_DateFrom = value;
}
}
protected GttDataTypes.GttDate _DateTo;
public GttDataTypes.GttDate DateTo
{
get
{
return _DateTo;
}
set
{
_DateTo = value;
}
}
}
}

Anda mungkin juga menyukai