300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Java项目:OA办公自动化系统设计和实现(java+springboot+freemarker+mysql+maven+mybatis+jpa)

Java项目:OA办公自动化系统设计和实现(java+springboot+freemarker+mysql+maven+mybatis+jpa)

时间:2018-12-21 22:40:27

相关推荐

Java项目:OA办公自动化系统设计和实现(java+springboot+freemarker+mysql+maven+mybatis+jpa)

源码获取:博客首页 "资源" 里下载!

java springbootOA办公自动化系统:

主要功能模块:系统、用户、角色、考勤、流程、公告、邮件、任务、日程、计划、文件、笔记、通讯录、讨论区等多个模块管理

使用Maven进行项目管理,基于springboot框架开发的项目,mysql底层数据库,前端采用freemarker模板引擎,Bootstrap作为前端UI框架,集成了jpa、mybatis等框架。

员工业务操作:

@Controller@RequestMapping("/")public class PossionController {@AutowiredPositionDao pdao;@AutowiredDeptDao ddao;@RequestMapping("positionmanage")public String positionmanage(Model model) {List<Position> positions = (List<Position>) pdao.findAll();model.addAttribute("positions",positions);return "user/positionmanage";}@RequestMapping(value = "positionedit" ,method = RequestMethod.GET)public String positioneditget(@RequestParam(value = "positionid",required=false) Long positionid,Model model){if(positionid!=null){Position position = pdao.findOne(positionid);System.out.println(position);Dept dept = ddao.findOne(position.getDeptid());model.addAttribute("positiondept",dept);model.addAttribute("position",position);}List<Dept> depts = (List<Dept>) ddao.findAll();model.addAttribute("depts", depts);return "user/positionedit";}@RequestMapping(value = "positionedit" ,method = RequestMethod.POST)public String positioneditpost(Position position,Model model){System.out.println(position);Position psition2 = pdao.save(position);if(psition2!=null){model.addAttribute("success",1);return "/positionmanage";}model.addAttribute("errormess","数据插入失败");return "user/positionedit";}@RequestMapping("removeposition")public String removeposition(@RequestParam("positionid") Long positionid,Model model){pdao.delete(positionid);model.addAttribute("success",1);return "/positionmanage";}}

部门管理控制器:

@Controller@RequestMapping("/")public class DeptController {@AutowiredDeptDao deptdao;@AutowiredUserDao udao;@AutowiredPositionDao pdao;/*** 第一次进入部门管理页面* @return*/@RequestMapping("deptmanage")public String deptmanage(Model model) {List<Dept> depts = (List<Dept>) deptdao.findAll();System.out.println(depts);model.addAttribute("depts",depts);return "user/deptmanage";}@RequestMapping(value = "deptedit" ,method = RequestMethod.POST)public String adddept(@Valid Dept dept,@RequestParam("xg") String xg,BindingResult br,Model model){System.out.println(br.hasErrors());System.out.println(br.getFieldError());if(!br.hasErrors()){System.out.println("没有错误");Dept adddept = deptdao.save(dept);if("add".equals(xg)){System.out.println("新增拉");Position jinli = new Position();jinli.setDeptid(adddept.getDeptId());jinli.setName("经理");Position wenyuan = new Position();wenyuan.setDeptid(adddept.getDeptId());wenyuan.setName("文员");pdao.save(jinli);pdao.save(wenyuan);}if(adddept!=null){System.out.println("插入成功");model.addAttribute("success",1);return "/deptmanage";}}System.out.println("有错误");model.addAttribute("errormess","错误!~");return "user/deptedit";}@RequestMapping(value = "deptedit" ,method = RequestMethod.GET)public String changedept(@RequestParam(value = "dept",required=false) Long deptId,Model model){if(deptId!=null){Dept dept = deptdao.findOne(deptId);model.addAttribute("dept",dept);}return "user/deptedit";}@RequestMapping("readdept")public String readdept(@RequestParam(value = "deptid") Long deptId,Model model){Dept dept = deptdao.findOne(deptId);User deptmanage = null;if(dept.getDeptmanager()!=null){deptmanage = udao.findOne(dept.getDeptmanager());model.addAttribute("deptmanage",deptmanage);}List<Dept> depts = (List<Dept>) deptdao.findAll();List<Position> positions = pdao.findByDeptidAndNameNotLike(1L, "%经理");System.out.println(deptmanage);List<User> formaluser = new ArrayList<>();List<User> deptusers = udao.findByDept(dept);for (User deptuser : deptusers) {Position position = deptuser.getPosition();System.out.println(deptuser.getRealName()+":"+position.getName());if(!position.getName().endsWith("经理")){formaluser.add(deptuser);}}System.out.println(deptusers);model.addAttribute("positions",positions);model.addAttribute("depts",depts);model.addAttribute("deptuser",formaluser);model.addAttribute("dept",dept);model.addAttribute("isread",1);return "user/deptread";}@RequestMapping("deptandpositionchange")public String deptandpositionchange(@RequestParam("positionid") Long positionid,@RequestParam("changedeptid") Long changedeptid,@RequestParam("userid") Long userid,@RequestParam("deptid") Long deptid,Model model){User user = udao.findOne(userid);Dept changedept = deptdao.findOne(changedeptid);Position position = pdao.findOne(positionid);user.setDept(changedept);user.setPosition(position);udao.save(user);System.out.println(deptid);model.addAttribute("deptid",deptid);return "/readdept";}@RequestMapping("deletdept")public String deletdept(@RequestParam("deletedeptid") Long deletedeptid){Dept dept = deptdao.findOne(deletedeptid);List<Position> ps = pdao.findByDeptid(deletedeptid);for (Position position : ps) {System.out.println(position);pdao.delete(position);}deptdao.delete(dept);return "/deptmanage";}@RequestMapping("deptmanagerchange")public String deptmanagerchange(@RequestParam(value="positionid",required=false) Long positionid,@RequestParam(value="changedeptid",required=false) Long changedeptid,@RequestParam(value="oldmanageid",required=false) Long oldmanageid,@RequestParam(value="newmanageid",required=false) Long newmanageid,@RequestParam("deptid") Long deptid,Model model){System.out.println("oldmanageid:"+oldmanageid);System.out.println("newmanageid:"+newmanageid);Dept deptnow = deptdao.findOne(deptid);if(oldmanageid!=null){User oldmanage = udao.findOne(oldmanageid);Position namage = oldmanage.getPosition();Dept changedept = deptdao.findOne(changedeptid);Position changeposition = pdao.findOne(positionid);oldmanage.setDept(changedept);oldmanage.setPosition(changeposition);udao.save(oldmanage);if(newmanageid!=null){User newmanage = udao.findOne(newmanageid);newmanage.setPosition(namage);deptnow.setDeptmanager(newmanageid);deptdao.save(deptnow);udao.save(newmanage);}else{deptnow.setDeptmanager(null);deptdao.save(deptnow);}}else{User newmanage = udao.findOne(newmanageid);Position manage = pdao.findByDeptidAndNameLike(deptid, "%经理").get(0);newmanage.setPosition(manage);deptnow.setDeptmanager(newmanageid);deptdao.save(deptnow);udao.save(newmanage);}model.addAttribute("deptid",deptid);return "/readdept";}}

状态表格业务控制器:

@Controller@RequestMapping("/")public class StatusSysController {Logger log=LoggerFactory.getLogger(getClass());@Autowiredprivate StatusDao statusDao;@Autowiredprivate StatusService statusService;/*** 状态表格界面* @param req* @return*/@RequestMapping("testsysstatus")public String testsysstatus(HttpServletRequest req){Iterable<SystemStatusList> statusList=statusDao.findAll();req.setAttribute("statusList", statusList);return "systemcontrol/statusmanage";}/*** 查找状态表格* @param req* @return*/@RequestMapping("statustable")public String statusTable(HttpServletRequest req){if(!StringUtils.isEmpty(req.getParameter("name"))){String name="%"+req.getParameter("name")+"%";req.setAttribute("statusList",statusDao.findByStatusNameLikeOrStatusModelLike(name, name));}else{Iterable<SystemStatusList> statusList=statusDao.findAll();req.setAttribute("statusList", statusList);}return "systemcontrol/statustable";}/*** 状态编辑界面* @param req* @return*/@RequestMapping("statusedit")public String typeEdit(HttpServletRequest req){if(!StringUtils.isEmpty(req.getParameter("statusid"))){Long statusid=Long.parseLong(req.getParameter("statusid"));SystemStatusList statusList=statusDao.findOne(statusid);req.setAttribute("status", statusList);HttpSession session=req.getSession();session.setAttribute("statusid", statusid);}return "systemcontrol/statusedit";}/*** 系统管理表单验证* * @param req* @param menu* @param br* 后台校验表单数据,不通过则回填数据,显示错误信息;通过则直接执行业务,例如新增、编辑等;* @return*/@RequestMapping("statuscheck")public String testMess(HttpServletRequest req, @Valid SystemStatusList menu, BindingResult br) {req.setAttribute("menuObj", menu);System.out.println(menu);// 这里返回ResultVO对象,如果校验通过,ResultEnum.SUCCESS.getCode()返回的值为200;否则就是没有通过;ResultVO res = BindingResultVOUtil.hasErrors(br);// 校验失败if (!ResultEnum.SUCCESS.getCode().equals(res.getCode())) {List<Object> list = new MapToList<>().mapToList(res.getData());req.setAttribute("errormess", list.get(0).toString());// 代码调试阶段,下面是错误的相关信息;System.out.println("list错误的实体类信息:" + menu);System.out.println("list错误详情:" + list);System.out.println("list错误第一条:" + list.get(0));System.out.println("啊啊啊错误的信息——:" + list.get(0).toString());// 下面的info信息是打印出详细的信息log.info("getData:{}", res.getData());log.info("getCode:{}", res.getCode());log.info("getMsg:{}", res.getMsg());}// 校验通过,下面写自己的逻辑业务else {HttpSession session = req.getSession();// 判断是否从编辑界面进来的,前面有"session.setAttribute("getId",getId);",在这里获取,并remove掉;if (!StringUtils.isEmpty(session.getAttribute("statusid"))) {Long menuId = (Long) session.getAttribute("statusid"); // 获取进入编辑界面的menuID值menu.setStatusId(menuId);session.removeAttribute("statusid");}// 执行业务代码statusService.save(menu);System.out.println("此操作是正确的");req.setAttribute("success", "后台验证成功");}System.out.println("是否进入最后的实体类信息:" + menu);return "systemcontrol/statusedit";}/*** 删除方法*/@RequestMapping("deletestatus")public String deleteStatus(HttpServletRequest req){Long statusId=Long.parseLong(req.getParameter("id"));statusService.deleteStatus(statusId);return "forward:/testsysstatus";}}

源码获取:博客首页 "资源" 里下载!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。