Code Monkey home page Code Monkey logo

projectmanagement_service's Introduction

基于Web的校园项目管理系统

项目介绍

  • 随着信息技术在管理上越来越深入而广泛的应用, 自动化信息管理的实施在技术上已 逐步成熟。高校的校园项目包括科研项目、社会调研、学术竞赛等,其管理工作是高校教育 教学活动的一个重要组成部分,肩负着组织调研、项目立项申请、实施管理、以及评估科研 人员科技工作的质与量等重要责任。我们经过对上海大学科研及竞赛项目从申报、审核到结 项的情况进行分析,发现如下存在的问题:
    • ( 1)传统的高校校园项目管理模式效率低下,无法适应当前各类竞赛和科研项目管理 模式,利用计算机支持高校各类竞赛和科研信息管理,已成为高校需迫切解决的问题
    • ( 2)相关竞赛及科研平台分布杂而乱,有需求相关系统能够整合校园相关项目的管理 工作
  • 本项目从全国各大高校校园项目管理的现状以及国内外研究情况出发,对高校科研项目 管理的需求及业务流程进行分析,包括校园科研、调研和竞赛项目的申报、评审、立项、研 究过程管理等进行调查分析,采用软件工程方法和面向对象的**对校园项目管理系统进 行系统分析与设计,包括系统所涉及的网络体系结构、功能模块等关键技术。最后采用目前 市面主流的 Web 开发技术实现了基于 Web 的高校校园项目管理系统的相关功能。

项目特色

  • 该系统采用三层 B/S 架构,将实现人机界面的所有表单和组件放在表示层,将所有业务 规则和逻辑实现封装在负责业务逻辑组件中,将所有数据库的交互封装在数据访问控制组件 中。 迅速准确的完成各种科研及竞赛等项目信息的管理工作
  • 而本系统的优势在于其采用了目前比较流行的前后端分离开发技术,前后端都使用流 行的开发框架,并且前端通过 Axios 调用后端 Restful Api 接口并使用 json 进行数据交互。 可以实现真正的前后端解耦,前端服务器使用 NGINX 控制页面引用、跳转、路由,页面异 步调用后端的接口。 后端/应用服务器使用 Tomcat, 使用主流 Spring 框架与前端进行交互并 且依赖目前流行的 Docker 容器技术及 Jenkins 持续化技术部署在服务器中,技术上的使用 使系统整体更加稳定、 响应速度更快、扩展性更强及维护运营更方便。

项目角色

  • 普通用户: 项目的参与者或者参赛者,主要功能包括项目申请、项目立项后提交相关文档等操作。
  • 业务员:主要负责普通用户提交的项目初审的工作,主要功能包括开通项目大类、审核项目申请、审核立项项目相关文档等。
  • 评审专家:主要负责对项目评审与打分,主要功能包括评审项目申请和相关文档,填写相关意见并打分等
  • 领导: 项目立项和结题的最终抉择者,主要功能包括审核项目申请和相关文档,终审项目等。
  • 管理员: 负责系统的人员的调配与角色管理。

界面展示

  • 1.登录界面: 登录界面
  • 2.用户端界面 用户端页面 3 4
  • 3.业务端界面 5 6 7 6
  • 4.领导端界面 6 6 6
  • 5.专家端界面 6
  • 6.管理员端页面 6

projectmanagement_service's People

Contributors

0ggmr0 avatar mistletoexw avatar

Stargazers

 avatar  avatar SUQI avatar  avatar  avatar  avatar  avatar SoCMo avatar

Watchers

James Cloos avatar obsidian avatar

projectmanagement_service's Issues

登录接口

登录与权限验证握手规范

必须登录才能访问到所有页面,不登录无法访问到任何页面。

我们将大部分依赖于后端的权限判断,所以在各个接口(不仅包括上述所提到的)时FAILED填写message一栏
建议:

  • 没有权限:您没有权限进行此操作
  • 尚未登录:请先进行登录!

接口

http://47.106.224.202:8081/api/login
登录接口

描述

POST请求,请返回token及用户的身份
用户身份: 1普通用户 2业务员 3审核专家 4领导 5系统管理员

请求数据格式样例

{
    "uid":"16121663",
    "password":"6666"
}

响应数据样例

{
  "code":"SUCCESS",
  "message":null,
  "data": {
    "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJzdWIiOiIxNjEyMTY2NiIsImV4cCI6MTUyNzc2NzExMiwiaWF0IjoxNTI3MzM1MTEyfQ.bRBUXRrKn3A4vGg5VrpIpeaSGgBo-bRs8xxoKRUGfLKsEhzs9-3ku2xJR9-reN4XwY5LvaAy0XV8tg6Z3ac8Uw",
    "username":"文神"
    "uid":16121663,
    "identity":4
  }
}

完成

领导层

领导审核项目大类

描述

POST请求,isPassed为1领导同意开通项目大类,2为不通过
党项目大类通过时无需给予message,党项目大类被领导拒绝时给予失败理由
请求url
/api/leader/judgeProjectCategory

请求数据格式样例

{
    "projectCategoryId": "1"
    "isPassed":"2",
    "message":"徐文太强"
}

响应数据样例

{
  "code":"SUCCESS",
  "message":null,
  "data": null
}

完成

用户层

判断是否超过截止时间

描述

GET请求,返回当前时间是否超过设定的时间
需要此接口的有项目申报时间的结束时间,项目中期报告提交的结束时间和项目结题报告提交的结束时间以及项目结束的时间,这四个情况分别对应数字1 2 3 4,通过time/1(或者234)字段给与后端
返回istimeout为1超时 2没有超时

请求数据格式样例和接口

http://47.106.224.202:8081/api/user/time/{projectIdCategoryId}/{type}
http://47.106.224.202:8081/api/user/time/123/1

响应数据样例

{
  "code":"SUCCESS",
  "message":null,
  "data": {
      "isTimeOut":"1"
  }
}

完成

业务员层

业务员层前后端握手规范

必须登录后才能访问到所有页面,不登录无法访问到任何页面

接口

创建项目类别

描述

  • Post请求,业务员创建项目类别

请求数据格式样例和接口

http://129.204.71.113:8888/api/admin/createProjectCategory

Post:

applicatType可申报人类型:一个数组
projecttype后端会提供一个接口告诉前端有哪些内容可选
会评情况:1.存在 2.不存在

{
     "projectName" : "高性能计算机", 
     "projectDescription " : " 上海大学计算机学院高性能计算机……",
     "projectDescriptionAddress" : "http://xxxxxxxxxx",
     "projectType" : 1 ,
     "principalPhone" : "1882661661",
     "applicantType" : [1,3,4]
     "maxMoney" : "10000",
     "projectApplicationDownloadAddress" : "http://wwww.baidu.com",
     "isExistMeetingReviewNum": 1,
     "applicationStartTime" : "2018-07-30 00:00",
     "applicationEndTime": "2018-08-10 00:00",
     "projectStartTime": "2018-08-15 00:00",
     "projectEndTime": "2018-01-00 10:00",
     "expertList":[
    	"16122131",
    	"16121666",
    	"16122253"
     	
 	]
}

response:

SUCCESS
{
    "code":"SUCCESS",
    "message":null,
    "data": null
}

修改项目类别

描述

  • Post请求,业务员修改项目类别信息

请求数据格式样例和接口

http://118.25.130.89:8081/api/admin/projectCategory/update

POST:

项目类别:1. ……(待定)
学院编号:1. ……(待定)
会评情况:1.存在 2.不存在

{
     "pid": "xxxxx",
     "info": {
                   "projectName" : "高性能计算机", 
                   "projectDescription " : " 上海大学计算机学院高性能计算机……",
                   "projectDescriptionAddress” : "http://xxxxxxxxxx",
                   "projectTypeName" : "人文类" ,
                   "principalPhone" : "1882661661",  //修改内容
                   "applicantType" : "1 | 3 | 4",
                   "maxMoney" : "10000",
                   "reviewLeaderId": "16121666",
                   "projectApplicationDownloadAddress" : "http://wwww.baidu.com",
                   "isEexistMeetingReview": 1,
                   "applicationStartTime" : "2018-07-30 00:00",
                   "applicationEndTime": "2018-08-10 00:00",
                   "projectStartTime": "2018-08-15 00:00",
                   "projectEndTime": "2018-01-00 10:00"
              }
}

response:

SUCCESS
{
    "code":"SUCCESS",
    "message":null,
    "data": null
}

查询项目类别

描述

  • 根据业务员ID,查询项目类别,GET项目详细信息

请求数据格式样例和接口

http://129.204.71.113:8888/api/admin/findMyProjectCategory

response:

 {
    "code": "SUCCESS",
    "message": null,
    "data": [
        {
            "projectCategoryId": 3,
            "projectName": "计算科学类",
            "projectDescription": "有关计算科学方面的研究课题和软件项目",
            "projectDescriptionAddress": "/var/lib/management/6e6365d2-541f-4c64-a4b3-fa99007be07a---Untitled-1.json",
            "principalPhone": "18817619556",
            "projectType": "计算科学类",
            "applicantType": [
                "本科生",
                "研究生"
            ],
            "maxMoney": "10000",
            "projectApplicationDownloadAddress": null,
            "isExistMeetingReview": 1,
            "applicationStartTime": "2018-12-18 12:38",
            "applicationEndTime": "2019-12-31 12:38",
            "projectStartTime": "2019-01-01 12:38",
            "projectEndTime": "2019-03-31 12:38",
            "expertList": [
                {
                    "userId": "16121670",
                    "userName": "李瑞轩",
                    "department": "计算机工程与科学学院",
                    "phone": "18101971575",
                    "mail": "[email protected]"
                },
                {
                    "userId": "16123325",
                    "userName": "文满叶",
                    "department": "文学院",
                    "phone": "123",
                    "mail": "123"
                }
            ],
            "interimReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            },
            "concludingReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            }
        },
        {
            "projectCategoryId": 4,
            "projectName": "人文哲学类",
            "projectDescription": "有关人文哲学类研究",
            "projectDescriptionAddress": "/var/lib/management/6e6365d2-541f-4c64-a4b3-fa99007be07a---Untitled-1.json",
            "principalPhone": "18817619556",
            "projectType": "生物化学类",
            "applicantType": [
                "本科生",
                "研究生"
            ],
            "maxMoney": "10000",
            "projectApplicationDownloadAddress": null,
            "isExistMeetingReview": 1,
            "applicationStartTime": "2018-12-18 12:38",
            "applicationEndTime": "2019-12-31 12:38",
            "projectStartTime": "2019-01-01 12:38",
            "projectEndTime": "2019-03-31 12:38",
            "expertList": [
                {
                    "userId": "16121670",
                    "userName": "李瑞轩",
                    "department": "计算机工程与科学学院",
                    "phone": "18101971575",
                    "mail": "[email protected]"
                },
                {
                    "userId": "16123325",
                    "userName": "文满叶",
                    "department": "文学院",
                    "phone": "123",
                    "mail": "123"
                }
            ],
            "interimReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            },
            "concludingReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            }
        },
        {
            "projectCategoryId": 42,
            "projectName": "test",
            "projectDescription": "test",
            "projectDescriptionAddress": null,
            "principalPhone": "",
            "projectType": "计算科学类",
            "applicantType": [
                "本科生"
            ],
            "maxMoney": "500",
            "projectApplicationDownloadAddress": "http://129.204.71.113:8888/api/file/download?fileAddress=/var/lib/management/628486c7-9852-41f4-8471-73dba1706fe9---spj_gyqk.txt",
            "isExistMeetingReview": 1,
            "applicationStartTime": "2019-01-01 01:30",
            "applicationEndTime": "2019-01-31 03:00",
            "projectStartTime": "2019-01-31 03:00",
            "projectEndTime": "2019-12-31 04:00",
            "expertList": [
                {
                    "userId": "10007754",
                    "userName": "赵嘉嘉",
                    "department": "外国语学院",
                    "phone": "456",
                    "mail": "456"
                }
            ],
            "interimReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            },
            "concludingReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            }
        },
        {
            "projectCategoryId": 43,
            "projectName": "test2",
            "projectDescription": "test2",
            "projectDescriptionAddress": null,
            "principalPhone": "",
            "projectType": "经济管理类",
            "applicantType": [
                "本科生"
            ],
            "maxMoney": "500",
            "projectApplicationDownloadAddress": "http://129.204.71.113:8888/api/file/download?fileAddress=/var/lib/management/6a4b462f-e930-4f46-ad01-6bf2a0e0c04e---school.txt",
            "isExistMeetingReview": 1,
            "applicationStartTime": "2019-01-01 03:00",
            "applicationEndTime": "2019-01-31 12:30",
            "projectStartTime": "2019-01-31 12:30",
            "projectEndTime": "2019-02-27 04:00",
            "expertList": [
                {
                    "userId": "16121670",
                    "userName": "李瑞轩",
                    "department": "计算机工程与科学学院",
                    "phone": "18101971575",
                    "mail": "[email protected]"
                }
            ],
            "interimReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            },
            "concludingReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            }
        },
        {
            "projectCategoryId": 44,
            "projectName": "test3",
            "projectDescription": "test",
            "projectDescriptionAddress": null,
            "principalPhone": "",
            "projectType": "经济管理类",
            "applicantType": [
                "博士生"
            ],
            "maxMoney": "100",
            "projectApplicationDownloadAddress": "http://129.204.71.113:8888/api/file/download?fileAddress=/var/lib/management/bb7a18df-eaa1-4872-8208-f9eaa0afc2af---school.txt",
            "isExistMeetingReview": 2,
            "applicationStartTime": "2019-01-01 03:00",
            "applicationEndTime": "2019-01-17 03:00",
            "projectStartTime": "2019-01-17 03:00",
            "projectEndTime": "2019-02-01 03:00",
            "expertList": [
                {
                    "userId": "10007754",
                    "userName": "赵嘉嘉",
                    "department": "外国语学院",
                    "phone": "456",
                    "mail": "456"
                }
            ],
            "interimReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            },
            "concludingReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            }
        },
        {
            "projectCategoryId": 45,
            "projectName": "test4",
            "projectDescription": "test4",
            "projectDescriptionAddress": null,
            "principalPhone": "",
            "projectType": "人文哲学类",
            "applicantType": [
                "本科生"
            ],
            "maxMoney": "333",
            "projectApplicationDownloadAddress": "http://129.204.71.113:8888/api/file/download?fileAddress=/var/lib/management/592bd6be-14f3-4c8c-9233-9556b67f96e3---school.txt",
            "isExistMeetingReview": 2,
            "applicationStartTime": "2019-01-01 03:00",
            "applicationEndTime": "2019-01-31 03:00",
            "projectStartTime": "2019-01-31 03:00",
            "projectEndTime": "2019-03-31 03:00",
            "expertList": [
                {
                    "userId": "16121670",
                    "userName": "李瑞轩",
                    "department": "计算机工程与科学学院",
                    "phone": "18101971575",
                    "mail": "[email protected]"
                }
            ],
            "interimReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            },
            "concludingReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            }
        },
        {
            "projectCategoryId": 46,
            "projectName": "test",
            "projectDescription": "test",
            "projectDescriptionAddress": null,
            "principalPhone": "",
            "projectType": "经济管理类",
            "applicantType": [
                "本科生"
            ],
            "maxMoney": "333",
            "projectApplicationDownloadAddress": "http://129.204.71.113:8888/api/file/download?fileAddress=/var/lib/management/896b2699-4c74-4cbe-a917-90cafd53eaff---school.txt",
            "isExistMeetingReview": 2,
            "applicationStartTime": "2019-01-08 03:59",
            "applicationEndTime": "2019-01-23 04:00",
            "projectStartTime": "2019-01-23 04:00",
            "projectEndTime": "2019-02-20 04:00",
            "expertList": [
                {
                    "userId": "16121670",
                    "userName": "李瑞轩",
                    "department": "计算机工程与科学学院",
                    "phone": "18101971575",
                    "mail": "[email protected]"
                }
            ],
            "interimReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            },
            "concludingReport": {
                "isReportActivated": false,
                "reportTemplateAddress": null,
                "startTime": null,
                "deadline": null
            }
        }
    ]
}

完成

文件上传下载

文件上传

描述

POST请求,需要将文件post上来 ,目前只支持单文件上传

请求数据格式样例和接口

http://129.204.71.113:8888/api/file/upload

响应数据样例

{
    "code": "SUCCESS",
    "message": null,
    "data": "/var/lib/management/1127d660-6d6d-486d-bbf7-c2e57278ef9a---Untitled-1.json"
}

完成

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.