藥文化宣傳系統(tǒng)22553-計(jì)算機(jī)課程設(shè)計(jì)、畢業(yè)設(shè)計(jì))
前言?博主介紹一線全棧工程師畢設(shè)實(shí)戰(zhàn)引路人。技術(shù)棧覆蓋Java、Python、C#、PHP、Node.js及UniApp跨端開發(fā)擅長多語言項(xiàng)目落地與架構(gòu)設(shè)計(jì)。持續(xù)分享畢設(shè)源碼、開題報(bào)告、技術(shù)選型心得與職場踩坑經(jīng)驗(yàn)。用工程化思維寫代碼幫你把畢設(shè)做成作品集。精彩專欄 推薦訂閱Java精品項(xiàng)目案例【3000套】Python精品項(xiàng)目案例【500套】uniapp/微信小程序/安卓app【800套】2026-2027屆Java畢業(yè)設(shè)計(jì)優(yōu)質(zhì)選題匯總百個熱門方向完整推薦?2026-2027屆Python畢業(yè)設(shè)計(jì)優(yōu)質(zhì)選題匯總百個熱門方向完整推薦?2026-2027屆小程序/APP畢業(yè)設(shè)計(jì)優(yōu)質(zhì)選題匯總百個熱門方向完整推薦??獲取源碼請私信?感興趣的可以先收藏起來還有大家在畢設(shè)選題項(xiàng)目以及論文編寫等相關(guān)問題都可以找我咨詢希望幫助更多的人??系統(tǒng)實(shí)現(xiàn)普通用戶功能實(shí)現(xiàn)在線測試功能實(shí)現(xiàn)本模塊給用戶提供檢驗(yàn)中醫(yī)藥文化學(xué)習(xí)成果的途徑。用戶登錄之后進(jìn)入測試列表選中一份試卷進(jìn)行作答。系統(tǒng)呈現(xiàn)題目內(nèi)容用戶選答之后可以提交。提交之后系統(tǒng)會調(diào)用評分邏輯對答案進(jìn)行評價(jià)用戶可以查看得分和答案解析。在線測試功能界面在線學(xué)習(xí)列表功能實(shí)現(xiàn)模塊集中展示系統(tǒng)中所有的可以學(xué)習(xí)到的課程資源。用戶可以在這個界面看到課程列表利用篩選條件來找某一門課程。點(diǎn)擊具體的課程之后會進(jìn)入到課程的詳細(xì)頁面在此頁面上用戶可以點(diǎn)擊學(xué)習(xí)按鈕來開始對該門課程內(nèi)容的學(xué)習(xí)。在線學(xué)習(xí)列表功能界面中醫(yī)典籍列表功能實(shí)現(xiàn)本模塊可以顯示出各種中醫(yī)經(jīng)典的相關(guān)信息。系統(tǒng)用列表的形式來展示典籍條目用戶可以按照名稱或者分類來進(jìn)行查詢。點(diǎn)擊任何一個典籍可以查看它的詳細(xì)信息、成書背景和學(xué)術(shù)價(jià)值如果有相關(guān)的電子附件用戶可以點(diǎn)擊下載到本地進(jìn)行深入研究。中醫(yī)典籍列表功能界面中醫(yī)宣傳列表功能實(shí)現(xiàn)本模塊用來發(fā)布有關(guān)中醫(yī)藥文化宣傳材料主要用的是視頻的形式。用戶可以依據(jù)不同的種類、不同的主題來篩選出自己需要的宣傳內(nèi)容。點(diǎn)擊某一個宣傳條目的時(shí)候頁面會顯示宣傳的視頻用戶點(diǎn)擊播放按鈕就可以觀看視頻的內(nèi)容了解有關(guān)中醫(yī)藥文化的知識。中醫(yī)宣傳列表功能界面名師講堂列表功能實(shí)現(xiàn)模塊匯集的是由中醫(yī)藥領(lǐng)域的專家講授的課程錄像。用戶進(jìn)入頁面之后會查詢到名師講堂列表每一項(xiàng)的名稱為講師姓名和講堂標(biāo)題。點(diǎn)擊條目的詳情可以找到講座詳細(xì)的文字介紹點(diǎn)擊觀看按鈕即可播放該名師的講座視頻。名師講堂列表功能界面?zhèn)鞒谢顒恿斜砉δ軐?shí)現(xiàn)本模塊用來發(fā)布、管理線下的中醫(yī)藥文化傳承活動。用戶查看已經(jīng)發(fā)布出來的活動列表看活動的名稱、時(shí)間、地點(diǎn)等主要的信息。用戶對于感興趣的事情點(diǎn)擊進(jìn)入詳情頁面了解全部信息之后可進(jìn)行報(bào)名操作輸入必要的個人信息并提交。傳承活動列表功能界面報(bào)名信息功能實(shí)現(xiàn)本模塊便于用戶集中查看并管理自己所提交的活動報(bào)名情況。用戶進(jìn)入個人中心之后查看自己的個人報(bào)名信息列表系統(tǒng)會顯示出用戶所有的已經(jīng)報(bào)名的活動記錄。點(diǎn)擊任意一條記錄可以查看報(bào)名詳情包含提交的時(shí)間、審核的狀態(tài)和活動方可能會有的回復(fù)信息。報(bào)名信息功能界面學(xué)習(xí)記錄功能實(shí)現(xiàn)模塊會對用戶的學(xué)習(xí)行為進(jìn)行自動的跟蹤并且把所有的學(xué)習(xí)過程記錄下來。用戶使用該功能來查詢自己的學(xué)習(xí)歷史系統(tǒng)根據(jù)時(shí)間或者類型顯示學(xué)習(xí)記錄。用戶可以新增學(xué)習(xí)心得備注也可以刪除已有的記錄來實(shí)現(xiàn)對自己個人學(xué)習(xí)軌跡的自助管理。學(xué)習(xí)記錄功能界面評論管理功能實(shí)現(xiàn)本模塊給用戶提供在系統(tǒng)內(nèi)各種內(nèi)容發(fā)表意見的途徑。用戶可以查詢到自己所發(fā)表過的全部評論記錄。查看評論可以找到原始的內(nèi)容如果用戶認(rèn)為某個評論不妥則可以進(jìn)行刪除的操作來控制自己的言論被展現(xiàn)。評論管理功能界面管理員功能實(shí)現(xiàn)在線學(xué)習(xí)管理功能實(shí)現(xiàn)管理員使用該功能可以對在線學(xué)習(xí)的課程資源實(shí)行全過程的管理。管理員可查看現(xiàn)有的課程列表對課程進(jìn)行添加操作輸入課程名稱、類型和詳細(xì)內(nèi)容。管理員可以對課程內(nèi)容或者刪除已過期的課程也可以查看該課程下用戶評論來監(jiān)督內(nèi)容。在線學(xué)習(xí)管理功能界面中醫(yī)典籍管理功能實(shí)現(xiàn)本模塊用來對系統(tǒng)中中醫(yī)典籍庫進(jìn)行管理。管理員查詢典籍列表進(jìn)行新增典籍的操作輸入典籍的作者、年代、附件等內(nèi)容。管理員可以查詢、修改典籍信息對不再使用典籍進(jìn)行刪除操作也可以查看用戶對相關(guān)典籍發(fā)表過的評論內(nèi)容。中醫(yī)學(xué)典籍管理功能界面中醫(yī)宣傳管理功能實(shí)現(xiàn)模塊對中醫(yī)文化宣傳視頻材料進(jìn)行管理。管理員在該界面可以查詢到所有的宣傳視頻條目新增宣傳視頻的時(shí)候要上傳視頻文件并且填寫標(biāo)題、類型等描述信息。管理員可以修改或者刪除已有的條目可以通過查看評論來了解用戶對于宣傳內(nèi)容的評價(jià)。是中醫(yī)宣傳管理系統(tǒng)功能界面名師講堂管理功能實(shí)現(xiàn)管理員在這里對名師講堂的視頻資源進(jìn)行管理。系統(tǒng)顯示講堂列表管理員可以新建講堂記錄輸入講師姓名和講堂標(biāo)題并關(guān)聯(lián)視頻文件。管理員可以進(jìn)入詳情頁修改講堂信息或者刪除無效的講堂也可以查看該講堂下用戶的互動評論。名教師堂管理功能界面?zhèn)鞒谢顒庸芾砉δ軐?shí)現(xiàn)本模塊可以管理員創(chuàng)建、管理線下傳承活動。管理員可以查看所有的活動新增活動的時(shí)候要設(shè)置活動的時(shí)間、地點(diǎn)和具體的介紹。管理員可以對活動詳情進(jìn)行修改、刪除已經(jīng)取消的活動并且可以用查看評論的方式來了解用戶所關(guān)注的問題和反饋。傳承活動管理功能界面報(bào)名信息管理功能實(shí)現(xiàn)本模塊用來處理用戶提交的傳承活動報(bào)名申請。管理員查詢所有的用戶報(bào)名記錄點(diǎn)擊詳情來查看用戶的完整的報(bào)名信息。管理員根據(jù)活動規(guī)則來審核報(bào)名信息決定是否可以參加。審核完畢后可以對記錄進(jìn)行刪除操作一般用來清除無效或者過期的報(bào)名數(shù)據(jù)。報(bào)名信息管理功能界面學(xué)習(xí)記錄管理功能實(shí)現(xiàn)模塊可以供管理員查看并管理所有的用戶學(xué)習(xí)行為數(shù)據(jù)。管理員登錄系統(tǒng)后可查詢學(xué)習(xí)記錄列表可以查看到任何一條學(xué)習(xí)記錄的詳細(xì)內(nèi)容。管理員可以對記錄信息進(jìn)行修改來糾正錄入時(shí)出現(xiàn)的錯誤已經(jīng)過期或者不再需要的記錄可以被刪除保證數(shù)據(jù)的質(zhì)量。學(xué)習(xí)記錄管理功能界面在線測試管理功能實(shí)現(xiàn)本模塊負(fù)責(zé)建立并維護(hù)整個的在線測試體系。管理員可以查看現(xiàn)有的試卷列表創(chuàng)建新的測試試卷修改試卷參數(shù)或者刪除試卷。模塊中有題庫管理子功能即單選題的添加、修改、刪除操作。用戶提交答題之后管理員進(jìn)入評分階段對答卷進(jìn)行評價(jià)并給出最后的分?jǐn)?shù)。在線測試管理功能界面數(shù)據(jù)庫參考CREATE TABLE user_answer ( user_answer_id mediumint(8) unsigned NOT NULL AUTO_INCREMENT COMMENT 用戶答題ID, user_id mediumint(8) NOT NULL COMMENT 用戶ID, exam_id mediumint(8) unsigned NOT NULL DEFAULT 0 COMMENT 考試id, score double(8,2) DEFAULT 0.00 COMMENT 分?jǐn)?shù), answers text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT 答案, score_detail text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT 評分詳情, objective_score double(8,2) DEFAULT 0.00 COMMENT 客觀題得分, subjective_score double(8,2) DEFAULT 0.00 COMMENT 主觀題得分, score_state tinyint(2) DEFAULT 0 COMMENT 評分狀態(tài), nickname varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 提交人, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 創(chuàng)建時(shí)間, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新時(shí)間, comment_desc varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 評語, PRIMARY KEY (user_answer_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci COMMENT用戶答題; DROP TABLE IF EXISTS code_token; CREATE TABLE code_token ( code_token_id int(11) NOT NULL AUTO_INCREMENT COMMENT 驗(yàn)證碼ID, token varchar(255) CHARACTER SET latin1 COLLATE latin1_swedish_ci DEFAULT NULL COMMENT 令牌, code varchar(255) CHARACTER SET latin1 COLLATE latin1_swedish_ci DEFAULT NULL COMMENT 驗(yàn)證碼, expire_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 失效時(shí)間, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 創(chuàng)建時(shí)間, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新時(shí)間, PRIMARY KEY (code_token_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci ROW_FORMATCOMPACT COMMENT驗(yàn)證碼; DROP TABLE IF EXISTS collect; CREATE TABLE collect ( collect_id int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 收藏ID, user_id int(10) unsigned NOT NULL DEFAULT 0 COMMENT 收藏人ID, source_table varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 來源表, source_field varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 來源字段, source_id int(10) unsigned NOT NULL DEFAULT 0 COMMENT 來源ID, title varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 標(biāo)題, img varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 封面, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 創(chuàng)建時(shí)間, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新時(shí)間, PRIMARY KEY (collect_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci COMMENT收藏; DROP TABLE IF EXISTS exam_question; CREATE TABLE exam_question ( exam_question_id mediumint(8) unsigned NOT NULL AUTO_INCREMENT COMMENT ID, type varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 類型, title varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 題目, question_item varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 選項(xiàng), answer varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 參考答案, score double(8,2) DEFAULT NULL COMMENT 總分, question_order int(11) DEFAULT NULL COMMENT 排序, exam_id mediumint(8) unsigned NOT NULL COMMENT 所屬試卷, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 創(chuàng)建時(shí)間, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新時(shí)間, answer_analysis varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 答案解析, PRIMARY KEY (exam_question_id) USING BTREE, KEY exam_id (exam_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci ROW_FORMATDYNAMIC COMMENT試題; rticle_type ( type_id smallint(5) unsigned NOT NULL AUTO_INCREMENT COMMENT 分類ID, display smallint(4) unsigned NOT NULL DEFAULT 100 COMMENT 顯示順序, name varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT COMMENT 分類名稱, father_id smallint(5) unsigned NOT NULL DEFAULT 0 COMMENT 上級分類ID, description varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 描述, icon text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci COMMENT 分類圖標(biāo), url varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 外鏈地址, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 創(chuàng)建時(shí)間, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新時(shí)間, PRIMARY KEY (type_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci COMMENT文章分類; DROP TABLE IF EXISTS operation_log; CREATE TABLE operation_log ( operation_log_id int(11) NOT NULL AUTO_INCREMENT COMMENT 操作日志ID, user_group varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 用戶角色, user_name varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 用戶賬號, routes varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 模塊名稱, create_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 創(chuàng)建時(shí)間, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新時(shí)間, PRIMARY KEY (operation_log_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8 ROW_FORMATCOMPACT COMMENT操作日志表; DROP TABLE IF EXISTS praise; CREATE TABLE praise ( praise_id int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 點(diǎn)贊ID, user_id int(11) unsigned NOT NULL DEFAULT 0 COMMENT 點(diǎn)贊人, create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 創(chuàng)建時(shí)間, update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 更新時(shí)間, source_table varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 來源表, source_field varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT 來源字段, source_id int(10) unsigned NOT NULL DEFAULT 0 COMMENT 來源ID, status tinyint(1) NOT NULL DEFAULT 1 COMMENT 點(diǎn)贊狀態(tài):1為點(diǎn)贊0已取消, img varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL, title varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL, PRIMARY KEY (praise_id) USING BTREE ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COLLATEutf8mb4_general_ci COMMENT點(diǎn)贊;代碼參考/** * 中醫(yī)典籍(ClassNameicsOfTraditionalChineseMedicine)表控制層 * */ RestController RequestMapping(/class_nameics_of_traditional_chinese_medicine) public class ClassNameicsOfTraditionalChineseMedicineController extends BaseControllerClassNameicsOfTraditionalChineseMedicine, ClassNameicsOfTraditionalChineseMedicineService { /** * 中醫(yī)典籍對象 */ Autowired public ClassNameicsOfTraditionalChineseMedicineController(ClassNameicsOfTraditionalChineseMedicineService service) { setService(service); } PostMapping(/add) Transactional public MapString, Object add(HttpServletRequest request) throws IOException { MapString,Object paramMap service.readBody(request.getReader()); paramMap.entrySet().removeIf(entry - { Object value entry.getValue(); return value instanceof String ((String) value).isEmpty(); }); ClassNameicsOfTraditionalChineseMedicine class_nameics_of_traditional_chinese_medicine new ClassNameicsOfTraditionalChineseMedicine(); class_nameics_of_traditional_chinese_medicine.setName_of_class_nameics(paramMap.get(name_of_class_nameics)null?null:String.valueOf(paramMap.get(name_of_class_nameics))); class_nameics_of_traditional_chinese_medicine.setClass_nameification_of_class_nameical_books(paramMap.get(class_nameification_of_class_nameical_books)null?null:String.valueOf(paramMap.get(class_nameification_of_class_nameical_books))); class_nameics_of_traditional_chinese_medicine.setCover_image(paramMap.get(cover_image)null?null:String.valueOf(paramMap.get(cover_image))); class_nameics_of_traditional_chinese_medicine.setAnnexes_of_class_nameical_books(paramMap.get(annexes_of_class_nameical_books)null?null:String.valueOf(paramMap.get(annexes_of_class_nameical_books))); class_nameics_of_traditional_chinese_medicine.setBook_author(paramMap.get(book_author)null?null:String.valueOf(paramMap.get(book_author))); class_nameics_of_traditional_chinese_medicine.setBook_age(paramMap.get(book_age)null?null:String.valueOf(paramMap.get(book_age))); class_nameics_of_traditional_chinese_medicine.setMain_contents(paramMap.get(main_contents)null?null:String.valueOf(paramMap.get(main_contents))); class_nameics_of_traditional_chinese_medicine.setAcademic_value(paramMap.get(academic_value)null?null:String.valueOf(paramMap.get(academic_value))); class_nameics_of_traditional_chinese_medicine.setPraise_len(paramMap.get(praise_len)null?null:Integer.valueOf(String.valueOf(paramMap.get(praise_len)))); class_nameics_of_traditional_chinese_medicine.setCollect_len(paramMap.get(collect_len)null?null:Integer.valueOf(String.valueOf(paramMap.get(collect_len)))); class_nameics_of_traditional_chinese_medicine.setComment_len(paramMap.get(comment_len)null?null:Integer.valueOf(String.valueOf(paramMap.get(comment_len)))); class_nameics_of_traditional_chinese_medicine.setCreate_by(paramMap.get(create_by)null?null:Integer.valueOf(String.valueOf(paramMap.get(create_by)))); this.addEntity(class_nameics_of_traditional_chinese_medicine); System.out.println(中醫(yī)典籍新增成功); return success(1); } PostMapping(/set) Transactional public MapString, Object set(HttpServletRequest request) throws IOException { MapString,String queryMap service.readQuery(request); MapString,String configMap service.readConfig(request); MapString,Object paramMap service.readBody(request.getReader()); paramMap.entrySet().removeIf(entry - { Object value entry.getValue(); return value instanceof String ((String) value).isEmpty(); }); ClassNameicsOfTraditionalChineseMedicine class_nameics_of_traditional_chinese_medicine new ClassNameicsOfTraditionalChineseMedicine(); class_nameics_of_traditional_chinese_medicine.setName_of_class_nameics(paramMap.get(name_of_class_nameics)null?null:String.valueOf(paramMap.get(name_of_class_nameics))); class_nameics_of_traditional_chinese_medicine.setClass_nameification_of_class_nameical_books(paramMap.get(class_nameification_of_class_nameical_books)null?null:String.valueOf(paramMap.get(class_nameification_of_class_nameical_books))); class_nameics_of_traditional_chinese_medicine.setCover_image(paramMap.get(cover_image)null?null:String.valueOf(paramMap.get(cover_image))); class_nameics_of_traditional_chinese_medicine.setAnnexes_of_class_nameical_books(paramMap.get(annexes_of_class_nameical_books)null?null:String.valueOf(paramMap.get(annexes_of_class_nameical_books))); class_nameics_of_traditional_chinese_medicine.setBook_author(paramMap.get(book_author)null?null:String.valueOf(paramMap.get(book_author))); class_nameics_of_traditional_chinese_medicine.setBook_age(paramMap.get(book_age)null?null:String.valueOf(paramMap.get(book_age))); class_nameics_of_traditional_chinese_medicine.setMain_contents(paramMap.get(main_contents)null?null:String.valueOf(paramMap.get(main_contents))); class_nameics_of_traditional_chinese_medicine.setAcademic_value(paramMap.get(academic_value)null?null:String.valueOf(paramMap.get(academic_value))); class_nameics_of_traditional_chinese_medicine.setPraise_len(paramMap.get(praise_len)null?null:Integer.valueOf(String.valueOf(paramMap.get(praise_len)))); class_nameics_of_traditional_chinese_medicine.setCollect_len(paramMap.get(collect_len)null?null:Integer.valueOf(String.valueOf(paramMap.get(collect_len)))); class_nameics_of_traditional_chinese_medicine.setComment_len(paramMap.get(comment_len)null?null:Integer.valueOf(String.valueOf(paramMap.get(comment_len)))); this.setEntity(queryMap,configMap,class_nameics_of_traditional_chinese_medicine); System.out.println(中醫(yī)典籍修改成功); return success(1); /** * 報(bào)名信息(EnrollmentInformation)表控制層 * */ RestController RequestMapping(/enrollment_information) public class EnrollmentInformationController extends BaseControllerEnrollmentInformation, EnrollmentInformationService { /** * 報(bào)名信息對象 */ Autowired public EnrollmentInformationController(EnrollmentInformationService service) { setService(service); } PostMapping(/add) Transactional public MapString, Object add(HttpServletRequest request) throws IOException { MapString,Object paramMap service.readBody(request.getReader()); paramMap.entrySet().removeIf(entry - { Object value entry.getValue(); return value instanceof String ((String) value).isEmpty(); }); EnrollmentInformation enrollment_information new EnrollmentInformation(); enrollment_information.setActivity_name(paramMap.get(activity_name)null?null:String.valueOf(paramMap.get(activity_name))); enrollment_information.setActivity_type(paramMap.get(activity_type)null?null:String.valueOf(paramMap.get(activity_type))); enrollment_information.setActivity_time(paramMap.get(activity_time)null?null:String.valueOf(paramMap.get(activity_time))); enrollment_information.setActivity_location(paramMap.get(activity_location)null?null:String.valueOf(paramMap.get(activity_location))); enrollment_information.setOrdinary_user(paramMap.get(ordinary_user)null?null:Integer.valueOf(String.valueOf(paramMap.get(ordinary_user)))); enrollment_information.setUser_name(paramMap.get(user_name)null?null:String.valueOf(paramMap.get(user_name))); if (paramMap.get(registration_date ) ! null !StringUtils.isEmpty(String.valueOf(paramMap.get(registration_date )))) { String timStr String.valueOf(paramMap.get(registration_date )); enrollment_information.setRegistration_date(parseToTimestamp(timStr)); } else { enrollment_information.setRegistration_date(null); } enrollment_information.setRegistration_remarks(paramMap.get(registration_remarks)null?null:String.valueOf(paramMap.get(registration_remarks))); enrollment_information.setExamine_state(paramMap.get(examine_state)null?null:String.valueOf(paramMap.get(examine_state))); enrollment_information.setExamine_reply(paramMap.get(examine_reply)null?null:String.valueOf(paramMap.get(examine_reply))); enrollment_information.setSource_table(paramMap.get(source_table)null?null:String.valueOf(paramMap.get(source_table))); enrollment_information.setSource_id(paramMap.get(source_id)null?null:Integer.valueOf(String.valueOf(paramMap.get(source_id)))); enrollment_information.setSource_user_id(paramMap.get(source_user_id)null?null:Integer.valueOf(String.valueOf(paramMap.get(source_user_id)))); enrollment_information.setCreate_by(paramMap.get(create_by)null?null:Integer.valueOf(String.valueOf(paramMap.get(create_by)))); this.addEntity(enrollment_information); System.out.println(報(bào)名信息新增成功); return success(1); } PostMapping(/set) Transactional public MapString, Object set(HttpServletRequest request) throws IOException { MapString,String queryMap service.readQuery(request); MapString,String configMap service.readConfig(request); MapString,Object paramMap service.readBody(request.getReader()); paramMap.entrySet().removeIf(entry - { Object value entry.getValue(); return value instanceof String ((String) value).isEmpty(); }); EnrollmentInformation enrollment_information new EnrollmentInformation(); enrollment_information.setActivity_name(paramMap.get(activity_name)null?null:String.valueOf(paramMap.get(activity_name))); enrollment_information.setActivity_type(paramMap.get(activity_type)null?null:String.valueOf(paramMap.get(activity_type))); enrollment_information.setActivity_time(paramMap.get(activity_time)null?null:String.valueOf(paramMap.get(activity_time))); enrollment_information.setActivity_location(paramMap.get(activity_location)null?null:String.valueOf(paramMap.get(activity_location))); enrollment_information.setOrdinary_user(paramMap.get(ordinary_user)null?null:Integer.valueOf(String.valueOf(paramMap.get(ordinary_user)))); enrollment_information.setUser_name(paramMap.get(user_name)null?null:String.valueOf(paramMap.get(user_name))); if (paramMap.get(registration_date ) ! null !StringUtils.isEmpty(String.valueOf(paramMap.get(registration_date )))) { String timStr String.valueOf(paramMap.get(registration_date )); enrollment_information.setRegistration_date(parseToTimestamp(timStr)); } else { enrollment_information.setRegistration_date(null); } enrollment_information.setRegistration_remarks(paramMap.get(registration_remarks)null?null:String.valueOf(paramMap.get(registration_remarks))); enrollment_information.setExamine_state(paramMap.get(examine_state)null?null:String.valueOf(paramMap.get(examine_state))); enrollment_information.setExamine_reply(paramMap.get(examine_reply)null?null:String.valueOf(paramMap.get(examine_reply))); enrollment_information.setSource_table(paramMap.get(source_table)null?null:String.valueOf(paramMap.get(source_table))); enrollment_information.setSource_id(paramMap.get(source_id)null?null:Integer.valueOf(String.valueOf(paramMap.get(source_id)))); enrollment_information.setSource_user_id(paramMap.get(source_user_id)null?null:Integer.valueOf(String.valueOf(paramMap.get(source_user_id)))); this.setEntity(queryMap,configMap,enrollment_information); System.out.println(報(bào)名信息修改成功); return success(1); } /** * 修改審核狀態(tài) * * param id 要修改的記錄ID * param newState 新的審核狀態(tài) * return 提示信息審核成功/失敗 */ Transactional GetMapping(/update_examine_state) public String updateExamineState(Long id, String newState) throws IOException { // 檢查傳入的狀態(tài)是否合法 if (!newState.equals(未審核) !newState.equals(已通過) !newState.equals(未通過)) { return 非法的審核狀態(tài); } MapString,String queryMap new HashMap(); queryMap.put(id,String.valueOf(id)); // 根據(jù)ID查找記錄 EnrollmentInformation enrollment_information service.findOne(queryMap); if (enrollment_information!null) { // 更新審核狀態(tài) enrollment_information.setExamine_state(newState); this.setEntity(queryMap,new HashMap(),enrollment_information); return 審核成功; } else { return 審核失敗記錄不存在; /** * 學(xué)習(xí)記錄(LearningRecord)表控制層 * */ RestController RequestMapping(/learning_record) public class LearningRecordController extends BaseControllerLearningRecord, LearningRecordService { /** * 學(xué)習(xí)記錄對象 */ Autowired public LearningRecordController(LearningRecordService service) { setService(service); } PostMapping(/add) Transactional public MapString, Object add(HttpServletRequest request) throws IOException { MapString,Object paramMap service.readBody(request.getReader()); paramMap.entrySet().removeIf(entry - { Object value entry.getValue(); return value instanceof String ((String) value).isEmpty(); }); LearningRecord learning_record new LearningRecord(); learning_record.setOrdinary_user(paramMap.get(ordinary_user)null?null:Integer.valueOf(String.valueOf(paramMap.get(ordinary_user)))); learning_record.setUser_name(paramMap.get(user_name)null?null:String.valueOf(paramMap.get(user_name))); learning_record.setLearning_name(paramMap.get(learning_name)null?null:String.valueOf(paramMap.get(learning_name))); learning_record.setLearning_duration(paramMap.get(learning_duration)null?null:String.valueOf(paramMap.get(learning_duration))); learning_record.setTypes_of_learning(paramMap.get(types_of_learning)null?null:String.valueOf(paramMap.get(types_of_learning))); if (paramMap.get(study_date ) ! null !StringUtils.isEmpty(String.valueOf(paramMap.get(study_date )))) { String timStr String.valueOf(paramMap.get(study_date )); learning_record.setStudy_date(parseToTimestamp(timStr)); } else { learning_record.setStudy_date(null); } learning_record.setLearning_notes(paramMap.get(learning_notes)null?null:String.valueOf(paramMap.get(learning_notes))); learning_record.setCreate_by(paramMap.get(create_by)null?null:Integer.valueOf(String.valueOf(paramMap.get(create_by)))); this.addEntity(learning_record); System.out.println(學(xué)習(xí)記錄新增成功); return success(1); } PostMapping(/set) Transactional public MapString, Object set(HttpServletRequest request) throws IOException { MapString,String queryMap service.readQuery(request); MapString,String configMap service.readConfig(request); MapString,Object paramMap service.readBody(request.getReader()); paramMap.entrySet().removeIf(entry - { Object value entry.getValue(); return value instanceof String ((String) value).isEmpty(); }); LearningRecord learning_record new LearningRecord(); learning_record.setOrdinary_user(paramMap.get(ordinary_user)null?null:Integer.valueOf(String.valueOf(paramMap.get(ordinary_user)))); learning_record.setUser_name(paramMap.get(user_name)null?null:String.valueOf(paramMap.get(user_name))); learning_record.setLearning_name(paramMap.get(learning_name)null?null:String.valueOf(paramMap.get(learning_name))); learning_record.setLearning_duration(paramMap.get(learning_duration)null?null:String.valueOf(paramMap.get(learning_duration))); learning_record.setTypes_of_learning(paramMap.get(types_of_learning)null?null:String.valueOf(paramMap.get(types_of_learning))); if (paramMap.get(study_date ) ! null !StringUtils.isEmpty(String.valueOf(paramMap.get(study_date )))) { String timStr String.valueOf(paramMap.get(study_date )); learning_record.setStudy_date(parseToTimestamp(timStr)); } else { learning_record.setStudy_date(null); } learning_record.setLearning_notes(paramMap.get(learning_notes)null?null:String.valueOf(paramMap.get(learning_notes))); this.setEntity(queryMap,configMap,learning_record); System.out.println(學(xué)習(xí)記錄修改成功); return success(1);前端基于Vue.js框架構(gòu)建用戶界面使用HTML5、CSS3和JavaScript實(shí)現(xiàn)頁面結(jié)構(gòu)與交互邏輯通過Vue Router管理路由Vuex或Pinia維護(hù)全局狀態(tài)。采用Element UI或Vant組件庫快速搭建界面Axios封裝HTTP請求實(shí)現(xiàn)與后端的數(shù)據(jù)通信。后端基于Spring Boot框架搭建遵循Controller-Service-Mapper三層架構(gòu)。Controller層接收前端請求并校驗(yàn)參數(shù)Service層處理核心業(yè)務(wù)邏輯Mapper層通過MyBatis或MyBatis-Plus完成數(shù)據(jù)庫操作。使用Spring Security或Shiro結(jié)合JWT實(shí)現(xiàn)用戶認(rèn)證與權(quán)限控制。數(shù)據(jù)庫采用MySQL存儲持久化數(shù)據(jù)Redis緩存熱點(diǎn)信息以提升系統(tǒng)性能。開發(fā)工具使用IDEA開發(fā)后端VSCode或HBuilderX開發(fā)前端Git進(jìn)行版本管理Maven和npm分別管理前后端依賴。精彩專欄 推薦訂閱Java精品項(xiàng)目案例【3000套】Python精品項(xiàng)目案例【500套】uniapp/微信小程序/安卓app【800套】2026-2027屆Java畢業(yè)設(shè)計(jì)優(yōu)質(zhì)選題匯總百個熱門方向完整推薦?2026-2027屆Python畢業(yè)設(shè)計(jì)優(yōu)質(zhì)選題匯總百個熱門方向完整推薦?2026-2027屆小程序/APP畢業(yè)設(shè)計(jì)優(yōu)質(zhì)選題匯總百個熱門方向完整推薦??獲取源碼請私信?感興趣的可以先收藏起來還有大家在畢設(shè)選題項(xiàng)目以及論文編寫等相關(guān)問題都可以找我咨詢希望幫助更多的人??