import { BaseEntity, Column, Entity, Generated, PrimaryGeneratedColumn } from "typeorm";

@Entity({ name: "UserPortfolio" })
export class UserPortfolio extends BaseEntity {
  @PrimaryGeneratedColumn({ name: "id" })
  @Generated("uuid")
  id: string;

  @Column({ name: "userId" }) 
  userId: string;
  
  @Column({ name: "investedAmount", type: "float", }) 
  investedAmount: number;

  @Column({ name: "workingBalance", type: "float", default: 0 }) 
  workingBalance: number;

  @Column({ name: "dailyProfitPercentage", type: "float", default: 0 }) 
  dailyProfitPercentage: number;

  @Column({ name: "dailyProfitAmount", type: "float", default: 0 }) 
  dailyProfitAmount: number;

  @Column({ name: "depositAmount", type: "float", default: 0 }) 
  depositAmount: number;

  @Column({ name: "withdrawnAmount", type: "float", default: 0 }) 
  withdrawnAmount: number;

  @Column({ name: "dayEndBalance", type: "float", default: 0 }) 
  dayEndBalance: number;

  @Column({ name: "dayEndPortfolio", type: "float", default: 0 }) 
  dayEndPortfolio: number;

  @Column({ name: "isAddedAmount", default: false  }) 
  isAddedAmount: boolean;

  @Column({ name: "created_at", type: "timestamp", default: () => "CURRENT_TIMESTAMP" })
  createdAt: Date;
  
  @Column({ name: "updated_at", type: "timestamp", default: () => "CURRENT_TIMESTAMP" })
  updatedAt: Date;
}
