Order Entry Software for Sales Reps

3 months ago
Do you have a "Place Order" button in the upper right like the screenshot below?  It goes to the plugin's view, not the normal customer list.  

the direct URL will be:  /Admin/QuickOrder/QuickOrderForm

3 months ago
I now got it. Because of you, I learned how the widget works in nopCommerce. Thank you so much for the great help!!!

For my second question about changing item price during the check-out, I think only approved sales rep should be able to change the item price only when they impersonate customers.  The real customers should not be able to change the item price.  

Any suggestion about my idea?
3 months ago
Excellent, nice work!  

I haven't looked into allowing price edits on the frontend yet.  If my staff may have use for it then I will figure it out.
3 months ago
Hello,

I really like your plugin here and also would really like it so that we can change the price for a customer if needed, this could be very useful for me.

But I do not program - can you upload the plugin as ready to install in NOP ? ( I do not know how to compile in visual studio)

Kenny Larsen
3 months ago
larsenlights wrote:
I do not know how to compile in visual studio


Do this:

Download free VS here:
https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community&rel=16

Download free nopCommerce source from here:
https://www.nopcommerce.com/download-nopcommerce-link?type=sourcepackage

Download my free plugin:
https://github.com/ted-phillips/nopQuickOrderPlugin

Copy plugin contents to your local nopCommerce installation, which is probably something like:
C:\Users\USER\Source\Repos\USERNAME\nopCommerce\src\Plugins


Start VS and open up the nopCommerce solution.  Right Click on the plugin, select "Build" and then look for the compiled binaries in what probably looks like:
C:\Users\USER\Source\Repos\USERNAME\nopCommerce\src\Presentation\Nop.Web\Plugins\Widgets.QuickOrder


Upload that to your staging site and install plugin as normal.
3 months ago
I just learned that an option "Customer enters price" in each product detail page allows customers change the item price when adding to a cart.  When the option is checked, the min & max price range boxes are displayed.

This option works for sales reps who want to change the item price but allows everyone change the prices.  It would be nice if this option works based on customer roles.  That's my opinion.

Overall, nopCommerce is still the best. :)
3 months ago
I realize that the customer role will not solve the customizing price issue when the impersonate option is used.   The variable of checking only approved sales reps impersonate and activate the customized price option.  Any other suggestions?
3 months ago
you want to check roles against the backend _workContext.OriginalCustomerIfImpersonated, not the frontend customer.  

Look at the productModelFactory for an example:


if (product.CallForPrice &&
    //also check whether the current user is impersonated
    (!_orderSettings.AllowAdminsToBuyCallForPriceProducts || _workContext.OriginalCustomerIfImpersonated == null))
{
    model.CallForPrice = true;
}
else
{...


you can check your Sales Rep roles with something like:


var permissions = workContext.OriginalCustomerIfImpersonated.CustomerRoles;
if (permissions != null)
    var repCanEnterPrice = (permissions.Any(role => role.SystemName == "YOUR_REP_ACCOUNT")) ? true : false;


you'll then need to look at overriding PrepareProductPriceModel in the ProductModelFactory to something like:


if (product.CustomerEntersPrice || repCanEnterPrice )
{
    model.CustomerEntersPrice = true;
}


and probably other stuff as well, but that should point you in the right direction
3 months ago
Thank you so much for the great suggestion again!
3 months ago
I just noticed that the option "Customers enter price" does display the minimum price you set, not the default price.  It is the big problem.  I'm trying to figure out how the default price can be automatically entered instead of the minimum price.