package com.library.controller; import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.List; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import com.library.model.Book; import com.library.model.Bookborrow; import com.library.model.Booktype; import com.library.model.Borrow; import com.library.model.User; import com.library.service.BookBorrowService; import com.library.service.BookService; import com.library.service.BookTypeService; import com.library.service.UserService; /** * 用户 */ @Controller @Scope(value = "prototype") public class UserController { @Autowired private UserService userService; @Autowired private BookService bookService; @Autowired private BookTypeService bookTypeService; @Autowired private BookBorrowService bookBorrowService; @RequestMapping("user_home") public String userHome(HttpServletRequest request) { List<User> users = userService.getUserAll(null); List<Book> books = bookService.getBookAll(null, null); request.setAttribute("users", users); request.setAttribute("books", books); return "user/user_home"; } @RequestMapping("user_book_list") public String userBookList(HttpServletRequest request) { String key = request.getParameter("key"); String type = request.getParameter("type"); if (key != null && !key.isEmpty()) { request.setAttribute("key", key); } if (type != null && !type.isEmpty()) { request.setAttribute("type", type); } List<Book> books = bookService.getBookAll(key, type); List<Booktype> booktypes = bookTypeService.getBooktypeAll(); request.setAttribute("books", books); request.setAttribute("booktypes", booktypes); return "user/user_book_list"; } @RequestMapping("user_book_details") public String userBookDetails(HttpServletRequest request) { String id = request.getParameter("id"); if (id != null && !id.isEmpty()) { Book book = bookService.getBook(Integer.valueOf(id)); if (book != null) { List<Booktype> booktypes = bookTypeService.getBooktypeAll(); request.setAttribute("book", book); request.setAttribute("booktypes", booktypes); return "user/user_book_details"; } } List<Book> books = bookService.getBookAll(null, null); List<Booktype> booktypes = bookTypeService.getBooktypeAll(); request.setAttribute("books", books); request.setAttribute("booktypes", booktypes); return "user/user_book_list"; } @RequestMapping("user_book_borrow") public String userBookBorrow(HttpServletRequest request, HttpSession session) { String id = request.getParameter("id"); if (id != null && !id.isEmpty()) { Book book = bookService.getBook(Integer.valueOf(id)); if (book != null) { User user = (User) session.getAttribute("user"); Bookborrow bookborrow = new Bookborrow(); bookborrow.setUserid(user.getId()); bookborrow.setBookid(book.getId()); bookBorrowService.addBookborrow(bookborrow); int surplus = Integer.valueOf(book.getSurplus()) - 1; int borrow = Integer.valueOf(book.getBorrow()) + 1; book.setSurplus(String.valueOf(surplus)); book.setBorrow(String.valueOf(borrow)); bookService.updateBook(book); return "redirect:user_borrow.cc"; } } List<Book> books = bookService.getBookAll(null, null); List<Booktype> booktypes = bookTypeService.getBooktypeAll(); request.setAttribute("books", books); request.setAttribute("booktypes", booktypes); return "user/user_book_list"; } @RequestMapping("user_borrow") public String userDcShow(HttpServletRequest request, HttpSession session) { List<Booktype> booktypes = bookTypeService.getBooktypeAll(); request.setAttribute("booktypes", booktypes); User user = (User) session.getAttribute("user"); if (user != null) { List<Bookborrow> bookborrows = bookBorrowService.getBookborrowByUserId(user.getId()); List<Borrow> borrows = new ArrayList<>(); for (Bookborrow bookborrow : bookborrows) { Borrow borrow = new Borrow(); Book book = bookService.getBook(bookborrow.getBookid()); if (book == null) { continue; } borrow.setId(bookborrow.getId()); borrow.setUsername(user.getUsername()); borrow.setTelephone(user.getTelephone()); borrow.setBookname(book.getBookname()); borrow.setAuthor(book.getAuthor()); borrow.setType(book.getType()); borrow.setPicture(book.getPicture()); borrows.add(borrow); } request.setAttribute("borrows", borrows); return "user/user_borrow"; } List<Book> books = bookService.getBookAll(null, null); request.setAttribute("books", books); return "user/user_book_list"; } @RequestMapping("user_borrow_details") public String userBorrowDetails(HttpServletRequest request, HttpSession session) { String id = request.getParameter("id"); if (id != null && !id.isEmpty()) { Bookborrow bookborrow = bookBorrowService.getBookborrow(Integer.valueOf(id)); if (bookborrow != null) { Book book = bookService.getBook(bookborrow.getBookid()); if (book != null) { request.setAttribute("book", book); List<Booktype> booktypes = bookTypeService.getBooktypeAll(); request.setAttribute("booktypes", booktypes); return "user/user_borrow_details"; } } } return "redirect:user_book_list.cc"; } @RequestMapping("user_info") public String userInfo(HttpServletRequest request, HttpSession session) { User user = (User) session.getAttribute("user"); request.setAttribute("example", user); return "user/user_info"; } @RequestMapping("user_info_edit") public String userInfoEdit(HttpServletRequest request, HttpSession session) { User user = (User) session.getAttribute("user"); request.setAttribute("example", user); return "user/user_info_edit"; } @RequestMapping("user_info_update") public String userInfoUpdate(HttpServletRequest request, HttpSession session) { String sex = request.getParameter("sex"); String telephone = request.getParameter("telephone"); String address = request.getParameter("address"); if (telephone == null || telephone.isEmpty()) { return "redirect:user_info_edit.cc"; } User user = (User) session.getAttribute("user"); MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) (request); MultipartFile file = multipartRequest.getFile("file"); if (!file.getOriginalFilename().isEmpty()) { String path = request.getServletContext().getRealPath("/") + "page/static/images/touxiang/"; String name = String.valueOf(System.currentTimeMillis() + "_" + file.getOriginalFilename()); File destFile = new File(path, name); try { file.transferTo(destFile); } catch (IllegalStateException | IOException e) { e.printStackTrace(); } user.setPortrait("images/touxiang/" + name); } user.setSex(sex); user.setTelephone(telephone); user.setAddress(address); userService.updateUser(user); session.setAttribute("user", user); return "redirect:user_info.cc"; } }

SX520886 LV6
4月24日
dsffssff LV4
2024年12月25日
zolscy LV24
2024年11月24日
angaochong LV5
2024年10月10日
Darchry LV2
2024年6月29日
lilitu LV6
2024年5月30日
2017143155 LV12
2024年5月13日
pangzhihui LV14
2024年4月11日
weilaizhisheng LV21
2024年3月21日
uid0901 LV2
2024年3月12日