Create a checkbox field like isApproved
and during final approval action update this field from workflow field update.
Since you are using Assign using active assignment rules
checkbox to fire assignment, which cannot be automatically possible after workflow field update as you are not in UI.
So, you need to write an after update trigger to fire assignment rule:
trigger CaseAssignment on Case (after update) {
List<Case> caseList = new List<Case>();
if(Trigger.isAfter && Trigger.isUpdate){
for (Case caseObj : Trigger.new)
{
Case oldCase = Trigger.oldMap.get(caseObj.id);
if (!oldCase.isApproved__c && caseObj.isApproved__c) {
caseList.add(new Case(id = caseObj.id));
}
}
}
Database.DMLOptions dmo = new Database.DMLOptions();
dmo.assignmentRuleHeader.useDefaultRule = true;
Database.update(caseList, dmo);
}
Refer Triggers and Order of Execution
If the record was updated with workflow field updates, fires before update triggers and after update triggers one more time (and only one more time), in addition to standard validations. Custom validation rules, duplicate rules, and escalation rules are not run again.
Approval Process setup:
If Type is Electronic it will be submitted for approval and after getting approved, isApproved
field will be updated to true
.

Case assignment rule:

Case record during submission for approval

Case is assigned to queue after getting approved, by virtue of after trigger to fire assignment rule.
