# skyeye
#### 项目介绍
win10风格的一套系统,前端采用layui作为前端框架,后端采用SpringBoot作为服务框架,采用自封装的xml对所有请求进行参数校验,以保证接口安全性。
##### 启动方式
直接运行com.skyeye.SkyEyeApplication即可,启动完成后,访问http://localhost:8081即可。
##### 注意事项
如果是eclipse导入发现pom文件报错。
错误:org.apache.maven.archiver.MavenArchiver.getManifest
解决办法:https://blog.csdn.net/doc_wei/article/details/84936514
#### 目前功能
- 菜单管理、用户管理、角色管理、角色绑定菜单管理、用户多角色管理
- 系统ICON管理(目前只支持系统内部样式icon)
- 代码生成器完成(只能适用于该框架的代码生成器,配置模板即可生成,然后下载压缩包解压复制到项目中即可)
- 微信小程序拖拽生成,可自定义配置小程序组件
- 用户可根据自己的爱好自定义设置界面样式
- 日志管理
- Java应用的在线性能监控
- 行政区划(四级行政区划,数据量四万多条,界面只展示三级行政区划。获取行政区划的工具在 **com.skyeye.common.util.AreaUtil** )
- 项目流程图规划
- 问卷调查模块(创建问卷、发布问卷、问卷统计等)
#### 技术选型
##### 后端技术:
技术|名称|官网
---|---|---
SpringBoot|核心框架|http://spring.io/projects/spring-boot
MyBatis|ORM框架|http://www.mybatis.org/mybatis-3/zh/index.html
Druid|数据库连接池|https://github.com/alibaba/druid
Maven|项目构建管理|http://maven.apache.org/
redis|key-value存储系统|https://redis.io/
webSocket|浏览器与服务器全双工(full-duplex)通信|http://www.runoob.com/html/html5-websocket.html
Activiti|工作流引擎|https://www.activiti.org/
spring mvc|视图框架|http://spring.io/
quartz 2.2.2|定时任务|http://www.quartz-scheduler.org/
##### 前端技术:
技术|名称|官网
---|---|---
jQuery|函式库|http://jquery.com/
zTree|树插件|http://www.treejs.cn/v3/
layui|模块化前端UI|https://www.layui.com/
winui|win10风格UI|http://win10ui.yuri2.cn/
codemirror|codemirror代码编辑器|https://codemirror.net/
handlebars|js模板引擎|http://www.ghostchina.com/introducing-the-handlebars-js-templating-engine/
webSocket|浏览器与服务器全双工(full-duplex)通信|http://www.runoob.com/html/html5-websocket.html
G6|流程图开发|https://antv.alipay.com/zh-cn/index.html
#### 代码描述
##### 前后台接口映射
```
```
##### 后台代码编写规范
###### 控制层
```
@RequestMapping("后台接口")
@ResponseBody
public void 方法名(InputObject inputObject, OutputObject outputObject) throws Exception{
服务层接口对象.方法名(inputObject, outputObject);
}
```
###### 服务层
```
@Override
public void 方法名(InputObject inputObject, OutputObject outputObject) throws Exception {
Map map = inputObject.getParams();//接收参数
Map user = inputObject.getLogParams();//获取当前登录用户信息
/**
* 业务逻辑
*/
outputObject.setBean(bean);//返回单个实体Bean
outputObject.setBeans(beans);//返回集合
outputObject.settotal(total);//返回数量
outputObject.setreturnMessage("信息");//返回前端的错误信息
outputObject.setreturnMessage("信息", 错误码);//返回前端的错误信息,同时抛出异常(不常用)
}
```
#### 效果图
- 1.登陆效果图

- 2.系统icon

- 3.角色管理

- 4.小程序组件配置

- 4-1.小程序组件分组

- 4-2.小程序组件分类

- 5.小程序拖拽

- 5-1.小程序拖拽第一版

- 6.代码生成器

- 7.桌面二级菜单展示

- 8.Redis数据实时监控



- 9.动态表单

- 9-1.动态表单限制条件

- 9-2.动态表单Form表单内容项

- 9-3.动态表单数据展示模板配置

- 10.用户自定义win界面样式


- 11.系统日志管理

- 12.Java应用的在线服务器性能监控


- 13.行政区划

- 14.公司部门管理

- 15.项目流程图

- 16.设计问卷

- 17.问卷统计

#### 环境搭建
##### 开发工具:
- MySql: 数据库
- Tomcat: 应用服务器
- SVN|Git: 版本管理
- Nginx: 反向代理服务器
- Varnish: HTTP加速器
- IntelliJ IDEA|Eclipse: 开发IDE
- Navicat for MySQL: 数据库客户端
- Redis Manager:redis视图工具
#### 资源下载
- JDK7 http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html
- Maven http://maven.apache.org/download.cgi
- Redis https://redis.io/download
- Nginx http://nginx.org/en/download.html
#### 在线文档
- [JDK7英文文档](http://tool.oschina.net/apidocs/apidoc?api=jdk_7u4)
- [Spring4.x文档](http://spring.oschina.mopaas.com/)
- [Mybatis3官网](http://www.mybatis.org/mybatis-3/zh/index.html)
- [Nginx中文文档](http://tool.oschina.net/apidocs/apidoc?api=nginx-zh)
- [Git官网中文文档](https://git-scm.com/book/zh/v2)
#### 作者微信公众号:

#### QQ群:

#### 微信:
