|
@@ -15,19 +15,11 @@ Component({ |
|
@@ -15,19 +15,11 @@ Component({ |
|
15
|
data: {
|
15
|
data: {
|
|
16
|
checkedNum:0,
|
16
|
checkedNum:0,
|
|
17
|
display:false,
|
17
|
display:false,
|
|
|
|
18
|
+ checkoutObj:null,
|
|
18
|
},
|
19
|
},
|
|
19
|
observers: {
|
20
|
observers: {
|
|
20
|
'checkout': function(checkout) {
|
21
|
'checkout': function(checkout) {
|
|
21
|
- if(!checkout) return;
|
|
|
|
22
|
- let num=0;
|
|
|
|
23
|
- checkout.discount.forEach(q=>{
|
|
|
|
24
|
- if(q.checked){
|
|
|
|
25
|
- num++;
|
|
|
|
26
|
- }
|
|
|
|
27
|
- })
|
|
|
|
28
|
- this.setData({
|
|
|
|
29
|
- checkedNum:num,
|
|
|
|
30
|
- })
|
22
|
+ this.discountFormat(checkout)
|
|
31
|
}
|
23
|
}
|
|
32
|
},
|
24
|
},
|
|
33
|
/**
|
25
|
/**
|
|
@@ -44,27 +36,36 @@ Component({ |
|
@@ -44,27 +36,36 @@ Component({ |
|
44
|
display:false,
|
36
|
display:false,
|
|
45
|
})
|
37
|
})
|
|
46
|
},
|
38
|
},
|
|
|
|
39
|
+ discountFormat(checkout){
|
|
|
|
40
|
+ if(!checkout) return;
|
|
|
|
41
|
+ let num=0;
|
|
|
|
42
|
+ let disObj={}
|
|
|
|
43
|
+ let subsidy_price=0;
|
|
|
|
44
|
+ checkout.discount.forEach(q=>{
|
|
|
|
45
|
+ checkout.disabled=false
|
|
|
|
46
|
+ if(q.checked){
|
|
|
|
47
|
+ num++;
|
|
|
|
48
|
+ disObj[q.owner+'-'+q.receive_condition]=true
|
|
|
|
49
|
+ subsidy_price+=q.price/1
|
|
|
|
50
|
+ }
|
|
|
|
51
|
+ })
|
|
|
|
52
|
+ checkout.discount.forEach(q=>{
|
|
|
|
53
|
+ if(!q.checked && disObj[q.owner+'-'+q.receive_condition]){
|
|
|
|
54
|
+ checkout.disabled=true
|
|
|
|
55
|
+ }
|
|
|
|
56
|
+ })
|
|
|
|
57
|
+ checkout.subsidy_price=subsidy_price
|
|
|
|
58
|
+ this.setData({
|
|
|
|
59
|
+ checkedNum:num,
|
|
|
|
60
|
+ checkoutObj:checkout
|
|
|
|
61
|
+ })
|
|
|
|
62
|
+ },
|
|
47
|
discountChecked(e){
|
63
|
discountChecked(e){
|
|
48
|
console.log('discountChecked',e)
|
64
|
console.log('discountChecked',e)
|
|
49
|
let index=util.attr(e,'index')
|
65
|
let index=util.attr(e,'index')
|
|
50
|
- let discount=this.data.checkout.discount
|
|
|
|
51
|
- let checked=discount[index].checked
|
|
|
|
52
|
- discount[index].checked=!discount[index].checked
|
|
|
|
53
|
- if(checked) {
|
|
|
|
54
|
- let subsidy_price=(this.data.checkout.subsidy_price/1 - discount[index].price/1).toFixed(2)
|
|
|
|
55
|
- this.setData({
|
|
|
|
56
|
- [`checkout.subsidy_price`]: subsidy_price,
|
|
|
|
57
|
- [`checkout.discount`]: discount,
|
|
|
|
58
|
- checkedNum:this.data.checkedNum-1,
|
|
|
|
59
|
- })
|
|
|
|
60
|
- }else{
|
|
|
|
61
|
- let subsidy_price=(this.data.checkout.subsidy_price/1 + discount[index].price/1).toFixed(2)
|
|
|
|
62
|
- this.setData({
|
|
|
|
63
|
- [`checkout.subsidy_price`]: subsidy_price,
|
|
|
|
64
|
- [`checkout.discount`]: discount,
|
|
|
|
65
|
- checkedNum:this.data.checkedNum+1,
|
|
|
|
66
|
- })
|
|
|
|
67
|
- }
|
66
|
+ let checkout=this.data.checkout
|
|
|
|
67
|
+ checkout.discount[index].checked=!checkout.discount[index].checked
|
|
|
|
68
|
+ this.discountFormat(checkout)
|
|
68
|
},
|
69
|
},
|
|
69
|
}
|
70
|
}
|
|
70
|
}) |
71
|
}) |