需求:
功能:
1.添加险种缴费记录
2.删除险种缴费记录
3.修改险种缴费记录
4.查询单个险种缴费记录
5.查询所有险种缴费记录
6.退出
总体概念图
record.py
"""
缴费记录实体类:
属性:编号、日期、类型、金额、款项
"""
class Record(object):
def __init__(self, id, date, type, money, moneyType):
self.id = id
self.date = date
self.type = type
self.money = money
self.moneyType = moneyType
def __str__(self):
return f"{self.id} {self.date} {self.type} {self.money} {self.moneyType}"
# 测试
reord =Record(1,"201.212","企业基本养老保险","121212","个人缴纳")
print(reord)
main.py
class RecordManager(object):
@staticmethod
def getFuntionList(self):
print("*" * 25)
print("1.添加险种缴费记录")
print("2.删除险种缴费记录")
print("3.修改险种缴费记录")
print("4.查询单个险种缴费记录")
print("5.查询所有险种缴费记录")
print("6.退出")
def add(self):
print("添加险种缴费记录")
def delete(self):
print("删除险种缴费记录")
def update(self):
print("修改险种缴费记录")
def getRecordById(self):
print("查询单个险种缴费记录")
def getAllRecords(self):
print("查询所有险种缴费记录")
recordManager.py
"""
缴费记录管理:
功能:
1.添加险种缴费记录
2.删除险种缴费记录
3.修改险种缴费记录
4.查询单个险种缴费记录
5.查询所有险种缴费记录
6.退出
"""
from entity.record import Record
class RecordManager(object):
def __init__(self):
self.records = [] # 列表用来保存所有的record信息
@staticmethod
def getFunctionList():
print("*" * 25)
print("1.添加险种缴费记录")
print("2.删除险种缴费记录")
print("3.修改险种缴费记录")
print("4.查询单个险种缴费记录")
print("5.查询所有险种缴费记录")
print("6.退出")
print("*" * 25)
def add(self):
"""添加险种缴费记录"""
id = input("请输入要添加的险种缴费记录编号:")
date = input("请输入要添加的险种缴费记录日期:")
type = input("请输入要添加的险种缴费记录类型:")
money = input("请输入要添加的险种缴费记录金额:")
moneyType = input("请输入要添加的险种缴费款项:")
record = Record(id, date, type, money, moneyType)
self.records.append(record)
self.saveToFile()
print("添加成功")
def delete(self):
"""删除险种缴费记录"""
id = input("请输入要删除的险种缴费记录编号:")
for record in self.records:
if record.id == id:
self.records.remove(record)
print("删除成功")
self.saveToFile()
break
else:
print("没有此记录")
def update(self):
"""修改险种缴费记录"""
id = input("请输入要修改的险种缴费记录编号:")
for record in self.records:
if record.id == id:
record.date = input(f"请输入修改后的险种缴费记录日期,原为{record.date}:")
record.type = input(f"请输入修改后的险种缴费记录类型,原为{record.type}:")
record.money = input(f"请输入修改后的险种缴费记录金额,原为{record.money}:")
record.moneyType = input(f"请输入修改后的险种缴费记录款项,原为{record.moneyType}:")
print("修改成功")
self.saveToFile()
break
else:
print("请输入正确的编号")
def getRecordById(self):
"""查询单个险种缴费记录"""
id = input("请输入要修改的险种缴费记录编号:")
for record in self.records:
if record.id == id:
print(record)
break
else:
print("没有该记录")
def getAllRecords(self):
"""查询所有险种缴费记录:读取文件"""
try:
f = open("records.txt", "r", encoding="UTF-8")
content = f.read()
print(type(content))
# 把content转成 列表
newRecords = eval(content)
print(type(newRecords))
# 把content转成 列表(对象)
self.records = [Record(record['id'], record['date'], record['type'], record['money'], record['moneyType']) for record in newRecords]
for record in self.records:
print(record)
else:
print(f"共查询到{len(self.records)}条记录")
except FileNotFoundError:
print("暂无数据,请添加数据")
def saveToFile(self):
f = open("records.txt", "w", encoding="UTF-8")
# 直接将列表保存到文件中,默认保存的是对象的内存地址
# 如何将对象转成map字典
newRecords = [record.__dict__ for record in self.records]
f.write(str(newRecords))
f.close()