# generate_locations.py
import os
import django
import sys

def setup_django():
    # 使用原始字符串处理Windows路径
    project_path = "D:/Document/code/vue/greater_wms"
    sys.path.append(project_path)
    
    # 根据实际目录名设置(注意下划线)
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'greaterwms.settings')
    django.setup()

def main():
    try:
        # 从正确的应用导入模型
        from bin.models import DeviceModel
        
        warehouse_code = "W01"
        print(f"开始生成库位,仓库编码:{warehouse_code}")
        
        # 调用生成方法
        DeviceModel.generate_device(warehouse_code)
        
        print("✅ 库位生成成功!")
        print(f"共生成库位数:{DeviceModel.objects.count()}条")
        
    except Exception as e:
        print(f"❌ 生成失败:{str(e)}")
        import traceback
        traceback.print_exc()

if __name__ == "__main__":
    setup_django()
    main()