It depends on what you mean by "complete". docplex builds on or wraps around the Python CPLEX API. So it cannot do more than the Python CPLEX API.
docplex does not support everything that is possible with the CPLEX Python API. On the other hand, many things are more convenient with docplex than they are with the CPLEX Python API. The main difference is that docplex provides an object oriented way of modeling (variables and constraints are objects, operators are overload for ease of building expressions etc.) while the CPLEX Python API is matrix based (a variable is just a column index, a constraint is just a row index).
It depends on you which of the two approaches you feel more comfortable with.
You can find some more details in short clarification and the links provided there.
#CPLEXOptimizers#DecisionOptimization