# Member

## Overview

The Member Management System is a specialized customer management platform designed for non-traditional core insurance business. It serves as a centralized hub for managing user profiles, customer-to-user relationships, and transaction associations, providing a comprehensive membership framework for insurance services.

## Key Features

*   **User Profile Management**: Centralized storage and maintenance of personal information for insurance customers.
*   **Customer Binding**: Manages the link between system users and specific insurance customer records.
*   **Transaction Association**: Enables users to track and manage their various insurance transactions.
*   **Multi-channel Authentication**: Supports secure login via username, email, and mobile phone.
*   **Social Integration**: Built-in support for WeChat user binding and authentication.


##  Key Concepts

### User Profiles
The system maintains detailed user profiles including basic identity (name, gender, date of birth), contact details (verified email and mobile), and account security status.

### Customer Binding
This feature bridges the gap between a registered system user and their official "Customer ID" within the insurance core system. It ensures that a user can access their specific policyholder information securely.

### Transaction Binding
Users can associate their accounts with specific insurance transactions. This allows for granular tracking of activities such as policy applications, claims, or renewals based on transaction types and IDs.

### Third-Party & WeChat Integration
The system supports extended profiles for social platforms. It allows users to link their WeChat OpenID/UnionID or other third-party provider identities (e.g., Alipay) to their member account for seamless SSO (Single Sign-On) access.



## Functional Modules & API Reference

### Account Management

#### Registration & Authentication

*   **Register**: Create a new user account. (`POST /user/auth/register`)
*   **Batch Registration**: Support for bulk user creation. (`POST /user/auth/batchRegister`)
*   **Sign-in**: Secure authentication and authorization. (`POST /account/signin`)

#### Password & Security

*   **Change Password**: Update existing password. (`POST /user/update/password`)

#### Profile Updates

*   **Contact Info.**: Update verified email or mobile numbers. (`POST /user/update/email`, `POST/user/update/mobile`)
*   **Identity**: Update username or basic profile details. (`POST /user/update/userName`)

### Customer Binding Services

*   **Bind Customer**: Link a user to an insurance customer record. (`POST /customer/bind`)
*   **Retrieve Bindings**: View all customer records linked to a specific user. (`GET /customer/bindingList`)
*   **Unbind**: Remove the link between a user and a customer record. (`POST /customer/binding`)

### Transaction Management

*   **Bind Transaction**: Link a specific insurance transaction to a user. (`POST /trans/bind`)
*   **Query by Type&Id**: List transactions filtered by category. (`GET /trans//bindingList/byTransTypeAndId`)
*   **Query by Type&UserName**: Retrieve specific transaction binding details. (`GET /trans/bindingList`)
*   **Unbind Transaction**: Remove transaction associations. (`DELETE /trans/binding`)

### WeChat Integration

*   **Status Check**: Verify if a WeChat user is already registered in the system. (`GET /wechat/check`)
*   **WeChat Binding**: Link a WeChat identity to an existing member account. (`POST /wechat/bind`)

---

## Security & Data Protection

### Authentication Security
*   **Multi-Factor Support**: Flexible login options via email, mobile, or username.
*   **Account Protection**: Automatic account locking after multiple failed login attempts.
*   **Credential Safety**: Industry-standard encryption for all passwords and sensitive credentials.

### Privacy & Compliance
*   **Data Encryption**: Sensitive user information is encrypted at rest.
*   **Access Control**: Strict permission checks to ensure users can only access their own bound data.
*   **Audit Trails**: Logging of key security events and profile changes for accountability.

---

## Integration Capabilities

*   **Extensible Identity**: Easily integrate with additional third-party login providers (OAuth2/OpenID Connect).
*   **Dynamic Attributes**: Supports custom metadata for user profiles to meet specific business requirements without system overhauls.
*   **Developer Friendly**: Standardized RESTful APIs for seamless integration with web and mobile front-ends.