3rd update HW Pricing

by Mayank Dixit

HTML

<!-- move inline styling to separate files -->
<section class="section-wrapper">
    <section class="section-inner details-customer">
        	<h3 class="sub-heading">Financial</h3>

        <div class="inner">
            <div class="frow">
                <div class="fcol">&nbsp;</div>
                <div class="fcol">Price</div>
                <div class="fcol">Discount</div>
                <div class="fcol">Total net price</div>
                <div class="fcol">Margin/Commission</div>
                <div class="fcol">Total customer price</div>
            </div>
            <div class="frow">
                <div class="fcol">HP services & supplies (EDP)</div>
                <div class="fcol">&nbsp;</div>
                <div class="fcol">&nbsp;</div>
                <div class="fcol">
                    <input type="text" class="textbox" value="[HSNP]" disabled="disabled" />
                </div>
                <div class="fcol">
                    <input type="text" class="textbox" value="[HSNP]" disabled="disabled" />
                </div>
                <div class="fcol">
                    <input type="text" class="textbox" value="[HSNP]" disabled="disabled" />
                </div>
            </div>
            <div class="frow">
                <div class="fcol">Partner services & solutions</div>
                <div class="fcol">
                    <input type="text" class="textbox" value="[PSP]" />
                </div>
                <div class="fcol">
                    <input type="text" class="textbox" value="[PSD]" />
                </div>
                <div class="fcol">
                    <input type="text" class="textbox" value="[PSNP]" disabled="disabled" />
                </div>
                <div class="fcol">
                    <input type="text" class="textbox" value="[PSRC]" disabled="disabled" />
                </div>
                <div class="fcol">
                    <input type="text" class="textbox"...

JavaScript

angular.module("myApp", []).
controller("mainCtrl", function ($scope) {
    $scope.summary = [{}];

    $scope.prepareSummary = function (evt) {
        var _cat_id, _acc_id, _prod_id;

        _cat_id = evt.currentTarget.attributes["cat-id"]["value"];
        _prod_id = evt.currentTarget.attributes["prod-id"]["value"];
        _acc_id = (evt.currentTarget.attributes["acc-id"]) ? evt.currentTarget.attributes["acc-id"]["value"] : undefined;

        if (!$scope.summary[0][_cat_id]) {
            $scope.summary[0][_cat_id] = {};
            $scope.summary[0][_cat_id]["HardwareDevices"] = [{}];

        }
        if (!$scope.summary[0][_cat_id]["HardwareDevices"][0][_prod_id]) {
            $scope.summary[0][_cat_id]["HardwareDevices"][0][_prod_id] = {};
            $scope.summary[0][_cat_id]["HardwareDevices"][0][_prod_id]["Accessories"] = [{}]
        }
        if (_acc_id) {
            if (!$scope.summary[0][_cat_id]["HardwareDevices"][0][_prod_id]["Accessories"][0][_acc_id]) {
                $scope.summary[0][_cat_id]["HardwareDevices"][0][_prod_id]["Accessories"][0][_acc_id] = {};
            }
            for (acc_data in $scope.categories[0][_cat_id]["HardwareDevices"][0][_prod_id]["Accessories"][0][_acc_id]) {
                $scope.summary[0][_cat_id]["HardwareDevices"][0][_prod_id]["Accessories"][0][_acc_id][acc_data] = $scope.categories[0][_cat_id]["HardwareDevices"][0][_prod_id]["Accessories"][0][_acc_id][acc_data];
            }
            $scope.summary[0][_cat_id]["HardwareDevices"][0][_prod_id]["Accessories"][0][_acc_id]["DeviceQuantity"] = evt.currentTarget.value;
        } else {
            for (prod_data in $scope.categories[0][_cat_id]["HardwareDevices"][0][_prod_id]) {
                if (prod_data === "Accessories") {
                    continue;
                }
                $scope.summary[0][_cat_id]["HardwareDevices"][0][_prod_id][prod_data] = $scope.categories[0][_cat_id]["HardwareDevices"][0][_prod_id][prod_data];
            }
  ...