Ternary compound HfCuP: An excellent Weyl semimetal with the coexistence of type-I and type-II Weyl nodes