初步实现功能，细节需要完善