From ec597288f2bb4d25d8752e2e24402306719833d4 Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期五, 29 三月 2024 15:25:28 +0800
Subject: [PATCH] 提交一把
---
company/src/components/business/OperaWtbApplyShopWindow.vue | 1022 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 1,022 insertions(+), 0 deletions(-)
diff --git a/company/src/components/business/OperaWtbApplyShopWindow.vue b/company/src/components/business/OperaWtbApplyShopWindow.vue
index e69de29..d7ad881 100644
--- a/company/src/components/business/OperaWtbApplyShopWindow.vue
+++ b/company/src/components/business/OperaWtbApplyShopWindow.vue
@@ -0,0 +1,1022 @@
+<template>
+ <GlobalWindow
+ :title="title"
+ width="100%"
+ :visible.sync="visible"
+ :confirm-working="isWorking"
+ @confirm="confirm"
+ >
+ <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_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>
+ </div>
+ </div>
+ <div class="desc_item_label">
+ <div class="desc_item_label_left">
+ <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">
+ <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="model.status == 22" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('閫�鍥炴姇淇�',model,1)">閫�鍥炵敵璇�</el-button>
+ <el-button v-if="model.status == 23" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.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>
+ </div>
+ </div>
+ <div class="desc_item_from">
+ <el-table
+ :data="tableData"
+ border
+ style="width: 100%">
+ <el-table-column
+ prop="code"
+ align="center"
+ label="淇濆崟鍙�">
+ </el-table-column>
+ <el-table-column
+ prop="solutionsName"
+ label="淇濋櫓鏂规"
+ align="center"
+ width="180">
+ </el-table-column>
+ <el-table-column
+ prop="startTime"
+ align="center"
+ label="淇濋櫓鐢熸晥璧锋湡">
+ </el-table-column>
+ <el-table-column
+ prop="endTime"
+ align="center"
+ label="淇濋櫓鐢熸晥姝㈡湡">
+ </el-table-column>
+ <el-table-column
+ prop="insureNum"
+ align="center"
+ label="鎶曚繚浜烘暟">
+ </el-table-column>
+ <el-table-column
+ prop="serviceDays"
+ align="center"
+ label="鍦ㄤ繚鏃堕暱锛堝ぉ锛�">
+ </el-table-column>
+ <el-table-column
+ prop="currentFee"
+ align="center"
+ label="宸蹭骇鐢熻垂鐢�(鍏�)">
+ </el-table-column>
+ <el-table-column
+ prop="fee"
+ align="center"
+ label="鎬昏垂鐢�(鍏�)">
+ </el-table-column>
+ </el-table>
+ </div>
+ <div class="desc_item_cate">
+ <el-tabs v-model="activeName" @tab-click="handleClick">
+ <el-tab-pane label="鍦ㄤ繚浜哄憳" name="0" ></el-tab-pane>
+ <el-tab-pane label="鍔�/鍑忎繚璁板綍" name="1"></el-tab-pane>
+ <el-tab-pane label="鏇存崲娲鹃仯鍗曚綅璁板綍" name="2"></el-tab-pane>
+ </el-tabs>
+ </div>
+ <div class="desc_item_search">
+ <el-form :inline="true" :model="formInline" ref="sou" class="demo-form-inline">
+ <template v-if="activeName === '0'">
+ <el-form-item label="鍦ㄤ繚鐘舵��" prop="applyStatus">
+ <el-select v-model="formInline.applyStatus" @change="search" placeholder="璇烽�夋嫨">
+ <el-option label="鍏ㄩ儴" value="0"></el-option>
+ <el-option label="淇濋殰涓�" value="1"></el-option>
+ <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>
+ </template>
+ <template v-else>
+ <el-form-item label="鐘舵��" prop="applyStatus">
+ <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-select>
+ </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>
+ </template>
+ <el-form-item>
+ <el-button type="primary" style="width: 80px;" @click="search">鏌ヨ</el-button>
+ <el-button @click="resetting" style="width: 80px;">閲嶇疆</el-button>
+ <el-button type="primary" style="width: 80px;" @click="exportExcel" v-if="activeName === '0'">瀵煎嚭鍚嶅崟</el-button>
+ </el-form-item>
+ </el-form>
+ </div>
+ <div class="desc_item_from">
+ <el-table
+ :data="list"
+ border
+ ref="table"
+ v-if="activeName === '0'"
+ style="width: 100%">
+ <el-table-column label="搴忓彿"
+ align="center">
+ <template slot-scope="scope">
+ <span>{{scope.$index + 1}}</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="memberName"
+ align="center"
+ label="鍛樺伐濮撳悕">
+ </el-table-column>
+ <el-table-column
+ align="center"
+ :key="Math.random()"
+ label="鎬у埆">
+ <template slot-scope="{row}">
+ <span v-if="row.sex === 0">鐢�</span>
+ <span v-else>濂�</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="idcardNo"
+ align="center"
+ label="韬唤璇佸彿">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="duName"
+ align="center"
+ label="娲鹃仯鍗曚綅">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="workTypeName"
+ align="center"
+ label="鎵�灞炲伐绉�">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="startTime"
+ align="center"
+ label="淇濋櫓鐢熸晥璧锋湡">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="endTime"
+ align="center"
+ label="淇濋櫓鐢熸晥姝㈡湡">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ align="center"
+ prop="fee"
+ label="浜х敓璐圭敤">
+ </el-table-column>
+ </el-table>
+ <el-table
+ :data="list1"
+ border
+ ref="table"
+ v-if="activeName === '1'"
+ style="width: 100%">
+ <el-table-column
+ label="搴忓彿"
+ align="center">
+ <template slot-scope="scope">
+ <span>{{scope.$index + 1}}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="淇濆崟鐘舵��" :key="Math.random()"
+ 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>
+ </template>
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="applyCode"
+ align="center"
+ label="鎵瑰崟鍙�">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="addNum"
+ align="center"
+ label="澧炲姞浜烘暟锛堜汉锛�">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="delNum"
+ align="center"
+ label="鍑忓皯浜烘暟锛堜汉锛�">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="createDate"
+ align="center"
+ label="鎻愪氦鏃堕棿">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="applyStartTime"
+ align="center"
+ label="鎵瑰崟鐢熸晥璧锋湡">
+ </el-table-column>
+ <el-table-column
+ align="center"
+ :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>
+ <el-table
+ :data="list2"
+ border
+ ref="table"
+ v-if="activeName === '2'"
+ style="width: 100%">
+ <el-table-column label="搴忓彿"
+ align="center">
+ <template slot-scope="scope">
+ <span>{{scope.$index + 1}}</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ 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>
+ </template>
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ align="center"
+ prop="applyCode"
+ label="鎵瑰崟鍙�">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="changeNum"
+ align="center"
+ label="鏇存崲娲鹃仯鍗曚綅浜烘暟">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="createDate"
+ align="center"
+ label="鎻愪氦鏃堕棿">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ prop="applyStartTime"
+ align="center"
+ label="鎵瑰崟鐢熸晥璧锋湡">
+ </el-table-column>
+ <el-table-column
+ :key="Math.random()"
+ align="center"
+ label="鎿嶄綔">
+ <template slot-scope="{row}">
+ <el-button type="text" @click="$refs.OperaApplyChangeUnitDetailWindow.open('鏇存崲娲鹃仯鍗曚綅璇︽儏', row)">鏌ョ湅璇︽儏</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <div class="desc_item_from_page">
+ <el-pagination
+ @current-change="handleCurrentChange"
+ :current-page="currentPage"
+ :page-size="10"
+ layout="total, prev, pager, next, jumper"
+ :total="total">
+ </el-pagination>
+ </div>
+ </div>
+ <div class="desc_item_review">
+ <div class="desc_item_review_label">瀹℃牳娴佺▼</div>
+ <el-timeline :reverse="reverse">
+ <el-timeline-item
+ v-for="(activity, index) in activities"
+ :key="index">
+ <div style="display: flex; flex-direction: column;">
+ <span style="font-size: 16px; font-weight: 400; color: black;">
+ {{activity.title}}
+ <span style="font-size: 16px; font-weight: 400; color: black; margin-left: 10px;" v-if="[1, 2, 5, 6, 9, 11, 22].includes(activity.objType)">
+ {{activity.content}}
+ </span>
+ </span>
+ <span style="margin-top: 5px; font-size: 12px; font-weight: 400; color: #999999;">
+ 鎿嶄綔鍛�-{{activity.creatorName}}锛坽{activity.creatorType == 1 ? activity.companyName: "骞冲彴绔�"}}锛墈{activity.createDate}}
+ </span>
+ </div>
+ </el-timeline-item>
+ </el-timeline>
+ </div>
+ </div>
+ </div>
+ <InsuranceDetails ref="InsuranceDetails" @success="successEvent" />
+ <OperaInsuranceApplyCheckWindow ref="OperaInsuranceApplyCheckWindow" @success="successEvent" />
+ <!-- 浼佷笟鐢宠閫�鍥� -->
+ <applyReturn ref="applyReturn" @success="successEvent" />
+ <!-- 鏂板鎶曚繚 -->
+ <OperaInsuranceApply ref="OperaInsuranceApply" @success="successEvent" />
+ <!-- 鍔犲噺淇濈敵璇� -->
+ <additionSubtractionApplication ref="additionSubtractionApplication" @success="successEvent" />
+ <!-- 鏇存崲娲鹃仯鍗曚綅鐢宠 -->
+ <factoryChange ref="factoryChange" @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>
+
+ <!-- 淇敼鎵嬫満鍙� -->
+ <el-dialog
+ :title="signTitle"
+ :visible.sync="visiblePhone"
+ width="500px"
+ :modal="false"
+ :show-close="false"
+ :close-on-click-modal="false"
+ center>
+ <el-form :model="form" ref="form" :rules="rules">
+ <el-form-item label="鎵嬫満鍙�" prop="phone">
+ <el-input v-model="form.phone" placeholder="璇疯緭鍏�" disabled v-trim/>
+ </el-form-item>
+ <el-form-item label="楠岃瘉鐮�" prop="code">
+ <div style="width: 100%; display: flex; align-items: center;">
+ <el-input v-model="form.code" placeholder="璇疯緭鍏�" v-trim/>
+ <el-button type="primary" style="margin-left: 15px;" @click="send" v-if="num === 0">鍙戦�侀獙璇佺爜</el-button>
+ <el-button type="primary" style="margin-left: 15px;" v-else>{{num}}</el-button>
+ </div>
+ </el-form-item>
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="goSignDo()">纭� 瀹�</el-button>
+ <el-button @click="visiblePhone=false">鍙� 娑�</el-button>
+ </span>
+ </el-dialog>
+ </GlobalWindow>
+</template>
+
+<script>
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalWindow from '@/components/common/GlobalWindow'
+import InsuranceDetails from '@/components/business/InsuranceDetails'
+import OperaInsuranceApplyCheckWindow from '@/components/business/OperaInsuranceApplyCheckWindow'
+import additionSubtractionApplication from '@/components/enterprise/additionSubtractionApplication'
+import factoryChange from '@/components/enterprise/factoryChange'
+import operaverifyPhoneNumberWindew from '@/components/business/operaverifyPhoneNumberWindew'
+import OperaApplyChangeDetailWindow from '@/components/business/OperaApplyChangeDetailWindow'
+import OperaApplyChangeUnitDetailWindow from '@/components/business/OperaApplyChangeUnitDetailWindow'
+
+import applyReturn from '@/components/enterprise/applyReturn'
+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";
+
+export default {
+ name: 'OperaWtbApplyShopWindow',
+ extends: BaseOpera,
+ components: {
+ GlobalWindow,
+ InsuranceDetails,
+ OperaInsuranceApplyCheckWindow,
+ applyReturn,
+ OperaInsuranceApply,
+ additionSubtractionApplication,
+ factoryChange,
+ OperaApplyChangeDetailWindow,
+ OperaApplyChangeUnitDetailWindow,
+ operaverifyPhoneNumberWindew
+ },
+ data () {
+ return {
+ // 琛ㄥ崟鏁版嵁
+ dataId: null,
+ signTitle: '鎵嬫満鍙烽獙璇�',
+ model: {},
+ form: {
+ businessId: null,
+ phone: this.$store.state.userInfo.company.phone,
+ code: '',
+ type:0
+ },
+ rules: {
+ code: [
+ { required: true, message: '璇疯緭鍏ラ獙璇佺爜' }
+ ]
+ },
+ num: 0,
+ timer: null,
+ formInline: {
+ applyStatus: '',
+ duId: '',
+ workTypeId: '',
+ memberName: '',
+ end: [],
+ start: [],
+ endTimeE: '',
+ endTimeS: '',
+ startTimeE: '',
+ startTimeS: '',
+ type: ''
+ },
+ visible1: false,
+ visible2: false,
+ visible3: false,
+ visible4: false,
+ visible5: false,
+ visiblePhone: false,
+ reverse: false,
+ radio: 0,
+ activities: [],
+ tableData: [],
+ list: [],
+ list1: [],
+ list2: [],
+ dwList: [],
+ gzList: [],
+ activeName: '0',
+ total: 0,
+ currentPage: 1
+ }
+ },
+ created () {
+ this.config({
+ api: '/business/insuranceApply',
+ 'field.id': 'id'
+ })
+ },
+ computed: {
+ ...mapState(['userInfo'])
+ },
+ methods: {
+ open (title, target) {
+ this.visible = true
+ this.title = title
+ this.model = {}
+ this.dataId = null
+ this.dataId = target.id
+ this.form.businessId = target.id
+ this.formInline.applyStatus = ''
+ this.formInline.duId = ''
+ this.formInline.workTypeId = ''
+ this.formInline.memberName = ''
+ this.formInline.end = ''
+ this.formInline.start = ''
+ this.formInline.endTimeE = ''
+ this.formInline.endTimeS = ''
+ this.formInline.startTimeE = ''
+ this.formInline.startTimeS = ''
+ this.formInline.type = ''
+ this.activeName = '0'
+ this.getDetail()
+ this.getList()
+ this.getDW()
+ this.getGZ()
+ },
+ getSignLink (flag) {
+ if (flag === 0) {
+ this.signTitle = '绛剧讲鏂规纭涔�'
+ } else if (flag === 1) {
+ this.signTitle = '绛剧讲鐢宠鍗�'
+ } else if (flag === 2) {
+ this.signTitle = '绛剧讲鎶曚繚鍗�'
+ }
+ this.form.type = flag
+ this.visiblePhone = true
+ this.$nextTick(() => {
+ this.$refs.form.resetFields()
+ });
+ },
+ goSignDo(){
+ this.$refs.form.validate((valid) => {
+ if (!valid) {
+ return
+ }
+ this.isWorking = true
+ if(this.form.type===0){
+ getSignTBQRSLink(this.form).then(res => {
+ setTimeout(() => {
+ window.open(res)
+ }, 500)
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ } else if (flag === 1) {
+ getMemberListOnlineSignLink(this.form).then(res => {
+ setTimeout(() => {
+ window.open(res)
+ }, 500)
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ } else if (flag === 2) {
+ getSignLink(this.dataId).then(res => {
+ setTimeout(() => {
+ window.open(res)
+ }, 500)
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ }
+ })
+ },
+ send () {
+ sendSms({
+ phone: this.form1.phone
+ }).then(res => {
+ this.num = 60
+ this.setTime()
+ })
+ },
+ setTime () {
+ this.timer = setInterval(() => {
+ if (this.num === 0) {
+ clearInterval(this.timer)
+ this.timer = null
+ return
+ }
+ this.num = this.num - 1
+ }, 1000)
+ },
+ // 鍏抽棴璁㈠崟
+ closeOrder () {
+ this.$confirm('纭鍏抽棴姝よ鍗曞悧?', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ applyOpt({
+ applyId: this.dataId,
+ optType: 2
+ }).then(res => {
+ this.getDetail()
+ })
+ }).catch(() => {
+
+ })
+ },
+ // 娲鹃仯鍗曚綅
+ getDW () {
+ findListByDTO({ applyId: this.dataId })
+ .then(res => {
+ this.dwList = res
+ })
+ },
+ // 宸ョ
+ getGZ () {
+ worktypeFindListByDTO({
+ id: this.dataId,
+ queryType: 2
+ }).then(res => {
+ this.gzList = res
+ })
+ },
+ resetting () {
+ if (this.activeName === '0') {
+ this.formInline.applyStatus = '0'
+ } else {
+ this.formInline.applyStatus = ''
+ }
+ this.formInline.start = ''
+ this.formInline.startTimeE = ''
+ this.formInline.endTimeE = ''
+ this.list = []
+ this.list1 = []
+ this.list2 = []
+ this.formInline.duId = ''
+ this.formInline.workTypeId = ''
+ this.formInline.memberName = ''
+ this.formInline.end = []
+ this.formInline.end = []
+ this.formInline.endTimeE = ''
+ this.formInline.endTimeS = ''
+ this.formInline.startTimeE = ''
+ this.formInline.startTimeS = ''
+ this.search()
+ },
+ search () {
+ this.currentPage = 1
+ this.getList()
+ },
+ changeStart (e) {
+ if (e.length > 0) {
+ this.formInline.startTimeS = e[0]
+ this.formInline.startTimeE = e[1]
+ } else {
+ this.formInline.startTimeS = ''
+ this.formInline.startTimeE = ''
+ }
+ this.search()
+ },
+ changeEnd (e) {
+ if (e.length > 0) {
+ this.formInline.endTimeS = e[0]
+ this.formInline.endTimeE = e[1]
+ } else {
+ this.formInline.endTimeS = ''
+ this.formInline.endTimeE = ''
+ }
+ this.search()
+ },
+ exportExcel () {
+ if (this.activeName === '0') {
+ exportExcel({
+ capacity: 10,
+ page: this.currentPage,
+ model: {
+ solutionName: this.tableData[0].solutionsName,
+ applyId: this.dataId,
+ applyStatus: this.formInline.applyStatus,
+ duId: this.formInline.duId,
+ workTypeId: this.formInline.workTypeId,
+ memberName: this.formInline.memberName,
+ endTimeE: this.formInline.endTimeE,
+ endTimeS: this.formInline.endTimeS,
+ startTimeE: this.formInline.startTimeE,
+ startTimeS: this.formInline.startTimeS
+ }
+ }).then(response => {
+ this.download(response)
+ })
+ } else {
+ applyChagneDetailExcel({
+ capacity: 10,
+ page: this.currentPage,
+ model: {
+ applyId: this.dataId,
+ applyStatus: this.formInline.applyStatus,
+ duId: this.formInline.duId,
+ workTypeId: this.formInline.workTypeId,
+ memberName: this.formInline.memberName,
+ endTimeE: this.formInline.endTimeE,
+ endTimeS: this.formInline.endTimeS,
+ startTimeE: this.formInline.startTimeE,
+ startTimeS: this.formInline.startTimeS,
+ type: this.formInline.type
+ }
+ }).then(response => {
+ this.download(response)
+ })
+ }
+ },
+ getList () {
+ if (this.activeName === '0') {
+ applyDetailPage({
+ capacity: 10,
+ page: this.currentPage,
+ model: {
+ applyId: this.dataId,
+ applyStatus: this.formInline.applyStatus,
+ duId: this.formInline.duId,
+ workTypeId: this.formInline.workTypeId,
+ memberName: this.formInline.memberName,
+ endTimeE: this.formInline.endTimeE,
+ endTimeS: this.formInline.endTimeS,
+ startTimeE: this.formInline.startTimeE,
+ startTimeS: this.formInline.startTimeS
+ }
+ }).then(res => {
+ this.list = res.records
+ this.total = res.total
+ this.$nextTick(() => {
+ console.log(this.$refs.table)
+ if (this.$refs.table && this.$refs.table.doLayout) {
+ this.$refs.table.doLayout()
+ }
+ })
+ })
+ } else {
+ fetchList({
+ capacity: 10,
+ page: this.currentPage,
+ model: {
+ applyId: this.dataId,
+ status: this.formInline.applyStatus,
+ endTimeE: this.formInline.endTimeS,
+ endTimeS: this.formInline.startTimeS,
+ type: this.formInline.type
+ }
+ }).then(res => {
+ if (this.activeName === '1') {
+ this.list1 = res.records
+ } else if (this.activeName === '2') {
+ this.list2 = res.records
+ }
+ this.total = res.total
+ this.$nextTick(() => {
+ console.log(this.$refs.table)
+ if (this.$refs.table && this.$refs.table.doLayout) {
+ this.$refs.table.doLayout()
+ }
+ })
+ })
+ }
+ },
+ handleClick (e) {
+ this.activeName = e.index
+ if (e.index === '1') {
+ this.formInline.type = 0
+ } else if (e.index === '2') {
+ this.formInline.type = 1
+ }
+ this.resetting()
+ },
+ goSign () {
+ getSignLink(this.dataId).then(res => {
+ setTimeout(() => {
+ window.open(res)
+ }, 500)
+ }).catch(err => {
+ this.$tip.apiFailed(err)
+ })
+ },
+ viewToubaodan () {
+ if (this.model.toubaodanSignedFile && this.model.toubaodanSignedFile.fileurlFull) {
+ setTimeout(() => {
+ window.open(this.model.toubaodanSignedFile.fileurlFull)
+ }, 500)
+ } else if (this.model.toubaodanFile && this.model.toubaodanFile.fileurlFull) {
+ setTimeout(() => {
+ window.open(this.model.toubaodanFile.fileurlFull)
+ }, 500)
+ }
+ },
+ viewBaoxiandan () {
+ if (this.model.baoxiandanFile && this.model.baoxiandanFile.fileurlFull) {
+ window.open(this.model.baoxiandanFile.fileurlFull)
+ }
+ },
+ viewFanganshu () {
+ if (this.model.baoxiandanFile && this.model.baoxiandanFile.fileurlFull) {
+ window.open(this.model.baoxiandanFile.fileurlFull)
+ }
+ },
+ viewShenqingdan () {
+ if (this.model.baoxiandanFile && this.model.baoxiandanFile.fileurlFull) {
+ window.open(this.model.baoxiandanFile.fileurlFull)
+ }
+ },
+ handleSizeChange (val) {
+ console.log(val)
+ },
+ handleCurrentChange (val) {
+ console.log(val)
+ this.currentPage = val
+ this.getList()
+ },
+ onSubmit () {
+
+ },
+ getDetail () {
+ getDetail(this.dataId).then(res => {
+ this.model = res
+ this.tableData = new Array()
+ this.tableData.push(res)
+ console.log(this.tableData)
+ this.activities = res.applyLogList
+ }).catch(err => {
+ })
+ },
+ successEvent () {
+ // this.visible=false
+ this.getDetail()
+ this.$emit('success')
+ }
+ }
+}
+</script>
+<style scoped>
+ ::v-deep .el-tabs__item{
+ font-weight: 600;
+ }
+</style>
+<style lang="scss" scoped>
+ .form {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ flex-direction: column;
+ .form_span {
+ width: 100%;
+ display: flex;
+ align-items: start;
+ flex-direction: column;
+ margin-bottom: 20px;
+ span {
+ font-size: 14px;
+ &:nth-child(1) {
+ color: black;
+ margin-bottom: 5px;
+ }
+ &:nth-child(2) {
+ color: #8c939d;
+ }
+ }
+ }
+ .form_item {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ margin-bottom: 20px;
+ &:last-child {
+ margin: 0 !important;
+ }
+ .form_item_label {
+ flex-shrink: 0;
+ width: 170px;
+ color: black;
+ font-size: 14px;
+ span {
+ color: red;
+ font-size: 14px;
+ }
+ }
+ .form_item_val {
+ flex: 1;
+ /*height: 40px;*/
+ margin-left: 20px;
+ textarea {
+ width: 100%;
+ height: 70px;
+ border: 1px solid #cbcbcb;
+ padding: 10px;
+ outline: none;
+ box-sizing: border-box;
+ }
+ input {
+ width: 100%;
+ height: 40px;
+ outline: none;
+ border-radius: 5px;
+ border: 1px solid #cbcbcb;
+ padding: 0 20px;
+ box-sizing: border-box;
+ }
+ }
+ }
+ }
+ .desc {
+ width: 100%;
+ .desc_item {
+ width: 100%;
+ display: flex;
+ flex-direction: column;
+ .desc_item_label {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ margin-bottom: 10px;
+ span {
+ font-size: 14px;
+ color: black;
+ margin-right: 30px;
+ }
+ }
+ .desc_item_from {
+ width: 100%;
+ margin-bottom: 10px;
+ .desc_item_from_page {
+ width: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: end;
+ margin-top: 10px;
+ }
+ }
+ .desc_item_cate {
+ width: 100%;
+ margin-bottom: 10px;
+ }
+ .desc_item_search {
+ width: 100%;
+ margin-bottom: 20px;
+ }
+ .desc_item_review {
+ width: 100%;
+ .desc_item_review_label {
+ font-size: 20px;
+ color: black;
+ font-weight: bold;
+ margin-bottom: 15px;
+ }
+ }
+ }
+ }
+</style>
--
Gitblit v1.9.3