• 基于ssm高校档案管理系统源码


      档案管理作为企事业单位管理工作的基础,档案是企事业单位建设信息系统的重要组成部分,档案是提高企事业单位工作质量和工作效率的必要条件,甚至是维护历史真实面貌的一项重要工作。

      1、档案信息数字化能够提供档案信息方便快捷的服务方式。

      数字化的档案信息可以通过网络等现代技术实现异地的远程利用,为需求者提供方便快捷的档案信息服务方式和途径。

      2、档案信息数字化是对纸制档案原件实行有效保护方式。

      档案唯一性、原始性和凭证性是真实记录历史的重要体现,因而历史的延续需要必须最大限度的保护档案,档案数字化之后,档案利用方式主要是使用数字化的档案信息,档案原件从而得到了有效保护。

      3.、提供多种方式的信息上报功能

      能够满足地方档案馆所辖范围内的立档单位档案信息采集、档案整理以及档案数据上报的需求。结合实际情况立档单位可以通过离线或者在线的形式进行档案信息采集,并形成上报文件。

      4.、专注档案业务系统间的合理化整合与无缝衔接

      将档案馆政务信息发布系统、档案馆系统以及立档单位档案系统“三合而一”形成完整的综合档案管理系统。

      档案管理系统适用于各机关、企事业单位、工厂、学校等的人事管理,档案管理是进行人力资源管理的强大工具。

    开发环境:

    开发工具:idea (eclipse)

    环境:jdk1.8 mysql5.7
    数据库库连接工具 navcat

    项目源码演示视频:

    ssm高校档案管理系统源码

     

    1. package school.controller.admin;
    2. import com.github.pagehelper.PageHelper;
    3. import com.github.pagehelper.PageInfo;
    4. import org.springframework.beans.factory.annotation.Autowired;
    5. import org.springframework.stereotype.Controller;
    6. import org.springframework.ui.Model;
    7. import org.springframework.web.bind.annotation.*;
    8. import org.springframework.web.multipart.MultipartFile;
    9. import school.domain.Category;
    10. import school.domain.Doc;
    11. import school.domain.User;
    12. import school.mapper.CategoryMapper;
    13. import school.mapper.DocMapper;
    14. import school.mapper.UserMapper;
    15. import school.support.BaseController;
    16. import school.support.pojo.DocPo;
    17. import school.support.util.ParamUtils;
    18. import tk.mybatis.mapper.entity.Example;
    19. import tk.mybatis.mapper.util.StringUtil;
    20. import java.util.Date;
    21. import java.util.List;
    22. @RequestMapping("doc")
    23. @Controller
    24. public class DocController extends BaseController {
    25. @Autowired
    26. private DocMapper docMapper;
    27. @Autowired
    28. private UserMapper userMapper;
    29. @Autowired
    30. private CategoryMapper categoryMapper;
    31. /**
    32. * 列表
    33. *
    34. * @param doc
    35. * @param pageNum
    36. * @param model
    37. * @return
    38. */
    39. @RequestMapping("list")
    40. public String list(DocPo doc, @RequestParam(defaultValue = "1") Integer pageNum, Model model) {
    41. Example example = new Example(Doc.class);
    42. Example.Criteria criteria = example.createCriteria();
    43. if (doc.getName() != null) {
    44. criteria.andCondition("d.name like '%" + doc.getName() + "%'");
    45. }
    46. if (doc.getNo() != null) {
    47. criteria.andCondition("d.no like '%" + doc.getNo() + "%'");
    48. }
    49. if (doc.getCategoryname() != null) {
    50. criteria.andCondition("c.name like '%" + doc.getCategoryname() + "%'");
    51. }
    52. if (doc.getTeachername() != null) {
    53. criteria.andCondition("u.name like '%" + doc.getTeachername() + "%'");
    54. }
    55. PageHelper.startPage(pageNum, pageSize);
    56. PageInfo<DocPo> pageInfo = new PageInfo<>(docMapper.selectPoByExample(example), 5);
    57. model.addAttribute(pageInfo);
    58. model.addAttribute("url", request.getRequestURI() + "?" + ParamUtils.params2String(request));
    59. return "doc/list";
    60. }
    61. @RequestMapping("detail/{id}")
    62. public String detail(@PathVariable Integer id, Model model) {
    63. Doc doc = docMapper.selectByPrimaryKey(id);
    64. model.addAttribute(doc);
    65. /* List<Category> categoryList = categoryMapper.selectAll();
    66. model.addAttribute("categoryList", categoryList);*/
    67. Example example = new Example(User.class);
    68. example.createCriteria().andNotEqualTo("type", "admin");
    69. List<User> userList = userMapper.selectByExample(example);
    70. model.addAttribute("userList", userList);
    71. return "doc/detail";
    72. }
    73. /**
    74. * 修改信息
    75. *
    76. * @param doc
    77. * @return
    78. */
    79. @RequestMapping("update")
    80. public String update(Doc doc, MultipartFile file) {
    81. Doc temp = docMapper.selectByPrimaryKey(doc.getId());
    82. doc.setOldpath(temp.getPath());
    83. if (!file.isEmpty()) {
    84. String path = saveFile(file);
    85. doc.setPath(path);
    86. }
    87. docMapper.updateByPrimaryKeySelective(doc);
    88. return refresh();
    89. }
    90. @GetMapping("add")
    91. public String add(Model model) {
    92. Example example = new Example(Category.class);
    93. example.createCriteria().andEqualTo("pid", 0);
    94. List<Category> categoryList = categoryMapper.selectByExample(example);
    95. model.addAttribute("categoryList", categoryList);
    96. example = new Example(User.class);
    97. example.createCriteria().andNotEqualTo("type", "admin");
    98. List<User> userList = userMapper.selectAll();
    99. model.addAttribute("userList", userList);
    100. return "doc/add";
    101. }
    102. @PostMapping("add")
    103. public String add(Doc doc, MultipartFile file) {
    104. if (!file.isEmpty()) {
    105. String path = saveFile(file);
    106. doc.setPath(path);
    107. }
    108. doc.setAddtime(new Date());
    109. docMapper.insertSelective(doc);
    110. if (sessionUser().getType().equals("admin"))
    111. return "redirect:list";
    112. else return "redirect:mylist";
    113. }
    114. @RequestMapping("del/{id}")
    115. public String del(@PathVariable Integer id) {
    116. docMapper.deleteByPrimaryKey(id);
    117. return refresh();
    118. }
    119. /**
    120. * 删除旧文档
    121. *
    122. * @param id
    123. * @return
    124. */
    125. @RequestMapping("delold/{id}")
    126. public String delold(@PathVariable Integer id) {
    127. Doc doc = docMapper.selectByPrimaryKey(id);
    128. doc.setOldpath("");
    129. docMapper.updateByPrimaryKey(doc);
    130. return refresh();
    131. }
    132. /**
    133. * 我管理的文档
    134. *
    135. * @param doc
    136. * @param pageNum
    137. * @param model
    138. * @return
    139. */
    140. @RequestMapping("mylist")
    141. public String mylist(DocPo doc, @RequestParam(defaultValue = "1") Integer pageNum, Model model) {
    142. Example example = new Example(Doc.class);
    143. Example.Criteria criteria = example.createCriteria();
    144. if (doc.getName() != null) {
    145. criteria.andCondition("d.name like '%" + doc.getName() + "%'");
    146. }
    147. if (doc.getNo() != null) {
    148. criteria.andCondition("d.no like '%" + doc.getNo() + "%'");
    149. }
    150. if (doc.getCategoryname() != null) {
    151. criteria.andCondition("c.name like '%" + doc.getCategoryname() + "%'");
    152. }
    153. criteria.andEqualTo("userid", sessionUser().getId());
    154. PageHelper.startPage(pageNum, pageSize);
    155. PageInfo<DocPo> pageInfo = new PageInfo<>(docMapper.selectPoByExample(example), 5);
    156. model.addAttribute(pageInfo);
    157. model.addAttribute("url", request.getRequestURI() + "?" + ParamUtils.params2String(request));
    158. return "doc/mylist";
    159. }
    160. /**
    161. * 按照年份查看
    162. * @param year
    163. * @param pageNum
    164. * @param model
    165. * @return
    166. */
    167. @RequestMapping("mylistN")
    168. public String mylistN(String year, @RequestParam(defaultValue = "1") Integer pageNum, Model model) {
    169. Example example = new Example(Doc.class);
    170. Example.Criteria criteria = example.createCriteria();
    171. if(StringUtil.isNotEmpty(year)){
    172. criteria.andCondition("d.no like '%" + year + "%'");
    173. }
    174. criteria.andEqualTo("userid", sessionUser().getId());
    175. PageHelper.startPage(pageNum, pageSize);
    176. List<Doc> docPos = docMapper.selectAll();
    177. PageInfo<DocPo> pageInfo = new PageInfo<>(docMapper.selectPoByExample(example), 5);
    178. model.addAttribute(pageInfo);
    179. model.addAttribute("url", request.getRequestURI() + "?" + ParamUtils.params2String(request));
    180. return "doc/mylistN";
    181. }
    182. }

    该项目基于maven,pom.xml:

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <project xmlns="http://maven.apache.org/POM/4.0.0"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    5. <modelVersion>4.0.0</modelVersion>
    6. <groupId>school</groupId>
    7. <artifactId>record</artifactId>
    8. <version>1.0-SNAPSHOT</version>
    9. <packaging>war</packaging>
    10. <properties>
    11. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    12. <!-- 版本信息 -->
    13. <commons-fileupload>1.3.2</commons-fileupload>
    14. <druid>1.0.26</druid>
    15. <freemarker>2.3.23</freemarker>
    16. <jackson>2.8.3</jackson>
    17. <junit>4.12</junit>
    18. <log4j>1.2.17</log4j>
    19. <mybatis>3.4.1</mybatis>
    20. <mybatis-ehcache>1.0.0</mybatis-ehcache>
    21. <mybatis-pagehelper>4.1.6</mybatis-pagehelper>
    22. <mybatis-spring>1.3.0</mybatis-spring>
    23. <mybatis-mapper>3.3.9</mybatis-mapper>
    24. <mysql>5.1.39</mysql>
    25. <persistence>1.0.2</persistence>
    26. <servlet>4.0.0-b01</servlet>
    27. <slf4j>1.7.21</slf4j>
    28. <spring>4.3.2.RELEASE</spring>
    29. </properties>
    30. <dependencies>
    31. <dependency>
    32. <groupId>commons-fileupload</groupId>
    33. <artifactId>commons-fileupload</artifactId>
    34. <version>${commons-fileupload}</version>
    35. </dependency>
    36. <dependency>
    37. <groupId>org.freemarker</groupId>
    38. <artifactId>freemarker</artifactId>
    39. <version>${freemarker}</version>
    40. </dependency>
    41. <dependency>
    42. <groupId>mysql</groupId>
    43. <artifactId>mysql-connector-java</artifactId>
    44. <version>${mysql}</version>
    45. </dependency>
    46. <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
    47. <dependency>
    48. <groupId>com.fasterxml.jackson.core</groupId>
    49. <artifactId>jackson-databind</artifactId>
    50. <version>${jackson}</version>
    51. </dependency>
    52. <dependency>
    53. <groupId>org.springframework</groupId>
    54. <artifactId>spring-context</artifactId>
    55. <version>${spring}</version>
    56. </dependency>
    57. <dependency>
    58. <groupId>org.springframework</groupId>
    59. <artifactId>spring-test</artifactId>
    60. <version>${spring}</version>
    61. <scope>test</scope>
    62. </dependency>
    63. <dependency>
    64. <groupId>org.springframework</groupId>
    65. <artifactId>spring-context-support</artifactId>
    66. <version>${spring}</version>
    67. </dependency>
    68. <dependency>
    69. <groupId>org.springframework</groupId>
    70. <artifactId>spring-webmvc</artifactId>
    71. <version>${spring}</version>
    72. </dependency>
    73. <dependency>
    74. <groupId>org.springframework</groupId>
    75. <artifactId>spring-tx</artifactId>
    76. <version>${spring}</version>
    77. </dependency>
    78. <dependency>
    79. <groupId>org.springframework</groupId>
    80. <artifactId>spring-jdbc</artifactId>
    81. <version>${spring}</version>
    82. </dependency>
    83. <dependency>
    84. <groupId>com.alibaba</groupId>
    85. <artifactId>druid</artifactId>
    86. <version>${druid}</version>
    87. </dependency>
    88. <dependency>
    89. <groupId>javax.servlet</groupId>
    90. <artifactId>javax.servlet-api</artifactId>
    91. <version>${servlet}</version>
    92. <scope>provided</scope>
    93. </dependency>
    94. <dependency>
    95. <groupId>org.slf4j</groupId>
    96. <artifactId>slf4j-api</artifactId>
    97. <version>${slf4j}</version>
    98. </dependency>
    99. <dependency>
    100. <groupId>log4j</groupId>
    101. <artifactId>log4j</artifactId>
    102. <version>${log4j}</version>
    103. </dependency>
    104. <dependency>
    105. <groupId>org.slf4j</groupId>
    106. <artifactId>slf4j-log4j12</artifactId>
    107. <version>${slf4j}</version>
    108. </dependency>
    109. <dependency>
    110. <groupId>org.mybatis</groupId>
    111. <artifactId>mybatis</artifactId>
    112. <version>${mybatis}</version>
    113. </dependency>
    114. <dependency>
    115. <groupId>org.mybatis</groupId>
    116. <artifactId>mybatis-spring</artifactId>
    117. <version>${mybatis-spring}</version>
    118. </dependency>
    119. <dependency>
    120. <groupId>org.mybatis</groupId>
    121. <artifactId>mybatis-ehcache</artifactId>
    122. <version>${mybatis-ehcache}</version>
    123. </dependency>
    124. <dependency>
    125. <groupId>com.github.pagehelper</groupId>
    126. <artifactId>pagehelper</artifactId>
    127. <version>${mybatis-pagehelper}</version>
    128. </dependency>
    129. <dependency>
    130. <groupId>javax.persistence</groupId>
    131. <artifactId>persistence-api</artifactId>
    132. <version>${persistence}</version>
    133. </dependency>
    134. <dependency>
    135. <groupId>tk.mybatis</groupId>
    136. <artifactId>mapper</artifactId>
    137. <version>${mybatis-mapper}</version>
    138. </dependency>
    139. </dependencies>
    140. <build>
    141. <plugins>
    142. <plugin>
    143. <groupId>org.apache.maven.plugins</groupId>
    144. <artifactId>maven-compiler-plugin</artifactId>
    145. <version>3.6.0</version>
    146. <configuration>
    147. <source>1.7</source>
    148. <target>1.7</target>
    149. <!-- <compilerArgument>-verbose -bootclasspath ${java.home}\lib\rt.jar</compilerArgument> -->
    150. </configuration>
    151. </plugin>
    152. <plugin>
    153. <groupId>org.apache.tomcat.maven</groupId>
    154. <artifactId>tomcat7-maven-plugin</artifactId>
    155. <version>2.2</version>
    156. <configuration>
    157. <path>/</path>
    158. <port>80</port>
    159. <server>tomcat7</server>
    160. <uriEncoding>${project.build.sourceEncoding}</uriEncoding>
    161. </configuration>
    162. </plugin>
    163. </plugins>
    164. </build>
    165. </project>

  • 相关阅读:
    Linux 隐藏进程
    【Git】如何在Vscode中使用码云(Gitee)实现远程代码仓库与本地同步?(新手图文教程)
    亚马逊API接口大全
    CompletableFuture异步优化代码
    Simplicity Studio 生成的工程移植到 Linux 上编译
    《Python+Kivy(App开发)从入门到实践》自学笔记:高级UX部件——TabbedPanel选项面板
    畅玩JVM——关于GC垃圾回收必须要掌握的知识
    设计模式(上)
    Vue3上 使用腾讯地图 基础展示
    matlab问题求解答
  • 原文地址:https://blog.csdn.net/weixin_46437112/article/details/128176369