Commit 4483b2f9 authored by Phạm Duy Phi's avatar Phạm Duy Phi

no message

parent 0df0fcbb
package com.itsol.quantrivanphong.manage.leaveform.business;
import com.itsol.quantrivanphong.manage.leaveform.dto.LeaveFormDTO;
import com.itsol.quantrivanphong.manage.leaveform.repository.LeaveFormRepository;
import com.itsol.quantrivanphong.manage.leaveform.repository.LeaveTypeRepository;
import com.itsol.quantrivanphong.model.Employee;
import com.itsol.quantrivanphong.model.LeaveForm;
import com.itsol.quantrivanphong.model.LeaveType;
import com.itsol.quantrivanphong.repository.EmployeeRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Service
public class LeaveFormBusiness {
@Autowired
LeaveFormRepository leaveFormRepository;
@Autowired
LeaveTypeRepository leaveTypeRepository;
@Autowired
EmployeeRepository employeeRepository;
public List<LeaveForm> findAll() {
return leaveFormRepository.findAll();
}
public String insertLeaveForm(int employee_Id, LeaveFormDTO leaveFormDTO, int leavetype_Id) {
String message;
Employee employee = employeeRepository.findEmployeeById(employee_Id);
LeaveType leaveType = leaveTypeRepository.findLeaveTypeById(leavetype_Id);
if (employee != null) {
if (leaveType != null) {
LeaveForm leaveForm = leaveFormRepository.save(LeaveForm.builder()
.title(leaveFormDTO.getTitle())
.content(leaveFormDTO.getContent())
.status(false)
.employee(employee)
.leaveType(leaveType).build());
if (leaveForm != null) {
message = "Insert leave form success";
} else {
message = "Insert leave form failed";
}
} else {
message = "Leave Type does not exist";
}
} else {
message = "Employee does not exist";
}
return message;
}
@Transactional
public String deleteLeaveForm(int emloyee_Id, int leaveform_Id) {
String message;
Employee employee = employeeRepository.findEmployeeById(emloyee_Id);
LeaveForm leaveForm = leaveFormRepository.findLeaveFormByEmployeeAndId(employee, leaveform_Id);
if (employee != null) {
if (leaveForm != null) {
leaveFormRepository.delete(leaveForm);
if (leaveFormRepository.findLeaveFormByEmployeeAndId(employee, leaveform_Id) != null) {
message = "Delete failed!";
} else {
message = "Delete success!";
}
} else {
message = "Leave Form does not exist";
}
} else {
message = "Employee does not exist";
}
return message;
}
@Transactional
public String updateLeaveForm(int employee_Id, int leavetype_Id, int leaveform_Id, LeaveFormDTO leaveFormDTO) {
String message;
Employee employee = employeeRepository.findEmployeeById(employee_Id);
LeaveType leaveType = leaveTypeRepository.findLeaveTypeById(leavetype_Id);
LeaveForm leaveForm = leaveFormRepository.findLeaveFormByEmployeeAndLeaveTypeAndId(employee, leaveType, leaveform_Id);
if (leaveType != null) {
if (leaveForm != null) {
int i = leaveFormRepository.updateLeaveForm(leaveFormDTO.getTitle(), leaveFormDTO.getContent(), leaveform_Id);
if (i == 1) {
message = "Update success";
} else {
message = "Update failed";
}
} else {
message = "Leave Type does not exist";
}
} else {
message = "Leave Form does not exist";
}
return message;
}
@Transactional
public String updateLeaveFormStatus(int employee_Id, int leavetype_Id, int leaveform_Id) {
String message;
Employee employee = employeeRepository.findEmployeeById(employee_Id);
LeaveType leaveType = leaveTypeRepository.findLeaveTypeById(leavetype_Id);
LeaveForm leaveForm = leaveFormRepository.findLeaveFormByEmployeeAndLeaveTypeAndId(employee, leaveType, leaveform_Id);
if (leaveForm != null) {
int i = leaveFormRepository.updateLeaveFormStatus(leaveform_Id);
if (i == 1) {
message = "Update status success";
} else {
message = "Update status failed";
}
} else {
message = "Leave Form does not exist";
}
return message;
}
public List<LeaveForm> leaveFormById(int employee_Id) {
Employee employee = employeeRepository.findEmployeeById(employee_Id);
if (employee != null) {
if (leaveFormRepository.showLeaveFormById(employee) != null) {
return leaveFormRepository.showLeaveFormById(employee);
} else {
return null;
}
} else {
return null;
}
}
}
package com.itsol.quantrivanphong.manage.leaveform.controller;
import com.itsol.quantrivanphong.exception.InputException;
import com.itsol.quantrivanphong.manage.leaveform.business.LeaveFormBusiness;
import com.itsol.quantrivanphong.manage.leaveform.dto.LeaveFormDTO;
import com.itsol.quantrivanphong.model.LeaveForm;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
@RestController
@RequestMapping(path = "/employee")
public class LeaveFormController {
@Autowired
LeaveFormBusiness leaveFormBusiness;
@GetMapping(path = "/leaveform")
public ResponseEntity<List<LeaveForm>> showAllLeaveForm() {
return ResponseEntity.ok(leaveFormBusiness.findAll());
}
@PostMapping(path = "/{employee_Id}/leavetype/{leavetype_Id}/leaveform", consumes = "application/json", produces = "application/json")
public ResponseEntity<String> insertLeaveForm(@PathVariable int employee_Id, @Valid @RequestBody LeaveFormDTO leaveFormDTO, @PathVariable int leavetype_Id) {
String message;
try {
if (leaveFormDTO.getTitle().trim().equals("")) throw new InputException("Tiêu đề không được để trống");
if (leaveFormDTO.getContent().trim().equals("")) throw new InputException("Nội dung không được để trống");
message = leaveFormBusiness.insertLeaveForm(employee_Id, leaveFormDTO, leavetype_Id);
} catch (InputException e) {
message = e.getMessage();
}
return ResponseEntity.ok(message);
}
@DeleteMapping("/{employee_Id}/leaveform/{leaveform_Id}")
public ResponseEntity<String> deleteLeaveForm(@PathVariable int employee_Id, @Valid @PathVariable int leaveform_Id) {
return ResponseEntity.ok(leaveFormBusiness.deleteLeaveForm(employee_Id, leaveform_Id));
}
@PostMapping(path = "/{employee_Id}/leavetype/{leavetype_Id}/leaveform/{leaveform_Id}", consumes = "application/json", produces = "application/json")
public ResponseEntity<String> updateLeaveForm(@PathVariable int employee_Id, @PathVariable int leavetype_Id, @PathVariable int leaveform_Id, @Valid @RequestBody LeaveFormDTO leaveFormDTO) {
String message;
try {
if (leaveFormDTO.getTitle().trim().equals("")) throw new InputException("Tiêu đề không được để trống");
if (leaveFormDTO.getContent().trim().equals("")) throw new InputException("Nội dung không được để trống");
message = leaveFormBusiness.updateLeaveForm(employee_Id, leavetype_Id, leaveform_Id, leaveFormDTO);
} catch (InputException e) {
message = e.getMessage();
}
return ResponseEntity.ok(message);
}
@PostMapping(path = "/{employee_Id}/leavetype/{leavetype_Id}/leaveform/{leaveform_Id}/status", consumes = "application/json", produces = "application/json")
public ResponseEntity<String> updateLeaveFormStatus(@PathVariable int employee_Id, @PathVariable int leavetype_Id, @PathVariable int leaveform_Id) {
String message;
message = leaveFormBusiness.updateLeaveFormStatus(employee_Id, leavetype_Id, leaveform_Id);
return ResponseEntity.ok(message);
}
@GetMapping("/{employee_Id}/leaveform")
public ResponseEntity<List<LeaveForm>> showLeaveFormById(@PathVariable int employee_Id) {
if (leaveFormBusiness.leaveFormById(employee_Id) != null) {
return ResponseEntity.ok(leaveFormBusiness.leaveFormById(employee_Id));
} else {
return null;
}
}
}
package com.itsol.quantrivanphong.manage.leaveform.dto;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class LeaveFormDTO {
private int id;
private String title;
private String content;
private boolean status;
private int employee_id;
private int leave_type_id;
}
package com.itsol.quantrivanphong.manage.leaveform.repository;
import com.itsol.quantrivanphong.model.Employee;
import com.itsol.quantrivanphong.model.LeaveForm;
import com.itsol.quantrivanphong.model.LeaveType;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import java.util.List;
public interface LeaveFormRepository extends JpaRepository<LeaveForm, Integer> {
// @Query("select lf from LeaveForm lf")
// List<LeaveForm> findAll();
LeaveForm findLeaveFormByEmployeeAndId(Employee employee, int id);
// LeaveForm findLeaveFormById(int i);
LeaveForm findLeaveFormByEmployeeAndLeaveTypeAndId(Employee employee, LeaveType leaveType, int id);
@Modifying
@Query("update LeaveForm lf set lf.title = ?1, lf.content = ?2 where lf.id = ?3")
int updateLeaveForm(String title, String content, int id);
@Modifying
@Query("update LeaveForm lf set lf.status = true where lf.id = ?1")
int updateLeaveFormStatus(int id);
@Query("select lf from LeaveForm lf where lf.employee = ?1")
List<LeaveForm> showLeaveFormById(Employee employee);
}
package com.itsol.quantrivanphong.manage.leaveform.repository;
import com.itsol.quantrivanphong.model.LeaveType;
import org.springframework.data.jpa.repository.JpaRepository;
public interface LeaveTypeRepository extends JpaRepository<LeaveType, Integer> {
LeaveType findLeaveTypeById(int id);
}
package com.itsol.quantrivanphong.manage.timesheet.business;
import com.itsol.quantrivanphong.manage.timesheet.dto.TimeSheetDTO;
import com.itsol.quantrivanphong.manage.timesheet.repository.EProjectRepository;
import com.itsol.quantrivanphong.manage.timesheet.repository.TimeSheetRepository;
import com.itsol.quantrivanphong.model.Employee;
import com.itsol.quantrivanphong.model.Eproject;
import com.itsol.quantrivanphong.model.TimeSheet;
import com.itsol.quantrivanphong.repository.EmployeeRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@Service
public class TimeSheetBusiness {
@Autowired
TimeSheetRepository timeSheetRepository;
@Autowired
EProjectRepository eProjectRepository;
@Autowired
EmployeeRepository employeeRepository;
public String insertTimeSheet(int employee_Id, TimeSheetDTO timeSheetDTO) {
String message;
Employee employee = employeeRepository.findEmployeeById(employee_Id);
Eproject eproject = eProjectRepository.findEprojectByIdAndEmployee(timeSheetDTO.getEproject_id(), employee);
if (eproject != null) {
// SimpleDateFormat formatter= new SimpleDateFormat("dd-MM-yyyy HH:mm");
// Date date = new Date(System.currentTimeMillis());
TimeSheet timeSheet1 = new TimeSheet();
timeSheet1.setTitle(timeSheetDTO.getTitle());
timeSheet1.setContent(timeSheetDTO.getContent());
timeSheet1.setNote(timeSheetDTO.getNote());
timeSheet1.setEproject(eproject);
timeSheet1.setChecked("");
timeSheet1.setStatus(true);
TimeSheet timeSheet = timeSheetRepository.save(timeSheet1);
if (timeSheet != null) {
message = "Insert Time Sheet success";
} else {
message = "Insert Time Sheet failed";
}
} else {
message = "Eproject does not exist";
}
return message;
}
public String deleteTimeSheet(int employee_Id, int timeSheet_Id) {
String message;
Employee employee = employeeRepository.findEmployeeById(employee_Id);
Eproject eproject = eProjectRepository.findEprojectByEmployee(employee);
TimeSheet timeSheet = timeSheetRepository.findTimeSheetByEprojectAndId(eproject, timeSheet_Id);
if (timeSheet != null) {
timeSheetRepository.delete(timeSheet);
if (timeSheetRepository.findTimeSheetByEprojectAndId(eproject, timeSheet_Id) == null) {
message = "Delete success";
} else {
message = "Delete failed";
}
} else {
message = "Time Sheet does not exist";
}
return message;
}
public List<TimeSheet> findAll(){
return timeSheetRepository.findAll();
}
@Transactional
public String updateTimeSheet(int employee_Id, TimeSheetDTO timeSheetDTO, int timesheet_Id) {
String message;
Employee employee = employeeRepository.findEmployeeById(employee_Id);
Eproject eproject = eProjectRepository.findEprojectByEmployee(employee);
TimeSheet timeSheet = timeSheetRepository.findTimeSheetByEprojectAndId(eproject, timesheet_Id);
if (eproject != null) {
if (timeSheet != null) {
int i = timeSheetRepository.updateTimeSheet(timeSheetDTO.getTitle(), timeSheetDTO.getContent()
, timeSheetDTO.getNote(), timesheet_Id);
if (i == 1) {
message = "Update success";
} else {
message = "Update failed";
}
} else {
message = "TimeSheet does not exist";
}
} else {
message = "Eproject does not exist";
}
return message;
}
// @Transactional
// public String updateLeaveFormStatus(TimeSheetDTO timeSheetDTO) {
// String message;
// TimeSheet timeSheet = timeSheetRepository.findTimeSheetById(timeSheetDTO.getId());
// if (timeSheet != null) {
// int i = timeSheetRepository.updateTimeSheetStatus(timeSheetDTO.isStatus(), timeSheetDTO.getId());
// if (i == 1) {
// message = "Update status success";
// } else {
// message = "Update status failed";
// }
// } else {
// message = "TimeSheet does not exist";
// }
//
// return message;
// }
public List<TimeSheet> findTimeSheetById(int employee_Id) {
Employee employee = employeeRepository.findEmployeeById(employee_Id);
Eproject eproject = eProjectRepository.findEprojectByEmployee(employee);
if (employee != null && eproject != null && timeSheetRepository.showTimeSheetByEproject(eproject) != null) {
return timeSheetRepository.showTimeSheetByEproject(eproject);
} else {
return null;
}
}
}
package com.itsol.quantrivanphong.manage.timesheet.controller;
import com.itsol.quantrivanphong.exception.InputException;
import com.itsol.quantrivanphong.manage.timesheet.business.TimeSheetBusiness;
import com.itsol.quantrivanphong.manage.timesheet.dto.TimeSheetDTO;
import com.itsol.quantrivanphong.model.TimeSheet;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
@RestController
@RequestMapping(path = "/eproject")
public class TimeSheetController {
@Autowired
TimeSheetBusiness timeSheetBusiness;
@PostMapping(path = "/{employee_Id}/timesheet", consumes = "application/json", produces = "application/json")
public ResponseEntity<String> insertTimeSheet(@PathVariable int employee_Id, @Valid @RequestBody TimeSheetDTO timeSheetDTO) {
String message;
try {
if (timeSheetDTO.getTitle().trim().equals("")) throw new InputException("Tiêu đề không được để trống");
if (timeSheetDTO.getContent().trim().equals("")) throw new InputException("Nội dung không được để trống");
message = timeSheetBusiness.insertTimeSheet(employee_Id, timeSheetDTO);
} catch (InputException e) {
message = e.getMessage();
}
return ResponseEntity.ok(message);
}
@DeleteMapping("/{employee_Id}/timesheet/{timesheet_Id}")
public ResponseEntity<String> deleteTimeSheet(@PathVariable int employee_Id, @Valid @PathVariable int timesheet_Id) {
return ResponseEntity.ok(timeSheetBusiness.deleteTimeSheet(employee_Id, timesheet_Id));
}
@GetMapping(path = "/timesheet")
public List<TimeSheet> showAllTimeSheet() {
return timeSheetBusiness.findAll();
}
@PostMapping(path = "/{employee_Id}/timesheet/{timesheet_Id}", consumes = "application/json", produces = "application/json")
public ResponseEntity<String> updateTimeSheet(@PathVariable int employee_Id, @PathVariable int timesheet_Id, @Valid @RequestBody TimeSheetDTO timeSheetDTO) {
String message;
try {
if (timeSheetDTO.getTitle().trim().equals("")) throw new InputException("Tiêu đề không được để trống");
if (timeSheetDTO.getContent().trim().equals("")) throw new InputException("Nội dung không được để trống");
message = timeSheetBusiness.updateTimeSheet(employee_Id, timeSheetDTO, timesheet_Id);
} catch (InputException e) {
message = e.getMessage();
}
return ResponseEntity.ok(message);
}
// @PostMapping(path = "/update-status", consumes = "application/json", produces = "application/json")
// public ResponseEntity<String> updateLeaveFormStatus(@RequestBody TimeSheetDTO timeSheetDTO) {
// String message;
// message = timeSheetBusiness.updateLeaveFormStatus(timeSheetDTO);
// return ResponseEntity.ok(message);
// }
@GetMapping("/{employee_Id}/timesheet")
public ResponseEntity<List<TimeSheet>> showTimeSheetById(@PathVariable int employee_Id) {
return ResponseEntity.ok(timeSheetBusiness.findTimeSheetById(employee_Id));
}
}
\ No newline at end of file
package com.itsol.quantrivanphong.manage.timesheet.dto;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class TimeSheetDTO {
private int id;
private String title;
private String content;
private String note;
private String checked;
private boolean status;
private int eproject_id;
}
package com.itsol.quantrivanphong.manage.timesheet.repository;
import com.itsol.quantrivanphong.model.Employee;
import com.itsol.quantrivanphong.model.Eproject;
import org.springframework.data.jpa.repository.JpaRepository;
public interface EProjectRepository extends JpaRepository<Eproject, Integer> {
// Eproject findEprojectById(int id);
Eproject findEprojectByEmployee(Employee employee);
Eproject findEprojectByIdAndEmployee(int eProject_Id, Employee employee);
}
package com.itsol.quantrivanphong.manage.timesheet.repository;
import com.itsol.quantrivanphong.model.Eproject;
import com.itsol.quantrivanphong.model.TimeSheet;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import java.util.List;
public interface TimeSheetRepository extends JpaRepository<TimeSheet, Integer> {
// TimeSheet findTimeSheetById(int id);
// @Query("select ts from TimeSheet ts order by ts.createdAt desc")
// List<TimeSheet> getAllTimeSheet();
@Modifying
@Query("update TimeSheet ts set ts.title = ?1, ts.content = ?2, ts.note = ?3 where ts.id = ?4")
int updateTimeSheet(String title, String content, String note, int timesheet_Id);
// @Modifying
// @Query("update TimeSheet ts set ts.status = ?1 where ts.id = ?2")
// int updateTimeSheetStatus(boolean status, int id);
@Query("select ts from TimeSheet ts where ts.eproject = ?1")
List<TimeSheet> showTimeSheetByEproject(Eproject eproject);
TimeSheet findTimeSheetByEprojectAndId(Eproject eproject, int timeSheet_Id);
}
package com.itsol.quantrivanphong.report.employee;
public class Test {
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment