3 Commits

Author SHA1 Message Date
Bilal Catic
ed0f512273 use minimum cost margin in pricing panel 2018-10-04 01:57:44 +02:00
Bilal Catic
0e6f5bdab6 handle bundle minimum cost margin read and update 2018-10-04 01:49:43 +02:00
Bilal Catic
0e8816abc0 add minimum cost margin input box 2018-10-04 01:48:44 +02:00
3 changed files with 33 additions and 2 deletions

View File

@@ -58,6 +58,7 @@ class Wiaas_Admin_Package_Pricing {
$package = wc_get_product( $post->ID );
$pricing_rules = Wiaas_Package_Pricing::get_package_prices($package);
$commission = Wiaas_Package_Pricing::get_package_pricing_commission($package);
$minimum_cost_margin = Wiaas_Package_Pricing::get_package_minimum_cost_margin($package);
include 'views/html-package-pricing.php';
}
@@ -71,7 +72,8 @@ class Wiaas_Admin_Package_Pricing {
Wiaas_Package_Pricing::set_package_prices(
wc_get_product( $post_id ),
$_POST['wiaas_pricing_rules'],
$_POST['wiaas_pricing_rules_commision']);
$_POST['wiaas_pricing_rules_commision'],
$_POST['wiaas_minimum_cost_margin']);
}
}

View File

@@ -144,6 +144,20 @@ if ( ! defined( 'ABSPATH' ) ) {
});
</script>
<div class="options_group">
<?php
woocommerce_wp_text_input(
array(
'id' => '_wiaas_minimum_cost_margin',
'name' => 'wiaas_minimum_cost_margin',
'value' => $minimum_cost_margin,
'label' => __( 'Minimum cost margin:', 'wiaas' ),
'type' => 'number',
)
);
?>
</div>
<div class="options_group">
<?php
woocommerce_wp_text_input(

View File

@@ -101,15 +101,20 @@ class Wiaas_Package_Pricing {
return self::_get_package_pricing_commision($package);
}
public static function get_package_minimum_cost_margin($package){
return self::_get_package_minimum_cost_margin($package);
}
/**
* Persist payment prices configuration for package
* @param $package
* @param $pricing_rules
*/
public static function set_package_prices($package, $pricing_rules, $commision) {
public static function set_package_prices($package, $pricing_rules, $commision, $minimum_cost_margin) {
if ( isset( $pricing_rules ) ) {
$package->update_meta_data( '_wiaas_pricing_rules', $pricing_rules );
$package->update_meta_data('_package_pricing_commision', $commision, true);
$package->update_meta_data('_package_minimum_cost_margin', $minimum_cost_margin, true);
} else {
$package->delete_meta_data( '_wiaas_pricing_rules' );
}
@@ -154,6 +159,16 @@ class Wiaas_Package_Pricing {
return (float) $commision;
}
private static function _get_package_minimum_cost_margin($package) {
$minimum_cost_margin = $package->get_meta( '_package_minimum_cost_margin', true);
if (!isset($minimum_cost_margin) || $minimum_cost_margin === '') {
return 0;
}
return (float) $minimum_cost_margin;
}
}
Wiaas_Package_Pricing::init();