Adding base of Shop account plugin vendor payouts stuff.

This commit is contained in:
Martin Kamerbeek 2009-03-13 16:13:20 +00:00
parent e23f33ee8c
commit 320e1738a3
6 changed files with 74 additions and 2 deletions

View file

@ -48,8 +48,11 @@ sub appendCommonVars {
my $user = $session->user;
my $method = $session->form->get("do");
$var->{'manage_purchases_url' } = $self->getUrl("module=shop;do=managePurchases");
$var->{'managesPurchasesIsActive'} = WebGUI::Utility::isIn($method,("","managePurchases","view","viewTransaction"));
$var->{ 'manage_purchases_url' } = $self->getUrl("module=shop;do=managePurchases");
$var->{ 'managesPurchasesIsActive' } = WebGUI::Utility::isIn($method,("","managePurchases","view","viewTransaction"));
$var->{ 'view_sales_url' } = $self->getUrl( 'module=shop;do=viewSales' );
$var->{ 'viewSalesIsActive' } = $method eq 'viewSales';
}
#-------------------------------------------------------------------
@ -108,6 +111,13 @@ sub editSettingsForm {
label => $shopi18n->get("my purchases detail template"),
hoverHelp => $shopi18n->get("my purchases detail template help")
);
$f->template(
name => 'shopMySalesTemplateId',
value => $self->session->setting->get('shopMySalesTemplateId'),
namespace => 'Shop/MySales',
label => $shopi18n->echo('my sales template'),
hoverHelp => $shopi18n->echo('my sales template help'),
);
return $f->printRowsOnly;
}
@ -130,6 +140,7 @@ sub editSettingsFormSave {
$setting->set("shopLayoutTemplateId", $form->process("shopLayoutTemplateId","template"));
$setting->set("shopMyPurchasesTemplateId", $form->process("shopMyPurchasesTemplateId","template"));
$setting->set("shopMyPurchasesDetailTemplateId", $form->process("shopMyPurchasesDetailTemplateId","template"));
$setting->set("shopMySalesTemplateId", $form->process("shopMySalesTemplateId","template"));
}
#-------------------------------------------------------------------
@ -208,6 +219,43 @@ sub www_view {
#-------------------------------------------------------------------
=head2 www_viewSales ( )
Page that show your earnings if you are a vendor.
=cut
sub www_viewSales {
my $self = shift;
my $session = $self->session;
my $vendor = WebGUI::Shop::Vendor->newByUserId( $session, $session->user->userId );
my $var = $vendor->getPayoutTotals;
my $totalSales = 0;
my @products;
my $sth = $session->db->read(
'select *, sum(quantity) as quantity, sum(vendorPayoutAmount) as payoutAmount from transactionItem '
.'where vendorId=? group by assetId order by quantity desc',
[ $vendor->getId ]
);
while (my $row = $sth->hashRef) {
push @products, $row;
$totalSales += $row->{quantity};
}
$sth->finish;
$var->{ product_loop } = \@products;
$var->{ total_products } = scalar @products;
$var->{ total_sales } = $totalSales;
$self->appendCommonVars( $var );
return $self->processTemplate( $var, $session->setting->get('shopMySalesTemplateId') );
}
#-------------------------------------------------------------------
=head2 www_viewTransaction ( )
The main view page for editing the user's profile.
@ -294,4 +342,5 @@ sub www_viewTransaction {
1;

View file

@ -68,6 +68,7 @@ sub getAdminConsole {
$ac->addSubmenuItem($url->page("shop=ship;method=manage"), $i18n->get("shipping methods"));
$ac->addSubmenuItem($url->page("shop=transaction;method=manage"), $i18n->get("transactions"));
$ac->addSubmenuItem($url->page("shop=vendor;method=manage"), $i18n->get("vendors"));
$ac->addSubmenuItem($url->page("shop=vendor;method=managePayouts"), $i18n->get("vendor payouts"));
$ac->addSubmenuItem($url->page("shop=credit;method=manage"), $i18n->get("in shop credit"));
return $ac;
}

View file

@ -49,6 +49,11 @@ our $I18N = {
lastUpdated => 1230867169,
},
'my sales label' => {
message => q{Sales},
lastUpdated => 0,
},
};
1;

View file

@ -555,6 +555,12 @@ our $I18N = {
context => q|admin function label|
},
'vendor payouts' => {
message => q|Vendor payouts|,
lastUpdated => 0,
context => q|admin function label|
},
'update' => {
message => q|Update|,
lastUpdated => 0,