Subversion Repositories SmartDukaan

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

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