Static Routes

Hello first sorry my english.

I need than users networks 192.168.5.x/24 and 192.168.4.x/24 can print to the network printer in 192.168.5.50/24.
But 192.168.5.x/24 users can navigate only by ether1 and ether2 (PCC)
And 192.168.4.x/24 only can by navigate ether3.

(Español)
“Necesito que los equipos de la red 192.168.5.x/24 y los equipos de la red 192.168.4.x/24 puedan imprimir a la impresora en red 192.168.5.50/24.
Pero que los usuarios de 192.168.5.x/24 solo puedan navegar por ether1 y ether2 (pcc)
Y los usuarios de 192.168.4.x/24 solo naveguen por ether3”

This is currently the configuration:

/ip pool
add name=dhcp_pool1 ranges=192.168.5.2-192.168.5.254
add name=dhcp_pool2 ranges=192.168.4.2-192.168.4.254

/ip dhcp-server
add address-pool=dhcp_pool1 disabled=no interface=ether5 name=dhcp1
add address-pool=dhcp_pool2 disabled=no interface=ether4 name=dhcp2

/ip address
add address=10.0.1.2/24 interface=ether1
add address=10.0.2.2/24 interface=ether2
add address=192.168.5.1/24 interface=ether5
add address=192.168.4.1/24 interface=ether4
add address=192.168.0.128/24 interface=ether3

/ip dhcp-server network
add address=192.168.4.0/24 gateway=192.168.4.1
add address=192.168.5.0/25 gateway=192.168.5.1
add address=192.168.5.0/24 dns-server=8.8.8.8,8.8.4.4 gateway=192.168.5.1
add address=192.168.5.128/25 gateway=192.168.5.254

/ip dns
set servers=8.8.8.8,8.8.4.4

/ip firewall mangle
add chain=prerouting dst-address=192.168.4.0/24
add chain=prerouting dst-address=192.168.5.0/24
add action=mark-connection chain=prerouting connection-state=new in-interface=ether1 new-connection-mark=ether1_conn
add action=mark-connection chain=prerouting connection-state=new in-interface=ether2 new-connection-mark=ether2_conn
add action=mark-connection chain=prerouting comment=3 connection-state=new in-interface=ether3 new-connection-mark=ether3_conn
add action=mark-routing chain=output connection-mark=ether1_conn new-routing-mark=to_ether1
add action=mark-routing chain=output connection-mark=ether2_conn new-routing-mark=to_ether2
add action=mark-routing chain=output comment=3 connection-mark=ether3_conn new-routing-mark=to_ether3
add action=mark-connection chain=prerouting connection-state=new dst-address-type=!local in-interface=ether5 new-connection-mark=ether1_conn per-connection-classifier=both-addresses:2/0
add action=mark-connection chain=prerouting connection-state=new dst-address-type=!local in-interface=ether5 new-connection-mark=ether2_conn per-connection-classifier=both-addresses:2/1
add action=mark-connection chain=prerouting comment=3 connection-state=new dst-address-type=!local in-interface=ether4 new-connection-mark=ether3_conn
add action=mark-routing chain=prerouting connection-mark=ether1_conn in-interface=ether5 new-routing-mark=to_ether1
add action=mark-routing chain=prerouting connection-mark=ether2_conn in-interface=ether5 new-routing-mark=to_ether2
add action=mark-routing chain=prerouting comment=3 connection-mark=ether3_conn in-interface=ether4 new-routing-mark=to_ether3
add chain=prerouting dst-address=10.0.1.0/24 in-interface=ether5
add chain=prerouting dst-address=10.0.2.0/24 in-interface=ether5
add chain=prerouting dst-address=192.168.0.0/24 in-interface=ether4

/ip firewall nat
add action=masquerade chain=srcnat out-interface=ether1
add action=masquerade chain=srcnat out-interface=ether2
add action=masquerade chain=srcnat comment=3 disabled=yes out-interface=ether3 src-address-list=192.168.4.0/24
add action=masquerade chain=srcnat comment=3 out-interface=ether3

/ip route
add check-gateway=ping distance=1 gateway=10.0.1.1 routing-mark=to_ether1
add check-gateway=ping distance=1 gateway=10.0.2.1 routing-mark=to_ether2
add check-gateway=ping distance=1 gateway=192.168.0.1 routing-mark=to_ether3
add check-gateway=ping distance=1 gateway=10.0.2.1
add check-gateway=ping distance=1 gateway=10.0.1.1
add check-gateway=ping distance=1 gateway=192.168.0.1
add distance=2 dst-address=192.168.4.0/24 gateway=192.168.5.1
add distance=2 dst-address=192.168.5.0/24 gateway=192.168.4.1

The network 192.168.5.0/24 should reach and print to 192.168.5.50 with no problem.
The catch is on the network 192.168.4.0/24. This network does not know where 192.168.5.50 is, so it will ask the router (its own gateway) about it. But since you have implemented policy routing by using PCC, the default connected routes which normally would establish this connection are not chosen by router. To let router use the connected default routes you would need one rule on the mangle:

/ip firewall mangle
add chain=prerouting src-address=192.168.4.0/24 dst-address=192.168.5.50 action=accept

Put this rule above the others that make the PCC.