Advertisement
Guest User

Untitled

a guest
Apr 25th, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.56 KB | None | 0 0
  1. <template lang="html">
  2. <div>
  3. <h2 class="title">Configurações</h2>
  4. <hr>
  5. <form action="#" id="configEstablishment">
  6. <div class="row">
  7.  
  8. <div class="form-group col-md-6">
  9. <label for="abertura">Horário de abertura</label>
  10. <input type="time" name="abertura" v-model="configs.abertura" class="personalize form-control">
  11. </div>
  12.  
  13. <div class="form-group col-md-6">
  14. <label for="fechamento">Horário de fechamento</label>
  15. <input type="time" name="fechamento" v-model="configs.fechamento" class="personalize form-control">
  16. </div>
  17.  
  18. <div class="form-group col-md-6">
  19. <label for="taxa_entrega">Taxa de entrega</label>
  20. <input type="number" name="taxa_entrega" v-model="configs.taxa_entrega" class="personalize form-control">
  21. </div>
  22.  
  23. <div class="form-group col-md-6">
  24. <label for="tempo_entrega">Tempo de entrega</label>
  25. <input type="number" name="tempo_entrega" v-model="configs.tempo_entrega" class="personalize form-control">
  26. </div>
  27.  
  28. <div class="form-group col-md-6">
  29. <label for="forma_pagamento">Formas de pagamento</label>
  30. <app-select
  31. v-model="formPaymentSelecte"
  32. :options="formPayments"
  33. :multiple="true"
  34. :searchable="false"
  35. placeholder="Selecione"
  36. :custom-label="customLabel"
  37. ></app-select>
  38. </div>
  39.  
  40. <div class="form-group col-md-6">
  41. <label for="bandeiras_cartao">Bandeiras aceitas</label>
  42. <app-select
  43. v-model="flagsAcceptsSelected"
  44. :options="flagsAccepts"
  45. :multiple="true"
  46. :searchable="false"
  47. placeholder="Selecione"
  48. :custom-label="customLabel"
  49. ></app-select>
  50. </div>
  51.  
  52. <div class="form-group col-md-12">
  53. <label for="bairros_cidade">Bairros aceitos</label>
  54. <app-select
  55. v-model="districtsAccpetsSelected"
  56. :options="districtsAccpets"
  57. :multiple="true"
  58. :searchable="false"
  59. placeholder="Selecione"
  60. :custom-label="customLabel"
  61. ></app-select>
  62. </div>
  63.  
  64. <div class="form-group col-md-offset-4 col-md-4">
  65. <input type="submit" class="btn btn-success btn-block" value="Salvar">
  66. <input type="submit" class="btn btn-success btn-block" value="Atualizar">
  67. </div>
  68.  
  69. </div>
  70. </form>
  71. </div>
  72. </template>
  73.  
  74. <script>
  75. import {urlBase} from 'src/config.js'
  76. import {mapGetters} from 'vuex'
  77. import AppSelect from 'vue-multiselect'
  78. import axios from 'axios'
  79. export default {
  80. name: 'Configuracao',
  81. data () {
  82. return {
  83. urlBase,
  84. configs: {},
  85. formPayments: [],
  86. formPaymentSelecte: [],
  87. flagsAccepts: [],
  88. flagsAcceptsSelected: [],
  89. districtsAccpets: [],
  90. districtsAccpetsSelected: []
  91. }
  92. },
  93. components: {
  94. AppSelect
  95. },
  96. computed: {
  97. ...mapGetters(['estabelecimentoId'])
  98. },
  99. methods: {
  100.  
  101. customLabel (option) {
  102. return `${option.name}`
  103. },
  104.  
  105. getFormPayment () {
  106. axios.get(this.urlBase + '/api/form_payment/').then((response) => {
  107. response.data.data.map((item) => {
  108. this.formPayments.push({id: item.id, name: item.nome})
  109. })
  110. }, (error) => {
  111. console.log(error)
  112. })
  113. },
  114.  
  115. getFlagsAccept () {
  116. axios.get(this.urlBase + '/api/flags_accept/').then((response) => {
  117. response.data.data.map((item) => {
  118. this.flagsAccepts.push({id: item.id, name: item.nome})
  119. })
  120. }, (error) => {
  121. console.log(error)
  122. })
  123. },
  124.  
  125. getDistrictsAccept () {
  126. axios.get(this.urlBase + '/api/district_street/').then((response) => {
  127. response.data.data.map((item) => {
  128. this.districtsAccpets.push({id: item.id, name: item.nome})
  129. })
  130. }, (error) => {
  131. console.log(error)
  132. })
  133. },
  134. getConfigs () {
  135. axios.get(this.urlBase + '/api/config?like=estabelecimento_id,1').then((response) => {
  136. const configs = response.data
  137. this.configs.abertura = configs.abertura
  138. this.configs.fechamento = configs.fechamento
  139. this.configs.taxa_entrega = configs.taxa_entrega
  140. this.configs.tempo_entrega = configs.tempo_entrega
  141. console.log(configs)
  142. })
  143. }
  144.  
  145. },
  146. mounted () {
  147. this.getFormPayment()
  148. this.getFlagsAccept()
  149. this.getDistrictsAccept()
  150. this.getConfigs()
  151. }
  152. }
  153. </script>
  154.  
  155. <style lang="css" scoped>
  156. /* ROOT */
  157. .personalize{
  158. border:1px solid #C9C9C9;
  159. border-radius: 5px;
  160. }
  161. .title{
  162. font-size: 4rem;
  163. }
  164. </style>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement