I would say yes as well. Anything you would normally do in .Net you should be able to integrate into DNN. And the ability to integrate with the framework within a custom module is fairly easy and offers so many possibilities.
The core does so many things for you (users, page management. etc...), you just have to worry about writing the code for the stuff you want to do. To accomplish all you want to do will require a bit of a learning curve getting familiar with the system, but it sounds like you are familiar with .Net so it shouldn't be too hard.
I would spend a couple days reading about and experimenting with Christoc's Module Development Template. With this template, you create your custom module as a unique .Net solution using your own namespaces, code, etc. with the ability to tie-in with the framework. Your module "views" are .ascx user controls and inherit a base class from the framework. It compiles as a .dll so your code will be safe.
Say you are working on an "active reservations view" for admins or sales persons. You'd be able to do something like:
if (User.IsInRole("Sales-Person"))
{
BTN_CancelReservation.visible = false;
}
if (User.IsInRole("Admin"))
{
BTN_CancelReservation.visible = true;
}
You'd set up the security roles in DNN itself and then the base class you inherit in your custom module will expose the current user and other useful stuff.
Basically you would set up and configure your client's DNN site, then install the custom modules you have created and place them on the appropriate pages.
Another good resource:
http://www.adefwebserver.com/DotNetNu...
I'm leaving out a lot of general DNN stuff here, which you will need to learn, but I hope this helps some from the custom development perspective!
- Brian