A defective or clogged valve is a likely problem if a dishwasher is not cleaning the dishes on the top rack. If the valve is clogged, it can be cleaned but if it is faulty, it must be replaced. Cleaning the inlet valve may damage it so it may need to be replaced in either case.
You can lock the door with the control panel and it may have happened inadvertently. Hold down the two buttons that are marked with the lock icon for five seconds and it should release the door. Otherwise, check the screw that is holding the dishwasher in place under the counter countertop to make sure it is not blocking the door.
The heating element in your dishwasher has likely failed. After turning the power off to the dishwasher, remove the heating element and inspect it carefully. If there are any burnt areas or if it is cracked, it should be replaced. You can use a multi-meter to test continuity.
A Frigidaire dishwasher cannot drain if the drain hose is blocked, the drainage valve is shut or the pump is not working. If the water drains, water may still flow back in, such as if there is no drain loop or the valve is broken. There could also be water leaking into the tub at the water inlet.