You just need to change the syntax and not use VALUES because you can't mix it with a SELECT. All you need to use is a SELECT.
INSERT INTO dbo.Sales(Item_ID, Qty, Price, OID, SaleDate, CID)
SELECT Item_ID, SUM(Qty), SUM(Price), @OID, GetDATE(), null
FROM dbo.TemperoryOrder
WHERE Table_No = @Table_No AND OID = @OID
GROUP BY Item_ID