# 车场管理功能需求文档

## 通用操作

- 删除：将正常状态的数据删除，删除后，数据不可恢复。（软删除）

- 数值符号：如无特殊说明，所有数值类型默认为__无符号数__。

## 名词定义

| 名称   | 定义                                                 |
| ---- | -------------------------------------------------- |
| 车场   | 具有一定数量的车位，能够存放车辆的建筑空间；                             |
| 车位   | 将车场划分为多个停车位置的物理空间，分人防车位，公共车位和产权车位，其中产权车位可以用来出售，出租。 |
| 车辆   | 指各类机动车辆（含电动自行车）                                    |
| 新能源车 | 符合国家规范的纯电动或混合动力的汽车，一般悬挂绿色车牌。                       |

## 车场管理

车场管理用于管理小区的车场信息。

### 表单字段说明

| 字段名称 | 字段类型   | 备注                          | 是否必填 |
| ---- | ------ | --------------------------- | ---- |
| 车场名称 | String | 小区唯一                        | 是    |
| 所属小区 | String | 关联车场所在小区的ID                 | 是    |
| 车场类型 | Enum   | 单选，可选值有地下，露天，简易棚，机械式，架空层，占道 | 是    |
| 层数   | Int    | 车场楼层数目，大于等于1，默认为1           | 否    |
| 车场面积 | Float  | 车场占地面积，最多可保留两位小数。不填则保持为0    | 否    |
| 车位数  | Int    | 车场中车位数量，不影响实际添加车位数限制        | 否    |
| 出口数  | Int    | 车场出口数目，不填保持为0               | 否    |
| 入口数  | Int    | 车场入口数目，不填保持为0               | 否    |

### 业务说明

- 可见状态：新建的车场默认是可见的，后台暂不开放可见性设置功能。

- 数据状态：数据状态包括正常和已删除；新建的车场默认是正常状态，车场下已有车位或车辆时不允许删除。

- 唯一性约束：车场名称要求在所在小区是唯一的（已删除的不算重复）。

- 排序：按创建时间降序排列即可。

- 统计字段：下属车位数，下属车辆数

- 数据筛选：支持按小区筛选。

- 可编辑字段：可编辑车场名称，出口数，入口数，车场类型，层数，车场面积，车位编号；不允许更改所属小区。

- 扩展功能：考虑未来与停车系统对接，需要冗余停车系统车场编号（由平台统一管理），车场缴费链接(url)，车场对接信息由停车系统供应商提供，对接信息统一在平台管理后台设置。

- 停车系统对接：停车系统车辆出入场时，需要扫描车场缴费二维码（微信永久二维码），通过该二维码后台处理微信推送的事件消息后，通过向扫码用户推送停车缴费消息为临时车辆出场提供缴费入口。具体功能在平台的二维码管理功能。

## 车位管理

车位管理用于管理停车场车位信息。

### 表单字段说明

| 字段名称   | 字段类型   | 备注                           | 是否必填 |
| ------ | ------ | ---------------------------- | ---- |
| 车位号    | String | 所在车场唯一。                      | 是    |
| 车位类型   | Enum   | 从产权车位，公共车位，人防车位三个中选择         | 是    |
| 车位状态   | Enum   | 从已售，已租，空置，自用，待售，待租，临停七个状态中选择 | 是    |
| 车位面积   | Float  | 车位建筑面积，最多保留2位小数点             | 否    |
| 最大停放车辆 | Int    | 默认为1，部分车位可能支持同时停放多辆车         | 是    |
| 关联房屋   | String | 采用楼栋/单元/房屋级联方式选择，关联房屋表的ID    | 否    |
| 关联住户   | String | 从车位关联房屋的住户中选择，关联房屋下属住户的ID    | 否    |
| 备注     | String | 车位其他的备注信息                    |      |

业务说明

- 可见状态：无此属性。

- 数据状态：数据状态包括正常和已删除；新建的车位默认是正常状态，车位关联车辆或账单时不允许删除。

- 唯一性约束：车位编号要求在所在车场是唯一的（已删除的不算重复）。

- 排序：按编号升序排列即可。

- 统计字段：无

- 数据筛选：支持按车位号模糊搜索。

- 可编辑字段：不可编辑车位号。

## 车辆管理

车辆管理用于管理出入停车场，或在停车场停放的车辆信息。

### 表单字段说明

| 字段名称      | 字段类型   | 备注                                           | 是否必填  |
| --------- | ------ | -------------------------------------------- | ----- |
| 车牌号码：所属省份 | String | 国家34个省份行政区划简称，从字典库中选择                        | 有牌车必填 |
| 车牌号码：车牌编号 | String | 车辆悬挂的车牌出去省份部分（不含分隔字符）                        | 有牌车必填 |
| 车位号       | String | 车辆停放的固定车位ID，若无固定车位可不选择                       | 否     |
| 新能源车      | Bool   | 标识该车辆是否新能源车，默认为否                             | 否     |
| 包月车辆      | Bool   | 标识该车辆是否按月收费（即账单），无默认值，必须手动点击确认               | 是     |
| 关联房屋      | String | 采用楼栋/单元/房屋级联方式选择，关联房屋表的ID                    | 否     |
| 关联住户      | String | 从车辆关联房屋的住户中选择，关联房屋下属住户的ID                    | 否     |
| 车主姓名      | String | 如果选择了关联住户，默认填充为关联住户（但允许修改）                   | 是     |
| 车主手机号     | String | 如果选择了关联住户，默认填充为关联住户的手机号（但允许修改）               | 是     |
| 车辆类型      | Enum   | 从小型汽车，中型汽车，大型汽车，电动自行车，摩托车，三轮车六个类型中选择；默认为小型汽车 | 是     |
| 备注        | String | 车辆其他信息                                       | 否     |

### 业务说明

- 可见状态：无此属性。

- 数据状态：数据状态包括正常和已删除；新建的车辆默认是正常状态，有账单或缴过费的车辆不允许删除。

- 包月车辆用于车辆账单生成时进行筛选，只有包月车辆才能生成车辆账单。

- 唯一性约束：车辆车牌号（省份+车牌编号）要求在所在车场是唯一的（无牌车除外，已删除的不算重复）。

- 排序：按省份、车牌号升序排列即可。

- 统计字段：无

- 数据筛选：支持按车牌号模糊搜索，支持车主姓名和手机号搜索，支持按车辆类型，是否新能源车筛选。

- 可编辑字段：仅无牌车可编辑车牌号码。其他字段均可编辑。

- 取消停放：指该车辆已经不在所在停车场停放，列表默认不显示已取消停放的车辆，但可以从历史车辆中查看（与账单关联需要查询得到）。取消停放的车辆可以恢复停放（部分业主车辆一年中只停放几个月）。

- 扩展功能：需要与缴费关联，如包月车辆到期时间（即将过期时提醒续费）。已取消停放的车辆，即便车辆关联了收费标准也不能产生账单（有可能是人为漏了取消关联）。
