import 'package:json_annotation/json_annotation.dart';

part 'intimacy_analyze_response.g.dart';

/// 分析亲密度的响应
@JsonSerializable()
class IntimacyAnalyzeResponse {
  /// 情感亲密度
  @JsonKey(name: "emotion")
  String? emotion;

  /// 亲密度阶段
  @JsonKey(name: "intimacyPhase")
  String? intimacyPhase;

  /// 互动好感度
  @JsonKey(name: "interaction")
  String? interaction;

  /// 话题情感浓度
  @JsonKey(name: "topic")
  String? topic;

  /// 情绪回应
  @JsonKey(name: "respond")
  String? respond;

  /// 亲密词占比
  @JsonKey(name: "intimacyRatio")
  String? intimacyRatio;

  /// 情感需求
  @JsonKey(name: "need")
  String? need;

  /// 聊天策略
  @JsonKey(name: "chatStrategy")
  String? chatStrategy;

  /// 预测方向占比
  @JsonKey(name: "directionRatio")
  String? directionRatio;

  /// 预测方向的名称
  @JsonKey(name: "directionName")
  String? directionName;

  /// 建议调整亲密度
  @JsonKey(name: "adjustIntimacy")
  String? adjustIntimacy;

  /// 情感调整方向
  @JsonKey(name: "adjustDirection")
  String? adjustDirection;

  /// 建议使用聊天人设
  @JsonKey(name: "chatCharacter")
  String? chatCharacter;

  /// 我的表面行为
  @JsonKey(name: "myBehavior")
  String? myBehavior;

  /// 对方的表面行为
  @JsonKey(name: "targetBehavior")
  String? targetBehavior;

  /// 帮助亲密度提升
  @JsonKey(name: "helpImprove")
  String? helpImprove;

  /// 沟通中我的优势
  @JsonKey(name: "myAdvantage")
  String? myAdvantage;

  /// 沟通中我的劣势
  @JsonKey(name: "myDisadvantage")
  String? myDisadvantage;

  IntimacyAnalyzeResponse(
    this.emotion,
    this.intimacyPhase,
    this.interaction,
    this.topic,
    this.respond,
    this.intimacyRatio,
    this.need,
    this.chatStrategy,
    this.directionRatio,
    this.directionName,
    this.adjustIntimacy,
    this.adjustDirection,
    this.chatCharacter,
    this.myBehavior,
    this.targetBehavior,
    this.helpImprove,
    this.myAdvantage,
    this.myDisadvantage,
  );

  factory IntimacyAnalyzeResponse.fromJson(Map<String, dynamic> json) =>
      _$IntimacyAnalyzeResponseFromJson(json);

  Map<String, dynamic> toJson() => _$IntimacyAnalyzeResponseToJson(this);
}
