浙江农林大学地理信息科学171班 HMc、FZ、HHb、XHc、ZLl、CC小组
模块名 | 命名空间 | 介绍 | 完成度 |
---|---|---|---|
模型模块 | Park.Model | 提供数据库模型 | 99% |
服务模块 | Park.Service | 提供业务处理方法 | 99% |
管理模块 | Park.Admin | 提供管理页面供管理员对各种信息进行管理、查看和汇总 | 80% |
用户模块 | Park.Mobile | 提供手机网站,供用户进行查看账户信息和停车场信息 | 80% |
接口模块 | Park.API | 为停车场硬件设施和Park.Mobile提供API | 80% |
车位设计模块 | Park.Designer | 用于设计停车位地图。由于技术不够,故使用WPF作为设计器框架。 | 99% |
测试模块 | Park.Test | 用于测试,非单元测试 | - |
- 基本完成车位设计器的主要功能:
- 画板网格显示
- 鼠标绘制停车位、通道
- 停车区的选择
- 停车区的新增、删除、重命名
- 使用鼠标浏览画板
- 使用鼠标选取对象
- 配置文件的导入导出
- 配置文件的自动保存和恢复
- 将通道从矩形改为线
- 通道支持了非横纵方向
- 通道支持了朝左上方拉伸
- 通道支持按Shift进行约束
- 停车位新增支持旋转
- 鼠标悬浮样式改为图形显示阴影
- 支持了删除功能
- 搭建了对车主管理表格的基本页面
- 增加了停车场业务处理相关方法
- 增加了测试类
- 增加了交易充值业务处理相关方法
- 增加了非会员进出、会员进出的测试方法
- 为数据库添加了显式外键声明
- 基本完成车主管理表格
- 基本完成车位管理表格
- 支持了从Json文件(设计器导出)导入停车位的功能
- 基本完成停车区地图的显示(To Bitmap)
- 显示了车主拥有的车辆数量、交易订单数量,点击车辆数量可以跳转到车辆表
- 提升了”表格模型“基类和js方法,方便之后的编写
- 基本完成了停车记录表格
- 完成交易记录表格
- 重新分离编写停车区和停车位管理页面
- 增加了”墙体“模型
- 支持了”墙体“模型
- 做好准备
- 基本完成模拟界面和逻辑
- 基本完成门卫接口、车位传感器接口
- 新增了一个图表
- 修改数据库初始化代码,符合本系统
- 基本完成权限角色的分配
- 新增数据库管理页面
- 新增了车主的注册时间、最后登录时间字段,新增车辆的准入字段
- 分离了数据库创建与生成测试数据
- 进入停车场返回复合类型
- 修改为前后端分离项目,前端使用Vue进行编写,后端使用Park.API
- 基本完成主页
- 完成账户验证
- 完成车辆管理界面和查看停车记录
- 新增Config类型,删除了定价策略的停车区字段
- 将某些服务的参数
CarOwner
改为CarOwnerID
- 完成了车辆的删除和新增功能
- 新增“充值”页,支持了充值和充月卡
- 修复了数据库生成的一些时序问题和没有应用定价策略的问题
- 基本完成交易记录界面
- 完成停车场地图的显示
- 完成账户的注销
- 修复了数据库生成的一些时序问题,停车记录时间为1-01-01 8:05的问题
- 修复了一些小BUG,例如格式化代码不正确、宽度过窄等问题
- 新增点击标题栏文字返回主页
- 完成了导入停车场设计器生成的JSON的功能
- 将用户初始化时的用户名改为非随机、顺序的。
- 修复了设置密码时,有些加了盐有些没加的BUG
- 修改初始化密码为1234而非123456
- 修复了充值金额可以为负数、非数字、很大的数字的BUG
- 新增修改密码界面
- 优化测试数据创建流程,修改了数量、停车记录生成的时间
- 完成了首页的数据大屏
- 优化测试数据创建流程,支持设置添加用户数量,支持了停车时修改停车位状态,修改模拟当前时间
- 数据大屏新增停车场名称标题、新增每个停车区的车位状态饼状图
- 新增停车场设置界面
- 数据库管理界面增加了生成测试数据的用户数量输入框
- 删除了车主界面的新建按钮(没写功能)和停车记录、交易记录页面的删除按钮(防止外键出错)
- 修改了登录页和菜单的图标
- 设置强制设置指定的主题,删除主题按钮
- 删除了一些搜索框
- 在车主管理界面新增了管理按钮,可以一键打开用户手机端界面,并修改用户的一些数据
- 车主管理页面新增新建用户按钮,其实就是打开了用户的手机端注册界面
- 同步修改了服务和手机端的一些内容(获取Url的Query)
- 增加了生成模拟数据时可以选择是生成到现在还是生成到今天结束
发现了一个BUG,所有通过外键查看某一个人的车辆表格、某一辆车的停放记录类似的表格时,如果进行排序或分页,就会变成查看所有人的。原因是HTTP无状态,分页或排序时,ID不会传进来。解决方案是对分页和排序的方法加一个参数,但是懒得修复了。
于2020-5-4进行了部署测试,过程十分曲折。
对于Park.Admin
和Park.API
,部署比较简单。
由于我的服务器是Windows Server 2008+SQLServer 2008,
但是Asp.Net Core 3.1已经不支持2008的数据库了,
所以升级了一下数据库到2016,发布的文件需要修改一下appsettings.json。
对于Vue,由于本来就不适合部署到IIS, 所以麻烦了一点。使用了虚拟目录, 所以需要新建一个vue.config.js进行根目录的设置。 同时,修改了所有跳转的代码。 history模式的路由好像不支持,所以改成了hash模式的路由。 然后对生成之后的app..js搜索"localhost",改为自己的Park.API的部署地址。 在about..js中搜索user,修改默认的用户名密码(测试用)。