import 'package:intl/intl.dart';

class Exercise {
  int exerciseId;
  int exerciseTypeId;
  int customerId;
  double quantity;
  String unit;
  double unitQuantity;
  DateTime dateAdd;
  int exercisePlanDetailId;

  String datePart;
  double calculated;



  Exercise({this.exerciseTypeId, this.customerId, this.quantity, this.dateAdd});

  Exercise.fromJson(Map json) {
    this.exerciseId = json['exerciseId'];
    this.exerciseTypeId = json['exerciseTypeId'];
    this.customerId = json['customerId'];
    this.quantity = json['quantity'];
    this.unit = json['unit'];
    this.unitQuantity = json['unitQuantity'];
    this.dateAdd = DateTime.parse( json['dateAdd'] );
    this.datePart = DateFormat('yyyy-MM-dd').format(this.dateAdd);
    this.calculated = quantity;
  }

  Map<String, dynamic> toJson() =>
      {
        "exerciseTypeId": exerciseTypeId,
        "customerId": customerId,
        "quantity": quantity,
        "unit": unit,
        "unitQuantity": unitQuantity,
        "dateAdd": DateFormat('yyyy-MM-dd HH:mm:ss').format(this.dateAdd),
        "exercisePlanDetailId": exercisePlanDetailId,
      };

  Map<String, dynamic> toJsonDatePart() =>
    {
      "exerciseTypeId": exerciseTypeId,
      "customerId": customerId,
      "quantity": quantity,
      'calculated': calculated,
      "unit": unit,
      "unitQuantity": unitQuantity,
      "datePart": this.datePart,
    };


  Exercise copy() {
    Exercise newExercise = Exercise();
    newExercise.exerciseTypeId = this.exerciseTypeId;
    newExercise.customerId = this.customerId;
    newExercise.quantity = this.quantity;
    newExercise.unit = this.unit;
    newExercise.unitQuantity = this.unitQuantity;
    newExercise.dateAdd = this.dateAdd;
    newExercise.exercisePlanDetailId = this.exercisePlanDetailId;
    return newExercise;
  }
}