use of com.autentia.tnt.businessobject.WorkingAgreement in project TNTConcept by autentia.
the class UserBean method getAgreements.
/**
* Get the list of all agreements
*
* @return the list of all agreements
*/
public List<SelectItem> getAgreements() {
List<WorkingAgreement> refs = WorkingAgreementManager.getDefault().getAllEntities(null, new SortCriteria("name"));
ArrayList<SelectItem> ret = new ArrayList<SelectItem>();
for (WorkingAgreement ref : refs) {
ret.add(new SelectItem(ref, ref.getName()));
}
return ret;
}
use of com.autentia.tnt.businessobject.WorkingAgreement in project TNTConcept by autentia.
the class UserHolidaysStateManager method calculateUserHolidaysState.
public UserHolidaysState calculateUserHolidaysState(User usuario, Date year) {
UserHolidaysState uhs = new UserHolidaysState();
uhs.setUser(usuario);
// WorkingAgreement attribute is an HB proxy not initialized, we need to get it
// from DB
WorkingAgreementDAO workingAgreementDao = WorkingAgreementDAO.getDefault();
WorkingAgreement agreement = workingAgreementDao.loadById(usuario.getAgreement().getId());
// and refresh the user instance agreement attribute
usuario.setAgreement(agreement);
uhs.setTotalYear(agreement.getHolidays());
int acceptedHolidays = 0;
if (year != null) {
HolidayManager fiestasManager = HolidayManager.getDefault();
// We must take in account previous year holidays and next year holidays
Date firstDayOfYear = com.autentia.tnt.util.DateUtils.getFirstDayOfYear(year);
Date lastDayOfYear = com.autentia.tnt.util.DateUtils.getLastDayOfYear(year);
Calendar calendarFirstDayOfYear = Calendar.getInstance();
calendarFirstDayOfYear.setTime(firstDayOfYear);
calendarFirstDayOfYear.add(Calendar.YEAR, -1);
Calendar calendarLastDayOfYear = Calendar.getInstance();
calendarLastDayOfYear.setTime(lastDayOfYear);
calendarLastDayOfYear.add(Calendar.YEAR, 1);
HolidaySearch fiestaSearch = new HolidaySearch();
fiestaSearch.setStartDate(calendarFirstDayOfYear.getTime());
fiestaSearch.setEndDate(calendarLastDayOfYear.getTime());
List<Holiday> allFiestas = fiestasManager.getAllEntities(fiestaSearch, null);
firstDayOfYear = com.autentia.tnt.util.DateUtils.getFirstDayOfYear(year);
calendarFirstDayOfYear.setTime(firstDayOfYear);
lastDayOfYear = com.autentia.tnt.util.DateUtils.getLastDayOfYear(year);
calendarLastDayOfYear.setTime(lastDayOfYear);
RequestHolidayManager holyManager = RequestHolidayManager.getDefault();
RequestHolidaySearch holSearch = new RequestHolidaySearch();
holSearch.setUserRequest(uhs.getUser());
holSearch.setState(HolidayState.ACCEPT);
holSearch.setStartChargeYear(calendarFirstDayOfYear.getTime());
holSearch.setEndChargeYear(calendarLastDayOfYear.getTime());
List<RequestHoliday> listH = holyManager.getAllEntities(holSearch, null);
for (RequestHoliday rH : listH) {
Calendar cActual = Calendar.getInstance();
cActual.setTime(rH.getBeginDate());
while (!cActual.getTime().after(rH.getFinalDate())) {
if (cActual.get(Calendar.DAY_OF_WEEK) != Calendar.SATURDAY && cActual.get(Calendar.DAY_OF_WEEK) != Calendar.SUNDAY) {
boolean isFiesta = false;
for (Holiday fiest : allFiestas) {
Calendar cFiesta = Calendar.getInstance();
cFiesta.setTime(fiest.getDate());
if (cFiesta.get(Calendar.YEAR) == cActual.get(Calendar.YEAR) && cFiesta.get(Calendar.MONTH) == cActual.get(Calendar.MONTH) && cFiesta.get(Calendar.DAY_OF_MONTH) == cActual.get(Calendar.DAY_OF_MONTH)) {
isFiesta = true;
}
}
if (!isFiesta) {
acceptedHolidays++;
}
}
cActual.add(Calendar.DAY_OF_MONTH, 1);
}
}
uhs.setTotalAccepted(acceptedHolidays);
Calendar calAuxCont = Calendar.getInstance();
calAuxCont.setTime(uhs.getUser().getStartDate());
Calendar calAux = Calendar.getInstance();
calAux.setTime(year);
int yearCharge = calAux.get(Calendar.YEAR);
int yearContract = calAuxCont.get(Calendar.YEAR);
if (yearCharge == yearContract) {
// Dividimos los días de cada usuario entre los dias del año.
double ratio = uhs.getUser().getAgreement().getHolidays() / 360.0;
int dayContract = calAuxCont.get(Calendar.DAY_OF_YEAR);
int workedDays = (360 - dayContract);
double holidayDays = workedDays * ratio;
double aux = Math.round(holidayDays);
uhs.setTotalYear((int) aux);
}
}
return uhs;
}
use of com.autentia.tnt.businessobject.WorkingAgreement in project TNTConcept by autentia.
the class DuplicateOfferTest method insertInitialData.
/**
* Metodo encargado de insertar datos muy generales pero que son necesarios
* para generar facturas en base a ofertas
*/
private void insertInitialData() {
final OfferDAO offerDAO = (OfferDAO) SpringUtilsForTesting.getSpringBean("daoOffer");
final ProjectDAO projectDAO = (ProjectDAO) SpringUtilsForTesting.getSpringBean("daoProject");
final OrganizationDAO organizationDAO = (OrganizationDAO) SpringUtilsForTesting.getSpringBean("daoOrganization");
final ContactDAO contactDAO = (ContactDAO) SpringUtilsForTesting.getSpringBean("daoContact");
final UserDAO userDAO = (UserDAO) SpringUtilsForTesting.getSpringBean("daoUser");
final RoleDAO roleDAO = (RoleDAO) SpringUtilsForTesting.getSpringBean("daoRole");
final UserCategoryDAO categoryDAO = (UserCategoryDAO) SpringUtilsForTesting.getSpringBean("daoUserCategory");
final DepartmentDAO departmentDAO = (DepartmentDAO) SpringUtilsForTesting.getSpringBean("daoDepartment");
final WorkingAgreementDAO workingAgreementDAO = (WorkingAgreementDAO) SpringUtilsForTesting.getSpringBean("daoWorkingAgreement");
final Role role = new Role();
roleDAO.insert(role);
final Department department = new Department();
department.setName("departamento");
departmentDAO.insert(department);
final UserCategory category = new UserCategory();
categoryDAO.insert(category);
final WorkingAgreement workingAgreement = new WorkingAgreement();
workingAgreementDAO.insert(workingAgreement);
contact.setName("Sergio Hermida");
contactDAO.insert(contact);
projectDAO.insert(project);
organizationDAO.insert(organization);
user.setRole(role);
user.setCategory(category);
user.setDepartment(department);
user.setAgreement(workingAgreement);
userDAO.insert(user);
offer.setNumber(OFFER_NUMBER);
offer.setOrganization(organization);
offer.setContact(contact);
offer.setTitle(OFFER_TITLE);
offer.setDescription(OFFER_DESCRIPTION);
offer.setOfferPotential(OfferPotential.MEDIUM);
offer.setOfferState(OfferState.OPEN);
offer.setCreationDate(new Date());
offer.setMaturityDate(new Date());
offerDAO.insert(offer);
}
use of com.autentia.tnt.businessobject.WorkingAgreement in project TNTConcept by autentia.
the class SpringUtilsForTesting method createAgreementInContext.
private static WorkingAgreement createAgreementInContext() {
final WorkingAgreement agreement = new WorkingAgreement();
final WorkingAgreementDAO workingAgreementDAO = (WorkingAgreementDAO) appCtx.getBean("daoWorkingAgreement");
workingAgreementDAO.insert(agreement);
return agreement;
}
use of com.autentia.tnt.businessobject.WorkingAgreement in project TNTConcept by autentia.
the class SpringUtilsForTesting method createAgreementInContext.
private static WorkingAgreement createAgreementInContext() {
final WorkingAgreement agreement = new WorkingAgreement();
agreement.setName("Test Agreement");
final WorkingAgreementDAO workingAgreementDAO = (WorkingAgreementDAO) appCtx.getBean("daoWorkingAgreement");
workingAgreementDAO.insert(agreement);
return agreement;
}
Aggregations