到这里为止，功能都差不多了。
后续用一段来优化。再进行开发