fixe errors at the point of sale (#902)
Co-authored-by: elsiosanchez <elsiossanches@gmail.com>pull/3759/head
							parent
							
								
									c6cc1df91f
								
							
						
					
					
						commit
						6436b33479
					
				| 
						 | 
					@ -19,6 +19,7 @@
 | 
				
			||||||
  <el-container style="background: white; height: 100% !important;">
 | 
					  <el-container style="background: white; height: 100% !important;">
 | 
				
			||||||
    <el-main style="background: white; padding: 0px; height: 100% !important; overflow: hidden">
 | 
					    <el-main style="background: white; padding: 0px; height: 100% !important; overflow: hidden">
 | 
				
			||||||
      <el-container style="background: white; padding: 0px; height: 100% !important;">
 | 
					      <el-container style="background: white; padding: 0px; height: 100% !important;">
 | 
				
			||||||
 | 
					        <!-- Collection container top panel -->
 | 
				
			||||||
        <el-header style="height: auto; padding-bottom: 10px; padding-right: 0px; padding-left: 0px">
 | 
					        <el-header style="height: auto; padding-bottom: 10px; padding-right: 0px; padding-left: 0px">
 | 
				
			||||||
          <el-card class="box-card" style="padding-left: 0px; padding-right: 0px">
 | 
					          <el-card class="box-card" style="padding-left: 0px; padding-right: 0px">
 | 
				
			||||||
            <div slot="header" class="clearfix">
 | 
					            <div slot="header" class="clearfix">
 | 
				
			||||||
| 
						 | 
					@ -59,14 +60,22 @@
 | 
				
			||||||
                </b>
 | 
					                </b>
 | 
				
			||||||
              </p>
 | 
					              </p>
 | 
				
			||||||
              <p class="total">
 | 
					              <p class="total">
 | 
				
			||||||
                <b>Tasa del Día: </b>
 | 
					                <b>{{ $t('form.pos.collect.dayRate') }}:</b>
 | 
				
			||||||
 | 
					                <!-- Conversion rate to date -->
 | 
				
			||||||
                <b v-if="!isEmptyValue(dateRate)" style="float: right;">
 | 
					                <b v-if="!isEmptyValue(dateRate)" style="float: right;">
 | 
				
			||||||
 | 
					                  <span v-if="formatConversionCurrenty(dateRate.amountConvertion) > 100">
 | 
				
			||||||
 | 
					                    {{
 | 
				
			||||||
 | 
					                      formatPrice(formatConversionCurrenty(dateRate.amountConvertion), dateRate.iSOCode)
 | 
				
			||||||
 | 
					                    }}
 | 
				
			||||||
 | 
					                  </span>
 | 
				
			||||||
 | 
					                  <span v-else>
 | 
				
			||||||
                    {{
 | 
					                    {{
 | 
				
			||||||
                      dateRate.iSOCode
 | 
					                      dateRate.iSOCode
 | 
				
			||||||
                    }}
 | 
					                    }}
 | 
				
			||||||
                    {{
 | 
					                    {{
 | 
				
			||||||
                      formatConversionCurrenty(dateRate.amountConvertion)
 | 
					                      formatConversionCurrenty(dateRate.amountConvertion)
 | 
				
			||||||
                    }}
 | 
					                    }}
 | 
				
			||||||
 | 
					                  </span>
 | 
				
			||||||
                </b>
 | 
					                </b>
 | 
				
			||||||
              </p>
 | 
					              </p>
 | 
				
			||||||
            </div>
 | 
					            </div>
 | 
				
			||||||
| 
						 | 
					@ -82,11 +91,12 @@
 | 
				
			||||||
              >
 | 
					              >
 | 
				
			||||||
                <el-row>
 | 
					                <el-row>
 | 
				
			||||||
                  <el-col v-for="(field, index) in fieldsList" :key="index" :span="8">
 | 
					                  <el-col v-for="(field, index) in fieldsList" :key="index" :span="8">
 | 
				
			||||||
 | 
					                    <!-- Add selected currency symbol -->
 | 
				
			||||||
                    <field-definition
 | 
					                    <field-definition
 | 
				
			||||||
                      :key="field.columnName"
 | 
					                      :key="field.columnName"
 | 
				
			||||||
                      :metadata-field="field.columnName === 'PayAmt' ? {
 | 
					                      :metadata-field="field.columnName === 'PayAmt' ? {
 | 
				
			||||||
                        ...field,
 | 
					                        ...field,
 | 
				
			||||||
                        labelCurrency: isEmptyValue($store.getters.getFieldCuerrency) ? pointOfSalesCurrency : $store.getters.getFieldCuerrency
 | 
					                        labelCurrency: dateRate
 | 
				
			||||||
                      } : field"
 | 
					                      } : field"
 | 
				
			||||||
                    />
 | 
					                    />
 | 
				
			||||||
                  </el-col>
 | 
					                  </el-col>
 | 
				
			||||||
| 
						 | 
					@ -101,6 +111,7 @@
 | 
				
			||||||
            <el-button type="success" :disabled="validateCompleteCollection || isDisabled" icon="el-icon-shopping-cart-full" @click="completePreparedOrder(listPayments)" />
 | 
					            <el-button type="success" :disabled="validateCompleteCollection || isDisabled" icon="el-icon-shopping-cart-full" @click="completePreparedOrder(listPayments)" />
 | 
				
			||||||
          </samp>
 | 
					          </samp>
 | 
				
			||||||
        </el-header>
 | 
					        </el-header>
 | 
				
			||||||
 | 
					        <!-- Panel where they show the payments registered from the collection container -->
 | 
				
			||||||
        <el-main style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px;">
 | 
					        <el-main style="padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px;">
 | 
				
			||||||
          <type-collection
 | 
					          <type-collection
 | 
				
			||||||
            v-if="!updateOrderPaymentPos"
 | 
					            v-if="!updateOrderPaymentPos"
 | 
				
			||||||
| 
						 | 
					@ -120,7 +131,7 @@
 | 
				
			||||||
            class="view-loading"
 | 
					            class="view-loading"
 | 
				
			||||||
          />
 | 
					          />
 | 
				
			||||||
        </el-main>
 | 
					        </el-main>
 | 
				
			||||||
 | 
					        <!-- Collection container bottom panel -->
 | 
				
			||||||
        <el-footer height="auto" style="padding-left: 0px; padding-right: 0px;">
 | 
					        <el-footer height="auto" style="padding-left: 0px; padding-right: 0px;">
 | 
				
			||||||
          <el-row :gutter="24" style="background-color: rgb(245, 247, 250);">
 | 
					          <el-row :gutter="24" style="background-color: rgb(245, 247, 250);">
 | 
				
			||||||
            <el-col :span="24">
 | 
					            <el-col :span="24">
 | 
				
			||||||
| 
						 | 
					@ -571,7 +582,11 @@ export default {
 | 
				
			||||||
      let sum = 0
 | 
					      let sum = 0
 | 
				
			||||||
      if (cash) {
 | 
					      if (cash) {
 | 
				
			||||||
        cash.forEach((pay) => {
 | 
					        cash.forEach((pay) => {
 | 
				
			||||||
 | 
					          if (!this.isEmptyValue(pay.divideRate)) {
 | 
				
			||||||
 | 
					            sum += pay.amountConvertion / pay.divideRate
 | 
				
			||||||
 | 
					          } else {
 | 
				
			||||||
            sum += pay.amount
 | 
					            sum += pay.amount
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
        })
 | 
					        })
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      return sum
 | 
					      return sum
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -68,7 +68,10 @@
 | 
				
			||||||
                        style="padding-bottom: 20px;"
 | 
					                        style="padding-bottom: 20px;"
 | 
				
			||||||
                      >
 | 
					                      >
 | 
				
			||||||
                        <p class="total">
 | 
					                        <p class="total">
 | 
				
			||||||
                          <b style="float: right;">
 | 
					                          <b v-if="!isEmptyValue(value.multiplyRate)" style="float: right;">
 | 
				
			||||||
 | 
					                            {{ formatPrice(value.multiplyRate, currency.iSOCode) }}
 | 
				
			||||||
 | 
					                          </b>
 | 
				
			||||||
 | 
					                          <b v-else style="float: right;">
 | 
				
			||||||
                            {{ formatPrice(value.amount, currency.iSOCode) }}
 | 
					                            {{ formatPrice(value.amount, currency.iSOCode) }}
 | 
				
			||||||
                          </b>
 | 
					                          </b>
 | 
				
			||||||
                        </p>
 | 
					                        </p>
 | 
				
			||||||
| 
						 | 
					@ -148,6 +151,10 @@ export default {
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    conevertionAmount() {
 | 
					    conevertionAmount() {
 | 
				
			||||||
      return this.$store.getters.getConvertionPayment
 | 
					      return this.$store.getters.getConvertionPayment
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    // Validate if there is a payment in a different type of currency to the point
 | 
				
			||||||
 | 
					    paymentCurrency() {
 | 
				
			||||||
 | 
					      return this.$store.getters.posAttributes.currentPointOfSales.currentOrder.listPayments.payments.find(pay => pay.currencyUuid !== this.currency.uuid)
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  watch: {
 | 
					  watch: {
 | 
				
			||||||
| 
						 | 
					@ -172,23 +179,21 @@ export default {
 | 
				
			||||||
  methods: {
 | 
					  methods: {
 | 
				
			||||||
    formatDate,
 | 
					    formatDate,
 | 
				
			||||||
    formatPrice,
 | 
					    formatPrice,
 | 
				
			||||||
 | 
					    // If there are payments in another currency, search for conversion
 | 
				
			||||||
    convertingPaymentMethods() {
 | 
					    convertingPaymentMethods() {
 | 
				
			||||||
      const currencyUuid = this.isAddTypePay.find(pay => pay.currencyUuid !== this.currency.uuid)
 | 
					      if (!this.isEmptyValue(this.paymentCurrency)) {
 | 
				
			||||||
      if (!this.isEmptyValue(currencyUuid)) {
 | 
					 | 
				
			||||||
        requestGetConversionRate({
 | 
					        requestGetConversionRate({
 | 
				
			||||||
          conversionTypeUuid: this.currentPointOfSales.conversionTypeUuid,
 | 
					          conversionTypeUuid: this.currentPointOfSales.conversionTypeUuid,
 | 
				
			||||||
          currencyFromUuid: this.currency.uuid,
 | 
					          currencyFromUuid: this.currency.uuid,
 | 
				
			||||||
          currencyToUuid: currencyUuid.currencyUuid
 | 
					          currencyToUuid: this.paymentCurrency.currencyUuid
 | 
				
			||||||
        })
 | 
					        })
 | 
				
			||||||
          .then(response => {
 | 
					          .then(response => {
 | 
				
			||||||
            this.isAddTypePay.forEach(element => {
 | 
					            this.$store.getters.posAttributes.currentPointOfSales.currentOrder.listPayments.payments.forEach(element => {
 | 
				
			||||||
              console.log({ element })
 | 
					 | 
				
			||||||
              if (element.currencyUuid !== this.pointOfSalesCurrency.uuid) {
 | 
					              if (element.currencyUuid !== this.pointOfSalesCurrency.uuid) {
 | 
				
			||||||
                element.amount = element.amount / response.multiplyRate
 | 
					                element.multiplyRate = element.amount / response.multiplyRate
 | 
				
			||||||
                element.amountConvertion = element.amount / response.divideRate
 | 
					                element.amountConvertion = element.multiplyRate / response.divideRate
 | 
				
			||||||
 | 
					                element.divideRate = response.multiplyRate
 | 
				
			||||||
                element.currencyConvertion = response.currencyTo
 | 
					                element.currencyConvertion = response.currencyTo
 | 
				
			||||||
              } else {
 | 
					 | 
				
			||||||
                element.currencyConvertion = {}
 | 
					 | 
				
			||||||
              }
 | 
					              }
 | 
				
			||||||
            })
 | 
					            })
 | 
				
			||||||
            this.$store.commit('setListPayments', {
 | 
					            this.$store.commit('setListPayments', {
 | 
				
			||||||
| 
						 | 
					@ -251,6 +256,7 @@ export default {
 | 
				
			||||||
        paymentUuid
 | 
					        paymentUuid
 | 
				
			||||||
      })
 | 
					      })
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
 | 
					    // Payment card label
 | 
				
			||||||
    tenderTypeDisplaye({
 | 
					    tenderTypeDisplaye({
 | 
				
			||||||
      tableName,
 | 
					      tableName,
 | 
				
			||||||
      query
 | 
					      query
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -389,8 +389,8 @@ export default {
 | 
				
			||||||
      processOrder({
 | 
					      processOrder({
 | 
				
			||||||
        posUuid,
 | 
					        posUuid,
 | 
				
			||||||
        orderUuid: this.$route.query.action,
 | 
					        orderUuid: this.$route.query.action,
 | 
				
			||||||
        createPayments: !this.isEmptyValue(this.currentOrder.listPayments),
 | 
					        createPayments: false,
 | 
				
			||||||
        payments: this.currentOrder.listPayments
 | 
					        payments: []
 | 
				
			||||||
      })
 | 
					      })
 | 
				
			||||||
        .then(response => {
 | 
					        .then(response => {
 | 
				
			||||||
          this.$store.dispatch('reloadOrder', response.uuid)
 | 
					          this.$store.dispatch('reloadOrder', response.uuid)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -371,18 +371,18 @@ export default {
 | 
				
			||||||
        return 12
 | 
					        return 12
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      if (this.isEmptyValue(this.currentOrder)) {
 | 
					      if (this.isEmptyValue(this.currentOrder)) {
 | 
				
			||||||
        return 14
 | 
					        return 9
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      return 11
 | 
					      return 7
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    colFieldProductCode() {
 | 
					    colFieldProductCode() {
 | 
				
			||||||
      if (this.isMobile) {
 | 
					      if (this.isMobile) {
 | 
				
			||||||
        return 12
 | 
					        return 12
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      if (this.isEmptyValue(this.currentOrder)) {
 | 
					      if (this.isEmptyValue(this.currentOrder)) {
 | 
				
			||||||
        return 9
 | 
					        return 14
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
      return 7
 | 
					      return 11
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    shortsKey() {
 | 
					    shortsKey() {
 | 
				
			||||||
      return {
 | 
					      return {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -472,6 +472,7 @@ export default {
 | 
				
			||||||
        change: 'Change',
 | 
					        change: 'Change',
 | 
				
			||||||
        convertAmount: 'Convert Quantity',
 | 
					        convertAmount: 'Convert Quantity',
 | 
				
			||||||
        fullPayment: 'Full Payment',
 | 
					        fullPayment: 'Full Payment',
 | 
				
			||||||
 | 
					        dayRate: 'Day Rate',
 | 
				
			||||||
        TenderType: {
 | 
					        TenderType: {
 | 
				
			||||||
          directDeposit: 'Direct Deposit',
 | 
					          directDeposit: 'Direct Deposit',
 | 
				
			||||||
          creditCard: 'Credit Card',
 | 
					          creditCard: 'Credit Card',
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -447,6 +447,7 @@ export default {
 | 
				
			||||||
        change: 'Cambio',
 | 
					        change: 'Cambio',
 | 
				
			||||||
        convertAmount: 'Convertir Cantidad',
 | 
					        convertAmount: 'Convertir Cantidad',
 | 
				
			||||||
        fullPayment: 'Cobro Completo',
 | 
					        fullPayment: 'Cobro Completo',
 | 
				
			||||||
 | 
					        dayRate: 'Tasa del Día',
 | 
				
			||||||
        TenderType: {
 | 
					        TenderType: {
 | 
				
			||||||
          directDeposit: 'Depósito Directo',
 | 
					          directDeposit: 'Depósito Directo',
 | 
				
			||||||
          creditCard: 'Tarjeta de Crédito',
 | 
					          creditCard: 'Tarjeta de Crédito',
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -732,7 +732,6 @@ const actions = {
 | 
				
			||||||
    sqlStatement
 | 
					    sqlStatement
 | 
				
			||||||
  }) {
 | 
					  }) {
 | 
				
			||||||
    // const contextInforField = getters.getContextInfoField(contextInfoUuid, sqlStatement)
 | 
					    // const contextInforField = getters.getContextInfoField(contextInfoUuid, sqlStatement)
 | 
				
			||||||
    // console.log({ contextInforField })
 | 
					 | 
				
			||||||
    // if (contextInforField) {
 | 
					    // if (contextInforField) {
 | 
				
			||||||
    //   return contextInforField
 | 
					    //   return contextInforField
 | 
				
			||||||
    // }
 | 
					    // }
 | 
				
			||||||
| 
						 | 
					@ -742,7 +741,6 @@ const actions = {
 | 
				
			||||||
      query: sqlStatement
 | 
					      query: sqlStatement
 | 
				
			||||||
    })
 | 
					    })
 | 
				
			||||||
      .then(contextInfoResponse => {
 | 
					      .then(contextInfoResponse => {
 | 
				
			||||||
        console.log({ contextInfoResponse })
 | 
					 | 
				
			||||||
        commit('setContextInfoField', {
 | 
					        commit('setContextInfoField', {
 | 
				
			||||||
          contextInfoUuid,
 | 
					          contextInfoUuid,
 | 
				
			||||||
          sqlStatement,
 | 
					          sqlStatement,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -123,7 +123,8 @@ export default {
 | 
				
			||||||
        if (!isEmptyValue(response.currencyTo)) {
 | 
					        if (!isEmptyValue(response.currencyTo)) {
 | 
				
			||||||
          const currency = {
 | 
					          const currency = {
 | 
				
			||||||
            ...response.currencyTo,
 | 
					            ...response.currencyTo,
 | 
				
			||||||
            amountConvertion: response.divideRate
 | 
					            amountConvertion: response.divideRate,
 | 
				
			||||||
 | 
					            multiplyRate: response.multiplyRate
 | 
				
			||||||
          }
 | 
					          }
 | 
				
			||||||
          dispatch('addRateConvertion', currency)
 | 
					          dispatch('addRateConvertion', currency)
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue