from recharge.models import Operator

# Step 1: Clear existing data
Operator.objects.all().delete()
print("✅ Existing operators cleared.")

# Step 2: New operator data
operator_data = [
    # Mobile
    ("Airtel", "A", "Mobile"),
    ("Vodafone", "V", "Mobile"),
    ("BSNL - TOPUP", "BT", "Mobile"),
    ("RELIANCE - JIO", "RC", "Mobile"),
    ("Idea", "I", "Mobile"),
    ("BSNL - STV", "BR", "Mobile"),
    
    # DTH
    ("Airtel Digital DTH TV", "ATV", "DTH"),
    ("SUNDIRECT DTH TV", "STV", "DTH"),
    ("TATASKY DTH TV", "TTV", "DTH"),
    ("VIDEOCON DTH TV", "VTV", "DTH"),
    ("DISH TV", "DTV", "DTH"),
    
    # PostPaid
    ("Airtel Postpaid", "PAT", "PostPaid"),
    ("Idea Postpaid", "IP", "PostPaid"),
    ("Vodafone Postpaid", "VP", "PostPaid"),
    ("Tata Docomo Postpaid", "DP", "PostPaid"),
    ("BSNL Postpaid", "BP", "PostPaid"),
    ("Bsnl Landline", "LBS", "PostPaid"),
    ("MTNL Delhi Landline", "LMT", "PostPaid"),
    ("Airtel Landline", "LAT", "PostPaid"),
    ("JIO POSTPAID", "JPP", "PostPaid"),

    # Electricity
    ("North Bihar Electricity", "NBE", "Electricity"),
    ("JBVNL - JHARKHAND", "JBVNL", "Electricity"),
    ("Assam Power Distribution Company Ltd (RAPDR)", "APDCLR", "Electricity"),
    ("Mangalore Electricity Supply Co. Ltd (MESCOM) - RAPDR", "MESCOMR", "Electricity"),
    ("APDCL (Non-RAPDR) - ASSAM", "APDCLN", "Electricity"),
    ("Mangalore Electricity Supply Co. Ltd (Non) - RAPDR", "MESCOMNR", "Electricity"),
    ("BSES Rajdhani Power Limited - Delhi", "BSES", "Electricity"),
    ("BSES Yamuna Power Limited - Delhi", "BSESY", "Electricity"),
    ("Tata Power Delhi Limited - Delhi", "TPD", "Electricity"),
    ("Tata Power - MUMBAI", "TPDM", "Electricity"),
    ("Hubli Electricity Supply Company Ltd. (HESCOM)", "HESCOM", "Electricity"),
    ("South Bihar Electricity", "SBE", "Electricity"),
    ("BEST Mumbai", "BEST", "Electricity"),
    ("Ajmer Vidyut Vitran Nigam - RAJASTHAN", "AJV", "Electricity"),
    ("Bangalore ElectricitySupply Company", "BESCOM", "Electricity"),
    ("CESC - WEST BENGAL", "CESC", "Electricity"),
    ("Jaipur Vidyut Vitran Nigam - RAJASTHAN", "JVV", "Electricity"),
    ("Jodhpur Vidyut Vitran Nigam - RAJASTHAN", "JDVV", "Electricity"),
    ("MP Madhaya Kshetra Vidyut Vitaran -Urban", "MKV", "Electricity"),
    ("MSEDC - MAHARASHTRA", "MSEDC", "Electricity"),
    ("Noida Power - NOIDA", "NP", "Electricity"),
    ("Paschim Kshetra Vitaran - MADHYA PRADESH", "PKV", "Electricity"),
    ("Southern Power - ANDHRA PRADESH", "SPA", "Electricity"),
    ("Southern Power - TELANGANA", "SPT", "Electricity"),
    ("Torrent Power agra", "TRP", "Electricity"),
    ("Central Power Distribution Company of Andhra Pradesh Ltd", "APCPDCL", "Electricity"),
    ("Department of Power Arunachal Pradesh", "ARPDOP", "Electricity"),
    ("Western Electricity supply co. Of orissa ltd.", "WESCO", "Electricity"),
    ("Paschim Gujarat Vij Company Ltd", "PGVCL", "Electricity"),
    ("BharatpurElectricityServicesLtd", "BHES", "Electricity"),
    ("Muzaffarpur Vidyut Vitran", "MVV", "Electricity"),
    ("Madhya Gujarat Vij Company Ltd", "MGVCL", "Electricity"),
    ("MEPDCL - MEGHALAYA", "MEPDCL", "Electricity"),
    ("KEDL - KOTA", "KEDL", "Electricity"),
    ("Dakshin Gujarat Vij Company Ltd", "DGVCL", "Electricity"),
    ("WBSEDCL - WEST BENGAL", "WBSEDCL", "Electricity"),
    ("SNDL Power - NAGPUR", "SNDL", "Electricity"),
    ("Bikaner Electricity Supply Limited", "BESL", "Electricity"),
    ("India Power - WEST BENGAL", "IPWB", "Electricity"),
    ("BrihanMumbaiElectricSupplyandTransportUndertaking", "BMESTU", "Electricity"),
    ("APEPDCL - ANDHRA PRADESH", "APEPDCL", "Electricity"),
    ("TNEB - TAMIL NADU", "TNEB", "Electricity"),
    ("UPPCL (URBAN) - UTTAR PRADESH", "UPPCLU", "Electricity"),
    ("Uttar Pradesh Power Corporation Limited(Rular)", "UPPCLR", "Electricity"),
    ("DakshinHaryanaBijliVitranNigam", "DHBVN", "Electricity"),
    ("TSNPDCL Telangana northern power", "TSNPDCL", "Electricity"),
    ("DNHPowerDistributionCompanyLimited", "DDCL", "Electricity"),
    ("GulbargaElectricitySupplyCompanyLimited", "GESCL", "Electricity"),
    ("IndiaPowerCorporationLimited", "IPCL", "Electricity"),
    ("JamshedpurUtilitiesandServicesCompanyLimited", "JUSCL", "Electricity"),
    ("Chhattisgarh State Power Distribution Company Ltd. (CSPDCL)", "CSPDCL", "Electricity"),
    ("Goa Electricity", "GOAELC", "Electricity"),
    ("UttarGujarat Vij Company Ltd", "UGVCL", "Electricity"),
    ("Torrent Power Surat", "TORRENTSUR", "Electricity"),
    ("Torrent Power Ahemdabad", "TORRENTAHM", "Electricity"),
    ("Gift Power Company Limited", "GPCL", "Electricity"),
    ("Himachal Pradesh State Electricity Board Ltd", "HPSEBL", "Electricity"),
    ("Jammu & Kashmir power Development department", "JKPDD", "Electricity"),
    ("Chamundeshwari Electricity Supply Corporation Ltd. (Cesc,Mysore)", "CESCOM", "Electricity"),
    ("NorthDelhiPowerLimited", "NDPL", "Electricity"),
    ("MUNICIPALCORPORATIONOFGURUGRAM", "MCG", "Electricity"),
    ("Punjab State Power Corporation Limted", "PSPCL", "Electricity"),
    ("TripuraStateElectricityCorporationLtd", "TSECL", "Electricity"),
    ("UttarHaryanaBijliVitranNigam", "UHBV", "Electricity"),
    ("UttarakhandPowerCorporationLimited", "UKPCL", "Electricity"),
    ("Kerala State Electricity Board Ltd.", "KSEB", "Electricity"),
    ("kannan devan hills power", "KDHPCPL", "Electricity"),
    ("Lakshadweep Electricity Department", "LED", "Electricity"),
    ("MP Poorv Kshetra Vidyut Vitaran - Jabalpur", "MPPKVVCLPU", "Electricity"),
    ("MP Poorv Kshetra Vidyut Vitaran - Rular", "MPPKVVCLPU", "Electricity"),
    ("Madhya Pradesh Madhya Kshetra Vidyut Vitaran-RURAL", "MPPKVVCLMR", "Electricity"),
    ("Madhya Pradesh Poorv Kshetra Vidyut Vitaran-URBAN", "MPPKVVCL", "Electricity"),
    ("Reliance Energy", "RELIANCE", "Electricity"),
    ("Torrent Power SHIL", "TORRENTSHI", "Electricity"),
    ("Torrent Power Bhivandi", "TORRENTBHI", "Electricity"),
    ("Adani power", "AEML", "Electricity"),
    ("Manipur State Power Distribution Company Limited (Prepaid)", "MSPDCLPR", "Electricity"),
    ("Power & Electricity Department - Mizoram", "MPED", "Electricity"),
    ("Department of Power, Nagaland", "NDOP", "Electricity"),
    ("New Delhi Municipal Council (NDMC) - Electricity", "NDMC", "Electricity"),
    ("NESCO Odisha", "NESCO", "Electricity"),
    ("SOUTHCO Odisha", "SOUTHCO", "Electricity"),
    ("TP central odisha distribution limited", "TPCODL", "Electricity"),
    ("Government of Puducherry Electricity Department", "PGPED", "Electricity"),
    ("TP Ajmer Distribution Ltd", "TPADL", "Electricity"),
    ("Sikkim Power Rural", "SPR", "Electricity"),
    ("Sikkim Power Urban", "SPU", "Electricity"),
    ("Kanpur Electricity Supply Company", "KESCO", "Electricity"),
    ("Torrent Power Dahej", "TORRENTDAH", "Electricity"),
    ("Madhyanchal Vidyut Vitran Nigam Limited", "MVVNL", "Electricity"),

    # Gas
    ("Mahanagar Gas", "MG", "Gas"),
    ("Adani Gas", "AG", "Gas"),
    ("Gujarat Gas", "GG", "Gas"),
    ("Indraprastha Gas", "IG", "Gas"),
    ("Hindustan Petroleum Corporation Ltd", "HPCLGC", "Gas"),

    # Insurance
    ("ICICI Prudential Insurance", "ICP", "Insurance"),
    ("Tata AIA Insurance", "TAI", "Insurance"),

    # Money Transfer
    ("IMPS", "IMPS", "Money Transfer"),

    # Data Card
    ("Reliance NetConnect 1X", "RNET", "Data Card"),
    ("Reliance NetConnect 3G", "RNET3", "Data Card"),
    ("Reliance NetConnect+", "RNETP", "Data Card"),
    ("Tata Photon Whiz", "TPW", "Data Card"),
    ("Tata Photon+", "TPP", "Data Card"),
    ("MTS Mblaze", "MTM", "Data Card"),
    ("MTS Mbrowse", "MTBR", "Data Card"),
    # Merchants
    ("Paul Merchants", "PMF", "Merchant"),
    
    # Fastag Operators
    ("Jammu And Kashmir Bank Fastag", "JKF", "Fastag"),
    ("Kotak Mahindra Bank - Fastag", "KMF", "Fastag"),
    ("Indusind Bank Fastag", "INDF", "Fastag"),
    ("Indian Highways Management Company Ltd Fastag", "IHMCF", "Fastag"),
    ("Idfc First Bank- Fastag", "IFF", "Fastag"),
    ("Icici Bank Fastag", "ICF", "Fastag"),
    ("Hdfc Bank - Fastag", "HDF", "Fastag"),
    ("Equitas Fastag Recharge", "EFF", "Fastag"),
    ("Bank Of Baroda - Fastag", "BBF", "Fastag"),
    ("Axis Bank Fastag", "AXF", "Fastag"),
    ("Federal Bank - Fastag", "FDF", "Fastag"),
    ("Paytm Payments Bank Fastag", "PTF", "Fastag"),
    ("Airtel Payments Bank", "APB", "Fastag"),
    ("Idbi Bank Fastag", "IBF", "Fastag"),
    ("Sbi Bank Fastag", "SBF", "Fastag"),

    # Google Play
    ("Google Play", "GLF", "Google Play"),

    # PAN Services
    ("NSDL EKYC PAN (Instant Pan)", "EKYC", "PAN"),
    ("NSDL ESIGN PAN (Scan Based with photo and signature)", "ESIGN", "PAN"),
    ("NSDL EKYC PAN CORRECTION (Instant Pan)", "CEKYC", "PAN"),
    ("NSDL ESIGN PAN CORRECTION (Scan Based with photo and signature)", "CESIGN", "PAN"),

    # MTNL / BSNL / Telecom
    ("BSNL Recharge", "BS", "Mobile"),
    ("MTNL - Recharge", "MTR", "Mobile"),
    ("MTNL – TOPUP", "MTT", "Mobile"),
    ("Idea Lapu", "RI", "Mobile"),
]

# Step 3: Bulk insert
Operator.objects.bulk_create([
    Operator(
        name=name,
        code=code,
        service_type=service or "unknown",
        source="A1Topup"  # ✅ include this
    )
    for name, code, service in operator_data
])


print(f"✅ {len(operator_data)} operators inserted successfully.")
