Process or Healing shapes for meshing

There are three main reasons why my model made an error in meshing:
1. The chamfer of the model is not good, as shown in Figure 1.
2. There are some small grooves in the model, as shown in Figure 2.
3. There is a small gap between the models, as shown in Figure 3. (It should be declared that the two shapes that may create a gap are not of the same material).

I want to deal with these three problems, I need to deal with the model, and my respective ideas are:
1. Make the chamfer becomes smooth, or simplified.
2. Make the grooves can be filled.
3. Align the two shapes that create the gap.

What should I do, or what occt classes or methods should I use.