Merge pull request 'arreglar-funcionalidad' (#88) from arreglar-funcionalidad into main
All checks were successful
Builder / Build-Project (push) Successful in 2m47s
All checks were successful
Builder / Build-Project (push) Successful in 2m47s
Reviewed-on: #88
This commit is contained in:
commit
9f82cc3afe
@ -2,6 +2,7 @@ package com.primefactorsolutions.service;
|
|||||||
|
|
||||||
import com.openhtmltopdf.pdfboxout.PdfBoxRenderer;
|
import com.openhtmltopdf.pdfboxout.PdfBoxRenderer;
|
||||||
import com.openhtmltopdf.pdfboxout.PdfRendererBuilder;
|
import com.openhtmltopdf.pdfboxout.PdfRendererBuilder;
|
||||||
|
import com.primefactorsolutions.model.Employee;
|
||||||
import com.primefactorsolutions.repositories.HoursWorkedRepository;
|
import com.primefactorsolutions.repositories.HoursWorkedRepository;
|
||||||
import freemarker.template.Configuration;
|
import freemarker.template.Configuration;
|
||||||
import freemarker.template.DefaultObjectWrapper;
|
import freemarker.template.DefaultObjectWrapper;
|
||||||
@ -174,4 +175,80 @@ public class ReportService {
|
|||||||
|
|
||||||
return cfg;
|
return cfg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public byte[] generateExcelReport(final Employee employee) {
|
||||||
|
try (Workbook workbook = new XSSFWorkbook()) {
|
||||||
|
Sheet sheet = workbook.createSheet("Empleado");
|
||||||
|
Row titleRow = sheet.createRow(0);
|
||||||
|
Cell titleCell = titleRow.createCell(0);
|
||||||
|
titleCell.setCellValue("Información General del Empleado");
|
||||||
|
CellStyle titleStyle = workbook.createCellStyle();
|
||||||
|
Font titleFont = workbook.createFont();
|
||||||
|
titleFont.setBold(true);
|
||||||
|
titleFont.setFontHeightInPoints((short) 16);
|
||||||
|
titleStyle.setFont(titleFont);
|
||||||
|
titleStyle.setAlignment(HorizontalAlignment.CENTER);
|
||||||
|
titleCell.setCellStyle(titleStyle);
|
||||||
|
sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 40));
|
||||||
|
Row header = sheet.createRow(2);
|
||||||
|
String[] headers = {
|
||||||
|
"Username", "Nombres", "Apellidos", "Estado", "Género", "Fecha de Nacimiento", "Edad",
|
||||||
|
"Ciudad y País de Nacimiento", "Dirección de Residencia", "Departamento y Provincia de Residencia",
|
||||||
|
"Estado Civil", "Número de Hijos", "CI", "Expedido en", "Teléfono", "E-mail Personal",
|
||||||
|
"Teléfono Laboral",
|
||||||
|
"E-mail Laboral", "Nombres y Apellidos de Contacto", "Dirección de Contacto",
|
||||||
|
"Teléfono de Contacto",
|
||||||
|
"Email de Contacto", "Código de Empleado", "Cargo", "Equipo", "Lead/Manager", "Fecha de Ingreso",
|
||||||
|
"Fecha de Retiro", "Tipo de Contrato", "Tipo de Contrato Personalizado", "Antigüedad",
|
||||||
|
"Salario Total",
|
||||||
|
"Salario Básico", "Bono de Antigüedad", "Bono Profesional", "Banco", "Número de Cuenta",
|
||||||
|
"Código Único de Asegurado (GPSS)", "Matrícula de Asegurado (SSS)", "Derechohabiente 1",
|
||||||
|
"Derechohabiente 2"
|
||||||
|
};
|
||||||
|
CellStyle headerStyle = workbook.createCellStyle();
|
||||||
|
Font headerFont = workbook.createFont();
|
||||||
|
headerFont.setBold(true);
|
||||||
|
headerStyle.setFont(headerFont);
|
||||||
|
headerStyle.setAlignment(HorizontalAlignment.CENTER);
|
||||||
|
headerStyle.setVerticalAlignment(VerticalAlignment.CENTER);
|
||||||
|
for (int i = 0; i < headers.length; i++) {
|
||||||
|
Cell cell = header.createCell(i);
|
||||||
|
cell.setCellValue(headers[i]);
|
||||||
|
cell.setCellStyle(headerStyle);
|
||||||
|
}
|
||||||
|
Row dataRow = sheet.createRow(3); // Fila 3
|
||||||
|
String[] employeeData = {
|
||||||
|
employee.getUsername(), employee.getFirstName(), employee.getLastName(),
|
||||||
|
employee.getStatus().toString(),
|
||||||
|
employee.getGender().toString(), employee.getBirthday().toString(),
|
||||||
|
String.valueOf(employee.getAge()),
|
||||||
|
employee.getBirthCity(), employee.getResidenceAddress(), employee.getLocalAddress(),
|
||||||
|
employee.getMaritalStatus().toString(), String.valueOf(employee.getNumberOfChildren()),
|
||||||
|
employee.getCi(),
|
||||||
|
employee.getIssuedIn(), employee.getPhoneNumber(), employee.getPersonalEmail(),
|
||||||
|
employee.getPhoneNumberProfesional(), employee.getProfesionalEmail(), employee.getEmergencyCName(),
|
||||||
|
employee.getEmergencyCAddress(), employee.getEmergencyCPhone(), employee.getEmergencyCEmail(),
|
||||||
|
employee.getCod(), employee.getPosition(), employee.getTeam().getName(), employee.getLeadManager(),
|
||||||
|
employee.getDateOfEntry().toString(), employee.getDateOfExit() != null ? employee.getDateOfExit()
|
||||||
|
.toString() : "",
|
||||||
|
employee.getContractType().toString(), employee.getCustomContractType(),
|
||||||
|
employee.getSeniority(), employee.getSalarytotal(), employee.getSalaryBasic(),
|
||||||
|
employee.getAntiguedad(), employee.getBonoProfesional(), employee.getBankName(),
|
||||||
|
employee.getAccountNumber(), employee.getGpss(), employee.getSss(),
|
||||||
|
employee.getBeneficiarie1(), employee.getBeneficiarie2()
|
||||||
|
};
|
||||||
|
for (int i = 0; i < employeeData.length; i++) {
|
||||||
|
dataRow.createCell(i).setCellValue(employeeData[i] != null ? employeeData[i] : "");
|
||||||
|
}
|
||||||
|
for (int i = 0; i < headers.length; i++) {
|
||||||
|
sheet.autoSizeColumn(i);
|
||||||
|
}
|
||||||
|
try (ByteArrayOutputStream outputStream = new ByteArrayOutputStream()) {
|
||||||
|
workbook.write(outputStream);
|
||||||
|
return outputStream.toByteArray();
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new RuntimeException("Error al generar el reporte Excel", e);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
@ -0,0 +1,60 @@
|
|||||||
|
package com.primefactorsolutions.views;
|
||||||
|
|
||||||
|
import com.primefactorsolutions.model.Employee;
|
||||||
|
import com.primefactorsolutions.service.EmployeeService;
|
||||||
|
import com.primefactorsolutions.service.ReportService;
|
||||||
|
import com.vaadin.flow.component.UI;
|
||||||
|
import com.vaadin.flow.component.button.Button;
|
||||||
|
import com.vaadin.flow.component.html.Anchor;
|
||||||
|
import com.vaadin.flow.component.notification.Notification;
|
||||||
|
import com.vaadin.flow.component.orderedlayout.VerticalLayout;
|
||||||
|
import com.vaadin.flow.router.*;
|
||||||
|
import com.vaadin.flow.server.StreamResource;
|
||||||
|
import jakarta.annotation.security.PermitAll;
|
||||||
|
|
||||||
|
import java.io.ByteArrayInputStream;
|
||||||
|
import java.util.UUID;
|
||||||
|
@PermitAll
|
||||||
|
@PageTitle("Reporte excel")
|
||||||
|
@Route("employee-report")
|
||||||
|
public class EmployeeReportView extends VerticalLayout implements HasUrlParameter<String> {
|
||||||
|
private final EmployeeService employeeService;
|
||||||
|
private final ReportService reportService;
|
||||||
|
|
||||||
|
public EmployeeReportView(final EmployeeService employeeService, final ReportService reportService) {
|
||||||
|
this.employeeService = employeeService;
|
||||||
|
this.reportService = reportService;
|
||||||
|
Button backButton = new Button("Volver al Reporte de Empleados", event ->
|
||||||
|
UI.getCurrent().navigate(EmployeesListView.class));
|
||||||
|
backButton.addClassName("back-button");
|
||||||
|
add(backButton);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setParameter(final BeforeEvent event, @OptionalParameter final String employeeId) {
|
||||||
|
if (employeeId != null) {
|
||||||
|
UUID id = UUID.fromString(employeeId);
|
||||||
|
Employee employee = employeeService.getEmployee(id);
|
||||||
|
if (employee != null) {
|
||||||
|
generateExcelReport(employee);
|
||||||
|
} else {
|
||||||
|
Notification.show("Empleado no encontrado", 3000, Notification.Position.MIDDLE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void generateExcelReport(final Employee employee) {
|
||||||
|
try {
|
||||||
|
byte[] excelContent = reportService.generateExcelReport(employee);
|
||||||
|
StreamResource resource = new StreamResource(
|
||||||
|
employee.getFirstName() + "_" + employee.getLastName() + "_report.xlsx",
|
||||||
|
() -> new ByteArrayInputStream(excelContent)
|
||||||
|
);
|
||||||
|
Anchor downloadLink = new Anchor(resource, "Descargar Reporte Excel");
|
||||||
|
downloadLink.getElement().setAttribute("download", true);
|
||||||
|
add(downloadLink);
|
||||||
|
} catch (Exception e) {
|
||||||
|
Notification.show("Error al generar el reporte Excel", 3000, Notification.Position.MIDDLE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -16,6 +16,7 @@ import com.vaadin.flow.component.button.ButtonVariant;
|
|||||||
import com.vaadin.flow.component.combobox.ComboBox;
|
import com.vaadin.flow.component.combobox.ComboBox;
|
||||||
import com.vaadin.flow.component.dialog.Dialog;
|
import com.vaadin.flow.component.dialog.Dialog;
|
||||||
import com.vaadin.flow.component.html.*;
|
import com.vaadin.flow.component.html.*;
|
||||||
|
import com.vaadin.flow.component.icon.VaadinIcon;
|
||||||
import com.vaadin.flow.component.notification.Notification;
|
import com.vaadin.flow.component.notification.Notification;
|
||||||
import com.vaadin.flow.component.orderedlayout.FlexComponent;
|
import com.vaadin.flow.component.orderedlayout.FlexComponent;
|
||||||
import com.vaadin.flow.component.orderedlayout.HorizontalLayout;
|
import com.vaadin.flow.component.orderedlayout.HorizontalLayout;
|
||||||
@ -126,6 +127,8 @@ public class EmployeeView extends BeanValidationForm<Employee> implements HasUrl
|
|||||||
private final Button reportButton = new Button("Generar Ficha de Contratación");
|
private final Button reportButton = new Button("Generar Ficha de Contratación");
|
||||||
private final Dialog dialog = new Dialog();
|
private final Dialog dialog = new Dialog();
|
||||||
private final PdfViewer pdfViewer = new PdfViewer();
|
private final PdfViewer pdfViewer = new PdfViewer();
|
||||||
|
private final Button excelReportButton = new Button("Información General del Empleado Excel",
|
||||||
|
VaadinIcon.FILE_TABLE.create());
|
||||||
private final H2 infoPer = new H2("Información Personal");
|
private final H2 infoPer = new H2("Información Personal");
|
||||||
private final H3 infoGenr = new H3("Información General");
|
private final H3 infoGenr = new H3("Información General");
|
||||||
private final H5 imagenSub = new H5("Insertar una imagen .jpg:");
|
private final H5 imagenSub = new H5("Insertar una imagen .jpg:");
|
||||||
@ -150,8 +153,14 @@ public class EmployeeView extends BeanValidationForm<Employee> implements HasUrl
|
|||||||
this.requestService = requestService;
|
this.requestService = requestService;
|
||||||
this.teamService = teamService;
|
this.teamService = teamService;
|
||||||
saveButton.addThemeVariants(ButtonVariant.LUMO_PRIMARY);
|
saveButton.addThemeVariants(ButtonVariant.LUMO_PRIMARY);
|
||||||
|
excelReportButton.addThemeVariants(ButtonVariant.LUMO_PRIMARY);
|
||||||
configureComponents();
|
configureComponents();
|
||||||
addClassName("main-layout");
|
addClassName("main-layout");
|
||||||
|
excelReportButton.addClickListener(e ->
|
||||||
|
getUI().ifPresent(ui ->
|
||||||
|
ui.navigate(EmployeeReportView.class, getEntity().getId().toString())
|
||||||
|
)
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void makeUpperCase(final TextField textField) {
|
private void makeUpperCase(final TextField textField) {
|
||||||
@ -514,6 +523,7 @@ public class EmployeeView extends BeanValidationForm<Employee> implements HasUrl
|
|||||||
editButton.setVisible(false);
|
editButton.setVisible(false);
|
||||||
setFieldsEditable();
|
setFieldsEditable();
|
||||||
upload.setVisible(true);
|
upload.setVisible(true);
|
||||||
|
profileImagePreview.setVisible(true);
|
||||||
salaryTotal.setValue(String.valueOf(0.0));
|
salaryTotal.setValue(String.valueOf(0.0));
|
||||||
} else {
|
} else {
|
||||||
UUID employeeId = UUID.fromString(s);
|
UUID employeeId = UUID.fromString(s);
|
||||||
@ -526,6 +536,7 @@ public class EmployeeView extends BeanValidationForm<Employee> implements HasUrl
|
|||||||
setFieldsEditable();
|
setFieldsEditable();
|
||||||
upload.setVisible(true);
|
upload.setVisible(true);
|
||||||
displayProfileImage(employee);
|
displayProfileImage(employee);
|
||||||
|
profileImagePreview.setVisible(true);
|
||||||
salaryTotal.setValue(employee.getSalarytotal());
|
salaryTotal.setValue(employee.getSalarytotal());
|
||||||
} else if ("view".equals(action) && !s.isEmpty()) {
|
} else if ("view".equals(action) && !s.isEmpty()) {
|
||||||
setFieldsReadOnly();
|
setFieldsReadOnly();
|
||||||
@ -533,7 +544,6 @@ public class EmployeeView extends BeanValidationForm<Employee> implements HasUrl
|
|||||||
editButton.setVisible(true);
|
editButton.setVisible(true);
|
||||||
setFieldsReadOnly();
|
setFieldsReadOnly();
|
||||||
displayProfileImage(employee);
|
displayProfileImage(employee);
|
||||||
upload.setVisible(true);
|
|
||||||
salaryTotal.setValue(employee.getSalarytotal());
|
salaryTotal.setValue(employee.getSalarytotal());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -573,7 +583,6 @@ public class EmployeeView extends BeanValidationForm<Employee> implements HasUrl
|
|||||||
emergencyCAddress.setReadOnly(true);
|
emergencyCAddress.setReadOnly(true);
|
||||||
emergencyCPhone.setReadOnly(true);
|
emergencyCPhone.setReadOnly(true);
|
||||||
emergencyCEmail.setReadOnly(true);
|
emergencyCEmail.setReadOnly(true);
|
||||||
upload.setVisible(true);
|
|
||||||
profileImagePreview.setVisible(true);
|
profileImagePreview.setVisible(true);
|
||||||
age.setReadOnly(true);
|
age.setReadOnly(true);
|
||||||
gender.setReadOnly(true);
|
gender.setReadOnly(true);
|
||||||
@ -636,7 +645,6 @@ public class EmployeeView extends BeanValidationForm<Employee> implements HasUrl
|
|||||||
emergencyCAddress.setReadOnly(false);
|
emergencyCAddress.setReadOnly(false);
|
||||||
emergencyCPhone.setReadOnly(false);
|
emergencyCPhone.setReadOnly(false);
|
||||||
emergencyCEmail.setReadOnly(false);
|
emergencyCEmail.setReadOnly(false);
|
||||||
upload.setVisible(false);
|
|
||||||
profileImagePreview.setVisible(true);
|
profileImagePreview.setVisible(true);
|
||||||
age.setReadOnly(false);
|
age.setReadOnly(false);
|
||||||
gender.setReadOnly(false);
|
gender.setReadOnly(false);
|
||||||
@ -704,7 +712,7 @@ public class EmployeeView extends BeanValidationForm<Employee> implements HasUrl
|
|||||||
salaryBasic, bonoProfesional, antiguedad, salaryTotal,
|
salaryBasic, bonoProfesional, antiguedad, salaryTotal,
|
||||||
datBanc, bankName, accountNumber,
|
datBanc, bankName, accountNumber,
|
||||||
datGest, gpss, sss, beneficiarie1, beneficiarie2,
|
datGest, gpss, sss, beneficiarie1, beneficiarie2,
|
||||||
saveButton, editButton, reportButton, dialog
|
saveButton, editButton, reportButton, excelReportButton, dialog
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -26,6 +26,7 @@ import java.time.temporal.IsoFields;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@SpringComponent
|
@SpringComponent
|
||||||
@PermitAll
|
@PermitAll
|
||||||
@ -142,14 +143,25 @@ public class HoursWorkedView extends BeanValidationForm<HoursWorked> implements
|
|||||||
List<Team> teams = new ArrayList<>(teamService.findAllTeams());
|
List<Team> teams = new ArrayList<>(teamService.findAllTeams());
|
||||||
teamField.setItems(teamService.findAllTeams());
|
teamField.setItems(teamService.findAllTeams());
|
||||||
teamField.setItemLabelGenerator(Team::getName);
|
teamField.setItemLabelGenerator(Team::getName);
|
||||||
teamField.setValue(teams.getFirst());
|
teamField.setValue(null);
|
||||||
teamField.addValueChangeListener(event -> {
|
teamField.addValueChangeListener(event -> {
|
||||||
if (teams != null) {
|
Team selectedTeam = event.getValue();
|
||||||
employeeField.getValue();
|
updateEmployeeField(selectedTeam);
|
||||||
event.getValue();
|
});
|
||||||
}
|
}
|
||||||
}
|
|
||||||
);
|
private void updateEmployeeField(final Team selectedTeam) {
|
||||||
|
if (selectedTeam != null) {
|
||||||
|
List<Employee> employeesInTeam = employeeService.findAllEmployees().stream()
|
||||||
|
.filter(employee -> employee.getTeam() != null && employee.getTeam().equals(selectedTeam))
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
employeeField.setItems(employeesInTeam);
|
||||||
|
if (!employeesInTeam.isEmpty()) {
|
||||||
|
employeeField.setValue(employeesInTeam.get(0));
|
||||||
|
} else {
|
||||||
|
employeeField.clear();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private ComboBox<Employee> initializeEmployeeField() {
|
private ComboBox<Employee> initializeEmployeeField() {
|
||||||
@ -157,7 +169,7 @@ public class HoursWorkedView extends BeanValidationForm<HoursWorked> implements
|
|||||||
List<Employee> employees = new ArrayList<>(employeeService.findAllEmployees());
|
List<Employee> employees = new ArrayList<>(employeeService.findAllEmployees());
|
||||||
employeeField.setItems(employees);
|
employeeField.setItems(employees);
|
||||||
employeeField.setItemLabelGenerator(this::getEmployeeFullName);
|
employeeField.setItemLabelGenerator(this::getEmployeeFullName);
|
||||||
employeeField.setValue(employees.getFirst());
|
employeeField.setValue(null);
|
||||||
return employeeField;
|
return employeeField;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -47,8 +47,7 @@ INSERT INTO vacation (id, version, category, expiration, type) VALUES ('490e5fbe
|
|||||||
INSERT INTO vacation (id, version, category, expiration, type) VALUES ('c23e4567-e89b-12d3-a456-4266141740ff', 1, 'VACACION_GESTION_ANTERIOR', 360, 'OTHER');
|
INSERT INTO vacation (id, version, category, expiration, type) VALUES ('c23e4567-e89b-12d3-a456-4266141740ff', 1, 'VACACION_GESTION_ANTERIOR', 360, 'OTHER');
|
||||||
|
|
||||||
|
|
||||||
insert into employee (id, version, username, first_name, last_name, status, team_id, gender, birthday, date_of_entry) values ('5c6f11fe-c341-4be7-a9a6-bba0081ad7c6', 1, 'bob', 'Bob', 'Test', 'ACTIVE','b0e8f394-78c1-4d8a-9c57-dc6e8b36a5fa', 'MALE', '2024-02-20', '2013-10-22');
|
insert into employee (id, version, username, first_name, last_name, status, team_id, gender, birthday, date_of_entry,lead_manager) values ('5c6f11fe-c341-4be7-a9a6-bba0081ad7c6', 1, 'bob', 'Bob', 'Test', 'ACTIVE','b0e8f394-78c1-4d8a-9c57-dc6e8b36a5fa', 'MALE', '2024-02-20', '2013-10-22',1);insert into employee (id, version, username, first_name, last_name, status, team_id, gender, date_of_entry) values ('cba3efb7-32bc-44be-9fdc-fc5e4f211254', 1, 'ben', 'Ben', 'Test', 'ACTIVE', '6d63bc15-3f8b-46f7-9cf1-7e9b0b9a2b28', 'MALE', '2016-10-23');
|
||||||
insert into employee (id, version, username, first_name, last_name, status, team_id, gender, date_of_entry) values ('cba3efb7-32bc-44be-9fdc-fc5e4f211254', 1, 'ben', 'Ben', 'Test', 'ACTIVE', '6d63bc15-3f8b-46f7-9cf1-7e9b0b9a2b28', 'MALE', '2016-10-23');
|
|
||||||
insert into employee (id, version, username, first_name, last_name, status, team_id, gender, date_of_entry) values ('e99b7af5-7d3a-4c0f-b8bc-e8d0388d8fc4', 1, 'jperez', 'Juan', 'Perez Condori', 'INACTIVE', 'c3a8a7b1-f2d9-48c0-86ea-f215c2e6b3a3', 'MALE', '2022-10-22');
|
insert into employee (id, version, username, first_name, last_name, status, team_id, gender, date_of_entry) values ('e99b7af5-7d3a-4c0f-b8bc-e8d0388d8fc4', 1, 'jperez', 'Juan', 'Perez Condori', 'INACTIVE', 'c3a8a7b1-f2d9-48c0-86ea-f215c2e6b3a3', 'MALE', '2022-10-22');
|
||||||
insert into employee (id, version, username, first_name, last_name, status, team_id, gender, date_of_entry) values ('f6ab3c6d-7078-45f6-9b22-4e37637bfec6', 1, 'agarcia', 'Ana', 'Garcia Rojas', 'ACTIVE', '8f6b61e7-efb2-4de7-b8ed-7438c9d8babe', 'FEMALE', '2024-10-24');
|
insert into employee (id, version, username, first_name, last_name, status, team_id, gender, date_of_entry) values ('f6ab3c6d-7078-45f6-9b22-4e37637bfec6', 1, 'agarcia', 'Ana', 'Garcia Rojas', 'ACTIVE', '8f6b61e7-efb2-4de7-b8ed-7438c9d8babe', 'FEMALE', '2024-10-24');
|
||||||
insert into employee (id, version, username, first_name, last_name, status, team_id, gender) values ('2e2293b1-3f9a-4f3d-abc8-32639b0a5e15', 1, 'clopez', 'Carlos', 'Lopez Mendoza', 'INACTIVE', 'b0e8f394-78c1-4d8a-9c57-dc6e8b36a5fa', 'MALE');
|
insert into employee (id, version, username, first_name, last_name, status, team_id, gender) values ('2e2293b1-3f9a-4f3d-abc8-32639b0a5e15', 1, 'clopez', 'Carlos', 'Lopez Mendoza', 'INACTIVE', 'b0e8f394-78c1-4d8a-9c57-dc6e8b36a5fa', 'MALE');
|
||||||
@ -90,3 +89,5 @@ insert into time_off_request (id, version, employee_id, category, state, availab
|
|||||||
values ('12ec8b74-983d-4a17-b67e-134f45ae904c', 1, '5c1a7b82-832d-4f24-8377-54b77b91b6a8', 'AÑO_NUEVO', 'SOLICITADO', 1, '2025-01-01', '2025-01-01', '2025-01-01', 1, 0);
|
values ('12ec8b74-983d-4a17-b67e-134f45ae904c', 1, '5c1a7b82-832d-4f24-8377-54b77b91b6a8', 'AÑO_NUEVO', 'SOLICITADO', 1, '2025-01-01', '2025-01-01', '2025-01-01', 1, 0);
|
||||||
insert into time_off_request (id, version, employee_id, category, state, available_days, expiration, start_date, end_date, days_to_be_take, days_balance)
|
insert into time_off_request (id, version, employee_id, category, state, available_days, expiration, start_date, end_date, days_to_be_take, days_balance)
|
||||||
values ('89bc4b2a-943f-487c-a9f3-bacf78145e67', 1, 'cba3efb7-32bc-44be-9fdc-fc5e4f211254', 'LUNES_CARNAVAL', 'APROBADO', 1, '2024-02-12', '2024-02-12', '2024-02-12', 1, 0);
|
values ('89bc4b2a-943f-487c-a9f3-bacf78145e67', 1, 'cba3efb7-32bc-44be-9fdc-fc5e4f211254', 'LUNES_CARNAVAL', 'APROBADO', 1, '2024-02-12', '2024-02-12', '2024-02-12', 1, 0);
|
||||||
|
|
||||||
|
insert into hours_worked (id, version, actividad, date, horaspendientes, hours, total_hours,week_number,employee_id,team_id) values ('389389ce-7b2e-4f39-aa06-2a251a2b35ea ',0,'meet','2024-11-27',0,4,0,48,'5c6f11fe-c341-4be7-a9a6-bba0081ad7c6','b0e8f394-78c1-4d8a-9c57-dc6e8b36a5fa');
|
Loading…
x
Reference in New Issue
Block a user