82 lines
3.2 KiB
Python
82 lines
3.2 KiB
Python
import os
|
|
import django
|
|
import random
|
|
from datetime import date, timedelta
|
|
|
|
# 设置 Django 环境
|
|
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'XH_Digital_Management.settings')
|
|
django.setup()
|
|
|
|
from application.pjt_mgnt.models import ProjectLedger
|
|
from application.fac_mgnt.models import *
|
|
from application.hrm_mgnt.models import *
|
|
|
|
|
|
def generate_test_data():
|
|
|
|
|
|
# 创建开票记录
|
|
for i in range(5):
|
|
invoice_record = InvoiceRecord.objects.create(
|
|
project_id=ProjectLedger.objects.order_by('?').first(),
|
|
project_name=f"项目名称{i}",
|
|
primary_department=f"一级部门{i}",
|
|
project_manager=f"项目负责人{i}",
|
|
nature=random.choice(['新增', '开票']),
|
|
billing_entity=f"开票主体{i}",
|
|
invoice_number=f"发票号码{i}",
|
|
purchase_info=f"购票信息{i}",
|
|
invoice_date=date.today() - timedelta(days=random.randint(1, 365)),
|
|
invoice_content=f"开票内容{i}",
|
|
total_amount=random.uniform(1000, 10000),
|
|
tax_rate=random.uniform(0, 25),
|
|
amount_excluding_tax=random.uniform(1000, 10000),
|
|
tax_amount=random.uniform(100, 1000),
|
|
invoice_type=random.choice(['专票', '普票'])
|
|
)
|
|
print(f"Created InvoiceRecord: {invoice_record}")
|
|
|
|
# 创建回款记录
|
|
for i in range(5):
|
|
repayment_record = RepaymentRecord.objects.create(
|
|
project_id=ProjectLedger.objects.order_by('?').first(),
|
|
project_name=f"项目名称{i}",
|
|
primary_department=f"一级部门{i}",
|
|
project_manager=f"项目负责人{i}",
|
|
invoice=InvoiceRecord.objects.order_by('?').first(),
|
|
repayment_amount=random.uniform(1000, 10000)
|
|
)
|
|
print(f"Created RepaymentRecord: {repayment_record}")
|
|
|
|
# 创建员工提成情况
|
|
for i in range(5):
|
|
commission = EmployeeCommission.objects.create(
|
|
project_id=ProjectLedger.objects.order_by('?').first(),
|
|
project_name=f"项目名称{i}",
|
|
year_month=date.today() - timedelta(days=random.randint(1, 365)),
|
|
company_retained=random.uniform(1000, 10000),
|
|
name=f"员工姓名{i}",
|
|
primary_department=f"一级部门{i}",
|
|
total_commission=random.uniform(1000, 10000),
|
|
amount_paid=random.uniform(1000, 5000),
|
|
accrued_amount=random.uniform(1000, 5000),
|
|
chairman_fund=random.uniform(1000, 5000)
|
|
)
|
|
print(f"Created EmployeeCommission: {commission}")
|
|
|
|
# 创建员工提成记录修改
|
|
for i in range(5):
|
|
modification = CommissionModification.objects.create(
|
|
commission_record=EmployeeCommission.objects.order_by('?').first(),
|
|
modified_field=random.choice(['total_commission', 'amount_paid', 'accrued_amount', 'chairman_fund']),
|
|
previous_amount=random.uniform(1000, 5000),
|
|
modified_amount=random.uniform(1000, 5000),
|
|
modified_by=f"修改人{i}",
|
|
modification_date=date.today()
|
|
)
|
|
print(f"Created CommissionModification: {modification}")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
generate_test_data()
|