My current design was done with an ATmega 324 (but a change can be implemented) and support 16 digital inputs with a 25 pin D-Type connector on the front panel and 2 x 20 Pin DIN41612 (AB) connectors Like:
The one DIN connector was for the PLC Bus and the other was in parallel with the D-Type connector. This would have given flexibility for a front panel connection like a PLC or a backplane connector as in a card-rack system.
Having noted the valid remarks in replies like soldering - Not even on assembly lines in China they always know what proper soldering is and as for cost, I do sometimes forget that being in HongKong and having access to manufacturing and assembly (in China) 30km from here makes it extremely inexpensive to me. So, for now, I'm supporting the design as above and on a DIN rail.
As for hardware, I do see an issue with the 328 as there are not enough available pins free for reading 8 x inputs and 2 X 8-bit dip switches. I see the options as either an ATmega32U4 or we can get past the lack of pins on the 328 by using 2 X Hex rotary switches like:
On the MCU use 4 pins for the hex number and 2 additional pins to select the switches individually. The choice of MCU, I shall leave up to a discussion (above ideas only suggestions) and I can implement/change as soon as there is consensus on the issue.
Will the cover hardware change or can I take the size of the PCB and size and position of holes on the PCB in the 3D model as correct? Can I use the position of the feed through bus connector as a fixed position?