重构去除重复代码