package com.employee.controllers;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import javax.servlet.http. HttpServletRequest;
import javax.servlet.http. HttpServletResponse;
import javax.validation.Valid;
import org.apache.log4j.Logger;
import org.springframework.beans. factory.annotation.Autowired;
import org.springframework. stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework. validation.BindingResult;
import org.springframework.web.bind. annotation.ModelAttribute;
import org.springframework.web.bind. annotation.PathVariable;
import org.springframework.web.bind. annotation.RequestMapping;
import org.springframework.web.bind. annotation.RequestMethod;
import org.springframework.web. servlet.ModelAndView;
import com.employee.beans. EmployeeBean;
import com.employee.beans. EmployeeHistBean;
import com.employee.dao.EmpDao;
import com.employee.validator. EmployeeValidator;
/**
* @author Fredrik
*
*/
@Controller
public class EmpSearchController {
final static Logger logger = Logger.getLogger( EmpSearchController.class);
@Autowired
EmpDao dao;// will inject dao from xml file
// @Autowired
// EmployeeValidator employeeValidator;
//method to View Employee List page
@RequestMapping(value = "/empsearch", method = RequestMethod.POST)
protected ModelAndView empSearch(@ModelAttribute(" emp") EmployeeBean emp, HttpServletRequest request,
HttpServletResponse response, Model m) {
ModelAndView model = new ModelAndView("empsearch");
try {
List<EmployeeBean> empList = dao.searcheEmployee(emp);
logger.info("empList**" + empList.size());
m.addAttribute("empList", empList);
if (empList.size() == 0) {
request.setAttribute("no_ records", "Sorry, employee record could not be found!!");
}
} catch (Exception e) {
logger.info("Exception in empSearch method");
logger.error(e.getMessage());
}
return model;
}
/**
* @param emp
* @param request
* @param response
* @param m
* @return
*/
@RequestMapping(value = "/csvemployee", method = RequestMethod.GET)
protected ModelAndView csvemployee(@ModelAttribute(" emp") EmployeeBean emp, HttpServletRequest request,
HttpServletResponse response, Model m) {
boolean isCsvFile = false;
ModelAndView model = new ModelAndView("empsearch");
try {
isCsvFile = dao.downloadCsv(emp);
logger.info("isCsvFile" + isCsvFile);
m.addAttribute("emp", new EmployeeBean());
} catch (Exception e) {
logger.info("Exception in csvemployee method");
logger.error(e.getMessage());
}
return model;
}
//method to redirect Add new employee page
@RequestMapping(value = "/addemployee", method = RequestMethod.GET)
protected ModelAndView addemployee(@ModelAttribute(" emp") EmployeeBean emp, HttpServletRequest request,
HttpServletResponse response, Model m) {
logger.info("::in add employee");
m.addAttribute("emp", new EmployeeBean());
ModelAndView model = new ModelAndView("addemployee");
return model;
}
//method to save record from add new employee page
/**
* @param emp
* @param bindingResult
* @param m
* @param request
* @return
*/
@RequestMapping(value = "/save", method = RequestMethod.POST)
protected String save(@Valid @ModelAttribute("emp") EmployeeBean emp, BindingResult bindingResult, Model m,HttpServletRequest request) {
System.out.println("in save");
if (bindingResult.hasErrors()) {
System.out.println(" bindingResult"+bindingResult);
System.out.println("in error");
m.addAttribute("emp", emp);
return "addemployee";
}
try {
System.out.println("in save try");
int saved = dao.save(emp);
System.out.println("saved**"+ saved);
if (saved >= 1) {
request.setAttribute("success_ message", "Employee record has been saved successfully");
} else {
request.setAttribute("error_ message", "Server error has encountered, Failed to save the record");
}
} catch (Exception e) {
logger.info("Exception in save method");
logger.error(e.getMessage());
}
return "addemployee";
}
//method to redirect Employee list page on click of cancel butten
// @RequestMapping(params = "cancel")
// protected String cancel() {
// System.out.println("in cancel");
// return "redirect:/";
// }
// method to edit employee record
@RequestMapping(value = "/editemp/{id}", method = RequestMethod.GET)
public String editEmployee(@ModelAttribute(" emp") EmployeeBean emp, @PathVariable int id, Model m, HttpServletRequest request,
HttpServletResponse response) {
emp = dao.getEmployeeById(id);
m.addAttribute("emp", emp);
System.out.println("emp"+emp);
return "editemployee";
}
//method to save edited record
@RequestMapping(value = "/editsave", method = RequestMethod.POST)
protected String editsave(@Valid @ModelAttribute("emp") EmployeeBean emp, BindingResult br, Model m,
HttpServletRequest request, HttpServletResponse response) {
logger.info("in editsave");
if (br.hasErrors()) {
System.out.println("br"+br);
m.addAttribute("command", emp);
m.addAttribute("error", "true");
return "editemployee";
} else {
System.out.println("in save edit");
int saved = dao.saveEdit(emp);
if (saved >= 1) {
logger.info("saved::" + saved);
request.setAttribute("success_ message", "Employee record has been saved successfully");
} else {
System.out.println("saved::" + saved);
request.setAttribute("error_ message", "Server error has encountered, Failed to save the record");
}
// m.addAttribute("command", dao.getEmployeeById(emp. getEmp_id()));
m.addAttribute("command", emp);
return "editemployee";
}
}
//method to delete employee record
@RequestMapping(value = "/deleteemp/{id}", method = RequestMethod.GET)
public String deleteemp(@PathVariable int id, Model m, HttpServletRequest request) {
int deleted = dao.delete(id);
if (deleted >= 1) {
logger.info("deleted::" + deleted);
request.setAttribute("delete_ message", "Employee record has been deleted successfully");
}
return "empsearch";
}
//method to view employee history
@RequestMapping(value = "/histemp/{id}", method = RequestMethod.GET)
protected ModelAndView histemp(@PathVariable int id, @ModelAttribute("emp") EmployeeHistBean emp,
HttpServletRequest request, HttpServletResponse response, Model m) {
logger.info("in Employee History");
ModelAndView model = new ModelAndView("employeehistory" );
String empName = null;
List<EmployeeHistBean> empHistList = dao.searcheEmployeeHist(id);
logger.info("empHistList**" + empHistList.size());
for (EmployeeHistBean item : empHistList) {
empName = item.getEmp_name();
}
m.addAttribute(" empNameFromList", empName);
m.addAttribute("empid", id);
m.addAttribute("empHistList", empHistList);
return model;
}
@ModelAttribute("empLevel")
public List<String> getempLevel() {
List<String> empLevel = new ArrayList<String>();
empLevel.add("7");
empLevel.add("8");
empLevel.add("9");
empLevel.add("10");
empLevel.add("11");
empLevel.add("12");
empLevel.add("13");
return empLevel;
}
_--------------------------
@ModelAttribute("bloodGroup")
public Map<String, String> getbloodGroup() {
Map<String, String> bloodGroup = new TreeMap<String, String>();
bloodGroup.put("A+", "A+");
bloodGroup.put("A-", "A-");
bloodGroup.put("B+", "B+");
bloodGroup.put("B-", "B-");
bloodGroup.put("O+", "O+");
bloodGroup.put("O-", "O-");
bloodGroup.put("AB+", "AB+");
bloodGroup.put("AB-", "AB-");
return bloodGroup;
}
@ModelAttribute("gender")
public Map<String, String> getGender() {
Map<String, String> gender = new TreeMap<String, String>();
gender.put("Male", "Male");
gender.put("Female", "Female");
gender.put("ND", "ND");
return gender;
}
}
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import javax.servlet.http.
import javax.servlet.http.
import javax.validation.Valid;
import org.apache.log4j.Logger;
import org.springframework.beans.
import org.springframework.
import org.springframework.ui.Model;
import org.springframework.
import org.springframework.web.bind.
import org.springframework.web.bind.
import org.springframework.web.bind.
import org.springframework.web.bind.
import org.springframework.web.
import com.employee.beans.
import com.employee.beans.
import com.employee.dao.EmpDao;
import com.employee.validator.
/**
* @author Fredrik
*
*/
@Controller
public class EmpSearchController {
final static Logger logger = Logger.getLogger(
@Autowired
EmpDao dao;// will inject dao from xml file
// @Autowired
// EmployeeValidator employeeValidator;
//method to View Employee List page
@RequestMapping(value = "/empsearch", method = RequestMethod.POST)
protected ModelAndView empSearch(@ModelAttribute("
HttpServletResponse response, Model m) {
ModelAndView model = new ModelAndView("empsearch");
try {
List<EmployeeBean> empList = dao.searcheEmployee(emp);
logger.info("empList**" + empList.size());
m.addAttribute("empList", empList);
if (empList.size() == 0) {
request.setAttribute("no_
}
} catch (Exception e) {
logger.info("Exception in empSearch method");
logger.error(e.getMessage());
}
return model;
}
/**
* @param emp
* @param request
* @param response
* @param m
* @return
*/
@RequestMapping(value = "/csvemployee", method = RequestMethod.GET)
protected ModelAndView csvemployee(@ModelAttribute("
HttpServletResponse response, Model m) {
boolean isCsvFile = false;
ModelAndView model = new ModelAndView("empsearch");
try {
isCsvFile = dao.downloadCsv(emp);
logger.info("isCsvFile" + isCsvFile);
m.addAttribute("emp", new EmployeeBean());
} catch (Exception e) {
logger.info("Exception in csvemployee method");
logger.error(e.getMessage());
}
return model;
}
//method to redirect Add new employee page
@RequestMapping(value = "/addemployee", method = RequestMethod.GET)
protected ModelAndView addemployee(@ModelAttribute("
HttpServletResponse response, Model m) {
logger.info("::in add employee");
m.addAttribute("emp", new EmployeeBean());
ModelAndView model = new ModelAndView("addemployee");
return model;
}
//method to save record from add new employee page
/**
* @param emp
* @param bindingResult
* @param m
* @param request
* @return
*/
@RequestMapping(value = "/save", method = RequestMethod.POST)
protected String save(@Valid @ModelAttribute("emp") EmployeeBean emp, BindingResult bindingResult, Model m,HttpServletRequest request) {
System.out.println("in save");
if (bindingResult.hasErrors()) {
System.out.println("
System.out.println("in error");
m.addAttribute("emp", emp);
return "addemployee";
}
try {
System.out.println("in save try");
int saved = dao.save(emp);
System.out.println("saved**"+
if (saved >= 1) {
request.setAttribute("success_
} else {
request.setAttribute("error_
}
} catch (Exception e) {
logger.info("Exception in save method");
logger.error(e.getMessage());
}
return "addemployee";
}
//method to redirect Employee list page on click of cancel butten
// @RequestMapping(params = "cancel")
// protected String cancel() {
// System.out.println("in cancel");
// return "redirect:/";
// }
// method to edit employee record
@RequestMapping(value = "/editemp/{id}", method = RequestMethod.GET)
public String editEmployee(@ModelAttribute("
HttpServletResponse response) {
emp = dao.getEmployeeById(id);
m.addAttribute("emp", emp);
System.out.println("emp"+emp);
return "editemployee";
}
//method to save edited record
@RequestMapping(value = "/editsave", method = RequestMethod.POST)
protected String editsave(@Valid @ModelAttribute("emp") EmployeeBean emp, BindingResult br, Model m,
HttpServletRequest request, HttpServletResponse response) {
logger.info("in editsave");
if (br.hasErrors()) {
System.out.println("br"+br);
m.addAttribute("command", emp);
m.addAttribute("error", "true");
return "editemployee";
} else {
System.out.println("in save edit");
int saved = dao.saveEdit(emp);
if (saved >= 1) {
logger.info("saved::" + saved);
request.setAttribute("success_
} else {
System.out.println("saved::" + saved);
request.setAttribute("error_
}
// m.addAttribute("command", dao.getEmployeeById(emp.
m.addAttribute("command", emp);
return "editemployee";
}
}
//method to delete employee record
@RequestMapping(value = "/deleteemp/{id}", method = RequestMethod.GET)
public String deleteemp(@PathVariable int id, Model m, HttpServletRequest request) {
int deleted = dao.delete(id);
if (deleted >= 1) {
logger.info("deleted::" + deleted);
request.setAttribute("delete_
}
return "empsearch";
}
//method to view employee history
@RequestMapping(value = "/histemp/{id}", method = RequestMethod.GET)
protected ModelAndView histemp(@PathVariable int id, @ModelAttribute("emp") EmployeeHistBean emp,
HttpServletRequest request, HttpServletResponse response, Model m) {
logger.info("in Employee History");
ModelAndView model = new ModelAndView("employeehistory"
String empName = null;
List<EmployeeHistBean> empHistList = dao.searcheEmployeeHist(id);
logger.info("empHistList**" + empHistList.size());
for (EmployeeHistBean item : empHistList) {
empName = item.getEmp_name();
}
m.addAttribute("
m.addAttribute("empid", id);
m.addAttribute("empHistList", empHistList);
return model;
}
@ModelAttribute("empLevel")
public List<String> getempLevel() {
List<String> empLevel = new ArrayList<String>();
empLevel.add("7");
empLevel.add("8");
empLevel.add("9");
empLevel.add("10");
empLevel.add("11");
empLevel.add("12");
empLevel.add("13");
return empLevel;
}
_--------------------------
@ModelAttribute("bloodGroup")
public Map<String, String> getbloodGroup() {
Map<String, String> bloodGroup = new TreeMap<String, String>();
bloodGroup.put("A+", "A+");
bloodGroup.put("A-", "A-");
bloodGroup.put("B+", "B+");
bloodGroup.put("B-", "B-");
bloodGroup.put("O+", "O+");
bloodGroup.put("O-", "O-");
bloodGroup.put("AB+", "AB+");
bloodGroup.put("AB-", "AB-");
return bloodGroup;
}
@ModelAttribute("gender")
public Map<String, String> getGender() {
Map<String, String> gender = new TreeMap<String, String>();
gender.put("Male", "Male");
gender.put("Female", "Female");
gender.put("ND", "ND");
return gender;
}
}
No comments:
Post a Comment