XH_Digital_Management/application/mkt_mgnt/tests.py

86 lines
2.9 KiB
Python
Raw Normal View History

2024-06-04 16:50:30 +08:00
import os
import django
import random
from datetime import datetime, timedelta
2024-06-04 16:50:30 +08:00
# 设置 Django 环境
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'XH_Digital_Management.settings')
django.setup()
from application.hrm_mgnt.models import EmployeeInformation
from application.pjt_mgnt.models import ProjectLedger
from application.mkt_mgnt.models import (
ProjectResources, ProjectResourceGift, ProjectResourceMaintenance,
Customer, CustomerProject
)
def generate_test_data():
# 创建项目资源
resources = []
managers = EmployeeInformation.objects.all()
for i in range(5):
resource = ProjectResources.objects.create(
name=f"项目资源姓名{i}",
unit=f"单位{i}",
position=f"职务{i}",
contact_phone=f"123456789{i}",
contact_address=f"联系地址{i}",
resource_manager=random.choice(managers)
)
resources.append(resource)
print(f"Created ProjectResources: {resource}")
# 创建项目资源送礼记录
for resource in resources:
for i in range(3):
gift = ProjectResourceGift.objects.create(
resource=random.choice(managers), # 使用 EmployeeInformation 作为外键
gift_date=datetime.now().date() - timedelta(days=random.randint(1, 30)),
giver=random.randint(1, 10),
gift_description=f"送礼说明{i}"
)
print(f"Created ProjectResourceGift: {gift}")
# 创建项目资源维护记录
projects = ProjectLedger.objects.all()
for resource in resources:
for i in range(2):
maintenance = ProjectResourceMaintenance.objects.create(
resource=resource,
project=random.choice(projects),
settled_income=random.uniform(10000, 50000),
estimated_pending_income=random.uniform(5000, 20000)
)
print(f"Created ProjectResourceMaintenance: {maintenance}")
# 创建客户
customers = []
for i in range(5):
customer = Customer.objects.create(
relationship_type=random.choice(['资源方', '客户']),
detailed_description=f"详细说明{i}",
name=f"客户姓名{i}",
unit=f"单位{i}",
position=f"职务{i}",
residence=f"常住地{i}",
cooperation=random.choice(['', '']),
main_organizer=random.choice(managers),
assistant=random.choice(managers)
)
customers.append(customer)
print(f"Created Customer: {customer}")
# 创建客户合作项目
for customer in customers:
for i in range(2):
customer_project = CustomerProject.objects.create(
customer=customer,
project=random.choice(projects)
)
print(f"Created CustomerProject: {customer_project}")
if __name__ == "__main__":
generate_test_data()