建设工程合同无效但已完成部分工程的,承包人有权主张工程款。根据相关法律规定,建设工程施工合同无效,且建设工程经竣工验收不合格的,按照以下情形分别处理:修复后的建设工程经竣工验收合格,发包人请求承包人承担修复费用的,应予支持;修复后的建设工程经竣工验收不合格,承包人请求支付工程价款的,不予支持。因建设工程不合格造成的损失,发包人有过错的,也应承担相应的民事责任。若建设工程合同无效但工程已完工且质量合格,承包人可参照合同约定请求支付工程价款。这是因为承包人付出了劳动和成本,虽合同无效,但基于公平原则,其应获得相应报酬。不过,在主张工程款时,承包人需提供充分证据证明其已完成的工程量、工程质量等情况,以确保自身权益得到合理保障。同时,法院在审理此类案件时,会综合考虑各种因素,依法作出公正裁决。
以上是律师的法律建议,如有疑问,欢迎进一步咨询。