<?php
require $_SERVER['DOCUMENT_ROOT'].'/hethong/head2.php';
header('Content-Type: application/json; charset=utf-8');

$uid    = (int)$user['id'];
$cp_id  = (int)($_POST['cp_id'] ?? 0);
$so_luong = (int)($_POST['so_luong'] ?? 0);

if ($cp_id <= 0 || $so_luong <= 0) {
    echo json_encode(['success' => false, 'message' => 'Dữ liệu không hợp lệ.']);
    exit;
}

$cp = mysqli_fetch_assoc(mysqli_query($ketnoi, "SELECT * FROM list_co_phieu WHERE id = $cp_id LIMIT 1"));
if (!$cp) {
    echo json_encode(['success' => false, 'message' => 'Cổ phiếu không tồn tại.']);
    exit;
}

$owned = mysqli_fetch_assoc(mysqli_query($ketnoi, "SELECT * FROM user_co_phieu WHERE user_id=$uid AND cp_id=$cp_id LIMIT 1"));
if (!$owned || (int)$owned['so_luong'] < $so_luong) {
    echo json_encode(['success' => false, 'message' => 'Bạn không sở hữu đủ số lượng cổ phiếu này.']);
    exit;
}

$gia       = (float)$cp['gia'];
$tong_tien = $gia * $so_luong;

mysqli_begin_transaction($ketnoi);
try {
    mysqli_query($ketnoi, "UPDATE users SET money = money + $tong_tien WHERE id = $uid");

    $sl_moi = (int)$owned['so_luong'] - $so_luong;
    if ($sl_moi <= 0) {
        mysqli_query($ketnoi, "DELETE FROM user_co_phieu WHERE id = ".$owned['id']);
    } else {
        mysqli_query($ketnoi, "UPDATE user_co_phieu SET so_luong=$sl_moi WHERE id=".$owned['id']);
    }

    mysqli_commit($ketnoi);

    $balance = mysqli_fetch_assoc(mysqli_query($ketnoi, "SELECT money FROM users WHERE id=$uid"))['money'];

    echo json_encode([
        'success' => true,
        'message' => "Bán thành công $so_luong cổ phiếu {$cp['ma_cp']}.",
        'balance' => $balance,
        'balance_format' => tien($balance)
    ]);
} catch (Exception $e) {
    mysqli_rollback($ketnoi);
    echo json_encode(['success' => false, 'message' => 'Lỗi hệ thống, vui lòng thử lại.']);
}
