增加接口

增加接口，更改逻辑，优化代码