DonateKeyForm.vue 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. <template>
  2. <view class="com-donate-key" v-if="info">
  3. <view class="bg"></view>
  4. <view class="current">您当前有{{info.user.integral}}个爱心币可捐</view>
  5. <view class="press-key">
  6. <view class="sign left" @click="onChangeQty(-1)">-</view>
  7. <view class="text">{{qty}}</view>
  8. <view class="sign right" @click="onChangeQty(1)">+</view>
  9. </view>
  10. <view class="number-key">
  11. <view class="left">
  12. <view class="number">
  13. <block v-for="(it,index) in nums">
  14. <view class="key" @click="onDonate(it)">{{it}}</view>
  15. </block>
  16. </view>
  17. <view class="number1">
  18. <view class="key" @click="onDonate(0)">0</view>
  19. <view class="all" @click="onDonate(999)">全部捐出</view>
  20. </view>
  21. </view>
  22. <view class="right">
  23. <view class="delete" @click="onDonate(-1)">删除</view>
  24. <view class="enter" @click="onSave">确认捐款</view>
  25. </view>
  26. </view>
  27. </view>
  28. </template>
  29. <script>
  30. export default {
  31. name:"DonateKeyForm",
  32. emits:['onSuccess'],
  33. props:{
  34. info:{
  35. type:Object,
  36. default:()=>{
  37. return null;
  38. }
  39. },
  40. storeId:{
  41. type:Number,
  42. default:()=>{
  43. return 0;
  44. }
  45. }
  46. },
  47. data() {
  48. return {
  49. qty:0,
  50. nums:[1,2,3,4,5,6,7,8,9],
  51. };
  52. },
  53. methods:{
  54. onSave(e){
  55. let _this=this;
  56. let par={
  57. 'donateId':_this.info.info.id,
  58. 'userId':_this.info.user.id,
  59. 'qty':_this.qty,
  60. 'storeId':_this.storeId,
  61. }
  62. this.$http.request('donate/create', par, "", "", true).then(res => {
  63. if(res.code=='200'){
  64. uni.showToast({
  65. title:"感谢您的爱心捐赠",
  66. icon:"success"
  67. })
  68. _this.$emit("onSuccess")
  69. }
  70. }).catch(err => {})
  71. },
  72. onDonate(qty){
  73. let _this=this;
  74. if(qty==999){
  75. //捐出所有
  76. _this.qty=_this.info.user.integral;
  77. return;
  78. }
  79. if(qty==-1){
  80. _this.qty=0;
  81. return ;
  82. }
  83. // console.log("start qty:",_this.qty);
  84. _this.qty+=""+qty;
  85. _this.qty=parseInt(_this.qty);
  86. // console.log(_this.qty);
  87. // console.log("_this.info.user.integral",_this.info.user.integral);
  88. if(_this.qty*1>=_this.info.user.integral*1){
  89. // console.log("A");
  90. _this.qty=_this.info.user.integral;
  91. }
  92. // console.log("_this.qty",_this.qty);
  93. },
  94. //修改金额
  95. onChangeQty(qty){
  96. let _this=this;
  97. if(qty<1){
  98. if(_this.qty<=0){
  99. _this.qty=0;
  100. }else{
  101. _this.qty+=qty;
  102. }
  103. }else{
  104. _this.qty+=qty;
  105. }
  106. if(_this.qty>_this.info.user.integral){
  107. _this.qty=_this.info.user.integral;
  108. }
  109. },
  110. }
  111. }
  112. </script>
  113. <style lang="scss">
  114. @import './DonateKeyForm.scss'
  115. </style>