complaint-acceptance.vue 5.98 KB

<template>
  <div>
    <auth :model="'suggest'" @onLogin="userLogin" ref="auth"></auth>
    <modal-comp :visible="modalVisiable" :show-confirm="false" :icon="modalIcon" :content="modalContent" :confirm="modalCallback" :overlay="modalCallback"></modal-comp>
    <div class="reservation-container">
      <!-- 顶头iterm -->
      <div class="form form2">
        <div class="form-item">
          <div class="label">
            <div class="icon"><img src="@/assets/images/reservation/icon-re-name.png"></div> {{$t('complaintAcceptance.name')}}
          </div>
          <div class="ipt-wrap">
            <input class="ipt name-ipt" type="text" :class="{err : errorTips.nameErr.length > 0}" v-model="data.name">
          </div>
          <div class="validator" v-if="errorTips.nameErr.length > 0">
            <img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.nameErr}}
          </div>
        </div>

        <div class="form-item">
          <div class="label">
            <div class="icon"><img src="@/assets/images/reservation/icon-re-contact.png"></div>{{$t('complaintAcceptance.contactType')}}
          </div>
          <div class="ipt-wrap">
            <div class="down-arrow"></div>
            <el-select class="ipt phone-ipt" v-model="data.contactType">
              <el-option v-for="(item,index) in contactTypes" :key="index" :value="item.value" :label="item.name"></el-option>
            </el-select>
          </div>
          <div class="validator" v-if="errorTips.contactTypeErr.length > 0">
            <img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.contactTypeErr}}
          </div>
        </div>

        <div class="form-item flex1">
          <div class="label">
            <div class="icon">
              <img v-if="contactIconShow == 'email'" src="@/assets/images/complaint-acceptance/icon-ca-mail.png">
              <img v-else src="@/assets/images/contact-us/icon-cs-call.png">
            </div>{{contactTypeShow}}
          </div>
          <div class="ipt-wrap">
            <input class="ipt mail-ipt" type="text" :class="{err : errorTips.contactMethodErr.length > 0}" v-model="data.contactMethod" :placeholder="contactPlaceHolderShow">
          </div>
          <div class="validator" v-if="errorTips.contactMethodErr.length > 0">
            <img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.contactMethodErr}}
          </div>
        </div>

      </div>

      <!-- 长文本 -->
      <div class="form">
        <div class="pure-u-1 form-item">
          <div class="label">
            <div class="icon"><img src="@/assets/images/reservation/icon-re-arrow-reservation.png"></div>{{$t('complaintAcceptance.question')}}
          </div>
          <div class="ipt-wrap">
            <textarea :placeholder="$t('complaintAcceptance.questionPlaceHolder')" class="ipt textarea" :class="{err:errorTips.complainErr.length >0}" v-model="data.complain"></textarea>
          </div>
          <div class="validator" v-if="errorTips.complainErr.length > 0">
            <img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.complainErr}}
          </div>
        </div>

        <!-- 保单编号 非必填 -->
        <div class="pure-u-1 form-item form-item3">
          <div class="label">
            <div class="icon"><img src="@/assets/images/complaint-acceptance/icon-ca-no.png"></div>{{$t('complaintAcceptance.orderNo')}}
          </div>
          <div class="ipt-wrap ipt-wrap2">
            <input :placeholder="$t('complaintAcceptance.orderNoPlaceHolder')" class="ipt" type="text" :class="{err:errorTips.policyNumberErr.length>0}" v-model="data.policyNumber">
          </div>
          <div class="validator" v-if="errorTips.policyNumberErr.length > 0">
            <img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.policyNumberErr}}
          </div>
        </div>

        <!-- 联络时间 -->
        <div class="pure-u-1 form-item form-item3">
          <div class="label">
            <div class="icon"><img src="@/assets/images/reservation/icon-re-calendar.png"></div>{{$t('complaintAcceptance.contactTime')}}
          </div>
          <div class="ipt-wrap ipt-wrap2">
            <!-- <input  class="ipt" type="date" :class="{err:errorTips.contactDateErr.length>0}" v-model="data.contactDate"> -->
            <date-picker v-model="data.contactDate" :check="checkDate" :filtModel="['history','holiday']"></date-picker>
          </div>
          <div class="validator" v-if="errorTips.contactDateErr.length > 0">
            <img src="@/assets/images/common/icon-notice.png" alt="">{{errorTips.contactDateErr}}
          </div>
          <div class="mt8">
            <div class="label">
            </div>
            <!-- <div class="calendar">
							<img src="@/assets/images/reservation/re-calendar.png">
						</div> -->
          </div>
        </div>
      </div>

      <!-- 通知 -->
      <div class="notice">
        <p class="notice-item">
          <img class="notice-item-icon" src="@/assets/images/reservation/icon-re-notice.png"> &nbsp;&nbsp;&nbsp;&nbsp;{{$t('complaintAcceptance.notice1')}}
        </p>
        <p class="notice-item pointer" @click="checked = !checked">
          <!-- <img v-if="!checked" class="notice-item-icon" src="@/assets/images/reservation/un-check.png">
					<img v-else class="notice-item-icon" src="@/assets/images/reservation/check.png">  -->

          <img v-if="!checked" class="notice-item-icon" src="@/assets/images/login/uncheck.png">
          <img v-else class="notice-item-icon" src="@/assets/images/login/check.png">

          &nbsp;&nbsp;&nbsp;&nbsp;{{$t('complaintAcceptance.notice2')}}
        </p>
      </div>

      <!-- 提交按钮 -->
      <div class="submit-btn flex-center" @click="submitHandler" :class="{disabled:submitBtnDisabled}">
        <van-loading v-if="isSubmit" />
        <span>{{$t('reservation.submitBtn')}}</span>
      </div>
    </div>
  </div>
</template>

<script src="./complaint-acceptance.js"></script>
<style lang="scss" scoped>
@import "./complaint-acceptance.scss";
</style>