Jdk1.8 + Tomcat8.5 + mysql + Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)
JSP + Servlert + html+ css + JavaScript + JQuery + Ajax 等等;
/**
* 个人中心Controller
*/
@Controller
public class UserInforController {
@Autowired
private UserInforServiceImpl userInforService = null;
/**
* 修改密码操作
* @param oldPassword
* @param newPassword
* @param rePassword
* @param httpSession
* @return
*/
@RequestMapping("changePassword.do")
@ResponseBody
public Map changePassword(String oldPassword, String newPassword,
String rePassword, HttpSession httpSession){
HashMap map = new HashMap();
if (newPassword.equals(rePassword)){
SystemManager admin = (SystemManager) httpSession.getAttribute("admin");
String encodeByMD5 = MD5Utils.encodeByMD5(oldPassword);
if (encodeByMD5.equals(admin.getSmPassword())){
String newPasswords = MD5Utils.encodeByMD5(newPassword);
admin.setSmPassword(newPasswords);
userInforService.updateSystemManagePassword(admin.getSmId(),admin);
map.put("type","success");
map.put("msg","密码修改成功");
return map;
}else{
map.put("type","error");
map.put("msg","原密码错误");
return map;
}
}else{
map.put("type","error");
map.put("msg","两次密码不一致");
return map;
}
}
/**
* 员工修改个人密码
* @param oldPassword
* @param newPassword
* @param rePassword
* @param httpSession
* @return
*/
@RequestMapping("changeEmployeePassword.do")
@ResponseBody
public Map changeEmployeePassword(String oldPassword, String newPassword,
String rePassword, HttpSession httpSession){
HashMap map = new HashMap();
if (newPassword.equals(rePassword)){
Integer eid = (Integer) httpSession.getAttribute("employeeId");
try {
userInforService.updateEmployeePassword(eid, oldPassword, newPassword);
map.put("type","success");
map.put("msg","密码修改成功");
return map;
} catch (CustomException e) {
map.put("type","error");
map.put("msg","原密码错误");
return map;
}
}else{
map.put("type","error");
map.put("msg","两次密码不一致");
return map;
}
}
/**
* 查看个人信息
* @param httpSession
* @return
*/
@RequestMapping("inforEmployee.do")
public @ResponseBody EmployeeCustomVo getInforEmployee(HttpSession httpSession){
Integer id = (Integer) httpSession.getAttribute("employeeId");
EmployeeCustomVo employeeCustomVo = userInforService.getInforEmployee(id);
return employeeCustomVo;
}
/**
* 修改个人信息
* @param httpSession
* @param employee
* @return
*/
@ResponseBody
@RequestMapping("updateInforEmployee.do")
public Message updateInforEmployee(HttpSession httpSession, Employee employee){
Integer id = (Integer) httpSession.getAttribute("employeeId");
employee.seteId(id);
if(userInforService.updateEmploueeById(id,employee)<=0) {
return Message.error("修改信息失败");
}
return Message.success();
}
/**
* 个人工资信息
* @param pageNum
* @param limit
* @param year
* @param httpSession
* @return
* @throws Exception
*/
@RequestMapping("employeeSalaryList.do")
@ResponseBody
public EmployeeSalaryVO findSelective(
@RequestParam(value="page", defaultValue="1")int pageNum,
@RequestParam(value="limit", defaultValue="10") int limit,
@RequestParam(value="year", defaultValue="1") String year,
HttpSession httpSession) throws Exception {
Integer eId = (Integer) httpSession.getAttribute("employeeId");
//pageNum:起始页面 pageSize:每页的大小
PageHelper.startPage(pageNum,limit);
//查找条件,一定要紧跟在startPage后
List salaryList = userInforService.getEmployeeSalaryList(eId, year);
PageInfo pageResult = new PageInfo(salaryList);
//设置前台需要的数据
EmployeeSalaryVO employeeSalaryVO = new EmployeeSalaryVO();
employeeSalaryVO.setCode(0);
employeeSalaryVO.setMsg("");
employeeSalaryVO.setCount((int) pageResult.getTotal());
employeeSalaryVO.setData(pageResult.getList());
return employeeSalaryVO;
}
}
/**
* @Author: admin
* @Description: 管理员和员工登陆控制
**/
@Controller
public class LoginController {
@Autowired
private LoginServiceImpl loginService = null;
/**
* @Author: admin
* @Description: 验证码变更
* @Date: 14:33 2021/10/5
* @Param: [request, response]
* @Return: void
**/
@RequestMapping(value = "/changeCode.do")
@ResponseBody
public void getIdentifyingCode(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
// 验证码存储在session的identifyingCode,属性中
CaptchaUtil.outputCaptcha(request, response);
}
// 获取员工登陆界面
@RequestMapping("/")
public String getLoginPage(){
return "employee/login.html";
}
// 获取管理员登陆界面
@RequestMapping("/admin.do")
public String getAdminLoginPage(HttpServletRequest request){
String realPath = request.getServletContext().getRealPath("/");
request.getSession().setAttribute("realPath", realPath);
return "admin/adminLogin.html";
}
/**
* 员工登录操作
* @param model
* @param httpSession
* @param username
* @param password
* @param identifyingcode
* @return
*/
@RequestMapping(value = "/employeeLogin.do")
@ResponseBody
public Message employeeLogin(HttpSession httpSession, String username,
String password, String identifyingcode)
{
if(StringUtils.isEmpty(username)) {
return Message.error("请填写工号");
}
if(StringUtils.isEmpty(password)) {
return Message.error("请填写密码");
}
if(StringUtils.isEmpty(identifyingcode)) {
return Message.error("请填写验证码");
}
String code = (String) httpSession.getAttribute("identifyingCode");
if(!identifyingcode.equalsIgnoreCase(code)){
return Message.error("验证码错误");
}
Employee employee = loginService.findEmployeeByIdAndPassword(username, password);
if(employee==null) {
return Message.error("工号或密码错误");
}
httpSession.setAttribute("employeeId",employee.geteId());
return Message.success("员工登录成功");
}
@RequestMapping(value = "/loginSuccess.do")
public String loginSucceses(Model model) throws Exception
{
return "employee/index.html";
}
/**
* 管理员登录操作
* @param model
* @param httpSession
* @param username
* @param password
* @param identifyingcode
* @return
*/
@RequestMapping(value = "/adminLogin.do")
@ResponseBody
public Message adminLogin(HttpSession httpSession, String username,
String password, String identifyingcode)
{
if(StringUtils.isEmpty(username)) {
return Message.error("请填写账号");
}
if(StringUtils.isEmpty(password)) {
return Message.error("请填写密码");
}
if(StringUtils.isEmpty(identifyingcode)) {
return Message.error("请填写验证码");
}
String code = (String) httpSession.getAttribute("identifyingCode");
if(identifyingcode.equalsIgnoreCase(code)){
SystemManager manager = loginService.findSystemManagerByIdAndPassword(username, password);
if(manager==null) {
return Message.error("账号或密码错误");
}
// 保存到session
httpSession.setAttribute("admin",manager);
return Message.success("登录成功");
}else {
return Message.error("验证码错误");
}
}
@RequestMapping(value = "/getAdminAccount.do")
@ResponseBody
public String getAdminAccount(HttpSession httpSession){
SystemManager systemManager = (SystemManager) httpSession.getAttribute("admin");
// SystemManager manager = loginService.findSystemManagerById(id);
return systemManager.getSmAccount();
}
@RequestMapping(value = "/getEmployeeAccount.do")
@ResponseBody
public Map getEmployeeAccount(HttpSession httpSession){
Integer id = (Integer) httpSession.getAttribute("employeeId");
Employee employee = loginService.findEmployeeById(id);
HashMap map = new HashMap();
map.put("account",employee.geteAccount());
map.put("name",employee.geteName());
return map;
}
@RequestMapping(value = "/logout.do")
public String logout(HttpSession httpSession){
httpSession.removeAttribute("employeeId");
return "redirect:/";
}
@RequestMapping(value = "/logoutAdmin.do")
public String logoutAdmin(HttpSession httpSession){
httpSession.removeAttribute("admin");
return "redirect:/admin.do";
}
}
/**
* 用户管理操作
*/
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
/**
* 用户添加页面
* @return
*/
@GetMapping("/add")
public String create() {
return "user/add";
}
/**
* 用户添加操作
* @param user
* @return
*/
@PostMapping("/add")
@ResponseBody
public Map add(@RequestBody User user) {
if(StringUtils.isEmpty(user.getUserName())){
return MapControl.getInstance().error("请填写用户名").getMap();
}
if(StringUtils.isEmpty(user.getName())){
return MapControl.getInstance().error("请填写名称").getMap();
}
if(StringUtils.isEmpty(user.getUserPwd())){
return MapControl.getInstance().error("请填写密码").getMap();
}
int result = userService.create(user);
if (result <= 0) {
return MapControl.getInstance().error().getMap();
}
return MapControl.getInstance().success().getMap();
}
/**
* 根据id删除
* @param id
* @return
*/
@PostMapping("/delete/{id}")
@ResponseBody
public Map delete(@PathVariable("id") Integer id) {
int result = userService.delete(id);
if (result <= 0) {
return MapControl.getInstance().error().getMap();
}
return MapControl.getInstance().success().getMap();
}
//批量删除
@PostMapping("/delete")
@ResponseBody
public Map delete(String ids) {
int result = userService.delete(ids);
if (result <= 0) {
return MapControl.getInstance().error().getMap();
}
return MapControl.getInstance().success().getMap();
}
/**
* 编辑用户信息操作
* @param user
* @return
*/
@PostMapping("/edit")
@ResponseBody
public Map edit(@RequestBody User user) {
if(StringUtils.isEmpty(user.getUserName())){
return MapControl.getInstance().error("请填写用户名").getMap();
}
if(StringUtils.isEmpty(user.getName())){
return MapControl.getInstance().error("请填写名称").getMap();
}
if(StringUtils.isEmpty(user.getUserPwd())){
return MapControl.getInstance().error("请填写密码").getMap();
}
int result = userService.update(user);
if (result <= 0) {
return MapControl.getInstance().error().getMap();
}
return MapControl.getInstance().success().getMap();
}
/**
* 根据id查询,跳转修改页面
* @param id
* @param modelMap
* @return
*/
@GetMapping("/edit/{id}")
public String edit(@PathVariable("id") Integer id, ModelMap modelMap) {
User user = userService.detail(id);
modelMap.addAttribute("user", user);
return "user/edit";
}
//查询所有
@PostMapping("/query")
@ResponseBody
public Map query(@RequestBody User user) {
List list = userService.query(user);
Integer count = userService.count(user);
return MapControl.getInstance().success().page(list, count).getMap();
}
//跳转列表页面
@GetMapping("/list")
public String list() {
return "user/list";
}
}