Sometimes it is essential to retrain bank employees. Sometimes it is essential to retrain customers. As noted, banks should not accept checks payable to the bank unless the bank is receiving the money; e.g. a loan payment. Accepting an item payable to the bank for cash or deposit opens the door to a number of ways to defraud the bank or its customer.
The teller should always draw the error to the customer's attention. If the bank chooses to continue with the transaction (big IF), it should require the customer to sign the check on the back, "Presented for cash at XYZ bank, John Doe." That is less of an endorsement and more of a memorandum. It puts a band-aid on the problem without fixing the problem.
Again, the customer needs to be retrained...
In this world you must be oh so smart or oh so pleasant. Well, for years I was smart. I recommend pleasant.