I see what you are trying to achieve with your setup, but why using a router for that? A layer3 switch will be enough…
If you want to do policy routing, you cannot set it that way, as when you assign an IP/mask to an interface you’re dynamically setting a connected route; you will end up with routes for 192.168.2.0/24 and 192.168.15.0/24 on wan, and vlan interfaces, not a good practice by any means (a mess!).
I wouldn’t setup it that way. Instead, choose different ip ranges for the modems, or even better, put them in bridge mode, and get the public ips directly on the mikrotik router.
Assign the IPs used as gateways on the VLAN interfaces: 192.168.15.1/24 to VLAN15 , and 192.168.2.1/24 to VLAN2.
In cli syntax:
/ip address
add address=192.168.15.1/24 interface=vlan15 network=192.168.15.0
add address=192.168.2.1/24 interface=vlan2 network=192.168.2.0
You can reconfigure them from the GUI, and do an export later to check if everything is ok comparing the output with this post, or remove all the IPs from the GUI and paste this on a New terminal.
Now, you have to reflect this on your DHCP setup so that the wireless clients get the proper addresses and settings:
/ip dhcp-server network
add address=192.168.2.0/24 dns-server=8.8.8.8 gateway=192.168.2.1
add address=192.168.15.0/24 dns-server=8.8.8.8 gateway=192.168.15.1
Check wireless clients can ping their gateway.
They won’t be able to ping anything on internet; now is when it comes the Wiki article I posted before for policy routing, either using other private IP addresses for the modems and mikrotik router WAN addressing (192.168.10.x and 192.168.11.x for example), or by putting them in bridge mode and getting the public IPs directly on the router.
You’ll have to reconfigure the modems and WAN addresses on both cases.