Document-level event extraction is a challenging task in natural language processing, as it involves multiple events within a document and scattered event arguments across sentences. To tackle these challenges, we propose a recurrent event query decoder, i.e., a recurrent module that dynamically updates event queries to capture cross-event dependencies. Our approach then generates arguments by extracting role-argument relations using bilinear mapping, which helps address the issue of scattered arguments. Experimental results demonstrate that our proposed approach outperforms state-of-the-art models on a large-scale public dataset and actual application data, achieving significant improvements in F1-score. In domain-specific event extraction applications, our method achieves higher accuracy with fewer resources compared to general-purpose large language models.