nidapeng
2024-04-01 b7d8138083f5a49ec0c9f7dbd0a722b031d84f88
company/src/components/business/detailsEntrustedInsurance.vue
@@ -15,30 +15,18 @@
            <span>提交时间:{{ model.createDate }}</span>
          </div>
          <div class="desc_item_label_right">
            <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>
            </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="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>
              <el-button type="primary" v-if="[0].includes(model.status) " @click="$refs.InsuranceDetails.open('导出详单',model,0)">导出详单</el-button>
              <el-button v-if="[0].includes(model.status) " type="primary" @click="$refs.OperaUnionApplyCheckWindow.open('上传投保单',model,2)">上传投保单</el-button>
              <el-button v-if="model.status == 1" type="primary" @click="getSignLink(0)">签署投保单</el-button>
              <el-button v-if="[2,3,4].includes(model.status)" type="primary" @click="viewToubaodan">查看投保单</el-button>
              <el-button v-if="[3].includes(model.status) " type="primary" @click="$refs.OperaUnionApplyCheckWindow.open('上传投保单',model,3)">上传保险单</el-button>
              <el-button v-if="model.status == 4" type="primary" @click="viewBaoxiandan">查看保险单</el-button>
              <el-button v-if="[0,1,2].includes(model.status) " type="danger" @click="$refs.OperaUnionApplyCheckWindow.open('退回投保',model,1)">退回申请</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>
            <template v-if="userInfo.type ===0">
              <el-button v-if="[2,3,4].includes(model.status)" type="primary" @click="viewToubaodan">查看投保单</el-button>
              <el-button v-if="[4].includes(model.status)" type="primary" @click="viewBaoxiandan">查看保险单</el-button>
            </template>
          </div>
        </div>
@@ -107,52 +95,11 @@
                  <el-option label="不在保" value="2"></el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="派遣单位" prop="duId">
                <el-select v-model="formInline.duId" placeholder="请选择" @change="search">
                  <el-option
                      v-for="item in dwList"
                      :key="item.id"
                      :label="item.name"
                      :value="item.id">
                  </el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="所属工种" prop="workTypeId">
                <el-select v-model="formInline.workTypeId" placeholder="请选择" @change="search">
                  <el-option
                      v-for="item in gzList"
                      :key="item.id"
                      :label="item.name"
                      :value="item.id">
                  </el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="员工姓名" prop="memberName">
                <el-input v-model="formInline.memberName" placeholder="请输入" @keypress.enter.native="search"></el-input>
              </el-form-item>
              <el-form-item label="保险生效起期" prop="end">
                <el-date-picker
                    @change="changeStart"
                    v-model="formInline.end"
                    type="daterange"
                    format="yyyy 年 MM 月 dd 日"
                    value-format="yyyy-MM-dd"
                    range-separator="至"
                    start-placeholder="开始日期"
                    end-placeholder="结束日期">
                </el-date-picker>
              </el-form-item>
              <el-form-item label="保险生效止期" prop="start">
                <el-date-picker
                    @change="changeEnd"
                    v-model="formInline.start"
                    type="daterange"
                    format="yyyy 年 MM 月 dd 日"
                    value-format="yyyy-MM-dd"
                    range-separator="至"
                    start-placeholder="开始日期"
                    end-placeholder="结束日期">
                </el-date-picker>
              <el-form-item label="被保险人" prop="applyCompanyName">
                <el-input v-model="formInline.applyCompanyName" placeholder="请输入" @keypress.enter.native="search"></el-input>
              </el-form-item>
            </template>
            <template v-else>
@@ -160,11 +107,9 @@
                <el-select v-model="formInline.applyStatus" @change="search" placeholder="请选择">
                  <el-option label="全部" value=""></el-option>
                  <el-option label="待签署" value="0"></el-option>
                  <el-option label="待审核" value="1"></el-option>
                  <el-option label="已生效" value="2"></el-option>
                  <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="1"></el-option>
                  <el-option label="保障中" value="2"></el-option>
                  <el-option label="已退回" value="3"></el-option>
                </el-select>
              </el-form-item>
              <el-form-item label="批单生效起期" prop="end">
@@ -269,11 +214,9 @@
                             align="center">
              <template slot-scope="{row}">
                <span :class="'change-status'+row.status" v-if="row.status === 0">待签署</span>
                <span :class="'change-status'+row.status" v-if="row.status === 1">待审核</span>
                <span :class="'change-status'+row.status" v-if="row.status === 2">已生效</span>
                <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 === 1">待出单</span>
                <span :class="'change-status'+row.status" v-if="row.status === 2">保障中</span>
                <span :class="'change-status'+row.status" v-if="row.status === 3">已退回</span>
              </template>
            </el-table-column>
            <el-table-column
@@ -311,7 +254,9 @@
                :key="Math.random()"
                label="操作">
              <template slot-scope="{row}">
                <el-button type="text" @click="$refs.OperaApplyChangeDetailWindow.open('加减保详情', row)">查看详情</el-button>
              </template>
            </el-table-column>
          </el-table>
@@ -331,11 +276,9 @@
                align="center" label="保单状态" :key="Math.random()">
              <template slot-scope="{row}">
                <span :class="'change-status'+row.status" v-if="row.status === 0">待签署</span>
                <span :class="'change-status'+row.status" v-if="row.status === 1">待审核</span>
                <span :class="'change-status'+row.status" v-if="row.status === 2">已生效</span>
                <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 === 1">待出单</span>
                <span :class="'change-status'+row.status" v-if="row.status === 2">保障中</span>
                <span :class="'change-status'+row.status" v-if="row.status === 3">已退回</span>
              </template>
            </el-table-column>
            <el-table-column
@@ -403,22 +346,13 @@
        </div>
      </div>
    </div>
    <InsuranceDetails ref="InsuranceDetails" @success="successEvent" />
    <OperaWtbApplyCheckWindow ref="OperaWtbApplyCheckWindow" @success="successEvent" />
    <!--    企业申请退回    -->
    <applyReturn ref="applyReturn" @success="successEvent" />
    <!--    新增投保    -->
    <OperaInsuranceApply ref="OperaInsuranceApply" @success="successEvent" />
    <!--    加减保申请    -->
    <additionSubtractionApplication ref="additionSubtractionApplication" @success="successEvent" />
    <!--    更换派遣单位申请    -->
    <factoryChange ref="factoryChange" @success="successEvent" />
    <InsuranceDetailsWtb ref="InsuranceDetails" @success="successEvent" />
    <OperaUnionApplyCheckWindow ref="OperaUnionApplyCheckWindow" @success="successEvent" />
    <!-- 加减保详情 -->
    <OperaApplyChangeDetailWindow ref="OperaApplyChangeDetailWindow" @success="successEvent"/>
    <!-- 更换派遣单位详情 -->
    <OperaApplyChangeUnitDetailWindow ref="OperaApplyChangeUnitDetailWindow" @success="successEvent"/>
    <!--    验证手机号    -->
    <operaverifyPhoneNumberWindew ref="operaverifyPhoneNumberWindew" @success="goSign" />
    <!-- 加减保详情 -->
    <template v-slot:footer>
      <el-button @click="visible=false">返回</el-button>
    </template>
@@ -455,46 +389,35 @@
<script>
import BaseOpera from '@/components/base/BaseOpera'
import GlobalWindow from '@/components/common/GlobalWindow'
import InsuranceDetails from '@/components/business/InsuranceDetails'
import OperaWtbApplyCheckWindow from '@/components/business/OperaWtbApplyCheckWindow'
import additionSubtractionApplication from '@/components/enterprise/additionSubtractionApplication'
import factoryChange from '@/components/enterprise/factoryChange'
import operaverifyPhoneNumberWindew from '@/components/business/operaverifyPhoneNumberWindew'
import InsuranceDetailsWtb from '@/components/business/InsuranceDetailsWtb'
import OperaApplyChangeDetailWindow from '@/components/business/OperaApplyChangeDetailWindow'
import OperaApplyChangeUnitDetailWindow from '@/components/business/OperaApplyChangeUnitDetailWindow'
import { getById } from '@/api/business/unionApply'
import applyReturn from '@/components/enterprise/applyReturn'
import OperaUnionApplyCheckWindow from '@/components/business/OperaUnionApplyCheckWindow'
import { getById,getSignLink } from '@/api/business/unionApply'
import {
  getDetail,
  getSignLink,
  applyDetailPage,
  exportExcel,
  applyChagneDetailExcel,
  applyOpt,
  getMemberListOnlineSignLink, getSignTBQRSLink
} 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',
  extends: BaseOpera,
  components: {
    GlobalWindow,
    InsuranceDetails,
    OperaWtbApplyCheckWindow,
    applyReturn,
    OperaInsuranceApply,
    additionSubtractionApplication,
    factoryChange,
    OperaApplyChangeDetailWindow,
    OperaApplyChangeUnitDetailWindow,
    operaverifyPhoneNumberWindew
    OperaApplyChangeDetailWindow,
    InsuranceDetailsWtb,
    OperaUnionApplyCheckWindow,
  },
  data () {
    return {
@@ -517,22 +440,12 @@
      timer: null,
      formInline: {
        applyStatus: '',
        duId: '',
        workTypeId: '',
        memberName: '',
        end: [],
        start: [],
        endTimeE: '',
        endTimeS: '',
        startTimeE: '',
        startTimeS: '',
        type: ''
        end:[],
        startTimeS:null,
        startTimeE:null,
        applyCompanyName: ''
      },
      visible1: false,
      visible2: false,
      visible3: false,
      visible4: false,
      visible5: false,
      visiblePhone: false,
      reverse: false,
      radio: 0,
@@ -584,10 +497,6 @@
    },
    getSignLink (flag) {
      if (flag === 0) {
        this.signTitle = '签署方案确认书'
      } else if (flag === 1) {
        this.signTitle = '签署申请单'
      } else if (flag === 2) {
        this.signTitle = '签署投保单'
      }
      this.form.type = flag
@@ -604,24 +513,6 @@
        this.isWorking = true
        if(this.form.type===0){
          getSignTBQRSLink(this.form).then(res => {
            setTimeout(() => {
              this.visiblePhone=false
              window.open(res)
            }, 500)
          }).catch(err => {
            this.$tip.apiFailed(err)
          })
        } else if (this.form.type === 1) {
          getMemberListOnlineSignLink(this.form).then(res => {
            setTimeout(() => {
              this.visiblePhone=false
              window.open(res)
            }, 500)
          }).catch(err => {
            this.$tip.apiFailed(err)
          })
        } else if (this.form.type === 2) {
          getSignLink(this.dataId).then(res => {
            setTimeout(() => {
              this.visiblePhone=false
              window.open(res)