整个代码基本完成