调整聊天界面代码结构，抽取公有内容