基于javaweb+mysql的ssm+maven教材管理系统(java+ssm+jsp+mysql+maven)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的SSM+Maven教材管理系统(java+ssm+jsp+mysql+maven)
一、项目简述
功能包括: 管理员可以增删改查教材、教材商、入库教材、用户(用 户包括学生和教师)可以对教材商、教材进行。xcel的导入 导出操作。教U阿以领取入库的教材,可以退还教材。学 生只能在对应的教师那里领取教材,并且可以退还教材、 查询自己已经领取的教材。并且对已领教材付款等等。
二、项目运行
环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)
项目技术: JSP +Spring + SpringMVC + MyBatis + html+ css + JavaScript + JQuery + Ajax + layui+ maven等等。
String uid = u.getT_id();
List<StoreOut> teachStoos = storeOutService.findStooByUidAndBid(uid,book_id);
int current_tea_book = teachStoos.get(0).getBook_out();
List<StoreOut> stoos = storeOutService.findStooByUidAndBid(user.getId(),book_id);
int current_stu_book = stoos.get(0).getBook_out();
//int current_book_count = current_tea_book + current_stu_book;
if(isAll.equals("yes")){//退还该书的全部
int stu_book = stoos.get(0).getBook_out()-stoos.get(0).getBook_back();
int n = storeOutService.deleteStoreOutByUidandBid(book_id,user.getId());
if(n>0){
//获取对应教师的领书记录
int current_book_count = current_tea_book + stu_book;
storeOutService.updateTeacherBookOut(current_book_count,book_id,uid);
return "success";
}else {
return "failure";
}
}else{
//退还书的一部分,获取该学生的领书记录
List<StoreOut> storeOuts = storeOutService.findStooByUidAndBid(user.getId(),book_id);
if(storeOuts.size()>0&&storeOuts.get(0).getBook_back()!=0){
return "cannot back";
}else{
int stu_book_back = Integer.parseInt(book_num);
int current_book_count = current_tea_book + stu_book_back;
int n = storeOutService.updateTeacherBookBack(Integer.parseInt(book_num),book_id,user.getId());
if(n>0){
storeOutService.updateTeacherBookOut(current_book_count,book_id,uid);
return "success";
}else {
return "failure";
}
}
}
}
@ResponseBody
@RequestMapping(value = "/getStoreOutById")
public String getStoreInById(@RequestParam("id")String id){
StoreOut storeOuts = storeOutService.findStoreOutById(id);
String book_id = storeOuts.getBook_id();
return book_id;
}
}
String uid="";
HttpSession session = request.getSession(true);//新建session对象
User user = (User) session.getAttribute("user"); //将对应数据存入session中
User u = null;
if(user.getIdentification().equals("学生")){
u = userService.findTeacherByUserId(user.getId());
uid = u.getT_id();
}else if(user.getIdentification().equals("教师")){
uid = user.getId();
}
List<StoreOut> storeOuts = storeOutService.findStoreOutByUserId(uid);
for(int i=0;i<storeOuts.size();i++){
StoreOut s = storeOuts.get(i);
int total_add = s.getBook_out();
int total_sub = s.getBook_back();
int total = total_add - total_sub;
s.setTotal(total);
list.add(s);
}
Layui l = Layui.data(list.size(), list);
return JSON.toJSONString(l);
}
@ResponseBody
@RequestMapping(value = "/getStuStoreOutByUserId",produces="application/json;charset=UTF-8")
public String getStuStoreOutByUserId(@RequestParam("limit") String limit, @RequestParam("page") String page, HttpServletRequest request) {
List<StoreOut> list = new ArrayList<>();
HttpSession session = request.getSession(true);//新建session对象
User user = (User) session.getAttribute("user"); //将对应数据存入session中
List<StoreOut> storeOuts = storeOutService.findStoreOutByUserId(user.getId());
for(int i=0;i<storeOuts.size();i++){
StoreOut s = storeOuts.get(i);
int total_add = s.getBook_out();
int total_sub = s.getBook_back();
int total = total_add - total_sub;
s.setTotal(total);
list.add(s);
}
Layui l = Layui.data(list.size(), list);
System.out.println(list);
return JSON.toJSONString(l);
}
@ResponseBody
@RequestMapping(value = "/inserStutReceiveBook")
public String inserStutReceiveBook(@RequestBody Map dataMap, HttpServletRequest request) {
List<Supplier> supplier1 = POIUtil.importExcel(file,Supplier.class);
System.out.println(supplier1);
//List <Supplier> supplier2 = supplierService.findAllSupplier();
//supplier1.addAll(supplier2);
for(int i=0;i<supplier1.size();i++){
map.put("id",supplier1.get(i).getId());
map.put("qs_name",supplier1.get(i).getQs_name());
map.put("qs_location",supplier1.get(i).getQs_location());
map.put("qs_phone",supplier1.get(i).getQs_phone());
n = supplierService.addSupplier(map);
}
if(n>0){
result.put("code", 0);
result.put("message", "success");
result.put("data", file.getOriginalFilename());
}else{
result.put("code", -1);
result.put("message", "failure");
result.put("data", file.getOriginalFilename());
}
return result;
}
@ResponseBody
@RequestMapping(value = "/supplier/getAllSupplierByPage",produces="application/json;charset=UTF-8")
public String getAllSupplierByPage(@RequestParam("limit") String limit, @RequestParam("page") String page){
int start = (Integer.parseInt(page) - 1)*Integer.parseInt(limit);
int pageSize = Integer.parseInt(limit);
List <Supplier> suppliers = supplierService.findAllSupplierByPages(start,pageSize);
List <Supplier> allData = supplierService.findAllSupplier();
Layui l = Layui.data(allData.size(), suppliers);
return JSON.toJSONString(l);
}
@ResponseBody
@RequestMapping(value = "/supplier/getAllSupplier",produces="application/json;charset=UTF-8")
public String getAllSupplier(){
List <Supplier> allData = supplierService.findAllSupplier();
Layui l = Layui.data(allData.size(), allData);
return JSON.toJSONString(l);
}
@RequestMapping("/supplier/exportData")
public String exportData(HttpServletResponse response){
List <Supplier> suppliers = supplierService.findAllSupplier();
*/
@ResponseBody
@RequestMapping(value = "/delete_updateStutStore")
public String delete_updateStutStore(@RequestBody Map dataMap, HttpServletRequest request) {
System.out.println(dataMap);
System.out.println("----学生退书-------");
String book_id = dataMap.get("book_id").toString();
String book_num = dataMap.get("book_num").toString();
String isAll = dataMap.get("isAll").toString();
HttpSession session = request.getSession(true);//新建session对象
User user = (User) session.getAttribute("user"); //将对应数据存入session中
User u = userService.findTeacherByUserId(user.getId());
String uid = u.getT_id();
List<StoreOut> teachStoos = storeOutService.findStooByUidAndBid(uid,book_id);
int current_tea_book = teachStoos.get(0).getBook_out();
List<StoreOut> stoos = storeOutService.findStooByUidAndBid(user.getId(),book_id);
int current_stu_book = stoos.get(0).getBook_out();
//int current_book_count = current_tea_book + current_stu_book;
if(isAll.equals("yes")){//退还该书的全部
int stu_book = stoos.get(0).getBook_out()-stoos.get(0).getBook_back();
int n = storeOutService.deleteStoreOutByUidandBid(book_id,user.getId());
if(n>0){
//获取对应教师的领书记录
int current_book_count = current_tea_book + stu_book;
storeOutService.updateTeacherBookOut(current_book_count,book_id,uid);
return "success";
}else {
return "failure";
}
}else{
//退还书的一部分,获取该学生的领书记录
List<StoreOut> storeOuts = storeOutService.findStooByUidAndBid(user.getId(),book_id);
if(storeOuts.size()>0&&storeOuts.get(0).getBook_back()!=0){
return "cannot back";
}else{
int stu_book_back = Integer.parseInt(book_num);
int current_book_count = current_tea_book + stu_book_back;
int n = storeOutService.updateTeacherBookBack(Integer.parseInt(book_num),book_id,user.getId());
if(n>0){
storeOutService.updateTeacherBookOut(current_book_count,book_id,uid);
return "success";
}else {
return "failure";
}
}
}
}
@Controller
public class BookController {
@Autowired
BookService bookService;
/*
将表格中的数据插入到
*/
@ResponseBody
@RequestMapping("/book/insertData")
public Object supplierImportExcel(@RequestParam("file") MultipartFile file){
int n= 0;
//long s = file.getSize();
Map<String,Object> map = new HashMap<>();
Map<String, Object> result = new HashMap<String, Object>();
List<Book> book = POIUtil.importExcel(file,Book.class);
System.out.println(book);
//List <Supplier> supplier2 = supplierService.findAllSupplier();
//supplier1.addAll(supplier2);
for(int i=0;i<book.size();i++){
map.put("id",book.get(i).getId());
map.put("book_name",book.get(i).getBook_name());
map.put("book_kind",book.get(i).getBook_kind());
map.put("book_price",book.get(i).getBook_price());
map.put("qs_name",book.get(i).getQs_name());
n = bookService.addBook(map);
}
System.out.println("map:"+map);
if(n>0){
result.put("code", 0);
result.put("message", "success");
result.put("data", file.getOriginalFilename());
}else{
result.put("code", -1);
result.put("message", "failure");
result.put("data", file.getOriginalFilename());
}
return result;
}
@ResponseBody
@RequestMapping(value = "/book/getAllBookByPage",produces="application/json;charset=UTF-8")
public String getAllBookByPage(@RequestParam("limit") String limit, @RequestParam("page") String page){
int start = (Integer.parseInt(page) - 1)*Integer.parseInt(limit);
int pageSize = Integer.parseInt(limit);
List <Supplier> books = bookService.findAllBookByPages(start,pageSize);
List <Supplier> allData = bookService.findAllBook();
@Autowired
StoreInService storeInService;
@Autowired
BookService bookService;
@Autowired
UserService userService;
@ResponseBody
@RequestMapping(value = "/inserTeachertReceiveBook")
public String addReceiveBook(@RequestBody Map dataMap, HttpServletRequest request) {
System.out.println(dataMap);
String book_id = dataMap.get("book_id").toString();
String book_out = dataMap.get("book_out").toString();
String storeInId = dataMap.get("id").toString();
String id = RandNum.getGUID();
/*
要先登录,才有getId
*/
HttpSession session = request.getSession(true);//新建session对象
User user = (User) session.getAttribute("user"); //将对应数据存入session中
StoreOut storeOut = new StoreOut(id,book_id,user.getId(),Integer.parseInt(book_out));
System.out.println("storeOut:"+storeOut);
/*
使用fastjson把类转换成json,有两个好处,
1.需要map类型传参数
2.fastjson能够格式化时间类型
*/
String storeInJson = JSON.toJSONString(storeOut);
Map map = JSON.parseObject(storeInJson, Map.class);
System.out.println(map);
List<StoreOut> storeOuts = storeOutService.findStooByUidAndBid(user.getId(),book_id);
if(storeOuts.size()>0){
return "cannot receve";
}else {
int n = storeOutService.addReceiveBook(map);
if (n > 0) {
StoreIn storeIn = storeInService.findStoreInById(storeInId);
int init_book_count = storeIn.getBook_count();//原来库存
int current_book_count = init_book_count-Integer.parseInt(book_out);//现在库存=原来库存-已经领走库存
storeInService.updateBookCount(current_book_count,storeInId);
return "success";
}
return "failure";
}
@Controller
public class BookController {
@Autowired
BookService bookService;
/*
将表格中的数据插入到
*/
@ResponseBody
@RequestMapping("/book/insertData")
public Object supplierImportExcel(@RequestParam("file") MultipartFile file){
int n= 0;
//long s = file.getSize();
Map<String,Object> map = new HashMap<>();
Map<String, Object> result = new HashMap<String, Object>();
List<Book> book = POIUtil.importExcel(file,Book.class);
System.out.println(book);
//List <Supplier> supplier2 = supplierService.findAllSupplier();
//supplier1.addAll(supplier2);
for(int i=0;i<book.size();i++){
map.put("id",book.get(i).getId());
map.put("book_name",book.get(i).getBook_name());
map.put("book_kind",book.get(i).getBook_kind());
map.put("book_price",book.get(i).getBook_price());
map.put("qs_name",book.get(i).getQs_name());
n = bookService.addBook(map);
}
System.out.println("map:"+map);
if(n>0){
result.put("code", 0);
result.put("message", "success");
result.put("data", file.getOriginalFilename());
}else{
result.put("code", -1);
result.put("message", "failure");
result.put("data", file.getOriginalFilename());
}
return result;
}
int start = (Integer.parseInt(page) - 1)*Integer.parseInt(limit);
int pageSize = Integer.parseInt(limit);
List <Supplier> books = bookService.findAllBookByPages(start,pageSize);
List <Supplier> allData = bookService.findAllBook();
Layui l = Layui.data(allData.size(), books);
return JSON.toJSONString(l);
}
@ResponseBody
@RequestMapping(value = "/book/getAllBook",produces="application/json;charset=UTF-8")
public String getAllBook(){
List <Supplier> allData = bookService.findAllBook();
Layui l = Layui.data(allData.size(), allData);
return JSON.toJSONString(l);
}
@ResponseBody
@RequestMapping(value = "/book/findAllBookKind",produces="application/json;charset=UTF-8")
public String findAllBookKind(){
List <String> allKinds = bookService.findAllBookKind();
return JSON.toJSONString(allKinds);
}
@RequestMapping("/book/exportData")
public String exportData(HttpServletResponse response){
List <Supplier> books = bookService.findAllBook();
POIUtil.exportExcel(books,Book.class,"书籍基本信息","",response);
return NormalExcelConstants.EASYPOI_EXCEL_VIEW;//需要配置新的视图解析器并设置优先级和扫描
}
@ResponseBody
@RequestMapping(value = "/updateBookById")
public String updateBookById(@RequestBody Map map){
int n = bookService.updateBookById(map);
if(n>0){
return "success";
}
return "failure";
}
@ResponseBody
@RequestMapping(value = "/deleteBookById")
public String deleteBookById(@RequestParam("book_id")String book_id){
int n = bookService.deleteBookById(book_id);
if(n>0){
int total_add = s.getBook_out();
int total_sub = s.getBook_back();
int total = total_add - total_sub;
s.setTotal(total);
list.add(s);
}
Layui l = Layui.data(list.size(), list);
return JSON.toJSONString(l);
}
@ResponseBody
@RequestMapping(value = "/getStuStoreOutByUserId",produces="application/json;charset=UTF-8")
public String getStuStoreOutByUserId(@RequestParam("limit") String limit, @RequestParam("page") String page, HttpServletRequest request) {
List<StoreOut> list = new ArrayList<>();
HttpSession session = request.getSession(true);//新建session对象
User user = (User) session.getAttribute("user"); //将对应数据存入session中
List<StoreOut> storeOuts = storeOutService.findStoreOutByUserId(user.getId());
for(int i=0;i<storeOuts.size();i++){
StoreOut s = storeOuts.get(i);
int total_add = s.getBook_out();
int total_sub = s.getBook_back();
int total = total_add - total_sub;
s.setTotal(total);
list.add(s);
}
Layui l = Layui.data(list.size(), list);
System.out.println(list);
return JSON.toJSONString(l);
}
@ResponseBody
@RequestMapping(value = "/inserStutReceiveBook")
public String inserStutReceiveBook(@RequestBody Map dataMap, HttpServletRequest request) {
System.out.println(dataMap);
//String book_id = dataMap.get("book_id").toString();
String book_out = dataMap.get("book_out").toString();
String book_id = dataMap.get("id").toString();
String id = RandNum.getGUID();
/*
要先登录,才有getId
*/
HttpSession session = request.getSession(true);//新建session对象
User user = (User) session.getAttribute("user"); //将对应数据存入session中
StoreOut storeOut = new StoreOut(id,book_id,user.getId(),Integer.parseInt(book_out));
System.out.println("storeOut:"+storeOut);
User u = userService.findTeacherByUserId(user.getId());
/*
@Controller
public class ProfessionController {
@Autowired
ProfessionService professionService;
@ResponseBody
@RequestMapping(value = "/getAllProfession",produces="application/json;charset=UTF-8")
public String getAllProfession(){
List<Profession> professions = professionService.findAllProfession();
Layui l = Layui.data(professions.size(), professions);
return JSON.toJSONString(l);
}
}
@Controller
public class CollegeController {
@Autowired
CollegeService collegeService;
@ResponseBody
@RequestMapping(value = "/getAllCollege",produces="application/json;charset=UTF-8")
public String getAllCollege(){
List<College> colleges = collegeService.findAllCollege();
Layui l = Layui.data(colleges.size(), colleges);
return JSON.toJSONString(l);
}
}
*/
public static void exportExcel(Collection<?> listData, Class<?> pojoClass, String headTitle, String sheetName, HttpServletResponse response) {
ExportParams params = new ExportParams(null, null);
params.setHeight((short) 8);
params.setStyle(ExcelExportMyStylerImpl.class);
try {
Workbook workbook = ExcelExportUtil.exportExcel(params, pojoClass, listData);
String fileName = headTitle + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date());
fileName = URLEncoder.encode(fileName, "UTF8");
response.setContentType("application/vnd.ms-excel;chartset=utf-8");
response.setHeader("Content-Disposition", "attachment;filename="+fileName + ".xls");
ServletOutputStream out=response.getOutputStream();
workbook.write(out);
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
int total_add = s.getBook_out();
int total_sub = s.getBook_back();
int total = total_add - total_sub;
s.setTotal(total);
list.add(s);
}
Layui l = Layui.data(list.size(), list);
return JSON.toJSONString(l);
}
@ResponseBody
@RequestMapping(value = "/getStuStoreOutByUserId",produces="application/json;charset=UTF-8")
public String getStuStoreOutByUserId(@RequestParam("limit") String limit, @RequestParam("page") String page, HttpServletRequest request) {
List<StoreOut> list = new ArrayList<>();
HttpSession session = request.getSession(true);//新建session对象
User user = (User) session.getAttribute("user"); //将对应数据存入session中
List<StoreOut> storeOuts = storeOutService.findStoreOutByUserId(user.getId());
for(int i=0;i<storeOuts.size();i++){
StoreOut s = storeOuts.get(i);
int total_add = s.getBook_out();
int total_sub = s.getBook_back();
int total = total_add - total_sub;
s.setTotal(total);
list.add(s);
}
Layui l = Layui.data(list.size(), list);
System.out.println(list);
return JSON.toJSONString(l);
}
@ResponseBody
@RequestMapping(value = "/inserStutReceiveBook")
public String inserStutReceiveBook(@RequestBody Map dataMap, HttpServletRequest request) {
System.out.println(dataMap);
//String book_id = dataMap.get("book_id").toString();
String book_out = dataMap.get("book_out").toString();
String book_id = dataMap.get("id").toString();
String id = RandNum.getGUID();
/*
要先登录,才有getId
*/
HttpSession session = request.getSession(true);//新建session对象
User user = (User) session.getAttribute("user"); //将对应数据存入session中
StoreOut storeOut = new StoreOut(id,book_id,user.getId(),Integer.parseInt(book_out));
System.out.println("storeOut:"+storeOut);
User u = userService.findTeacherByUserId(user.getId());
if(n>0){
return "success";
}else {
return "failure";
}
}
}
@Controller
public class StoreInController {
@Autowired
StoreInService storeInService;
@ResponseBody
@RequestMapping(value = "/getAllStoreInByPage",produces="application/json;charset=UTF-8")
public String getAllStoreInByPage(@RequestParam("limit") String limit, @RequestParam("page") String page){
int start = (Integer.parseInt(page) - 1)*Integer.parseInt(limit);
int pageSize = Integer.parseInt(limit);
List<StoreIn> storeIns = storeInService.findAllStoreInByPage(start,pageSize);
List<StoreIn> allData = storeInService.findAllStoreIn();
Layui l = Layui.data(allData.size(), storeIns);
String result = JSON.toJSONString(l);
System.out.println("result:"+result);
return result;
}
@ResponseBody
@RequestMapping(value = "/getAllStoreInBookName",produces="application/json;charset=UTF-8")
public String getAllStoreInBookName(){
List<StoreIn> allData = storeInService.findAllStoreIn();
List<String> list = new ArrayList<>();
defaultExport(list, fileName, response);
}
private static void defaultExport(List<?> list, Class<?> pojoClass, String fileName, HttpServletResponse response, ExportParams exportParams) {
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, pojoClass, list);
if (workbook != null) ;
downLoadExcel(fileName, response, workbook);
}
private static void downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) {
try {
response.setCharacterEncoding("UTF-8");
response.setHeader("content-Type", "application/vnd.ms-excel");
response.setHeader("Content-Disposition",
"attachment;filename=" + URLEncoder.encode(fileName, "UTF-8"));
workbook.write(response.getOutputStream());
} catch (IOException e) {
throw new RuntimeException(e.getMessage());
}
}
private static void defaultExport(List<Map<String, Object>> list, String fileName, HttpServletResponse response) {
Workbook workbook = ExcelExportUtil.exportExcel(list, ExcelType.HSSF);
if (workbook != null) ;
downLoadExcel(fileName, response, workbook);
}
/**
* 导入
* @param filePath
* @param titleRows
* @param headerRows
* @param pojoClass
* @param <T>
* @return
*/
public static <T> List<T> importExcel(String filePath, Integer titleRows, Integer headerRows, Class<T> pojoClass) {
if (StringUtils.isBlank(filePath)) {
return null;
}
ImportParams params = new ImportParams();
params.setTitleRows(titleRows);
params.setHeadRows(headerRows);
List<T> list = null;
try {
@Controller
public class UserController {
@Autowired
UserService userService;
private final Logger log = LoggerFactory.getLogger(UserController.class);
@ResponseBody
@RequestMapping(value = "/userLogin")
@ApiOperation(value = "根据用户名获取用户对象", httpMethod = "GET", response = User.class, notes = "根据用户名获取用户对象")
public String userLogin(String account, String password, HttpServletRequest request ){
HttpSession session = request.getSession(true);//新建session对象
User user = userService.findOneUser(account,password);
session.setAttribute("user",user);
if(user!=null){
return "success";
}
return "fail";
}
@ResponseBody
@RequestMapping(value = "/getAllUser",produces="application/json;charset=UTF-8")
public String getAllUser(@RequestParam("limit") String limit, @RequestParam("page") String page
){
//System.out.println("bjshbd");
//int error = 1/0;
int start = (Integer.parseInt(page) - 1)*Integer.parseInt(limit);
int pageSize = Integer.parseInt(limit);
List<User>list = userService.findAllUsersByPage(start,pageSize);
List<User>allData = userService.findAllUsers();
System.out.println(list);
Layui l = Layui.data(allData.size(), list);
String result = JSON.toJSONString(l);
System.out.println(result);
return result;
}
}
@ResponseBody
@RequestMapping(value = "/payments",produces="application/json;charset=UTF-8")
public String historyPay(HttpServletRequest request){
HttpSession session = request.getSession(true);//新建session对象
User user = (User) session.getAttribute("user"); //将对应数据存入session中
String user_id = user.getId();
List<Payments> payments = paymentsService.historyPay(user_id);
System.out.println(payments);
Layui l = Layui.data(payments.size(), payments);
String result = JSON.toJSONString(l);
System.out.println("result:"+result);
return result;
}
@ResponseBody
@RequestMapping(value = "/allHistoryPay",produces="application/json;charset=UTF-8")
public String allHistoryPay(){
List<Payments> payments = paymentsService.allHistoryPay();
System.out.println(payments);
Layui l = Layui.data(payments.size(), payments);
String result = JSON.toJSONString(l);
System.out.println("result:"+result);
return result;
}
}
@Controller
public class CommonController {
private final Logger log = LoggerFactory.getLogger(CommonController.class);
@RequestMapping("/{pageName}")
public String pathAll(@PathVariable(value="pageName") String pageName){
return pageName;
}
@RequestMapping(value = "/uploadImg", method = RequestMethod.POST)
public @ResponseBody Object updatePersonal(@RequestParam("photo") MultipartFile file, HttpServletRequest request)
throws IllegalStateException, IOException {
int init_book_count = storeOuts.get(0).getBook_out();//原来教师库存
int current_book_count = init_book_count-Integer.parseInt(book_out);//现在库存=原来库存-已经领走库存
storeOutService.updateTeacherBookOut(current_book_count,book_id,tid);
//storeInService.updateBookCount(current_book_count,storeInId);
return "success";
}
return "failure";
}
}
@ResponseBody
@RequestMapping(value = "/delete_updateTeachertStore")
public String delete_updateTeachertStore(@RequestBody Map dataMap, HttpServletRequest request) {
System.out.println(dataMap);
System.out.println("----教师退书-------");
String book_id = dataMap.get("book_id").toString();
String book_num = dataMap.get("book_num").toString();
String isAll = dataMap.get("isAll").toString();
HttpSession session = request.getSession(true);//新建session对象
User user = (User) session.getAttribute("user"); //将对应数据存入session中
if(isAll.equals("yes")){//退还该书的全部
List<StoreOut> stoos = storeOutService.findStooByUidAndBid(user.getId(),book_id);
int current_teach_book = stoos.get(0).getBook_out();
int n = storeOutService.deleteStoreOutByUidandBid(book_id,user.getId());
if(n>0){
List<StoreIn> storeIns = storeInService.findStoreInByBookId(book_id);
int current_book_count = storeIns.get(0).getBook_count() + current_teach_book;
storeInService.updateBookCountByBookId(current_book_count,book_id);
return "success";
}else {
return "failure";
}
}else{
//退还书的一部分
List<StoreOut> storeOuts = storeOutService.findStooByUidAndBid(user.getId(),book_id);
if(storeOuts.size()>0&&storeOuts.get(0).getBook_back()!=0){
return "cannot back";
}else{
int n = storeOutService.updateTeacherBookBack(Integer.parseInt(book_num),book_id,user.getId());
if(n>0){
List<StoreIn> storeIns = storeInService.findStoreInByBookId(book_id);
int current_book_count = storeIns.get(0).getBook_count() + Integer.parseInt(book_num);
storeInService.updateBookCountByBookId(current_book_count,book_id);
/**
* @Description: 表格工具类
*/
public class POIUtil {
public static void exportExcel(List<?> list, String title, String sheetName, Class<?> pojoClass, String fileName, boolean isCreateHeader, HttpServletResponse response) {
ExportParams exportParams = new ExportParams(title, sheetName);
exportParams.setCreateHeadRows(isCreateHeader);
defaultExport(list, pojoClass, fileName, response, exportParams);
}
public static void exportExcel(List<?> list, String title, String sheetName, Class<?> pojoClass, String fileName, HttpServletResponse response) {
defaultExport(list, pojoClass, fileName, response, new ExportParams(title, sheetName));
}
public static void exportExcel(List<Map<String, Object>> list, String fileName, HttpServletResponse response) {
defaultExport(list, fileName, response);
}
private static void defaultExport(List<?> list, Class<?> pojoClass, String fileName, HttpServletResponse response, ExportParams exportParams) {
Workbook workbook = ExcelExportUtil.exportExcel(exportParams, pojoClass, list);
if (workbook != null) ;
downLoadExcel(fileName, response, workbook);
}
private static void downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) {
try {
response.setCharacterEncoding("UTF-8");
response.setHeader("content-Type", "application/vnd.ms-excel");
response.setHeader("Content-Disposition",
"attachment;filename=" + URLEncoder.encode(fileName, "UTF-8"));
workbook.write(response.getOutputStream());
} catch (IOException e) {
throw new RuntimeException(e.getMessage());
}