Subversion Repositories SmartDukaan

Rev

Rev 31238 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
28128 tejbeer 1
package com.spice.profitmandi.web.controller;
2
 
31238 amit.gupta 3
import com.spice.profitmandi.common.exception.ProfitMandiBusinessException;
4
import com.spice.profitmandi.common.model.ProfitMandiConstants;
5
import com.spice.profitmandi.dao.entity.auth.AuthUser;
6
import com.spice.profitmandi.dao.hrms.*;
7
import com.spice.profitmandi.dao.repository.auth.AuthRepository;
8
import com.spice.profitmandi.dao.repository.hrms.*;
9
import com.spice.profitmandi.web.model.LoginDetails;
10
import com.spice.profitmandi.web.util.CookiesProcessor;
11
import com.spice.profitmandi.web.util.MVCResponseSender;
28128 tejbeer 12
import org.apache.logging.log4j.LogManager;
13
import org.apache.logging.log4j.Logger;
14
import org.springframework.beans.factory.annotation.Autowired;
15
import org.springframework.stereotype.Controller;
16
import org.springframework.transaction.annotation.Transactional;
17
import org.springframework.ui.Model;
18
import org.springframework.web.bind.annotation.RequestBody;
19
import org.springframework.web.bind.annotation.RequestMapping;
20
import org.springframework.web.bind.annotation.RequestMethod;
21
import org.springframework.web.bind.annotation.RequestParam;
22
 
31238 amit.gupta 23
import javax.servlet.http.HttpServletRequest;
24
import java.util.List;
28128 tejbeer 25
 
26
@Controller
27
@Transactional(rollbackFor = Throwable.class)
28
public class HrmsController {
29
 
30
	private static final Logger LOGGER = LogManager.getLogger(PostOfficeController.class);
31
 
32
	@Autowired
37405 amit 33
	private com.spice.profitmandi.dao.repository.inventory.StateRepository stateRepository;
34
 
35
	@Autowired
28128 tejbeer 36
	private StatutoryDocsAndDateRepository statutoryDocsAndDateRepository;
37
 
38
	@Autowired
39
	private MVCResponseSender mvcResponseSender;
40
 
41
	@Autowired
42
	private WorkExperienceFormRepository workExperienceFormRepository;
43
	@Autowired
44
	private PersonalDetailsformRepository personalDetailsformRepository;
45
	@Autowired
46
	private InsuranceDetailFormRepository insuranceDetailFormRepository;
47
 
48
	@Autowired
49
	private BasicDetailsRepository basicDetailsRepository;
50
	@Autowired
51
	private CompensationDetailsFormRepository compensationDetailsFormRepository;
52
 
53
	@Autowired
54
	private DocumentsDetailsFormRepository documentsDetailsFormRepository;
55
	@Autowired
56
	private FamilyMemberDetailsFormRepository familyMemberDetailsFormRepository;
57
	@Autowired
58
	private EmployFormRepository employFormRepository;
59
	@Autowired
60
	private ContactDetailFormRepository contactDetailFormRepository;
61
	@Autowired
62
	private BankDetailsFormRepository bankDetailsFormRepository;
63
 
64
	@Autowired
65
	private CookiesProcessor cookiesProcessor;
66
 
67
	@Autowired
68
	private AuthRepository authRepository;
69
 
70
	@Autowired
71
	private AddressDetailsFormRepository addressDetailsFormRepository;
72
 
73
	@RequestMapping(value = "/getEmployeeDetailsForm", method = RequestMethod.POST)
74
	public String getHrmsEmployeeDetails(HttpServletRequest request, Model model) throws Exception {
75
 
76
		return "employee-form";
77
 
78
	}
79
 
80
	@RequestMapping(value = "/getHrEmployeeDetailsForm", method = RequestMethod.POST)
81
	public String getHrmsHrEmployeeDetails(HttpServletRequest request, Model model) throws Exception {
82
		List<AuthUser> authUsers = authRepository.selectAllActiveUser();
83
		model.addAttribute("authUsers", authUsers);
84
 
85
		LOGGER.info("authUsers" + authUsers);
86
 
87
		return "hrms.employ_form";
88
 
89
	}
90
 
91
	@RequestMapping(value = "/getEmployeeDetailsAuth", method = RequestMethod.GET)
92
	public String getEmployeeDetailsForm(HttpServletRequest request, @RequestParam int authId, Model model)
93
			throws Exception {
94
 
95
		EmployForm employForm = employFormRepository.selectByAuthId(authId);
96
		if (employForm != null) {
97
 
98
			List<AuthUser> authUsers = authRepository.selectAllActiveUser();
99
			model.addAttribute("authUsers", authUsers);
100
		}
101
 
102
		else {
103
			throw new ProfitMandiBusinessException(ProfitMandiConstants.ID, authId, "Auth User not Exist");
104
		}
105
 
37405 amit 106
		model.addAttribute("stateNames", this.stateNames());
28128 tejbeer 107
		return "hr_employee_form";
108
 
109
	}
110
 
111
	@RequestMapping(value = "/getEmployeeDetailSubmit", method = RequestMethod.POST)
112
	public String getHrEmployeeDetailsFormSubmit(HttpServletRequest request,
113
			@RequestBody CreateEmployeeDetailFormHRMS createEmployeeDetailFormHRMS, Model model) throws Exception {
114
 
115
		EmployForm employForm = employFormRepository.selectByAuthId(createEmployeeDetailFormHRMS.getAuthId());
116
 
117
		if (employForm != null) {
118
 
119
			employForm.setArea(createEmployeeDetailFormHRMS.getArea());
120
			employForm.setAuthId(createEmployeeDetailFormHRMS.getAuthId());
121
 
122
			employForm.setCity(createEmployeeDetailFormHRMS.getCity());
123
			employForm.setCreatedTimestamp(createEmployeeDetailFormHRMS.getCreatedTimestamp());
124
			employForm.setDateJoining(createEmployeeDetailFormHRMS.getDateJoining());
125
			employForm.setDateOfleaving(createEmployeeDetailFormHRMS.getDateOfleaving());
126
			employForm.setDayWorked(createEmployeeDetailFormHRMS.getDayWorked());
127
			employForm.setDesignation(createEmployeeDetailFormHRMS.getDesignation());
128
 
129
			employForm.setHowOldSystem(createEmployeeDetailFormHRMS.getHowOldSystem());
130
			employForm.setProject(createEmployeeDetailFormHRMS.getProject());
131
			employForm.setState(createEmployeeDetailFormHRMS.getState());
132
			employForm.setUpdatedTimestamp(createEmployeeDetailFormHRMS.getUpdatedTimestamp());
133
			employFormRepository.persist(employForm);
134
 
135
			BasicDetails basicDetails = basicDetailsRepository.selectByAuthId(createEmployeeDetailFormHRMS.getAuthId());
136
			if (basicDetails != null) {
137
				basicDetails = new BasicDetails();
138
			}
139
 
140
			basicDetails.setAuthId(createEmployeeDetailFormHRMS.getAuthId());
141
			basicDetails.setActiveInactive(createEmployeeDetailFormHRMS.getActiveInactive());
142
			basicDetails.setDept(createEmployeeDetailFormHRMS.getDept());
143
			basicDetails.setEmploymentStatus(createEmployeeDetailFormHRMS.getEmploymentStatus());
144
			basicDetails.setOfficialEmail(createEmployeeDetailFormHRMS.getOfficialEmail());
145
			basicDetails.setReportingTo(createEmployeeDetailFormHRMS.getReportingTo());
146
			basicDetails.setSdEmpId(createEmployeeDetailFormHRMS.getSdEmpId());
147
			basicDetailsRepository.persist(basicDetails);
148
 
149
			InsuranceDetailForm insuranceDetailForm = insuranceDetailFormRepository
150
					.selectByAuthId(createEmployeeDetailFormHRMS.getAuthId());
151
 
152
			insuranceDetailForm.setAuthId(createEmployeeDetailFormHRMS.getAuthId());
153
			insuranceDetailForm.setMediclaim(createEmployeeDetailFormHRMS.getMediclaim());
154
			insuranceDetailForm.setPersoanalAccident(createEmployeeDetailFormHRMS.getPersoanalAccident());
155
			insuranceDetailFormRepository.persist(insuranceDetailForm);
156
 
157
			DocumentsDetailsForm documentsDetailsForm = documentsDetailsFormRepository
158
					.selectByAuthId(createEmployeeDetailFormHRMS.getAuthId());
159
			if (documentsDetailsForm != null) {
160
				documentsDetailsForm = new DocumentsDetailsForm();
161
			}
162
 
163
			documentsDetailsForm.setAuthId(createEmployeeDetailFormHRMS.getAuthId());
164
			documentsDetailsForm.setAadhaar(createEmployeeDetailFormHRMS.getAadhaar());
165
			documentsDetailsForm.setApptLetterIssued(createEmployeeDetailFormHRMS.getApptLetterIssued());
166
 
167
			documentsDetailsForm.setBioData(createEmployeeDetailFormHRMS.getBioData());
168
			documentsDetailsForm.setCheckBankDetails(createEmployeeDetailFormHRMS.getCheckBankDetails());
169
			documentsDetailsForm.setEduCart(createEmployeeDetailFormHRMS.getEduCart());
170
			documentsDetailsForm.setOfferGiven(createEmployeeDetailFormHRMS.getOfferGiven());
171
			documentsDetailsForm.setPanCard(createEmployeeDetailFormHRMS.getPanCard());
172
			documentsDetailsForm.setSixPhotos(createEmployeeDetailFormHRMS.getSixPhotos());
173
			documentsDetailsFormRepository.persist(documentsDetailsForm);
174
 
175
			CompensationDetailsForm compensationDetailsForm = compensationDetailsFormRepository
176
					.selectByAuthId(createEmployeeDetailFormHRMS.getAuthId());
177
			if (compensationDetailsForm != null) {
178
				compensationDetailsForm = new CompensationDetailsForm();
179
 
180
			}
181
 
182
			compensationDetailsForm.setAuthId(createEmployeeDetailFormHRMS.getAuthId());
183
			compensationDetailsForm.setBand(createEmployeeDetailFormHRMS.getBand());
184
			compensationDetailsForm.setBasic(createEmployeeDetailFormHRMS.getBasic());
185
			compensationDetailsForm.setCarLease(createEmployeeDetailFormHRMS.getCarLease());
186
			compensationDetailsForm.setConv(createEmployeeDetailFormHRMS.getConv());
187
			compensationDetailsForm.setDriverSalary(createEmployeeDetailFormHRMS.getDriverSalary());
188
			compensationDetailsForm.setEsic(createEmployeeDetailFormHRMS.getEsic());
189
			compensationDetailsForm.setFctcMonthly(createEmployeeDetailFormHRMS.getFctcMonthly());
190
			compensationDetailsForm.setFuelMaintance(createEmployeeDetailFormHRMS.getFuelMaintance());
191
			compensationDetailsForm.setGross(createEmployeeDetailFormHRMS.getGross());
192
			compensationDetailsForm.setHRA(createEmployeeDetailFormHRMS.getHRA());
193
			compensationDetailsForm.setInhand(createEmployeeDetailFormHRMS.getInhand());
194
			compensationDetailsForm.setLta(createEmployeeDetailFormHRMS.getLta());
195
			compensationDetailsForm.setMedicalRem(createEmployeeDetailFormHRMS.getMedicalRem());
196
			compensationDetailsForm.setMediPolicy(createEmployeeDetailFormHRMS.getMediPolicy());
197
			compensationDetailsForm.setPf(createEmployeeDetailFormHRMS.getPf());
198
			compensationDetailsForm.setSplAll(createEmployeeDetailFormHRMS.getSplAll());
199
			compensationDetailsForm.setStatuaryBonus(createEmployeeDetailFormHRMS.getStatuaryBonus());
200
			compensationDetailsForm.setTotalCostAnnual(createEmployeeDetailFormHRMS.getTotalCostAnnual());
201
			compensationDetailsForm.setVariableCostAnnual(createEmployeeDetailFormHRMS.getVariableCostAnnual());
202
			compensationDetailsForm.setVctcMonthly(createEmployeeDetailFormHRMS.getVctcMonthly());
203
			compensationDetailsForm.setCarLease(createEmployeeDetailFormHRMS.getCarLease());
204
			compensationDetailsFormRepository.persist(compensationDetailsForm);
205
 
31238 amit.gupta 206
			model.addAttribute("response1", mvcResponseSender.createResponseString(true));
28128 tejbeer 207
		} else {
208
			throw new ProfitMandiBusinessException(ProfitMandiConstants.ID, createEmployeeDetailFormHRMS.getAuthId(),
209
					"Auth User not Exist");
210
		}
211
 
212
		return "response";
213
 
214
	}
215
 
216
	@RequestMapping(value = "/getEmployeeDetailsSubmit", method = RequestMethod.POST)
217
	public String getEmployeeDetailsSubmit(HttpServletRequest request,
218
			@RequestBody CreateEmployeeDetailFormHRMS createEmployeeDetailFormHRMS, Model model) throws Exception {
219
 
220
		LoginDetails loginDetails = cookiesProcessor.getCookiesObject(request);
221
		AuthUser authUser = authRepository.selectByEmailOrMobile(loginDetails.getEmailId());
222
		int id = authUser.getId();
223
 
224
		if (authUser != null) {
225
			EmployForm employForm = employFormRepository.selectByAuthId(authUser.getId());
226
			if (employForm != null) {
227
				employForm = new EmployForm();
228
			}
229
			employForm.setEmployeeName(createEmployeeDetailFormHRMS.getEmployeeName());
230
			employForm.setGender(createEmployeeDetailFormHRMS.getGender());
231
			employForm.setAuthId(authUser.getId());
232
			employFormRepository.persist(employForm);
233
 
234
			PersonalDetailsform personalDetailsform = personalDetailsformRepository.selectByAuthId(authUser.getId());
235
			if (personalDetailsform != null) {
236
				personalDetailsform = new PersonalDetailsform();
237
			}
238
 
239
			personalDetailsform.setAge(createEmployeeDetailFormHRMS.getAge());
240
			personalDetailsform.setAniversaryDate(createEmployeeDetailFormHRMS.getAniversaryDate());
241
			personalDetailsform.setBloodGroup(createEmployeeDetailFormHRMS.getBloodGroup());
242
			personalDetailsform.setDOB(createEmployeeDetailFormHRMS.getDOB());
243
			personalDetailsform.setMaritalStatus(createEmployeeDetailFormHRMS.getMaritalStatus());
244
			personalDetailsform.setAuthId(authUser.getId());
245
			personalDetailsformRepository.persist(personalDetailsform);
246
 
247
			AddressDetailsForm addressDetailsForm = addressDetailsFormRepository.selectByAuthId(authUser.getId());
248
			if (addressDetailsForm != null) {
249
				addressDetailsForm = new AddressDetailsForm();
250
			}
251
			addressDetailsForm.setLocalAddress(createEmployeeDetailFormHRMS.getLocalAddress());
252
			addressDetailsForm.setPermanentAdress(createEmployeeDetailFormHRMS.getPermanentAdress());
253
			addressDetailsForm.setAuthId(authUser.getId());
254
			addressDetailsFormRepository.persist(addressDetailsForm);
255
 
256
			FamilyMemberDetailsForm familyMemberDetailsForm = familyMemberDetailsFormRepository
257
					.selectByAuthId(authUser.getId());
258
			if (familyMemberDetailsForm != null) {
259
				familyMemberDetailsForm = new FamilyMemberDetailsForm();
260
			}
261
			familyMemberDetailsForm.setAuthId(authUser.getId());
262
			familyMemberDetailsForm.setBrotherFirst(createEmployeeDetailFormHRMS.getBrotherFirst());
263
			familyMemberDetailsForm.setBrotherSecond(createEmployeeDetailFormHRMS.getBrotherSecond());
264
			familyMemberDetailsForm.setDateOfBirthGuider(createEmployeeDetailFormHRMS.getDateOfBirthGuider());
265
			familyMemberDetailsForm.setDateOfBirthHusband(createEmployeeDetailFormHRMS.getDateOfBirthHusband());
266
			familyMemberDetailsForm.setDateofBirthWife(createEmployeeDetailFormHRMS.getDateofBirthWife());
267
			familyMemberDetailsForm.setDaughterDOB(createEmployeeDetailFormHRMS.getDoughterDOB());
268
 
269
			familyMemberDetailsForm.setDaughterName(createEmployeeDetailFormHRMS.getDaughterName());
270
			familyMemberDetailsForm.setFatherName(createEmployeeDetailFormHRMS.getFatherName());
271
			familyMemberDetailsForm.setHusbandName(createEmployeeDetailFormHRMS.getHusbandName());
272
			familyMemberDetailsForm.setMotherName(createEmployeeDetailFormHRMS.getMotherName());
273
			familyMemberDetailsForm.setSonDate(createEmployeeDetailFormHRMS.getSonDate());
274
			familyMemberDetailsForm.setSonName(createEmployeeDetailFormHRMS.getSonName());
275
			familyMemberDetailsForm.setWifeName(createEmployeeDetailFormHRMS.getWifeName());
276
			familyMemberDetailsFormRepository.persist(familyMemberDetailsForm);
277
 
278
			ContactDetailForm contactDetailForm = contactDetailFormRepository.selectByAuthId(authUser.getId());
279
			if (contactDetailForm != null) {
280
				contactDetailForm = new ContactDetailForm();
281
			}
282
			contactDetailForm.setAuthId(authUser.getId());
283
			contactDetailForm.setEmergencyContactNumber(createEmployeeDetailFormHRMS.getEmergencyContactNumber());
284
			contactDetailForm.setLandLineNumberLocal(createEmployeeDetailFormHRMS.getLandLineNumberLocal());
285
			contactDetailForm.setLandLineNumberPermanent(createEmployeeDetailFormHRMS.getLandLineNumberPermanent());
286
			contactDetailForm.setMobileNumber(createEmployeeDetailFormHRMS.getMobileNumber());
287
			contactDetailForm.setMobileNumberFamily(createEmployeeDetailFormHRMS.getMobileNumberFamily());
288
			contactDetailForm.setPersonalEmail(createEmployeeDetailFormHRMS.getPersonalEmail());
289
			contactDetailFormRepository.persist(contactDetailForm);
290
 
291
			WorkExperienceForm workExperienceForm = workExperienceFormRepository.selectByAuthId(authUser.getId());
292
 
293
			if (workExperienceForm != null) {
294
				workExperienceForm = new WorkExperienceForm();
295
			}
296
			workExperienceForm.setAuthId(authUser.getId());
297
			workExperienceForm.setEducationQualification(createEmployeeDetailFormHRMS.getEducationQualification());
298
			workExperienceForm.setExpFresher(createEmployeeDetailFormHRMS.getExpFresher());
299
			workExperienceForm.setExpMonth(createEmployeeDetailFormHRMS.getExpMonth());
300
			workExperienceForm.setExpYear(createEmployeeDetailFormHRMS.getExpYear());
301
			workExperienceForm.setLastDesignation(createEmployeeDetailFormHRMS.getLastDesignation());
302
			workExperienceForm.setOrganisationName(createEmployeeDetailFormHRMS.getOrganisationName());
303
			workExperienceForm.setReasonForLeaving(createEmployeeDetailFormHRMS.getReasonForLeaving());
304
			workExperienceForm.setTotalExpMonth(createEmployeeDetailFormHRMS.getExpMonth());
305
			workExperienceForm.setTotalExpYear(createEmployeeDetailFormHRMS.getExpYear());
306
 
307
			workExperienceFormRepository.persist(workExperienceForm);
308
 
309
			InsuranceDetailForm insuranceDetailForm = insuranceDetailFormRepository.selectByAuthId(authUser.getId());
310
			if (insuranceDetailForm != null) {
311
				insuranceDetailForm = new InsuranceDetailForm();
312
 
313
			}
314
 
315
			insuranceDetailForm.setAuthId(authUser.getId());
316
			insuranceDetailForm.setNomineeName(createEmployeeDetailFormHRMS.getNomineeName());
317
			insuranceDetailForm.setRelation(createEmployeeDetailFormHRMS.getRelation());
318
			insuranceDetailFormRepository.persist(insuranceDetailForm);
319
 
320
			BankDetailsForm bankDetailsForm = bankDetailsFormRepository.selectByAuthId(authUser.getId());
321
			if (bankDetailsForm != null) {
322
				bankDetailsForm = new BankDetailsForm();
323
			}
324
			bankDetailsForm.setAuthId(authUser.getId());
325
			bankDetailsForm.setBankAcNumber(createEmployeeDetailFormHRMS.getBankAcNumber());
326
			bankDetailsForm.setBankName(createEmployeeDetailFormHRMS.getBankName());
327
			bankDetailsForm.setEmployeeBankName(createEmployeeDetailFormHRMS.getEmployeeBankName());
328
			bankDetailsForm.setEsiNumber(createEmployeeDetailFormHRMS.getEsiNumber());
329
			bankDetailsForm.setIfscCode(createEmployeeDetailFormHRMS.getIfscCode());
330
			bankDetailsForm.setPersonalCompany(createEmployeeDetailFormHRMS.getPersonalCompany());
331
			bankDetailsForm.setPfNumber(createEmployeeDetailFormHRMS.getPfNumber());
332
			bankDetailsFormRepository.persist(bankDetailsForm);
333
 
334
			StatutoryDocsAndDate statutoryDocsAndDate = statutoryDocsAndDateRepository.selectByAuthId(authUser.getId());
335
			if (statutoryDocsAndDate != null) {
336
				statutoryDocsAndDate = new StatutoryDocsAndDate();
337
			}
338
			statutoryDocsAndDate.setAadharNumber(createEmployeeDetailFormHRMS.getAadharNumber());
339
			statutoryDocsAndDate.setAuthId(authUser.getId());
340
			statutoryDocsAndDate.setNoticePeriod(createEmployeeDetailFormHRMS.getNoticePeriod());
341
			statutoryDocsAndDate.setPanNumber(createEmployeeDetailFormHRMS.getPanNumber());
342
			statutoryDocsAndDate.setUanNumber(createEmployeeDetailFormHRMS.getUanNumber());
343
			statutoryDocsAndDateRepository.persist(statutoryDocsAndDate);
344
 
345
		} else {
346
			throw new ProfitMandiBusinessException(ProfitMandiConstants.ID, createEmployeeDetailFormHRMS.getAuthId(),
347
					"Auth User not Exist");
348
		}
349
 
350
		LOGGER.info("createEmployeeDetailFormHRMS" + createEmployeeDetailFormHRMS);
351
 
352
		return "employee-form";
353
 
354
	}
355
 
37405 amit 356
 
357
	/** State list for the form dropdowns, from inventory.statemaster - never hardcoded in the view. */
358
	private java.util.List<String> stateNames() {
359
		return stateRepository.selectAll().stream().map(com.spice.profitmandi.dao.entity.inventory.State::getName)
360
				.sorted().collect(java.util.stream.Collectors.toList());
361
	}
28128 tejbeer 362
}