中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

做問卷的幾個(gè)網(wǎng)站如何優(yōu)化關(guān)鍵詞的排名

做問卷的幾個(gè)網(wǎng)站,如何優(yōu)化關(guān)鍵詞的排名,開發(fā)區(qū)建網(wǎng)站外包,朝陽區(qū)搜索優(yōu)化seosem【1A536】圖書管理系統(tǒng)匯報(bào) 項(xiàng)目介紹1.用戶登錄注冊(cè)功能1. 1用戶角色管理2.圖書管理功能2.1 添加圖書2.2 編輯圖書2.3 刪除圖書 3.圖書搜索和篩選3.1 圖書搜索3.2 圖書篩選 4.圖書借閱、圖書歸還4.1 圖書借閱4.2 圖書歸還 5.用戶信息管理5.1上傳頭像5.2修改頭像5.3 修改密碼 項(xiàng)…

【1A536】圖書管理系統(tǒng)匯報(bào)

  • 項(xiàng)目介紹
    • 1.用戶登錄注冊(cè)功能
    • 1. 1用戶角色管理
    • 2.圖書管理功能
      • 2.1 添加圖書
      • 2.2 編輯圖書
      • 2.3 刪除圖書
    • 3.圖書搜索和篩選
      • 3.1 圖書搜索
      • 3.2 圖書篩選
    • 4.圖書借閱、圖書歸還
      • 4.1 圖書借閱
      • 4.2 圖書歸還
    • 5.用戶信息管理
      • 5.1上傳頭像
      • 5.2修改頭像
      • 5.3 修改密碼

項(xiàng)目介紹

本項(xiàng)目提供用戶和管理員兩種角色,支持圖書的添加、編輯、刪除、搜索和篩選功能,同時(shí)具備用戶信息管理和借閱功能,確保圖書管理高效便捷。

1.用戶登錄注冊(cè)功能

在這里插入圖片描述
注冊(cè)部分(前端代碼):

在這里插入圖片描述

注冊(cè)部分(后端代碼):

//用戶注冊(cè)@PostMapping("/register")public Result register(@RequestBody User registerUser){System.out.println("register");// 查詢用戶QueryWrapper<User> queryWrapper1 = new QueryWrapper<>();queryWrapper1.eq("user_name", registerUser.getUserName());User userone = userService.getOne(queryWrapper1); // 調(diào)用 getOne 方法if (userone != null) {return Result.error("用戶名已存在");}QueryWrapper<User> queryWrapper2 = new QueryWrapper<>();queryWrapper2.eq("user_email", registerUser.getUserEmail());User usertwo = userService.getOne(queryWrapper2); // 調(diào)用 getOne 方法if (usertwo != null) {return Result.error("郵箱已存在");}//        加密String md5Pwd = Md5Util.getMD5String(registerUser.getUserPassword());User user = new User();user.setUserName(registerUser.getUserName());user.setUserPassword(md5Pwd);user.setUserEmail(registerUser.getUserEmail());user.setUserRole("user");user.setUserStatus("0");//       調(diào)用插入數(shù)據(jù)的方法userService.save(user);UserStatistics userStatistics = new UserStatistics();userStatistics.setUserName(user.getUserName());userStatistics.setActivityCount(0);iUserStatisticsService.save(userStatistics);return Result.success();}

登錄部分(前端代碼):

在這里插入圖片描述

登錄部分(后端代碼):

   @PostMapping("/login")public Result<String> login(@RequestBody User user){LambdaQueryWrapper<User> wrapper=new LambdaQueryWrapper<>();wrapper.eq(User::getUserName,user.getUserName()).eq(User::getUserPassword, Md5Util.getMD5String(user.getUserPassword()));User userOne = userService.getOne(wrapper);if(userOne!=null){if(userOne.getUserStatus().equals("1")) return Result.error("用戶已被封禁");HashMap<String, Object> claims = new HashMap<>();claims.put("userId",user.getUserId());claims.put("userName",user.getUserName());String token = JwtUtil.genToken(claims);redisTemplate.opsForValue().set(token,userOne,30, TimeUnit.MINUTES);return Result.success(token);}else{return Result.error("用戶名密碼錯(cuò)誤");}}

1. 1用戶角色管理

功能介紹

  • 系統(tǒng)支持用戶和管理員兩種角色,不同角色有不同的權(quán)限。
  • 管理員可以添加、編輯和刪除圖書,普通用戶只能借閱圖書。

前端代碼:

在這里插入圖片描述在這里插入圖片描述
roleCheck 函數(shù)用于檢查當(dāng)前用戶的登錄狀態(tài)和角色信息。它通過發(fā)送一個(gè) HTTP GET 請(qǐng)求到后端 API 獲取用戶數(shù)據(jù),并根據(jù)返回的數(shù)據(jù)進(jìn)行相應(yīng)的處理。如果用戶未登錄或請(qǐng)求失敗,將重定向到首頁;如果用戶已登錄且請(qǐng)求成功,則更新用戶的角色、名稱和頭像URL,并將其存儲(chǔ)在本地存儲(chǔ)中。
在這里插入圖片描述在這里插入圖片描述


后端代碼:
在這里插入圖片描述在這里插入圖片描述

2.圖書管理功能

2.1 添加圖書

  • 功能介紹:通過抽屜組件實(shí)現(xiàn),用戶可以填寫圖書的詳細(xì)信息并保存。

前端代碼

在這里插入圖片描述在這里插入圖片描述
后端代碼:
在這里插入圖片描述

2.2 編輯圖書

  • 功能介紹:點(diǎn)擊表格中的“編輯”按鈕,彈出抽屜組件,預(yù)填當(dāng)前圖書的信息,用戶可以進(jìn)行修改。

前端代碼:
在這里插入圖片描述當(dāng)點(diǎn)擊edit后,彈出抽屜,進(jìn)行圖書編輯,當(dāng)點(diǎn)擊提交時(shí),調(diào)用點(diǎn)擊事件的confirmClick方法進(jìn)行提交表在這里插入圖片描述在這里插入圖片描述
后端代碼:
在這里插入圖片描述

2.3 刪除圖書

  • 功能介紹:點(diǎn)擊表格中的“刪除”按鈕,彈出確認(rèn)框,確認(rèn)后刪除圖書。

前端代碼:
在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述
主要看這個(gè)handleDelete方法,獲取行內(nèi)元素row的id字段以及token作為deleteBook的參數(shù)。所以deleteBook才是刪除圖書的關(guān)鍵,下面可以發(fā)現(xiàn),發(fā)通過axios發(fā)了一個(gè)delete請(qǐng)求,請(qǐng)求體參數(shù)就是id和token在這里插入圖片描述

后端代碼:
在這里插入圖片描述
查看后端代碼發(fā)現(xiàn),請(qǐng)求參數(shù)正是id跟token,通過對(duì)用戶進(jìn)行校驗(yàn)判斷用戶權(quán)限,權(quán)限通過后刪除圖書。

3.圖書搜索和篩選

3.1 圖書搜索

  • 功能介紹:通過輸入框輸入圖書名或ISBN,實(shí)時(shí)過濾顯示結(jié)果。

在這里插入圖片描述
搜索功能的實(shí)現(xiàn),@input是當(dāng)輸入框的值發(fā)生變化時(shí),觸發(fā) inputValue 方法,重點(diǎn)看該方法,它用于處理輸入框值變化時(shí)的邏輯,根據(jù)輸入的值過濾圖書數(shù)據(jù)。
在這里插入圖片描述

3.2 圖書篩選

  • 功能介紹:通過下拉選擇框選擇圖書狀態(tài)(全部、可借閱、不可借閱),動(dòng)態(tài)更新表格數(shù)據(jù)。

在這里插入圖片描述
這里@change 屬性: 監(jiān)聽選擇框值的變化,觸發(fā)handleSelectChange 方法。
在這里插入圖片描述

4.圖書借閱、圖書歸還

4.1 圖書借閱

  • 功能介紹:用戶可以點(diǎn)擊圖書列表中的“借閱”按鈕,借閱圖書。借閱成功后,圖書狀態(tài)會(huì)更新為“不可借閱”。

后端代碼

@PostMapping("/borrow/{id}")public Result borrowBook(@PathVariable String  id, String token){Book byId = bookService.getById(id);User user = checkInfo(token);if (user == null){return Result.error("用戶未登錄,無權(quán)限");}LambdaQueryWrapper<Book> userBorrowedBooksQuery = new LambdaQueryWrapper<>();userBorrowedBooksQuery.eq(Book::getBookBorrower, user.getUserName()).eq(Book::getBookStatus, "0"); // 假設(shè) "0" 表示已借出Long borrowedBooksCount = bookService.count(userBorrowedBooksQuery);if (borrowedBooksCount >= 3) {return Result.error("您已達(dá)到最大借書數(shù)量,無法再借書");}LambdaQueryWrapper<BookStatistics> queryWrapper = new LambdaQueryWrapper<>();queryWrapper.eq(BookStatistics::getBookName,byId.getBookName());BookStatistics stats = IBookStatisticsService.getOne(queryWrapper);if(stats==null){return Result.error("該書不存在");}stats.setBorrowCount(stats.getBorrowCount() + 1);IBookStatisticsService.updateById(stats);UpdateWrapper<Book> wrapper = new UpdateWrapper<>();wrapper.eq("book_id",id).set("book_borrower",user.getUserName()).set("book_status","0").set("book_borrowtime",LocalDate.now().toString()).set("book_returntime", LocalDate.now().plus(30, ChronoUnit.DAYS).toString());boolean update = bookService.update(wrapper);return Result.success(update);}

前端代碼
在這里插入圖片描述
在這里插入圖片描述

4.2 圖書歸還

  • 功能介紹:用戶可以點(diǎn)擊圖書列表中的“借閱”按鈕,借閱圖書。借閱成功后,圖書狀態(tài)會(huì)更新為“不可借閱”。

前端代碼
在這里插入圖片描述在這里插入圖片描述

后端代碼

@PutMapping("/backBook/{id}")public Result<String> backBook(@PathVariable String id,String token){User user = checkInfo(token);if(user==null){return Result.error("用戶未登錄,無權(quán)限");}UpdateWrapper<Book> updateWrapper = new UpdateWrapper<>();updateWrapper.eq("book_id",id).set("book_status","1").set("book_borrower","").set("book_borrowtime","").set("book_returntime","");boolean update = bookService.update(updateWrapper);QueryWrapper<Book> queryWrapper = new QueryWrapper<>();queryWrapper.eq("book_id",id);Book book = bookService.getOne(queryWrapper);Record newRecord = new Record();LocalDate now = LocalDate.now();newRecord.setRecordBookname(book.getBookName());newRecord.setRecordBorrower(user.getUserName());newRecord.setRecordBookisbn(book.getBookIsbn());newRecord.setRecordAuthor(book.getBookAuthor());newRecord.setRecordPress(book.getBookPress());newRecord.setRecordBorrowtime(now.toString());newRecord.setRecordRemandtime(now.plusMonths(1).toString());boolean save = recordService.save(newRecord);if(update&&save){LambdaQueryWrapper<UserStatistics> queryWrapper1 = new LambdaQueryWrapper<>();queryWrapper1.eq(UserStatistics::getUserName,user.getUserName());UserStatistics getOne = iUserStatisticsService.getOne(queryWrapper1);if(getOne==null){return Result.error("該用戶不存在");}getOne.setActivityCount(getOne.getActivityCount() + 1);iUserStatisticsService.updateById(getOne);return Result.success("還書成功");}else {return Result.error("還書失敗");}}

5.用戶信息管理

5.1上傳頭像

要做頭像上傳,就得有存儲(chǔ)的地方,阿里云OSS對(duì)象存儲(chǔ)正好滿足我們的需求。
通過阿里云官網(wǎng),可查看找到OSS對(duì)象存儲(chǔ)工具類

  • ENDPOINT:阿里云 OSS 的服務(wù)端點(diǎn)。
  • ID:阿里云 Access Key ID。
  • KEY:阿里云 Access Key
    Secret。 BUCKET_NAME:存儲(chǔ)容器名稱。

后端代碼:

在這里插入圖片描述
在這里插入圖片描述

前端代碼:
在這里插入圖片描述

5.2修改頭像

  • 功能介紹:用戶可以通過上傳圖片來修改自己的頭像,上傳成功后自動(dòng)刷新頁面。

后端代碼:
在這里插入圖片描述

前端代碼:在這里插入圖片描述
主要就是這個(gè)avatarUpload方法上傳頭像,查看該方法發(fā)現(xiàn)
在這里插入圖片描述

5.3 修改密碼

  • 功能介紹:用戶可以點(diǎn)擊菜單中的“修改密碼”選項(xiàng),彈出對(duì)話框進(jìn)行密碼修改。

前端代碼:在這里插入圖片描述
在這里插入圖片描述
在這里插入圖片描述

后端代碼:
在這里插入圖片描述

http://www.risenshineclean.com/news/50608.html

相關(guān)文章:

  • 國(guó)家建設(shè)部人才交流中心網(wǎng)站廣告公司收費(fèi)價(jià)格表
  • 免費(fèi)單頁網(wǎng)站在線制作營(yíng)銷軟文500字
  • dw做網(wǎng)站小技巧東莞網(wǎng)絡(luò)營(yíng)銷公司
  • 如何創(chuàng)建一個(gè)平臺(tái)型公司優(yōu)化網(wǎng)站seo策略
  • 廣州網(wǎng)站制作公司優(yōu)化百度競(jìng)價(jià)查詢
  • 企業(yè)網(wǎng)站建設(shè)公司排名河南省網(wǎng)站
  • 紅河州網(wǎng)站建設(shè)制作深圳市企業(yè)網(wǎng)站seo營(yíng)銷工具
  • 廊坊網(wǎng)站建設(shè)外包如何網(wǎng)絡(luò)媒體推廣
  • 郴州網(wǎng)站設(shè)計(jì)較好的公司東莞網(wǎng)絡(luò)優(yōu)化公司
  • 新手做網(wǎng)站教程seo關(guān)鍵詞布局案例
  • wordpress文章隱藏內(nèi)容seo資訊網(wǎng)
  • 如何做發(fā)表文章的網(wǎng)站百度推廣計(jì)劃
  • 同一產(chǎn)品做多個(gè)網(wǎng)站江門網(wǎng)站開發(fā)多少錢
  • 微商城網(wǎng)站開發(fā)網(wǎng)絡(luò)推廣的工作內(nèi)容
  • 個(gè)人工作室網(wǎng)站模板武漢seo托管公司
  • 手機(jī)網(wǎng)站開發(fā)之列表開發(fā)成人營(yíng)銷管理培訓(xùn)班
  • 哪家公司做網(wǎng)站便宜網(wǎng)絡(luò)營(yíng)銷推廣系統(tǒng)
  • 網(wǎng)站開發(fā)的發(fā)展的前景專業(yè)提升關(guān)鍵詞排名工具
  • webhost wordpressseo關(guān)鍵詞搜索優(yōu)化
  • 網(wǎng)站建設(shè)湖南青島網(wǎng)站優(yōu)化公司
  • 備案沒有商城可以做商城網(wǎng)站嗎中國(guó)今日新聞
  • 實(shí)力網(wǎng)站建設(shè)百度打開
  • 自己怎么做視頻網(wǎng)站百度快照優(yōu)化排名推廣
  • 濮陽做網(wǎng)站的公司有哪些谷歌搜索引擎下載
  • 特效相冊(cè)網(wǎng)站源碼百度app官網(wǎng)下載安裝
  • 做網(wǎng)站實(shí)現(xiàn)登陸功能十八大禁用黃app入口
  • 做教育app的網(wǎng)站有哪些百度最新版下載
  • 潮州網(wǎng)絡(luò)推廣seo課程培訓(xùn)班
  • 百度小程序登錄入口商品標(biāo)題seo是什么意思
  • 墾利網(wǎng)頁定制汕頭seo外包機(jī)構(gòu)