Merge branch 'master' of github.com:akaunting/akaunting
This commit is contained in:
		@@ -179,6 +179,11 @@ class CreateBill extends Job
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        foreach ((array) $this->request['items'] as $item) {
 | 
			
		||||
            $item['global_discount'] = 0;
 | 
			
		||||
 | 
			
		||||
            if (!empty($this->request['discount'])) {
 | 
			
		||||
                $item['global_discount'] = $this->request['discount'];
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            $bill_item = $this->dispatch(new CreateBillItem($item, $this->bill));
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -38,11 +38,16 @@ class CreateBillItem extends Job
 | 
			
		||||
 | 
			
		||||
        $item_discounted_amount = $item_amount;
 | 
			
		||||
 | 
			
		||||
        // Apply discount to amount
 | 
			
		||||
        // Apply line discount to amount
 | 
			
		||||
        if (!empty($this->request['discount'])) {
 | 
			
		||||
            $item_discounted_amount = $item_amount -= ($item_amount * ($this->request['discount'] / 100));
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        // Apply global discount to amount
 | 
			
		||||
        if (!empty($this->request['global_discount'])) {
 | 
			
		||||
            $item_discounted_amount = $item_amount - ($item_amount * ($this->request['global_discount'] / 100));
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        $tax_amount = 0;
 | 
			
		||||
        $item_taxes = [];
 | 
			
		||||
        $item_tax_total = 0;
 | 
			
		||||
 
 | 
			
		||||
@@ -193,6 +193,11 @@ class UpdateBill extends Job
 | 
			
		||||
        $this->deleteRelationships($this->bill, ['items', 'item_taxes']);
 | 
			
		||||
 | 
			
		||||
        foreach ((array) $this->request['items'] as $item) {
 | 
			
		||||
            $item['global_discount'] = 0;
 | 
			
		||||
 | 
			
		||||
            if (!empty($this->request['discount'])) {
 | 
			
		||||
                $item['global_discount'] = $this->request['discount'];
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            $bill_item = $this->dispatch(new CreateBillItem($item, $this->bill));
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -118,6 +118,31 @@ class BillItem extends Model
 | 
			
		||||
        return $text;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Get the formatted discount.
 | 
			
		||||
     *
 | 
			
		||||
     * @return string
 | 
			
		||||
     */
 | 
			
		||||
    public function getDiscountRateAttribute($value = 0)
 | 
			
		||||
    {
 | 
			
		||||
        $discount_rate = 0;
 | 
			
		||||
 | 
			
		||||
        switch (setting('localisation.discount_location', 'total')) {
 | 
			
		||||
            case 'no':
 | 
			
		||||
            case 'total':
 | 
			
		||||
                $discount_rate = 0;
 | 
			
		||||
                break;
 | 
			
		||||
            case 'item':
 | 
			
		||||
                $discount_rate = $value;
 | 
			
		||||
                break;
 | 
			
		||||
            case 'both':
 | 
			
		||||
                $discount_rate = $value;
 | 
			
		||||
                break;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return $discount_rate;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Convert tax to Array.
 | 
			
		||||
     *
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2
									
								
								resources/assets/js/views/purchases/bills.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								resources/assets/js/views/purchases/bills.js
									
									
									
									
										vendored
									
									
								
							@@ -83,7 +83,7 @@ const app = new Vue({
 | 
			
		||||
                    price: (item.price).toFixed(2),
 | 
			
		||||
                    quantity: item.quantity,
 | 
			
		||||
                    tax_id: item.tax_id,
 | 
			
		||||
                    discount: (typeof item_backup.discount !== 'undefined') ? item.discount_rate : 0,
 | 
			
		||||
                    discount: item.discount_rate,
 | 
			
		||||
                    total: (item.total).toFixed(2)
 | 
			
		||||
                });
 | 
			
		||||
            });
 | 
			
		||||
 
 | 
			
		||||
@@ -127,8 +127,7 @@
 | 
			
		||||
                                                                                    <i class="fa fa-percent"></i>
 | 
			
		||||
                                                                                </span>
 | 
			
		||||
                                                                            </div>
 | 
			
		||||
                                                                            {!! Form::number('pre_discount', null, ['id' => 'pre-discount', 'class' => 'form-control']) !!}
 | 
			
		||||
                                                                        </div>
 | 
			
		||||
                                                                            {!! Form::number('pre_discount', null, ['id' => 'pre-discount', 'class' => 'form-control', 'v-model' => 'form.discount']) !!}                                                                        </div>
 | 
			
		||||
                                                                    </div>
 | 
			
		||||
                                                                    <div class="col-sm-6">
 | 
			
		||||
                                                                        <div class="discount-description">
 | 
			
		||||
 
 | 
			
		||||
@@ -128,7 +128,7 @@
 | 
			
		||||
                                                                                    <i class="fa fa-percent"></i>
 | 
			
		||||
                                                                                </span>
 | 
			
		||||
                                                                            </div>
 | 
			
		||||
                                                                            {!! Form::number('pre_discount', null, ['id' => 'pre-discount', 'class' => 'form-control']) !!}
 | 
			
		||||
                                                                            {!! Form::number('pre_discount', null, ['id' => 'pre-discount', 'class' => 'form-control', 'v-model' => 'form.discount']) !!}
 | 
			
		||||
                                                                        </div>
 | 
			
		||||
                                                                    </div>
 | 
			
		||||
                                                                    <div class="col-sm-6">
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user