refactor: service+dao=model