Saed,
On #3 I don't think there is an error.
There may be code missing to do what YOU want to do (add more ADC SOC channels), but what we have done is fine.
The SOCs are all all initialized in the HAL_AdcCalConversion, with the last section clearing the SOC trigger on each channel:
ADC_setupSocTrigSrc(obj->adcHandle, ADC_SocNumber_15, ADC_NoIntTriggersSOC);
And then in HAL_setupAdcs we configure the ADC SOCs we want to use...in this case just the currents and voltages for the motor control.
If you want to add additional ADC SOCs here, with different trigger sources, you can.
Am I misunderstanding what you want to do?