nidapeng
2024-04-11 5056b731dcaebbc3a48a4a910413cc4dd6c9c19a
company/src/components/business/OperaWtbApplyShopWindow.vue
@@ -8,45 +8,49 @@
    >
        <div class="desc">
            <div class="desc_item">
                <div class="desc_item_label" v-if="userInfo.type === 1 &&(model.statusCollect === 2 || model.statusCollect === 3)">
                <div class="desc_item_label" v-if="userInfo.type === 1 && model.status ===27 ">
                    <div class="desc_item_label_left">
                        <span>保险到期还有 <b style="color: #F95601;">{{model.loseEfficacyDays ? model.loseEfficacyDays : '-'}}</b> 天</span>
                        <el-button type="primary" v-if="model.statusCollect === 2 || model.statusCollect === 3" @click="$refs.OperaInsuranceApply.open('续保', { id: dataId, type: 1 })">一键续保</el-button>
                        <el-button type="primary" v-if="model.statusCollect === 2" @click="$refs.additionSubtractionApplication.open('加减保申请', { id: dataId })">加减保申请</el-button>
                        <el-button type="primary" v-if="model.statusCollect === 2" @click="$refs.factoryChange.open('更换派遣单位申请', { id: dataId })">更换派遣单位申请</el-button>
                        <el-button type="primary" v-if="model.status === 27" @click="$refs.OperaInsuranceApply.open('续保', { id: dataId, type: 1 })">一键续保</el-button>
                        <el-button type="primary" v-if="model.status === 27" @click="$refs.additionSubtractionApplication.open('加减保申请', { id: dataId })">加减保申请</el-button>
                        <el-button type="primary" v-if="model.status === 27" @click="$refs.factoryChange.open('更换派遣单位申请', { id: dataId })">更换派遣单位申请</el-button>
                    </div>
                </div>
                <div class="desc_item_label">
                    <div class="desc_item_label_left">
                        <span>投保企业:{{ model.companyName }}</span>
                        <span>投保人:{{ model.shopName }}</span>
                        <span>被保险人:{{ model.companyName }}</span>
                      <span>保单状态:<span  :class="'apply-status'+model.status" >{{ model.statusInfo }}</span></span>
                        <span>提交时间:{{ model.createDate }}</span>
                    </div>
                  <div class="desc_item_label_right">
                    <el-button type="primary" @click="$refs.InsuranceDetails.open('投保详情单',model,0)">导出详单</el-button>
                      <template v-if="userInfo.type === 1">
                          <el-button v-if="model.status == 24" type="primary" @click="$refs.OperaInsuranceApply.open('投保申请', {id: dataId})">再次投保</el-button>
                          <el-button v-if="model.status == 24" type="primary" @click="closeOrder">关闭订单</el-button>
                          <el-button v-if="[21,22,23,24,25,26,27].includes(model.status)" type="primary" @click="viewFanganshu">查看确认书</el-button>
                          <el-button v-if="[22,23,24,25,26,27].includes(model.status)" type="primary" @click="viewShenqingdan">查看申请单</el-button>
                          <el-button v-if="[1,2,3].includes(model.unionApplyTbdStatus)" type="primary" @click="viewToubaodan">查看投保单</el-button>
                          <el-button v-if="[3].includes(model.unionApplyTbdStatus) " type="primary" @click="viewBaoxiandan">查看保险单</el-button>
<!--                          goSign-->
                          <el-button v-if="model.status == 20" type="primary" @click="getSignLink(0)">签署方案确认书</el-button>
                          <el-button v-if="model.status == 21" type="primary" @click="getSignLink(1)">签署申请单</el-button>
                          <el-button v-if="model.unionApplyTbdStatus == 1" type="primary" @click="getSignLink(2)">签署投保单</el-button>
                        <el-button v-if="[22,23,24,25,26,27].includes(model.status)  && model.shenqingdanFile" type="primary" @click="viewShenqingdan">查看申请单</el-button>
                        <el-button v-if="[1,2,3].includes(model.unionApplyTbdStatus) &&(model.toubaodanFile || model.oubaodanSignedFile)" type="primary" @click="viewToubaodan">查看投保单</el-button>
                        <el-button v-if="[3].includes(model.unionApplyTbdStatus) &&(model.baoxiandanFile)" type="primary" @click="viewBaoxiandan">查看保险单</el-button>
                        <!--                          goSign-->
                        <el-button v-if="model.status == 20" type="primary" @click="getSignLink(0)">签署方案确认书</el-button>
                        <el-button v-if="model.status == 21" type="primary" @click="getSignLink(1)">签署申请单</el-button>
                        <el-button v-if="model.unionApplyTbdStatus == 1" type="primary" @click="getSignLink(2)">签署投保单</el-button>
                        <el-button v-if="model.status == 24" type="danger" @click="closeOrder">关闭订单</el-button>
                      </template>
                    <template v-if="userInfo.type === 2">
                      <el-button v-if="[21,22,23,24,25,26,27].includes(model.status)" type="primary" @click="viewFanganshu">查看确认书</el-button>
                      <el-button v-if="[22,23,24,25,26,27].includes(model.status)" type="primary" @click="viewShenqingdan">查看申请单</el-button>
                      <el-button v-if="[22,23,24,25,26,27].includes(model.status)  && model.shenqingdanFile" type="primary" @click="viewShenqingdan">查看申请单</el-button>
                      <el-button v-if="[1,2,3].includes(model.unionApplyTbdStatus) &&(model.toubaodanFile || model.oubaodanSignedFile)" type="primary" @click="viewToubaodan">查看投保单</el-button>
                      <el-button v-if="[3].includes(model.unionApplyTbdStatus) &&(model.baoxiandanFile)" type="primary" @click="viewBaoxiandan">查看保险单</el-button>
                      <el-button v-if="model.status == 22" type="primary" @click="$refs.InsuranceDetails.open('投保审核',model,1)">投保审核</el-button>
                      <el-button v-if="[20,21,22].includes(model.status)" type="danger" @click="$refs.OperaWtbApplyCheckWindow.open('退回投保',model,1)">退回申请</el-button>
                      <el-button v-if="model.status == 23" type="danger" @click="$refs.OperaWtbApplyCheckWindow.open('关闭申请',model,2)">关闭申请</el-button>
                    </template>
                    <template v-if="userInfo.type === 0">
                      <el-button v-if="[27].includes(model.status)" type="primary" @click="viewFanganshu">查看确认书</el-button>
                      <el-button v-if="[27].includes(model.status)" type="primary" @click="viewShenqingdan">查看申请单</el-button>
                      <el-button v-if="[27].includes(model.status)" type="primary" @click="viewToubaodan">查看投保单</el-button>
                      <el-button v-if="[27].includes(model.status)" type="primary" @click="viewBaoxiandan">查看保险单</el-button>
                      <el-button v-if="[21,22,23,24,25,26,27].includes(model.status)" type="primary" @click="viewFanganshu">查看确认书</el-button>
                      <el-button v-if="[22,23,24,25,26,27].includes(model.status)  && model.shenqingdanFile" type="primary" @click="viewShenqingdan">查看申请单</el-button>
                      <el-button v-if="[1,2,3].includes(model.unionApplyTbdStatus) &&(model.toubaodanFile || model.oubaodanSignedFile)" type="primary" @click="viewToubaodan">查看投保单</el-button>
                      <el-button v-if="[3].includes(model.unionApplyTbdStatus) &&(model.baoxiandanFile)" type="primary" @click="viewBaoxiandan">查看保险单</el-button>
                    </template>
                  </div>
                </div>
@@ -95,6 +99,9 @@
                            prop="fee"
                            align="center"
                            label="总费用(元)">
                          <template slot-scope="{row}">
                            <span>{{row.fee!=null?row.fee: '-'}}</span>
                          </template>
                        </el-table-column>
                    </el-table>
                </div>
@@ -173,6 +180,8 @@
                                    <el-option label="申请退回" value="3"></el-option>
                                    <el-option label="已退回" value="5"></el-option>
                                    <el-option label="已关闭" value="6"></el-option>
                                    <el-option label="待出单" value="7"></el-option>
                                    <el-option label="投保中" value="9"></el-option>
                                </el-select>
                            </el-form-item>
                            <el-form-item label="批单生效起期" prop="end">
@@ -258,6 +267,9 @@
                            align="center"
                            prop="fee"
                            label="产生费用">
                          <template slot-scope="{row}">
                            <span>{{row.fee!=null?row.fee: '-'}}</span>
                          </template>
                        </el-table-column>
                    </el-table>
                    <el-table
@@ -282,11 +294,13 @@
                                <span :class="'change-status'+row.status" v-if="row.status === 3 || row.status === 4">申请退回</span>
                                <span :class="'change-status'+row.status" v-if="row.status === 5 || row.status === 8">已退回</span>
                                <span :class="'change-status'+row.status" v-if="row.status === 6">已关闭</span>
                              <span :class="'change-status'+row.status" v-if="row.status === 7">待出单</span>
                              <span :class="'change-status'+row.status" v-if="row.status === 9">投保中</span>
                            </template>
                        </el-table-column>
                        <el-table-column
                            :key="Math.random()"
                            prop="applyCode"
                            prop="validCode"
                            align="center"
                            label="批单号">
                        </el-table-column>
@@ -344,12 +358,14 @@
                                <span :class="'change-status'+row.status" v-if="row.status === 3 || row.status === 4">申请退回</span>
                                <span :class="'change-status'+row.status" v-if="row.status === 5 || row.status === 8">已退回</span>
                                <span :class="'change-status'+row.status" v-if="row.status === 6">已关闭</span>
                              <span :class="'change-status'+row.status" v-if="row.status === 7">待出单</span>
                              <span :class="'change-status'+row.status" v-if="row.status === 9">投保中</span>
                            </template>
                        </el-table-column>
                        <el-table-column
                            :key="Math.random()"
                            align="center"
                            prop="applyCode"
                            prop="validCode"
                            label="批单号">
                        </el-table-column>
                        <el-table-column
@@ -436,9 +452,9 @@
          :title="signTitle"
          :visible.sync="visiblePhone"
          width="500px"
          :modal="false"
          :show-close="false"
          :close-on-click-modal="false"
          :modal="true"
          :show-close="true"
          append-to-body
          center>
        <el-form :model="form" ref="form" :rules="rules">
          <el-form-item label="手机号" prop="phone">
@@ -479,14 +495,14 @@
  exportExcel,
  applyChagneDetailExcel,
  applyOpt,
  getMemberListOnlineSignLink, getSignTBQRSLink
  getMemberListOnlineSignLink, getSignTBQRSLink, getSignWTBTBDLink
} from '@/api/business/insuranceApply'
import { findListByDTO } from '@/api/business/dispatchUnit'
import { fetchList } from '@/api/business/applyChange'
import { findListByDTO as worktypeFindListByDTO } from '@/api/business/worktype'
import OperaInsuranceApply from '@/components/enterprise/OperaInsuranceApplyWindow'
import { mapState } from 'vuex'
import {sendSms, validateCode} from "@/api/business/smsEmail";
import {sendSms} from "@/api/business/smsEmail";
export default {
  name: 'OperaWtbApplyShopWindow',
@@ -511,7 +527,7 @@
      model: {},
      form: {
        businessId: null,
        phone: this.$store.state.userInfo.company.phone,
        phone: this.$store.state.userInfo.company? this.$store.state.userInfo.company.phone:null,
        code: '',
        type:0
      },
@@ -569,6 +585,8 @@
      this.visible = true
      this.title = title
      this.model = {}
      this.num=0
      this.timer=null
      this.dataId = null
      this.dataId = target.id
      this.form.businessId = target.id
@@ -628,7 +646,7 @@
            this.$tip.apiFailed(err)
          })
        } else if (this.form.type === 2) {
          getSignLink(this.dataId).then(res => {
          getSignWTBTBDLink(this.form).then(res => {
            setTimeout(() => {
              this.visiblePhone=false
              window.open(res)