-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' of https://github.com/Mahidharmullapudi/employe…
- Loading branch information
Showing
44 changed files
with
1,752 additions
and
277 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
# employee_management | ||
Application to manage Employee Information. HR application to store all the employee information in a single place. | ||
This includes different modules like Employee Personal Information, Immigration information, Timsheet information, Payroll information etc., | ||
|
||
This application uses advanced technology stack to implement the functionality which includes: | ||
spring-boot, spring-data-jpa, hibernate5 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -10,9 +10,9 @@ | |
import java.util.Map; | ||
|
||
@Component | ||
public class TimesheetConstants implements Serializable { | ||
public class ApplicationConstants implements Serializable { | ||
|
||
public static final String SALT = "technumen"; //Key used for Encryption. | ||
public static final String SALT = "employeeManagement"; //Key used for Encryption. | ||
|
||
public static final String REGISTRATION_STATUS_ACTIVE = "ACTIVE"; | ||
|
||
|
@@ -42,6 +42,8 @@ public class TimesheetConstants implements Serializable { | |
|
||
public static final String TIMESHEET_TYPE_BIWEEKLY = "BIWEEKLY"; | ||
|
||
public static final String TIMESHEET_TYPE_MONTHLY = "MONTHLY"; | ||
|
||
public static final String REST_RESPONSE_CODE_SUCCESS = "SUCCESS"; | ||
|
||
public static final String REST_RESPONSE_CODE_ERROR = "ERROR"; | ||
|
@@ -66,4 +68,39 @@ public class TimesheetConstants implements Serializable { | |
|
||
public static final String fromAddress = "[email protected]"; | ||
|
||
public static final Map<String, String> skillMap = ImmutableMap.<String, String>builder() | ||
.put("java", "Java") | ||
.put("mule", "Mule Soft") | ||
.put("net", ".Net") | ||
.put("servicenow", "Service Now") | ||
.put("qa", "Quality Assurance") | ||
.put("ba", "Business Analyst") | ||
.build(); | ||
public static final Map<String, String> companyNamesMap = ImmutableMap.<String, String>builder() | ||
.put("geeksoft", "Geeksoft LLC.,") | ||
.put("datasols", "DataSols LLC.,") | ||
.put("anjs", "ANJS Tech") | ||
.put("eish", "EISH Technologies") | ||
.build(); | ||
|
||
public static final Map<String, String> empTypeMap = ImmutableMap.<String, String>builder() | ||
.put("client", "Client Project") | ||
.put("inhouse", "Inhouse Project") | ||
.put("marketing", "Marketing") | ||
.put("bench", "Bench") | ||
.put("training", "Training") | ||
.build(); | ||
|
||
public static final Map<String, String> paymentTermsMap = ImmutableMap.<String, String>builder() | ||
.put("net30", "Net 30") | ||
.put("net45", "Net 45") | ||
.put("net60", "Net 60") | ||
.build(); | ||
|
||
public static final Map<String, String> invoiceFrequencyMap = ImmutableMap.<String, String>builder() | ||
.put("weekly", "Weekly") | ||
.put("biweekly", "Bi-weekly") | ||
.put("monthly", "Monthly") | ||
.build(); | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
package com.tutorialq.entities; | ||
|
||
import com.fasterxml.jackson.annotation.JsonIgnore; | ||
import lombok.*; | ||
import org.springframework.format.annotation.DateTimeFormat; | ||
|
||
import javax.persistence.*; | ||
import java.io.Serializable; | ||
import java.time.LocalDate; | ||
|
||
@Data | ||
@Entity | ||
@EqualsAndHashCode(exclude = {"employee", "clientDetailsId"}) | ||
@NoArgsConstructor | ||
@AllArgsConstructor | ||
@ToString | ||
public class ClientDetails implements Serializable { | ||
|
||
@Id | ||
@GeneratedValue(strategy = GenerationType.AUTO) | ||
@Column(name = "CLIENT_DETAILS_ID", unique = true, nullable = false) | ||
private long clientDetailsId; | ||
private String clientName; //Name of the Client. | ||
private String clientAddress;//Address of the Client. | ||
private String clientCity; | ||
private String clientState; | ||
private String clientZip; | ||
private String contractCompany; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate contractStartDate; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate contractEndDate; | ||
//Vendor Contact Details | ||
private String vendorCompany; | ||
private String vendorContactName; | ||
private String vendorPhone; | ||
private String vendorEmail; | ||
private String paymentTerms; | ||
//Invoice Details | ||
private String invoiceContactName; | ||
private String invoiceContactPhone; | ||
private String invoiceContactEmail; | ||
private String invoiceFrequency; | ||
private String comments; | ||
@ManyToOne(fetch = FetchType.LAZY) | ||
@JoinColumn(name = "EMPLOYEE_ID", nullable = false) | ||
@JsonIgnore | ||
private Employee employee; | ||
//Audit Information | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateCreated; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateLastModified; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateApproved; | ||
private String nameCreated; | ||
private String nameLastModified; | ||
private String nameApproved; | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
package com.tutorialq.entities; | ||
|
||
import lombok.AllArgsConstructor; | ||
import lombok.Data; | ||
import lombok.NoArgsConstructor; | ||
import lombok.ToString; | ||
import org.springframework.format.annotation.DateTimeFormat; | ||
|
||
import javax.persistence.*; | ||
import java.io.Serializable; | ||
import java.time.LocalDate; | ||
import java.util.HashSet; | ||
import java.util.Set; | ||
|
||
@Data | ||
@Entity | ||
@NoArgsConstructor | ||
@AllArgsConstructor | ||
@ToString | ||
public class DocumentRefData implements Serializable { | ||
@Id | ||
@GeneratedValue(strategy = GenerationType.AUTO) | ||
@Column(name = "DOCUMENT_REF_ID", unique = true, nullable = false) | ||
private long documentRefDataId; | ||
private String cdeSection; | ||
private String sectionDisplayName; | ||
private String DscExplanation; | ||
|
||
@OneToMany(fetch = FetchType.LAZY, mappedBy = "employee") | ||
private Set<DocumentUpload> documentUploads = new HashSet<>(0); | ||
|
||
//Audit Information | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateCreated; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateLastModified; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateApproved; | ||
private String nameCreated; | ||
private String nameLastModified; | ||
private String nameApproved; | ||
|
||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
package com.tutorialq.entities; | ||
|
||
import com.fasterxml.jackson.annotation.JsonIgnore; | ||
import lombok.*; | ||
import org.springframework.format.annotation.DateTimeFormat; | ||
|
||
import javax.persistence.*; | ||
import java.io.Serializable; | ||
import java.time.LocalDate; | ||
|
||
@Data | ||
@Entity | ||
@EqualsAndHashCode(exclude = {"employee", "clientDetailsId"}) | ||
@NoArgsConstructor | ||
@AllArgsConstructor | ||
@ToString | ||
public class DocumentUpload implements Serializable { | ||
|
||
@Id | ||
@GeneratedValue(strategy = GenerationType.AUTO) | ||
@Column(name = "DOCUMENT_UPLOAD_ID", unique = true, nullable = false) | ||
private long documentUploadId; | ||
private long documentRefDataId; | ||
private java.sql.Blob blobMessage; | ||
private String dscFileName; | ||
private String rowId; | ||
private long fileSize; | ||
private String dscSectionName; //To get the section name of the uploaded file | ||
private String dscComments; | ||
//Extra fields to be populated from other tables. | ||
private String uploadedUserName; | ||
private String shortDescription; //This stores the display name of the uploaded section name. | ||
private int numOrder; | ||
@ManyToOne(fetch = FetchType.LAZY) | ||
@JoinColumn(name = "EMPLOYEE_ID", nullable = false) | ||
@JsonIgnore | ||
private Employee employee; | ||
|
||
@ManyToOne(fetch = FetchType.LAZY) | ||
@JoinColumn(name = "DOCUMENT_REF_ID", nullable = false) | ||
@JsonIgnore | ||
private DocumentRefData documentRefData; | ||
//Audit Information | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateCreated; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateLastModified; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateApproved; | ||
private String nameCreated; | ||
private String nameLastModified; | ||
private String nameApproved; | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
52 changes: 52 additions & 0 deletions
52
src/main/java/com/tutorialq/entities/ImmigrationDetails.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
package com.tutorialq.entities; | ||
|
||
import com.fasterxml.jackson.annotation.JsonIgnore; | ||
import lombok.*; | ||
import org.springframework.format.annotation.DateTimeFormat; | ||
|
||
import javax.persistence.*; | ||
import java.io.Serializable; | ||
import java.math.BigDecimal; | ||
import java.time.LocalDate; | ||
|
||
@Data | ||
@Entity | ||
@EqualsAndHashCode(exclude = {"employee", "immiDetailsId"}) | ||
@NoArgsConstructor | ||
@AllArgsConstructor | ||
@ToString | ||
public class ImmigrationDetails implements Serializable { | ||
|
||
@Id | ||
@GeneratedValue(strategy = GenerationType.AUTO) | ||
@Column(name = "DOCUMENT_UPLOAD_ID", unique = true, nullable = false) | ||
private long immiDetailsId; | ||
private String currentStatus; | ||
private String receiptNumber; | ||
private String lcaNumber; | ||
private BigDecimal currentWage; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate startDate; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate endDate; | ||
private String dscComments; | ||
|
||
private String greenCardStatus; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate gcStartDate; | ||
@ManyToOne(fetch = FetchType.LAZY) | ||
@JoinColumn(name = "EMPLOYEE_ID", nullable = false) | ||
@JsonIgnore | ||
private Employee employee; | ||
|
||
//Audit Information | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateCreated; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateLastModified; | ||
@DateTimeFormat(pattern = "MM/dd/yyyy") | ||
private LocalDate dateApproved; | ||
private String nameCreated; | ||
private String nameLastModified; | ||
private String nameApproved; | ||
} |
Oops, something went wrong.