写一个函数,其作用是根据数据库中对应的日期计算日销售额,月销售额,年销售额,当管理员点击查询按钮即可选择查询哪个销售额
时间: 2024-09-09 16:07:09 浏览: 39
【数据库设计报告】水果销售管理系统数据库设计报告.docx
为了创建一个这样的函数,首先我们需要假设我们有一个包含日期和对应销售额的数据结构,比如`SalesRecord`类,它有两个属性:`date`和`daily_sales`。这里是一个简单的Python函数示例:
```python
class SalesRecord:
def __init__(self, date, daily_sales):
self.date = date
self.daily_sales = daily_sales
def calculate_sales(sales_data, selected_date=None):
if not sales_data or len(sales_data) == 0:
return "销售数据为空"
# 创建字典存储每天、每月和全年的总销售额
total_sales = {
'每日': 0,
'每月': {month: 0 for month in range(1, 13)},
'全年': 0,
}
# 遍历销售记录并累加销售额
for record in sales_data:
if selected_date and record.date != selected_date:
continue
day_of_month = record.date.day
year = record.date.year
total_sales['每日'] += record.daily_sales
total_sales['每月'][month] += record.daily_sales
total_sales['全年'] += record.daily_sales
result = {}
# 根据selected_date计算并返回相应的销售额
if selected_date:
result['特定日期'] = total_sales['每日']
else:
result['每日平均'] = total_sales['每日'] / len(sales_data)
result['月度总计'] = {month: sum(monthly_total) for month, monthly_total in total_sales['每月'].items()}
result['全年总计'] = total_sales['全年']
return result
# 示例用法
sales_records = [SalesRecord(date=datetime(2023, m, d), daily_sales=amount) for m in range(1, 13) for d in range(1, 32)]
admin_selection = datetime(2023, 5, 10) # 管理员选择查询的日期
result = calculate_sales(sales_records, admin_selection)
print(result)
阅读全文