The equation is symmetric, so assume \(x\ge y\). Then \(x^2\le x^2+xy+y^2=x+y+30\le2x+30\). Thus \(x^2-2x-30\le0\), so \(x\le6\).
Check \(x=1,2,3,4,5,6\), viewing the equation as a quadratic in \(y\). For \(x=1\), \(y^2=30\), no solution. For \(x=2\), \(y^2+y-28=0\), no positive integer \(y\). For \(x=3\), \(y^2+2y-24=0\), so \(y=4\), contradicting \(x\ge y\). For \(x=4\), \(y^2+3y-18=0\), so \(y=3\). For \(x=5\), \(y^2+4y-10=0\), no integer \(y\). For \(x=6\), \(y^2+5y=0\), no positive \(y\). Hence under \(x\ge y\) only \((4,3)\) appears. By symmetry, \((3,4)\) also appears. The solutions are \((4,3)\), \((3,4)\).