修理
means "fix/repair" and almost, if not always refers to fixing something that is physically broken.
直す
can also mean "fix" as in something broken, but has more metaphorical uses. "Fix" as in correct a mistake (often seen as a compound verb 〜なおす
: 書き直す
to rewrite); "fix" as in straighten out, put right, etc.; "Fix" as in change/alter (a plan, etc.)