# Kylin Property

智慧物业管理系统核心业务扩展包 — 报修管理、缴费管理、公告通知、访客管理。

## 功能特性

- **报修管理**（Repair）：报修提交、进度跟踪、维修评价
- **缴费管理**（Bill）：物业费、水费、电费、燃气费、停车费
- **公告通知**（Notice）：小区公告、紧急通知、活动通知
- **访客管理**（Visitor）：访客登记、访客审批、出入记录
- **操作日志**（OperationLog）：全操作审计记录

## 安装

```bash
composer require kylin/property
php artisan vendor:publish --tag=kylin-property-config
```

## 配置说明

```php
// config/kylin-property.php
return [
    'repair' => [
        'types' => ['水管', '电路', '门窗', '电梯', '公共设施', '其他'],
        'response_hours' => 24,           // 报修响应时限（小时）
    ],
    'bill' => [
        'types' => ['物业费', '水费', '电费', '停车费', '燃气费', '其他'],
        'remind_days' => 7,               // 缴费提醒提前天数
    ],
    'visitor' => [
        'types' => ['亲属', '朋友', '快递外卖', '商务', '其他'],
        'record_retention_days' => 90,    // 访客记录保留天数
    ],
    'notice' => [
        'types' => ['小区公告', '紧急通知', '活动通知', '缴费通知', '停水通知', '停电通知', '维修通知', '其他'],
    ],
];
```

## 使用示例

### Facade

```php
use Kylin\Property\Facades\KylinProperty;

// 创建报修单
$repair = KylinProperty::createRepair([
    'resident_id' => 1,
    'type' => '水管',
    'description' => '厨房水管漏水',
    'urgency' => 'normal',
]);

// 创建缴费单
$bill = KylinProperty::createBill([
    'resident_id' => 1,
    'type' => '物业费',
    'amount' => 50000, // 单位：分
    'due_date' => '2026-07-01',
]);

// 访客登记
$visitor = KylinProperty::registerVisitor([
    'name' => '张三',
    'phone' => '138****5678',
    'type' => '快递外卖',
    'visit_reason' => '送快递',
    'expected_time' => '2026-06-20 10:00',
]);
```

### API 路由

| 方法 | 路径 | 说明 |
|------|------|------|
| GET | /api/kylin/property/repairs | 报修列表 |
| POST | /api/kylin/property/repairs | 创建报修 |
| GET | /api/kylin/property/bills | 缴费列表 |
| POST | /api/kylin/property/bills | 创建缴费单 |
| GET | /api/kylin/property/notices | 公告列表 |
| POST | /api/kylin/property/visitors | 访客登记 |

## 法律合规

详见 [LEGAL.md](./LEGAL.md)，涵盖：
- 《中华人民共和国民法典》(2021.1.1) — 物业服务合同
- 《物业管理条例》(2018.3.19 修订)
- 《中华人民共和国个人信息保护法》(2021.11.1) — 住户信息保护

## 依赖

- PHP ^8.5
- Laravel ^13.0
- kylin/core

## 许可证

私有软件，未经授权禁止使用。