from sqlalchemy.orm import Session
from app.db import models
from app.auth import hash_password
from app.db.models import AdminUser as User
from sqlalchemy.orm import Session

def get_market_by_name(db: Session, name: str):
    return db.query(models.Market).filter(models.Market.name == name).first()

def create_market(db: Session, name: str):
    db_obj = models.Market(name=name)
    db.add(db_obj)
    db.commit()
    db.refresh(db_obj)
    return db_obj

def get_sector_by_name(db: Session, name: str):
    return db.query(models.Sector).filter(models.Sector.name == name).first()

def create_sector(db: Session, name: str):
    db_obj = models.Sector(name=name)
    db.add(db_obj)
    db.commit()
    db.refresh(db_obj)
    return db_obj

def get_user(db: Session, username: str):
    return db.query(User).filter(User.username == username).first()

def create_user(db: Session, username: str, password: str, is_superuser: bool = False):
    user = User(
        username=username,
        password=hash_password(password),   # <-- Correct field name
        is_active=True,
        is_superuser=is_superuser
    )
    db.add(user)
    db.commit()
    db.refresh(user)
    return user