畢業(yè)設計(論文)-Springboot黨員信息管理系統(tǒng)設計_第1頁
畢業(yè)設計(論文)-Springboot黨員信息管理系統(tǒng)設計_第2頁
畢業(yè)設計(論文)-Springboot黨員信息管理系統(tǒng)設計_第3頁
畢業(yè)設計(論文)-Springboot黨員信息管理系統(tǒng)設計_第4頁
畢業(yè)設計(論文)-Springboot黨員信息管理系統(tǒng)設計_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

Java黨建信息管理平臺緒論研究背景意義隨著信息技術的蓬勃發(fā)展,現(xiàn)代社會進入了以計算機為中心的信息時代,以計算機技術為核心的新技術革命正在以一種前所未有的持久方式改變著世界的面貌,全面推動了社會的發(fā)展,改變了社會經濟結構。人們對工作的觀念也發(fā)生了變化,生活節(jié)奏越來越快,生活方式出現(xiàn)了多樣化。社會環(huán)境發(fā)生的這種深刻的變化導致工作改革跟不上,大量的流動人員使隊伍管理產生許多新的情況新的問題無法及時解決,使得傳統(tǒng)手工信息管理模式面臨著嚴峻的挑戰(zhàn),所以開發(fā)新的管理系統(tǒng)減輕信息管理人員工作壓力是社會發(fā)展的必然形勢。與此同時,的人數(shù)越來越多,黨員也越來越多,傳統(tǒng)的黨建黨建黨員信息管理系統(tǒng)出現(xiàn)了很多新問題,急需開發(fā)新的黨建信息員管理系統(tǒng)。黨建黨員信息管理是對黨內各項業(yè)務和事務的一項工作,是貫徹黨的基本路線的重要保證所以計算機為中心的信息時代的到來,黨的建設工作也要與時俱進,實現(xiàn)現(xiàn)代化,而采用計算機信息科學技術實現(xiàn)黨務工作信息化,正是實現(xiàn)黨的建設現(xiàn)代化的有益嘗試和積極探索。通過分析黨建黨建黨員信息管理業(yè)務,結合黨建黨員信息管理自身特點,有效的把黨務內部活動有機組織起來,搭建一個行之有效的黨建黨員信息管理系統(tǒng)應用于基層黨組織。黨建黨員信息管理系統(tǒng)設計與實現(xiàn)是結合基層黨組織和黨員隊伍管理的實際情況,詳細而深入黨務系統(tǒng)的需求進行分析,借鑒各地推進黨務信息化的做法和經驗,對系統(tǒng)的建設進行初步的設計和探討。系統(tǒng)涵蓋了基層黨組織和黨員等日常管理的主要工作,為基層黨組織和黨員提供直觀形象便捷的信息服務,滿足管理部門目常需要,對黨務以及與黨務相關的各項服務和信息進行管理。1.2國內外有關本選題的研究現(xiàn)狀信息管理系統(tǒng)(InformationManagementSystem)是由人、計算機以及其他外韋設備組成的能夠進行信息收集、傳遞、存儲、加工、維護和使用的系統(tǒng)。它是上世紀60年代開始在美國興起的新科學,是利用了計算機和網絡通訊技術,通過加強對信息的管理,以及擁有的資源做調查,并建立準確的數(shù)據(jù)。然后經過加工處理提供給管理者,使其能夠做出正確的決策,達到提高管理水平和工作效率的效果。黨建黨員信息管理是各個部門,公司,學校等黨建工作中重要的日常性工作,把黨務工作納入信息化管理的軌道,是網絡時代推動黨建工作的新要求,也是執(zhí)政黨建設面臨的新課題。為了加強黨建黨員信息管理,及時準確了解黨建黨員情況,提升黨員管理信息化的水平,筆者結合自身工作實際,經過詳細需求分析和論證,提出開發(fā)人才交流中心黨員管理系統(tǒng)、以電子信息化手段替代傳統(tǒng)處理手段,建立一種集黨員信息查詢、發(fā)展審批、統(tǒng)計、分類、匯總干一體,貫穿黨員培養(yǎng)發(fā)展全過程,結合黨員考核、黨費收繳、組織關系轉入轉出等相關功能使黨建黨建黨員信息管理更為規(guī)范化、制度化。1.3研究的內容黨建黨員信息管理系統(tǒng)是黨委組織工作不可缺少的一部分,一個功能齊全、簡單易用的黨建黨員信息管理系統(tǒng)能有效地減輕黨員管理工作人員的工作負擔,提高工作效率。隨著經濟的發(fā)展,人員交流來往的頻繁,黨員管理更加需要一套信息系統(tǒng)以提高信息管理的快捷及準確性。本設計主要是基于B/S模式下黨建黨員信息管理系統(tǒng)的設計來進行分析,建立一套適應黨建黨員信息管理工作需要的及充分利用計算機技術、網絡技術、數(shù)據(jù)庫技術的黨建黨員信息管理信息系統(tǒng)。為此,建立一個黨建黨員管理的信息庫,把所有黨建新聞、黨員的信息,包括流動黨員的信息全部保存在信息庫存中,以便于管理、查詢、統(tǒng)計等。主要是為了對所有黨建黨員信息實行計算機化自動化管理,以提高工作效率,方便管理。二、相關技術介紹2.1spring

Spring框架是Java技術平臺上的一種常見開源應用框架,提具有控制反轉IOC的容器。盡管長時間以來Spring框架自身對編程沒有限制,但是其在Java應用中的頻繁使用讓它很受青睞,所有后來讓它作為EJB(EnterpriseJavaBeans)模型信息補充,javaSpring框架為開發(fā)提供了一系列技術解決方案,比如:利用控制反轉IOC的特性,通過實現(xiàn)依賴注入來實現(xiàn)管理整個對象生命周期容器化,利用java面向切面編程技術進行聲明式事務管理,整合各種持久化技術管理數(shù)據(jù)的訪問,提供了很多優(yōu)秀的Web框架方便開發(fā)、JAVASpring框架具有控制反轉IOC特性,IOC主要在方便項目維護和測試時期,它提供了一種通過Java反射機制對Java對象進行統(tǒng)一配置與各種管理的方法。

2.2SpringMVCSpringMVC框架是一個經典的MVC流程框架,通過實現(xiàn)ModelView以及Controller處理器來很好地將數(shù)據(jù)和業(yè)務以及展現(xiàn)層進行完全分離。從這樣的一個角度來說的話,SpringMVC、Struts以及Struts2非常的類似。SpringMVC總體設計是圍繞DispatcherServlet前端控制器來展開的,DispatcherServlet負責將前端請求發(fā)送到特定的handler映射。通過配置的handlermappingsviewresolutionlocale以及themeresolution來處理收到的請求并且轉到對應的視圖處理器。SpringMVC請求業(yè)務處理的整體流程如下展示:

2.3mybatisMyBatis框架是底層JDBC訪問數(shù)據(jù)庫的封裝,它使得底層訪問數(shù)據(jù)庫的操作是透明的。MyBatis的操作是基于一個SQLSessionFactory實例。MyBatis框架通過各種配置文件與特定對象實體類的映射Mapper文件相關聯(lián),并且Mapper文件配置了每個對象到數(shù)據(jù)庫的SQL映射。當與數(shù)據(jù)庫交互時,通過SQLSessionFactory實例獲取SQLSession對象并執(zhí)行SQL命令。訪問數(shù)據(jù)庫。2.4jQueryJQuery框架是一個快速、經典和簡單的JavaScript前端框架計劃。它是繼Prototype之后的又一個優(yōu)秀的JavaScript代碼基礎框架。jQuery設計的目的是寫的少,做的多,也就是說寫的代碼少。它做的事情越多,就封裝了常見的JavaScript功能和代碼,并提供了一個簡單的JavaScript設計相關的模式,用于優(yōu)化HTML文檔操作、事件處理、CSS樣式化、動畫設計和Ajax請求交互。2.5MysqlMySQL數(shù)據(jù)庫是與PHP、Java、c++/c#等主流編程語言技術緊密結合的安全、跨平臺、高效的輕量級數(shù)據(jù)庫系統(tǒng)。MySQL數(shù)據(jù)庫系統(tǒng)是由瑞典公司MySQLAB開發(fā)、發(fā)布和支持的。它于1995年由MySQL的最初開發(fā)者DavidAxmark和MichaelMontyWdenius創(chuàng)建。目前,MySQL數(shù)據(jù)庫在互聯(lián)網網站上被廣泛使用。由于MySQL數(shù)據(jù)庫體積小、速度快、整體擁有成本很低,尤其是在開源的特點上,很多互聯(lián)網公司都采用了MySQL數(shù)據(jù)庫來降低開發(fā)系統(tǒng)的成本。MySQL數(shù)據(jù)庫是世界上最快的SQL數(shù)據(jù)庫之一。因為它有許多其他數(shù)據(jù)庫沒有的特性,MySQL數(shù)據(jù)庫也是免費和開源的。用戶可以通過網絡直接從網站上下載MySQL數(shù)據(jù)庫并使用,無需支付任何費用。2.6SpringBootSpringBoot是一個新的開源輕量級框架,由Pivotal團隊于2013年開始開發(fā),第一個版本于2014年4月發(fā)布。它是基于Spring4.0設計的,不僅繼承了Spring框架的優(yōu)秀特性,而且通過簡化配置簡化了Spring應用程序的整個設置和開發(fā)過程。此外,SpringBoot集成了大量框架來解決版本沖突和依賴包引用不穩(wěn)定的問題。SpringBoot功能包括:(1)你可以創(chuàng)建獨立的Spring應用程序,并基于它們的Maven或Gradle插件創(chuàng)建可執(zhí)行的jar和Wars;(2)嵌入Tomcat或Jetty等Servlet容器;(3)提供“starter”項目對象模型(POMS)的自動配置,簡化Maven的配置;(4)只要可能,自動配置Spring容器;(5)提供現(xiàn)成的功能,如度量、健康檢查和外部化配置;(6)絕對不需要代碼生成,不需要XML配置。[1][2]在SpringBoot框架中還有兩個非常重要的策略:開箱即用和約定優(yōu)于配置。OutOfBox是一種開箱即用的方法,通過向Maven項目的POM文件添加依賴包,然后使用相應的注釋,而不是冗長的XML配置文件,可以在開發(fā)期間管理對象的生命周期。該特性將開發(fā)人員從復雜的配置和依賴管理中解放出來,并允許他們更多地關注業(yè)務邏輯。約定優(yōu)于配置是一種軟件設計范式,其中目標結構由SpringBoot本身配置,開發(fā)人員將信息添加到結構中。這降低了一些靈活性并增加了BUG定位的復雜性,但它減少了開發(fā)人員需要做出的決策數(shù)量,減少了大量XML配置,并實現(xiàn)了代碼編譯、測試和打包的自動化。從前端到后臺描述了SpringBoot應用系統(tǒng)開發(fā)模板的基本架構設計:前端經常使用模板引擎,主要是Freemarker和Thymeleaf,它們是用Java語言編寫的,用來呈現(xiàn)模板并輸出相應的文本,這樣接口設計就與應用程序的邏輯分離了。同時,前端開發(fā)也使用了Bootstrap、AngularJS、jQuery等。瀏覽器的數(shù)據(jù)傳輸格式包括JSON、non-XML和RESTfulAPI。對于數(shù)據(jù)訪問層,主要有Hibernate、MyBatis、JPA等持久性層框架;數(shù)據(jù)庫常用MySQL;推薦開發(fā)工具IntelliJidea。三、需求分析和可行性3.1系統(tǒng)功能概述3.1主要模塊設計如下:3.2系統(tǒng)運行環(huán)境開發(fā)系統(tǒng):Windows7。JDK版本:JavaJDK1.8開發(fā)工具:IDEA數(shù)據(jù)庫版本:mysql5數(shù)據(jù)庫可視化工具:navicatformysql服務器:apachetomcat7其他工具:谷歌瀏覽器控制臺調整網頁布局Postman接口工具進行接口測試3.3技術設計此系統(tǒng)需要java面向對象編程基礎,數(shù)據(jù)庫知識和功能分析。根據(jù)目前階段所掌握的相關專業(yè)知識,以及這學期和之前學習掌握的java編程知識和數(shù)據(jù)庫應用知識以及前端知識做出一個這樣的基于springboot+vue前后端分離的輕量級框架網頁版的黨建信息管理管理平臺。3.4社會可行性在互聯(lián)網技術高速發(fā)展的今天,通過互聯(lián)網的傳播會讓企業(yè)更容易的創(chuàng)造更多的經濟效益,利用互聯(lián)網的傳播黨建信息管理、通過網頁版黨建信息管理平臺的實現(xiàn),讓更多人了解到黨建新聞、組織風采等相關信息、得到了更大的宣傳,在這樣一個大環(huán)境下把資源統(tǒng)籌規(guī)化起來,就會獲得高效的黨建黨員信息和推廣。3.5安全性可行性人們在使用網絡的時候越來越重視信息的安全性,這也促進了加密技術的發(fā)展,同時應用加密技術能夠有效提升網絡信息的安全性。本黨建信息管理平臺系統(tǒng)采用了幾種加密保護、對本地用戶密碼采用MD5加密方式、頁面發(fā)送請求獲取數(shù)據(jù)采用關鍵部分采用post請求對數(shù)據(jù)傳輸?shù)谋Wo機制、避免請求數(shù)據(jù)暴露在瀏覽器上面、以及不同用戶具有不同權限操作通過這些安全性操作,保證系統(tǒng)的穩(wěn)定性以及可靠性。3.6經濟可行性服務器端的安裝簡潔明了,客戶機無需再裝任何軟件,通過瀏覽器就可以直接訪問,可以直接接入Internet,無論您身在何處只要您可以訪問Internet都可以使用本系統(tǒng)。本系統(tǒng)對計算機配置的要求不高,企業(yè)機房更換下來的低配置電腦都可以完全滿足需要、所以在經濟上具有完全的可行性。3.7法律可行性本系統(tǒng)是自行開發(fā)的黨建信息管理平臺系統(tǒng),是很有實際意義的系統(tǒng),開發(fā)環(huán)境軟件和使用的數(shù)據(jù)庫都是開源代碼,開發(fā)這個系統(tǒng)不同于開發(fā)普通的系統(tǒng)軟件,不存在侵權等問題,即法律上是可行的。四、系統(tǒng)設計4.1系統(tǒng)模式架構本系統(tǒng)經典的采用B/S架構(瀏覽器、服務器),是采用瀏覽器和服務器架構模式設計的架構,隨著Internet技術的興起,對C/S架構模式的一種改變升級或改進。目前,在該架構的應用下,用戶通過WWW.瀏覽器實現(xiàn)數(shù)據(jù)訪問和操作。一小部分事務邏輯在前端頁面實現(xiàn),主要業(yè)務事務邏輯在服務器端實現(xiàn),形成三層結構MVC。B/S架構是Web興起后主流的網絡架構設計模式。Web瀏覽器是目前最重要的客戶端應用軟件之一。該模式形成了一個統(tǒng)一的客戶端,將系統(tǒng)功能的所有核心部分集中在服務器上實現(xiàn)。簡化系統(tǒng)開發(fā)和維護。只要客戶端安裝了瀏覽器就可以操作,服務器端安裝了Oracle、MySQL、Sybase等數(shù)據(jù)庫。瀏覽器通過WebServer和數(shù)據(jù)庫獲取數(shù)據(jù)。簡化客戶端計算機的負載,降低系統(tǒng)維護和升級的成本和工作量,降低用戶的成本。4.2系統(tǒng)層次架構系統(tǒng)根據(jù)以上的邏輯結構,分為3層結構。系統(tǒng)按照處理層次從上至下依次劃分為(1)展現(xiàn)層:它處理與用戶的交互界面、數(shù)據(jù)傳輸,信息收集等。(2)應用層:它是系統(tǒng)功能邏輯處理層,主要處理展現(xiàn)層發(fā)出的請求,并將處理結果返回展現(xiàn)層。(3)核心層:它是系統(tǒng)運行核心及應用層的基礎,提供應用層權限控制、數(shù)據(jù)讀取等。4.3系統(tǒng)功能詳情設計系統(tǒng)主要設計采用Java語言開發(fā)、采用springboot和vue前后端分離的模式、java為后臺框架、數(shù)據(jù)庫框架采用mybatis、前端采用vue、elemeentui、jquery、layui框架等主要模塊設計如下:1.用戶模塊管理:用戶登錄、用戶注冊、用戶的查詢、刪除操作、用戶分為不同權限、可以通過角色來靈活控制。2.首頁介紹:登錄后進入首頁查看系統(tǒng)設計的基本宣傳信息。3.黨建數(shù)據(jù)分析展示:查看黨建數(shù)據(jù)的樹狀圖信息4.黨建用戶管理:用戶添加、修改、刪除、和權限修改。5.黨建職位管理:黨建職位的添加、修改、刪除和查看以及權限分配。6.黨建菜單管理:黨建菜單的添加、修改、刪除和查看以及權限分配。7.系統(tǒng)SQL監(jiān)控:查看系統(tǒng)的運行情況以及SQL數(shù)據(jù)的情況、運行狀態(tài)、時間8.系統(tǒng)組織架構:添加黨建組織架構、修改、查看以及刪除和分配權限等。9.通知公告管理:添加黨建通知公告信息、修改、查看以及刪除等。10.黨建要聞管理:添加黨建要聞信息、修改、查看以及刪除等。11.組織風采管理:添加組織風采信息、修改、查看以及刪除等。12.黨建資料管理:添加上傳黨建資料信息、修改、查看以及刪除等。13.組織發(fā)展學習:添加組織發(fā)展信息、修改、查看以及刪除等14.組織發(fā)展考試:添加組織發(fā)展考試信息、修改、查看以及刪除等15.修改密碼和退出等:4.4主流程描述5項目架構方案圖五、系統(tǒng)實現(xiàn)5.1系統(tǒng)主要功能主要設計5.1.1用戶登錄用戶輸入登錄地址:http://localhost:8001/#/login進入到登錄頁面、輸入賬號密碼進行登錄驗證、<h3class="login-title">黨建系統(tǒng)登錄</h3><el-form:model="dataForm":rules="dataRule"ref="dataForm"@keyup.enter.native="dataFormSubmit()"status-icon><el-form-itemprop="userName"><el-inputv-model="dataForm.userName"placeholder="帳號"></el-input></el-form-item><el-form-itemprop="password"><el-inputv-model="dataForm.password"type="password"placeholder="密碼"></el-input></el-form-item><el-form-itemprop="captcha"><el-row:gutter="20"><el-col:span="14"><el-inputv-model="dataForm.captcha"placeholder="驗證碼"></el-input></el-col><el-col:span="10"class="login-captcha"><img:src="captchaPath"@click="getCaptcha()"alt=""></el-col></el-row></el-form-item><el-form-item><el-buttonclass="login-btn-submit"type="danger"@click="dataFormSubmit()">登錄</el-button></el-form-item></el-form>后臺登錄代碼實現(xiàn):驗證登錄信息是否正確、獲取賬號密碼校驗、返回前端對應信息。/** *登錄 */ @PostMapping("/sys/login") publicMap<String,Object>login(@RequestBodySysLoginFormform)throwsIOException{ booleancaptcha=sysCaptchaService.validate(form.getUuid(),form.getCaptcha());// if(!captcha){// returnR.error("驗證碼不正確");// } //用戶信息 SysUserEntityuser=sysUserService.queryByUserName(form.getUsername()); //賬號不存在、密碼錯誤 if(user==null||!user.getPassword().equals(newSha256Hash(form.getPassword(),user.getSalt()).toHex())){ returnR.error("賬號或密碼不正確"); } //賬號鎖定 if(user.getStatus()==0){ returnR.error("賬號已被鎖定,請聯(lián)系管理員"); } //生成token,并保存到數(shù)據(jù)庫 Rr=sysUserTokenService.createToken(user.getUserId()); returnr; }5.1.2黨建信息管理首頁黨建黨員信息管理后臺代碼實現(xiàn):/***前臺分頁查詢文章**@paramarticle*@parampublishDates*@parampage*@parampageSize*@return*/@RequestMapping("/list")publicMap<String,Object>list(Articlearticle,@RequestParam(value="publishDates",required=false)StringpublishDates,@RequestParam(value="p",required=false)Integerp,@RequestParam(value="page",required=false)Integerpage,@RequestParam(value="pageSize",required=false)IntegerpageSize,HttpServletRequestrequest){Map<String,Object>resultMap=newHashMap<String,Object>();Useruser=(User)request.getSession().getAttribute("user");List<Article>retArt=newArrayList<>();Strings_bPublishDate=null;//開始時間Strings_ePublishDate=null;//結束時間if(StringUtil.isNotEmpty(publishDates)){String[]strs=publishDates.split("-");//拆分時間段s_bPublishDate=strs[0];s_ePublishDate=strs[1];}if(p!=null&&p==1){Useru=userService.findById(user.getUserId());article.setUserId(u.getUserId());}elseif(p!=null&&p==2){Useru=userService.findById(user.getUserId());StringartIds=u.getArticleIds();List<String>result=newArrayList<>();if(StringUtils.isNotBlank(artIds)){result=Arrays.asList(StringUtils.split(artIds,","));}List<Integer>retIds=newArrayList<>();for(Stringtemp:result){retIds.add(Integer.valueOf(temp).intValue());}retArt=articleService.findByListId(retIds);}Longtotal=articleService.getCount(article,s_bPublishDate,s_ePublishDate);if(p!=null&&p==2){total=(long)retArt.size();}inttotalPage=(int)(total%pageSize==0?total/pageSize:total/pageSize+1);//總頁數(shù)resultMap.put("totalPage",totalPage);resultMap.put("errorNo",0);if(p!=null&&p==2){resultMap.put("data",retArt);}else{resultMap.put("data",articleService.list(article,s_bPublishDate,s_ePublishDate,1,pageSize));}resultMap.put("total",total);returnresultMap;}5.1.3黨建信息用戶列表用戶添加:后臺主要代碼實現(xiàn):/** *保存用戶 */ @SysLog("保存用戶") @PostMapping("/save") @RequiresPermissions("sys:user:save") publicRsave(@RequestBodySysUserEntityuser){ ValidatorUtils.validateEntity(user,AddGroup.class); user.setCreateUserId(getUserId()); sysUserService.saveUser(user); returnR.ok(); }}5.2.4黨建信息管理發(fā)布點擊添加黨建新聞輸入相關信息完成添加。前端主要代碼樣式:<el-table-columntype="selection"header-align="center"align="center"width="50"></el-table-column><el-table-columnprop="id"header-align="center"align="center"width="60"label="ID"></el-table-column><el-table-columnprop="ty"header-align="center"align="center"label="要聞分類"width="120"></el-table-column><el-table-columnprop="unit"header-align="center"align="center"label="發(fā)布單位"width="140"></el-table-column><el-table-columnprop="title"header-align="center"align="center"label="黨建要聞標題"width="400"></el-table-column><el-table-columnprop="num"header-align="center"align="center"label="發(fā)布編號"width="120"></el-table-column><el-table-columnprop="createBy"header-align="center"align="center"label="發(fā)布人"></el-table-column><el-table-columnprop="createTime"header-align="center"align="center"label="發(fā)布時間"></el-table-column><el-table-columnfixed="right"header-align="center"align="center"label="操作">后臺代碼實現(xiàn):/***添加黨建新聞信息*/@PostMapping("/save")@RequiresPermissions("sys:news:save")publicRsave(@RequestBodyNewsnews){news.setCreateBy(getUser().getUsername());news.setCreateTime(newDate());newsService.saveOrUpdate(news);returnR.ok();}}5.2.5黨建信息組織架構后臺代碼實現(xiàn):/** *導航黨建菜單 */ @GetMapping("/nav") publicRnav(){ List<SysMenuEntity>menuList=sysMenuService.getUserMenuList(getUserId()); Set<String>permissions=shiroService.getUserPermissions(getUserId()); returnR.ok().put("menuList",menuList).put("permissions",permissions); } /** *所有黨建組織菜單列表 */ @GetMapping("/list") @RequiresPermissions("sys:menu:list") publicList<SysMenuEntity>list(){ List<SysMenuEntity>menuList=sysMenuService.list(); HashMap<Long,SysMenuEntity>menuMap=newHashMap<>(12); for(SysMenuEntitys:menuList){ menuMap.put(s.getMenuId(),s); } for(SysMenuEntitys:menuList){ SysMenuEntityparent=menuMap.get(s.getParentId()); if(Objects.nonNull(parent)){ s.setParentName(parent.getName()); } } returnmenuList; }5.2.6添加黨建組織架構添加/***/** *選擇菜單(添加、修改菜單) */ @GetMapping("/select") @RequiresPermissions("sys:menu:select") publicRselect(){ //查詢黨建列表數(shù)據(jù) List<SysMenuEntity>menuList=sysMenuService.queryNotButtonList(); //添加黨建頂級菜單 SysMenuEntityroot=newSysMenuEntity(); root.setMenuId(0L); root.setName("一級菜單"); root.setParentId(-1L); root.setOpen(true); menuList.add(root); returnR.ok().put("menuList",menuList); }}5.2.7黨建組織風采列表/***前端列表數(shù)據(jù)渲染*@Title:add*/<el-table-columntype="selection"header-align="center"align="center"width="50"></el-table-column><el-table-columnprop="id"header-align="center"align="center"width="60"label="ID"></el-table-column><el-table-columnprop="ty"header-align="center"align="center"label="風采分類"width="120"></el-table-column><el-table-columnprop="unit"header-align="center"align="center"label="發(fā)布單位"width="140"></el-table-column><el-table-columnalign="center"prop="img"label="圖片"><templateslot-scope="scope"><el-popoverplacement="right"title=""trigger="hover"><img:src="scope.row.img"style="width:800px;height:600px"/><imgslot="reference":src="scope.row.img":alt="scope.row.img"style="max-height:50px;max-width:60px"></el-popover></template></el-table-column><el-table-columnprop="title"header-align="center"align="center"label="組織風采標題"width="360"></el-table-column><el-table-columnprop="num"header-align="center"align="center"label="發(fā)布編號"width="120"></el-table-column><el-table-columnprop="createBy"header-align="center"align="center"label="發(fā)布人"></el-table-column><el-table-columnprop="createTime"header-align="center"align="center"label="發(fā)布時間"></el-table-column><el-table-columnfixed="right"header-align="center"align="center"label="操作">}5.2.8修改組織風采信息 *修改 */ @SysLog("修改組織風采菜單") @PostMapping("/update") @RequiresPermissions("sys:menu:update") publicRupdate(@RequestBodySysMenuEntitymenu){ //數(shù)據(jù)校驗 verifyForm(menu); sysMenuService.updateById(menu); returnR.ok(); }5.2.9上傳黨建資料文檔前端代碼樣式:<el-form-itemlabel="資料類型"prop="classify"><el-inputv-model="dataForm.classify"placeholder="資料類型"></el-input></el-form-item><el-form-itemlabel="上傳文件"style="margin-left:7%;"prop="File"><el-uploadclass="avatar-uploader"ref="upload":action="url":on-preview="handlePreview":auto-upload="false":before-upload="onBeforeUpload":on-change="handleChange":data="dataForm"><el-buttonsize="small"type="primary">點擊上傳</el-button> <imgsrc="{{d.headPortrait}}"class="layui-nav-img"/>{{d.nickname}} </script>5.2.10查看黨建資料文檔后臺代碼:/**//查看附件信息//@RequiresPermissions("sys:file:info")@RequestMapping("file/getFileDetail")publicRgetFileDetail(HttpServletRequestrequest){Filefile=fileServiceImpl.getById(request.getParameter("id"));returnR.ok().put("url",file.getPath());}5.2.11修改密碼后臺代碼:/** *修改登錄用戶密碼 */ @SysLog("修改密碼") @PostMapping("/password") publicRpassword(@RequestBodyPasswordFormform){ Assert.isBlank(form.getNewPassword(),"新密碼不為能空"); //sha256加密 Stringpassword=newSha256Hash(form.getPassword(),getUser().getSalt()).toHex(); //sha256加密 StringnewPassword=newSha256Hash(form.getNewPassword(),getUser().getSalt()).toHex(); //更新密碼 booleanflag=sysUserService.updatePassword(getUserId(),password,newPassword); if(!flag){ returnR.error("原密碼不正確"); } returnR.ok(); }}數(shù)據(jù)庫主表設計6.1數(shù)據(jù)庫表設計數(shù)據(jù)庫采用mysql5版本、滿足數(shù)據(jù)庫設計三范式。編碼采用utf8--UTF-8Unicode排序規(guī)則采用utf8_general_ci

6.2數(shù)據(jù)庫三范式要求:一、第一范式1NF是對屬性的原子性,要求屬性具有原子性,不可再分解;二、第二范式2NF是對記錄的唯一性,要求記錄有唯一標識,即實體的唯一性,即不存在部分依賴;三、第三范式3NF是對字段的冗余性,要求任何字段不能由其他字段派生出來,它要求字段沒有冗余,即不存在傳遞依賴;

6.3數(shù)據(jù)庫表ER圖

6.4用戶表設計數(shù)據(jù)庫名:renren-dangyuan文檔版本:V1.0.0文檔描述:數(shù)據(jù)庫表設計描述表dj_news(黨建新聞表)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1idint100NY2titlevarchar2550YN標題3tyvarchar2550YN類型4create_timedatetime190YN發(fā)布時間5unitvarchar2550YN發(fā)布單位6numvarchar2550YN發(fā)布編號7contentmediumtext167772150YN主要內容8create_byvarchar2550YN發(fā)布人9bzvarchar2550YN備注信息10kindvarchar2550YN種類(黨建要聞組織風采)11imgvarchar2550YN圖片地址表exam(黨建組織發(fā)展考試表)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1idint100NYId2titlevarchar2550YN標題3answvarchar2550YN答案4user_namevarchar2550YN用戶姓名5exam_timedatetime190YN考試時間6user_scorevarchar2550YN用戶分數(shù)7is_qualifiedvarchar2550YN是否合格8tyvarchar2550YN類型9p_namevarchar2550YN父級菜單10mobilevarchar2550YN手機號表file(黨建文件資料表)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1idint100NYId2pathvarchar2550YN路徑3file_namevarchar2550YN附件名稱4file_typevarchar2550YN類型5classifyvarchar2550YN分類6create_timedatetime190YN創(chuàng)建時間7create_byvarchar2550YN創(chuàng)建人表inform(黨建通知公告表)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1idint100NYId2titlevarchar2550YN標題3contenttext655350YN內容4create_timetimestamp190YNCURRENT_TIMESTAMP創(chuàng)建時間5create_byvarchar2550YN創(chuàng)建人6bzvarchar2550YN備注信息表sys_captcha(系統(tǒng)驗證碼)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1uuidchar360NYuuid2codevarchar60NN驗證碼3expire_timedatetime190YN過期時間表sys_config(系統(tǒng)配置信息表)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1idbigint200NY2param_keyvarchar500YNkey3param_valuevarchar20000YNvalue4statustinyint40YN1狀態(tài)0:隱藏1:顯示5remarkvarchar5000YN備注表sys_dept(部門管理)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1dept_idbigint200NY2parent_idbigint200YN上級部門ID,一級部門為03namevarchar500YN部門名稱4order_numint100YN排序5del_flagtinyint40YN0是否刪除-1:已刪除0:正常6remarkvarchar2550YN表sys_log(系統(tǒng)日志)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1idbigint200NY2usernamevarchar500YN用戶名3operationvarchar500YN用戶操作4methodvarchar2000YN請求方法5paramsvarchar50000YN請求參數(shù)6timebigint200NN執(zhí)行時長(毫秒)7ipvarchar640YNIP地址8create_datedatetime190YN創(chuàng)建時間表sys_menu(菜單管理)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1menu_idbigint200NY2parent_idbigint200YN父菜單ID,一級菜單為03namevarchar500YN菜單名稱4urlvarchar2000YN菜單URL5permsvarchar5000YN授權(多個用逗號分隔,如:user:list,user:create)6typeint100YN類型0:目錄1:菜單2:按鈕7iconvarchar500YN菜單圖標8order_numint100YN排序表sys_oss(文件上傳)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1idbigint200NY2urlvarchar2000YNURL地址3create_datedatetime190YN創(chuàng)建時間表sys_role(角色)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1role_idbigint200NY2role_namevarchar1000YN角色名稱3remarkvarchar1000YN備注4create_user_idbigint200YN創(chuàng)建者ID5create_timedatetime190YN創(chuàng)建時間6dept_idint100YN表sys_role_dept(角色與部門對應關系)編號名稱數(shù)據(jù)類型長度小數(shù)位允許空值主鍵默認值說明1idbigint200NY2role_idbigint200YN角色ID3dept_idbigint200YN

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論