完善定制函数