{
  "module": "客户管理",
  "moduleKey": "customer",
  "apiCount": 7,
  "apis": [
    {
      "title": "获取客户列表",
      "method": "GET",
      "path": "/api/customers",
      "description": "分页获取客户列表",
      "requestParams": {
        "query": [
          {
            "name": "pageNum",
            "type": "number",
            "required": false,
            "description": "页码，默认1"
          },
          {
            "name": "pageSize",
            "type": "number",
            "required": false,
            "description": "每页数量，默认10"
          },
          {
            "name": "name",
            "type": "string",
            "required": false,
            "description": "客户名称关键词"
          },
          {
            "name": "status",
            "type": "number",
            "required": false,
            "description": "状态过滤"
          }
        ]
      },
      "responseExample": {
        "success": {
          "code": "0000",
          "message": "获取成功",
          "data": {
            "list": [
              {
                "id": 1,
                "code": "CUS0001",
                "name": "示例客户",
                "contactName": "李四",
                "contactPhone": "021-88888888",
                "status": 1
              }
            ],
            "total": 100,
            "pageNum": 1,
            "pageSize": 10,
            "authorizedToMeCustomers": [
              {
                "id": 2,
                "code": "CUS0002",
                "name": "被授权客户",
                "contactName": "王五",
                "contactPhone": "021-66666666",
                "status": 1,
                "grantorUser": {
                  "userId": "USER0002",
                  "username": "授权方用户",
                  "phone": "13800000002",
                  "userType": "User"
                },
                "authorizationCreateTime": "2026-04-15T09:00:00.000Z",
                "authorizationUpdateTime": "2026-04-15T09:30:00.000Z"
              }
            ],
            "authorizedByMeCustomers": [
              {
                "customerId": 3,
                "granteeUser": {
                  "userId": "USER0003",
                  "username": "接收方用户",
                  "phone": "13800000003",
                  "userType": "User"
                },
                "authorizationCreateTime": "2026-04-15T10:00:00.000Z",
                "authorizationUpdateTime": "2026-04-15T10:15:00.000Z"
              }
            ]
          }
        }
      }
    },
    {
      "title": "获取客户详情",
      "method": "GET",
      "path": "/api/customers/{id}",
      "description": "根据客户ID获取客户详细信息",
      "requestParams": {
        "path": [
          {
            "name": "id",
            "type": "string",
            "required": true,
            "description": "客户ID"
          }
        ]
      },
      "responseExample": {
        "success": {
          "code": "0000",
          "message": "获取成功",
          "data": {
            "id": 1,
            "code": "CUS0001",
            "name": "示例客户",
            "contactName": "李四",
            "contactPhone": "021-88888888",
            "status": 1
          }
        },
        "failure": {
          "code": "4040",
          "message": "客户不存在",
          "data": null
        }
      }
    },
    {
      "title": "创建客户",
      "method": "POST",
      "path": "/api/customers",
      "description": "创建新的客户",
      "requestParams": {
        "body": {
          "name": "string｜必填，客户名称",
          "contactName": "string｜可选，联系人姓名",
          "contactPhone": "string｜可选，联系人电话",
          "status": "number｜可选，状态：1-合作中，0-已终止"
        }
      },
      "responseExample": {
        "success": {
          "code": "0000",
          "message": "创建客户成功",
          "data": {
            "id": 1,
            "code": "CUS0001",
            "name": "示例客户",
            "contactName": "李四",
            "contactPhone": "021-88888888",
            "status": 1
          }
        },
        "failure": {
          "code": "4000",
          "message": "创建客户失败",
          "data": null
        }
      }
    },
    {
      "title": "更新客户",
      "method": "PUT",
      "path": "/api/customers/{id}",
      "description": "更新指定客户的信息",
      "requestParams": {
        "body": {
          "name": "string｜必填，客户名称",
          "contactName": "string｜可选，联系人姓名",
          "contactPhone": "string｜可选，联系人电话",
          "status": "number｜可选，状态：1-合作中，0-已终止"
        },
        "path": [
          {
            "name": "id",
            "type": "string",
            "required": true,
            "description": "客户ID"
          }
        ]
      },
      "responseExample": {
        "success": {
          "code": "0000",
          "message": "更新客户成功",
          "data": {
            "id": 1,
            "code": "CUS0001",
            "name": "示例客户",
            "contactName": "李四",
            "contactPhone": "021-88888888",
            "status": 1
          }
        },
        "failure": {
          "code": "4000",
          "message": "更新客户失败",
          "data": null
        }
      }
    },
    {
      "title": "客户授权",
      "method": "POST",
      "path": "/api/customers/authorize",
      "description": "将指定客户授权给目标用户",
      "requestParams": {
        "body": {
          "customerIds": "array｜必填，客户ID列表",
          "targetUserId": "string｜必填，接收授权的用户ID",
          "targetUserType": "string｜可选，用户类型（User/ClientUser）"
        }
      },
      "responseExample": {
        "success": {
          "code": "0000",
          "message": "客户授权成功",
          "data": {
            "createdCount": 2,
            "skippedCount": 1
          }
        },
        "failure": {
          "code": "4000",
          "message": "客户授权失败",
          "data": null
        }
      }
    },
    {
      "title": "解除客户授权",
      "method": "POST",
      "path": "/api/customers/unauthorize",
      "description": "解除当前用户对指定客户授予目标用户的授权",
      "requestParams": {
        "body": {
          "customerIds": "array｜必填，客户ID列表",
          "targetUserId": "string｜必填，接收授权的用户ID",
          "targetUserType": "string｜可选，用户类型（User/ClientUser）"
        }
      },
      "responseExample": {
        "success": {
          "code": "0000",
          "message": "客户授权解除成功",
          "data": {
            "revokedCount": 2
          }
        },
        "failure": {
          "code": "4000",
          "message": "解除客户授权失败",
          "data": null
        }
      }
    },
    {
      "title": "删除客户",
      "method": "DELETE",
      "path": "/api/customers/{id}",
      "description": "删除指定的客户",
      "requestParams": {
        "path": [
          {
            "name": "id",
            "type": "string",
            "required": true,
            "description": "客户ID"
          }
        ]
      },
      "responseExample": {
        "success": {
          "code": "0000",
          "message": "删除客户成功",
          "data": {
            "result": true
          }
        },
        "failure": {
          "code": "4000",
          "message": "删除客户失败",
          "data": null
        }
      }
    }
  ]
}