#46 Perfil de Empleado - Registro Semanal
This commit is contained in:
parent
e3d672c00b
commit
4ad745145f
6
pom.xml
6
pom.xml
@ -72,6 +72,12 @@
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.pdfbox</groupId>
|
||||
<artifactId>pdfbox</artifactId>
|
||||
<version>2.0.29</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-data-jpa</artifactId>
|
||||
|
@ -0,0 +1,10 @@
|
||||
package com.primefactorsolutions.repositories;
|
||||
|
||||
import com.primefactorsolutions.model.HoursWorked;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
@Repository
|
||||
public interface HoursWorkedRepository extends JpaRepository<HoursWorked, Long> {
|
||||
// Puedes definir consultas personalizadas aquí si es necesario.
|
||||
}
|
@ -0,0 +1,35 @@
|
||||
package com.primefactorsolutions.service;
|
||||
|
||||
import com.primefactorsolutions.model.HoursWorked;
|
||||
import com.primefactorsolutions.repositories.HoursWorkedRepository;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class HoursWorkedService {
|
||||
private final HoursWorkedRepository hoursWorkedRepository;
|
||||
|
||||
@Autowired
|
||||
public HoursWorkedService(HoursWorkedRepository hoursWorkedRepository) {
|
||||
this.hoursWorkedRepository = hoursWorkedRepository;
|
||||
}
|
||||
|
||||
public List<HoursWorked> findAll() {
|
||||
return hoursWorkedRepository.findAll();
|
||||
}
|
||||
|
||||
public HoursWorked saveHoursWorked(HoursWorked hoursWorked) {
|
||||
return hoursWorkedRepository.save(hoursWorked);
|
||||
}
|
||||
|
||||
public HoursWorked save(HoursWorked hoursWorked) {
|
||||
return hoursWorkedRepository.save(hoursWorked);
|
||||
}
|
||||
|
||||
public void deleteHoursWorked(Long id) {
|
||||
hoursWorkedRepository.deleteById(id);
|
||||
}
|
||||
}
|
||||
|
@ -3,6 +3,7 @@ import com.primefactorsolutions.model.Actividad;
|
||||
import com.primefactorsolutions.model.Employee;
|
||||
import com.primefactorsolutions.model.HoursWorked;
|
||||
import com.primefactorsolutions.service.EmployeeService;
|
||||
import com.primefactorsolutions.service.HoursWorkedService;
|
||||
import com.vaadin.flow.component.datepicker.DatePicker;
|
||||
import com.vaadin.flow.component.grid.Grid;
|
||||
import com.vaadin.flow.component.notification.Notification;
|
||||
@ -48,8 +49,10 @@ public class HoursWorkedView extends VerticalLayout {
|
||||
private final Label horasPendientesLabel = new Label();
|
||||
|
||||
@Autowired
|
||||
public HoursWorkedView(final EmployeeService employeeService) {
|
||||
private final HoursWorkedService hoursWorkedService;
|
||||
public HoursWorkedView(final EmployeeService employeeService, final HoursWorkedService hoursWorkedService) {
|
||||
this.employeeService = employeeService;
|
||||
this.hoursWorkedService = hoursWorkedService;
|
||||
configurarVista();
|
||||
cargarDatos();
|
||||
}
|
||||
@ -218,6 +221,9 @@ public class HoursWorkedView extends VerticalLayout {
|
||||
HoursWorked hoursWorked = new HoursWorked();
|
||||
hoursWorked.setEmployee(employeeComboBox.getValue());
|
||||
hoursWorked.setWeekNumber(weekNumber);
|
||||
hoursWorked.setTotalHours((actividades.stream()
|
||||
.mapToDouble(this::calcularTotalPorDia).sum()));
|
||||
hoursWorkedService.save(hoursWorked);
|
||||
|
||||
Notification.show("Actividades guardadas correctamente.");
|
||||
}
|
||||
|
@ -148,6 +148,8 @@ public class MainLayout extends AppLayout {
|
||||
LineAwesomeIcon.HOURGLASS_START_SOLID.create());
|
||||
timesheet.addItem(new SideNavItem("Hours Worked", HoursWorkedView.class,
|
||||
LineAwesomeIcon.ID_CARD_SOLID.create()));
|
||||
// timesheet.addItem(new SideNavItem("Reporte", ReportHoursWorkedView.class,
|
||||
// LineAwesomeIcon.CAR_ALT_SOLID.create()));
|
||||
|
||||
SideNavItem profile = new SideNavItem("My Profile", ProfileView.class,
|
||||
LineAwesomeIcon.USER_EDIT_SOLID.create());
|
||||
|
Loading…
Reference in New Issue
Block a user