35 lines
1.2 KiB
Python
35 lines
1.2 KiB
Python
import os
|
|
|
|
file_path = 'core/views.py'
|
|
|
|
with open(file_path, 'r') as f:
|
|
content = f.read()
|
|
|
|
old_block = """ products = Product.objects.all().filter(stock_quantity__gt=0, is_active=True)
|
|
customers = Customer.objects.all()
|
|
categories = Category.objects.all()
|
|
payment_methods = PaymentMethod.objects.filter(is_active=True)
|
|
settings = SystemSetting.objects.first()"""
|
|
|
|
new_block = """ settings = SystemSetting.objects.first()
|
|
products = Product.objects.filter(is_active=True)
|
|
if not settings or not settings.allow_zero_stock_sales:
|
|
products = products.filter(stock_quantity__gt=0)
|
|
|
|
customers = Customer.objects.all()
|
|
categories = Category.objects.all()
|
|
payment_methods = PaymentMethod.objects.filter(is_active=True)"""
|
|
|
|
if old_block in content:
|
|
new_content = content.replace(old_block, new_block)
|
|
with open(file_path, 'w') as f:
|
|
f.write(new_content)
|
|
print("Successfully patched core/views.py")
|
|
else:
|
|
print("Could not find the target block in core/views.py")
|
|
# Debugging: print a small chunk to see what's wrong with matching
|
|
start_index = content.find("def pos(request):")
|
|
if start_index != -1:
|
|
print("Context around pos view:")
|
|
print(content[start_index:start_index+500])
|