Interesting challenge, needing to group by 3 fields and select the highest Description for the group, keeping that in the query for sorting.... nice!
I've had a go, in MS-SQL 2008 which can be seen at http://sqlfiddle.com/#!3/422d2/10 There may be an easier way with MS T-SQL Ranking Functions, but this Derived Table of Groups should be fairly easily implemented in other SQLs.
This appears to give the sort order you require :
SELECT
p1.*, Groups.GMaxDescr
FROM Parts p1 INNER JOIN
(SELECT
p2.Part AS GPart,
p2.Locker AS GLocker,
p2.Serial AS GSerial,
Max(p2.Descr) as GMaxDescr
FROM Parts p2
GROUP BY Part, Locker, Serial
) AS Groups -- derived table of Groups with First (Max() for DESC) Name
-- join original rows with the Groups data for sorting
ON p1.Part = Groups.GPart
AND p1.Locker=Groups.GLocker
AND p1.Serial=Groups.GSerial
ORDER BY Groups.GMaxDescr DESC,
Part DESC,
Locker DESC,
Serial DESC