From 32851bc502dd5ef69c3077fd6c206bb4b82d5689 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期一, 01 四月 2024 09:05:15 +0800
Subject: [PATCH] mrshi

---
 company/src/views/business/unionChange.vue                    |  134 ++++
 company/src/views/business/unionApply.vue                     |  148 ++++
 company/src/components/business/detailsEntrustedInsurance.vue |  899 +++++++++++++++++++++++++++++
 company/src/components/business/employeeList.vue              |   46 +
 company/src/components/business/selectApplicationForm.vue     |  109 +++
 company/src/api/business/unionChange.js                       |   23 
 company/.env.developmentShop                                  |    6 
 company/src/components/business/add_subtract_entrust.vue      |  178 +++++
 company/src/api/business/unionApply.js                        |   23 
 company/src/views/business/insuranceApplyShop.vue             |   12 
 company/src/components/business/OpearaUnionApply.vue          |  249 ++++++++
 11 files changed, 1,818 insertions(+), 9 deletions(-)

diff --git a/company/.env.developmentShop b/company/.env.developmentShop
index 9ea5a62..9bc8762 100644
--- a/company/.env.developmentShop
+++ b/company/.env.developmentShop
@@ -9,10 +9,10 @@
 # VUE_APP_API = 'https://dmtest.ahapp.net/yyb_web_api/'
 
 # 骞冲彴绔�-浠佸悍
-# VUE_APP_API = 'http://192.168.0.186:10030/'
-VUE_APP_API = 'https://dmtest.ahapp.net/yyb_admin_api/'
+VUE_APP_API = 'http://192.168.0.132:10031/'
+# VUE_APP_API = 'https://dmtest.ahapp.net/yyb_admin_api/'
 
 # 骞冲彴绔�-钀嶅
 # VUE_APP_API = 'http://192.168.0.105:10023/'
 
-VUE_APP_API = 'http://localhost:10031/'
+# VUE_APP_API = 'http://localhost:10031/'
diff --git a/company/src/api/business/unionApply.js b/company/src/api/business/unionApply.js
new file mode 100644
index 0000000..cb10f1a
--- /dev/null
+++ b/company/src/api/business/unionApply.js
@@ -0,0 +1,23 @@
+import request from '../../utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+    return request.post('/business/unionApply/page', data, {
+        trim: true
+    })
+}
+
+// 鍒涘缓
+export function create (data) {
+    return request.post('/business/unionApply/create', data)
+}
+
+// 淇敼
+export function updateById (data) {
+    return request.post('/business/unionApply/updateById', data)
+}
+
+// 鏍规嵁ID鏌ヨ
+export function getById (id) {
+    return request.get(`/business/unionApply/${id}`)
+}
diff --git a/company/src/api/business/unionChange.js b/company/src/api/business/unionChange.js
new file mode 100644
index 0000000..687ef00
--- /dev/null
+++ b/company/src/api/business/unionChange.js
@@ -0,0 +1,23 @@
+import request from '../../utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+    return request.post('/business/unionChange/page', data, {
+        trim: true
+    })
+}
+
+// 鍒涘缓
+export function create (data) {
+    return request.post('/business/unionChange/create', data)
+}
+
+// 淇敼
+export function updateById (data) {
+    return request.post('/business/unionChange/updateById', data)
+}
+
+// 鏍规嵁ID鏌ヨ
+export function getById (id) {
+    return request.get(`/business/unionChange/${id}`)
+}
diff --git a/company/src/components/business/OpearaUnionApply.vue b/company/src/components/business/OpearaUnionApply.vue
new file mode 100644
index 0000000..915a281
--- /dev/null
+++ b/company/src/components/business/OpearaUnionApply.vue
@@ -0,0 +1,249 @@
+<template>
+    <GlobalWindow
+        :title="title"
+        width="100%"
+        text="鎶曚繚鐢宠"
+        :visible.sync="visible"
+        :confirm-working="isWorking"
+        @confirm="confirm"
+    >
+        <div class="list">
+            <el-form :inline="true" ref="form" :model="form" :rules="rules" class="demo-form-inline">
+                <el-form-item label="淇濋櫓鏂规" prop="solutionsId">
+                    <el-select v-model="form.solutionsId" @change="selectSolutions" placeholder="璇烽�夋嫨">
+                        <el-option
+                            v-for="item in solutions"
+                            :key="item.baseId"
+                            :label="item.name"
+                            :value="item.baseId">
+                        </el-option>
+                    </el-select>
+                </el-form-item>
+                <el-form-item label="淇濋櫓鐢熸晥璧锋鏈�" prop="applyStartTime">
+                    <div style="display: flex; flex-direction: column;">
+                        <el-date-picker
+                            @change="changeTime"
+                            v-model="time"
+                            type="daterange"
+                            value-format="yyyy-MM-dd HH:mm:ss"
+                            format="yyyy-MM-dd HH:mm:ss"
+                            range-separator="鑷�"
+                            start-placeholder="寮�濮嬫棩鏈�"
+                            end-placeholder="缁撴潫鏃ユ湡" />
+                        <span style="color: #F95601; font-size: 14px;">锛堟鏃ョ敓鏁堟姇淇濊浜�17:30鍓嶆彁浜わ紝瓒呮椂鎻愪氦浠ヤ繚闄╁崟涓哄噯锛�</span>
+                    </div>
+                </el-form-item>
+                <el-form-item label="璐圭敤" v-if="item">
+                    <span>{{item.price}}鍏�</span>
+                    <span v-if="item.timeUnit === 0">/澶�</span>
+                    <span v-if="item.timeUnit === 1">/鍗婃湀</span>
+                    <span v-if="item.timeUnit === 2">/鏈�</span>
+                    <span v-if="item.timeUnit === 3">/骞�</span>
+                    <span>/浜�</span>
+                </el-form-item>
+                <el-form-item label="鎶曚繚骞撮緞" v-if="item">
+                    <span>{{item.minAge}} 鑷� {{item.maxAge}}</span>
+                </el-form-item>
+            </el-form>
+        </div>
+        <div class="btns">
+            <div class="btns_item">
+                <el-button type="primary" @click="selectApplicationForm">閫夋嫨鐢宠鍗�</el-button>
+                <el-button type="primary" @click="$refs.employeeList.open('鎶曚繚鍛樺伐鍚嶅崟')">鏌ョ湅鍚嶅崟</el-button>
+            </div>
+        </div>
+        <el-table
+            :data="list"
+            border
+            ref="multipleTable"
+            style="width: 100%;margin-bottom: 15px;">
+            <el-table-column
+                type="selection"
+                width="55">
+            </el-table-column>
+            <el-table-column label="搴忓彿" width="80px">
+                <template slot-scope="scope">
+                    <span>{{scope.$index + 1}}</span>
+                </template>
+            </el-table-column>
+            <el-table-column
+                prop="memberName"
+                label="琚繚闄╀汉">
+            </el-table-column>
+            <el-table-column
+                prop="idCard"
+                label="鏈熸湜淇濋櫓鐢熸晥璧锋湡">
+            </el-table-column>
+            <el-table-column
+                prop="oldDuName"
+                label="鏈熸湜淇濋櫓鐢熸晥姝㈡湡">
+            </el-table-column>
+            <el-table-column
+                prop="oldWorkTypeName"
+                label="鎶曚繚浜烘暟">
+            </el-table-column>
+            <el-table-column
+                prop="duName"
+                label="鎬昏垂鐢�">
+            </el-table-column>
+            <el-table-column
+                label="鎿嶄綔">
+                <template slot-scope="scope">
+                    <el-button type="text" @click="$refs.employeeList.open('鎶曚繚鍛樺伐鍚嶅崟')">鏌ョ湅鍚嶅崟</el-button>
+                    <el-button type="text" style="color: #ff0000;">鍒犻櫎</el-button>
+                </template>
+            </el-table-column>
+        </el-table>
+        <div class="info" v-if="item">
+            <span v-if="item.specialAgreement">{{item.specialAgreement}}</span>
+            <span v-if="item.specialInfo">{{item.specialInfo}}</span>
+            <span v-if="item.ortherInfo">{{item.ortherInfo}}</span>
+        </div>
+        <!--    閫夋嫨鐢宠鍗�    -->
+        <selectApplicationForm ref="selectApplicationForm" @success="getValue" />
+        <!--    鎶曚繚鍛樺伐鍚嶅崟    -->
+        <employeeList ref="employeeList" />
+    </GlobalWindow>
+</template>
+
+<script>
+    import BaseOpera from '@/components/base/BaseOpera'
+    import GlobalWindow from '@/components/common/GlobalWindow'
+    import selectApplicationForm from '@/components/business/selectApplicationForm'
+    import employeeList from '@/components/business/employeeList'
+    import { all } from '@/api/business/solutions'
+    export default {
+        name: 'factoryChange',
+        extends: BaseOpera,
+        components: { GlobalWindow, selectApplicationForm, employeeList },
+        data () {
+            return {
+                form: {
+                    id: null,
+                    solutionsId: '',
+                    applyStartTime: '',
+                    applyEndTime: ''
+                },
+                solutions: [],
+                list: [],
+                endTime: '',
+                item: null,
+                time: [],
+                // 楠岃瘉瑙勫垯
+                rules: {
+                    applyStartTime: [
+                        { required: true, message: '璇烽�夋嫨淇濋櫓鐢熸晥璧锋湡' }
+                    ],
+                    solutionsName: [
+                        { required: true, message: '璇烽�夋嫨淇濋櫓鏂规' }
+                    ]
+                }
+            }
+        },
+        created () {
+            this.config({
+                api: '/business/insuranceApply',
+                'field.id': 'id'
+            })
+        },
+        methods: {
+            confirm() {
+                this.$confirm('纭鎻愪氦锛岃浠旂粏鏍稿淇℃伅銆�', '鎻愮ず', {
+                    confirmButtonText: '纭畾',
+                    cancelButtonText: '鍙栨秷',
+                    type: 'warning',
+                    center: true
+                }).then(() => {
+                    this.$message({
+                        type: 'success',
+                        message: '纭畾!'
+                    });
+                }).catch(() => {
+                    this.$message({
+                        type: 'info',
+                        message: '鍙栨秷'
+                    });
+                });
+            },
+            getValue(e) {
+                console.log(e)
+            },
+            selectApplicationForm() {
+                if (!this.form.solutionsId) return this.$message.warning('璇峰厛閫夋嫨淇濋櫓鏂规')
+                this.$refs.selectApplicationForm.open('閫夋嫨鐢宠鍗�', this.form.solutionsId)
+            },
+            changeTime(e) {
+                if (e.length > 0) {
+                    this.form.applyStartTime = e[0]
+                    this.form.applyEndTime = e[1]
+                } else {
+                    this.form.applyStartTime = ''
+                    this.form.applyEndTime = ''
+                }
+            },
+            open (title, target) {
+                this.getSolutions()
+                this.title = title
+                if (target) {
+                    this.$nextTick(() => {
+                        this.$refs.form.resetFields()
+                    })
+                } else {
+                    this.$nextTick(() => {
+                        this.$refs.form.resetFields()
+                        this.form[this.configData['field.id']] = null
+                    })
+                }
+                this.visible = true
+            },
+            // 鏌ヨ鍏ㄩ儴鏂规
+            getSolutions() {
+                all({})
+                    .then(res => {
+                        this.solutions = res
+                    })
+            },
+            // 閫夋嫨淇濋櫓鍗�
+            selectSolutions(id) {
+                this.solutions.forEach(item => {
+                    if (item.id === id) {
+                        this.item = item
+                    }
+                })
+            }
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    .list {
+        width: 100%;
+    }
+    .btns {
+        width: 100%;
+        margin-bottom: 15px;
+        display: flex;
+        align-items: center;
+        justify-content: space-between;
+        .btns_item {
+            display: flex;
+            align-items: center;
+        }
+    }
+    .submit {
+        width: 100%;
+        display: flex;
+        align-items: center;
+        justify-content: center;
+        margin-bottom: 15px;
+    }
+    .desc_item_cate {
+        width: 100%;
+        margin-bottom: 10px;
+    }
+    .info {
+        width: 100%;
+        font-size: 14px;
+        color: black;
+    }
+</style>
diff --git a/company/src/components/business/add_subtract_entrust.vue b/company/src/components/business/add_subtract_entrust.vue
new file mode 100644
index 0000000..be9471f
--- /dev/null
+++ b/company/src/components/business/add_subtract_entrust.vue
@@ -0,0 +1,178 @@
+<template>
+    <GlobalWindow
+        :title="title"
+        width="100%"
+        text="鎶曚繚鐢宠"
+        :visible.sync="visible"
+        :confirm-working="isWorking"
+        @confirm="confirm"
+    >
+        <div class="list">
+            <el-form :inline="true" ref="form" :model="form" :rules="rules" class="demo-form-inline">
+                <el-form-item label="淇濋櫓鏂规">
+
+                </el-form-item>
+                <el-form-item label="鎵瑰崟鐢熸晥璧锋湡" prop="applyStartTime">
+                    <div style="display: flex; flex-direction: column;">
+                        <el-date-picker
+                            v-model="form.applyStartTime"
+                            type="date"
+                            value-format="yyyy-MM-dd HH:mm:ss"
+                            format="yyyy-MM-dd HH:mm:ss"
+                            placeholder="閫夋嫨鏃ユ湡" />
+                        <span style="color: #F95601; font-size: 14px;">锛堟鏃ョ敓鏁堟姇淇濊浜�17:30鍓嶆彁浜わ紝瓒呮椂鎻愪氦浠ヤ繚闄╁崟涓哄噯锛�</span>
+                    </div>
+                </el-form-item>
+                <el-form-item label="璐圭敤" v-if="item">
+                    <span>{{item.price}}鍏�</span>
+                    <span v-if="item.timeUnit === 0">/澶�</span>
+                    <span v-if="item.timeUnit === 1">/鍗婃湀</span>
+                    <span v-if="item.timeUnit === 2">/鏈�</span>
+                    <span v-if="item.timeUnit === 3">/骞�</span>
+                    <span>/浜�</span>
+                </el-form-item>
+                <el-form-item label="鎶曚繚骞撮緞" v-if="item">
+                    <span>{{item.minAge}} 鑷� {{item.maxAge}}</span>
+                </el-form-item>
+            </el-form>
+        </div>
+        <div class="btns">
+            <div class="btns_item">
+                <el-button type="primary" @click="selectApplicationForm">閫夋嫨鐢宠鍗�</el-button>
+                <el-button type="primary" @click="$refs.employeeList.open('鎶曚繚鍛樺伐鍚嶅崟')">鏌ョ湅鍚嶅崟</el-button>
+            </div>
+        </div>
+        <el-table
+            :data="list"
+            border
+            ref="multipleTable"
+            style="width: 100%;margin-bottom: 15px;">
+            <el-table-column
+                type="selection"
+                width="55">
+            </el-table-column>
+            <el-table-column label="搴忓彿" width="80px">
+                <template slot-scope="scope">
+                    <span>{{scope.$index + 1}}</span>
+                </template>
+            </el-table-column>
+            <el-table-column
+                prop="memberName"
+                label="琚繚闄╀汉">
+            </el-table-column>
+            <el-table-column
+                prop="idCard"
+                label="鏈熸湜淇濋櫓鐢熸晥璧锋湡">
+            </el-table-column>
+            <el-table-column
+                prop="oldDuName"
+                label="鏈熸湜淇濋櫓鐢熸晥姝㈡湡">
+            </el-table-column>
+            <el-table-column
+                prop="oldWorkTypeName"
+                label="鎶曚繚浜烘暟">
+            </el-table-column>
+            <el-table-column
+                prop="duName"
+                label="鎬昏垂鐢�">
+            </el-table-column>
+            <el-table-column
+                label="鎿嶄綔">
+                <template slot-scope="scope">
+                    <el-button type="text" @click="$refs.employeeList.open('鎶曚繚鍛樺伐鍚嶅崟')">鏌ョ湅鍚嶅崟</el-button>
+                    <el-button type="text" style="color: #ff0000;">鍒犻櫎</el-button>
+                </template>
+            </el-table-column>
+        </el-table>
+        <div class="info" v-if="item">
+            <span v-if="item.specialAgreement">{{item.specialAgreement}}</span>
+            <span v-if="item.specialInfo">{{item.specialInfo}}</span>
+            <span v-if="item.ortherInfo">{{item.ortherInfo}}</span>
+        </div>
+    </GlobalWindow>
+</template>
+
+<script>
+    import BaseOpera from '@/components/base/BaseOpera'
+    import GlobalWindow from '@/components/common/GlobalWindow'
+    export default {
+        name: 'add_subtract_entrust',
+        extends: BaseOpera,
+        components: { GlobalWindow },
+        data () {
+            return {
+                form: {
+                    id: null,
+                    solutionsId: '',
+                    applyStartTime: ''
+                },
+                list: [],
+                item: null,
+                // 楠岃瘉瑙勫垯
+                rules: {
+                    applyStartTime: [
+                        { required: true, message: '璇烽�夋嫨淇濋櫓鐢熸晥璧锋湡' }
+                    ],
+                    solutionsName: [
+                        { required: true, message: '璇烽�夋嫨淇濋櫓鏂规' }
+                    ]
+                }
+            }
+        },
+        created () {
+            this.config({
+                api: '/business/insuranceApply',
+                'field.id': 'id'
+            })
+        },
+        methods: {
+            open (title, target) {
+                this.title = title
+                if (target) {
+                    this.$nextTick(() => {
+                        this.$refs.form.resetFields()
+                    })
+                } else {
+                    this.$nextTick(() => {
+                        this.$refs.form.resetFields()
+                        this.form[this.configData['field.id']] = null
+                    })
+                }
+                this.visible = true
+            }
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    .list {
+        width: 100%;
+    }
+    .btns {
+        width: 100%;
+        margin-bottom: 15px;
+        display: flex;
+        align-items: center;
+        justify-content: space-between;
+        .btns_item {
+            display: flex;
+            align-items: center;
+        }
+    }
+    .submit {
+        width: 100%;
+        display: flex;
+        align-items: center;
+        justify-content: center;
+        margin-bottom: 15px;
+    }
+    .desc_item_cate {
+        width: 100%;
+        margin-bottom: 10px;
+    }
+    .info {
+        width: 100%;
+        font-size: 14px;
+        color: black;
+    }
+</style>
diff --git a/company/src/components/business/detailsEntrustedInsurance.vue b/company/src/components/business/detailsEntrustedInsurance.vue
new file mode 100644
index 0000000..d5b26b8
--- /dev/null
+++ b/company/src/components/business/detailsEntrustedInsurance.vue
@@ -0,0 +1,899 @@
+<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="[0, 2, 3, 10].includes(model.status)" type="danger" @click="$refs.applyReturn.open('鐢宠閫�鍥�', {id: dataId})">鐢宠閫�鍥�</el-button>
+                            <el-button v-if="model.status == 4" type="primary" @click="$refs.OperaInsuranceApply.open('鎶曚繚鐢宠', {id: dataId})">鍐嶆鎶曚繚</el-button>
+                            <el-button v-if="model.status == 4" type="primary" @click="closeOrder">鍏抽棴璁㈠崟</el-button>
+                            <el-button type="primary" @click="$refs.InsuranceDetails.open('鎶曚繚璇︽儏鍗�',model,0)">瀵煎嚭璇﹀崟</el-button>
+                            <el-button v-if="[2, 3, 5, 7, 8].includes(model.status)" type="primary" @click="viewToubaodan">鏌ョ湅鎶曚繚鍗�</el-button>
+                            <el-button v-if="model.status == 5" type="primary" @click="viewBaoxiandan">鏌ョ湅淇濋櫓鍗�</el-button>
+                            <!--                          goSign-->
+                            <el-button v-if="model.status == 2" type="primary" @click="$refs.operaverifyPhoneNumberWindew.open('楠岃瘉鎵嬫満鍙�')">绛剧讲鎶曚繚鍗�</el-button>
+                        </template>
+                        <template v-else>
+                            <el-button type="primary" @click="$refs.InsuranceDetails.open('鎶曚繚璇︽儏鍗�',model,0)">瀵煎嚭璇﹀崟</el-button>
+                            <el-button v-if="[2, 3, 5, 7, 8].includes(model.status)" type="primary" @click="viewToubaodan">鏌ョ湅鎶曚繚鍗�</el-button>
+                            <el-button v-if="model.status == 5" type="primary" @click="viewBaoxiandan">鏌ョ湅淇濋櫓鍗�</el-button>
+                            <el-button v-if="[2,10].includes(model.status) && model.solutionType ==0" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('涓婁紶鎶曚繚鍗�',model,2)">涓婁紶鎶曚繚鍗�</el-button>
+                            <el-button v-if="model.status == 3 && model.solutionType ==0" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('涓婁紶淇濋櫓鍗�',model,3)">涓婁紶淇濋櫓鍗�</el-button>
+                            <el-button  v-if="[6,7,8,11].includes(model.status) && model.solutionType ==0" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('椹冲洖閫�鍥炵敵璇�',model,5)">椹冲洖閫�鍥炵敵璇�</el-button>
+                            <el-button v-if="model.status == 0 && model.solutionType ==0" type="primary" @click="$refs.InsuranceDetails.open('鎶曚繚瀹℃牳',model,1)">鎶曚繚瀹℃牳</el-button>
+                            <el-button v-if="![1,4,,5].includes(model.status) && model.solutionType ==0" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('閫�鍥炴姇淇�',model,1)">閫�鍥炴姇淇�</el-button>
+                            <el-button v-if="model.status == 5  && model.solutionType ==0" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('淇敼淇濋櫓鍗�',model,4)">淇敼淇濋櫓鍗�</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>
+    </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, applyChagneDetailPage, exportExcel, applyChagneDetailExcel, applyOpt } 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'
+
+    export default {
+        name: 'detailsEntrustedInsurance',
+        extends: BaseOpera,
+        components: {
+            GlobalWindow,
+            InsuranceDetails,
+            OperaInsuranceApplyCheckWindow,
+            applyReturn,
+            OperaInsuranceApply,
+            additionSubtractionApplication,
+            factoryChange,
+            OperaApplyChangeDetailWindow,
+            OperaApplyChangeUnitDetailWindow,
+            operaverifyPhoneNumberWindew
+        },
+        data () {
+            return {
+                // 琛ㄥ崟鏁版嵁
+                dataId:null,
+                model: {},
+                form: {
+                    id: null,
+                    editDate: ''
+                },
+                // 楠岃瘉瑙勫垯
+                rules: {
+                },
+                formInline: {
+                    applyStatus: '',
+                    duId: '',
+                    workTypeId: '',
+                    memberName: '',
+                    end: [],
+                    start: [],
+                    endTimeE: '',
+                    endTimeS: '',
+                    startTimeE: '',
+                    startTimeS: '',
+                    type: ''
+                },
+                visible1: false,
+                visible2: false,
+                visible3: false,
+                visible4: false,
+                visible5: 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.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()
+            },
+            // 鍏抽棴璁㈠崟
+            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)
+                }
+            },
+            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>
diff --git a/company/src/components/business/employeeList.vue b/company/src/components/business/employeeList.vue
new file mode 100644
index 0000000..0dca1d9
--- /dev/null
+++ b/company/src/components/business/employeeList.vue
@@ -0,0 +1,46 @@
+<template>
+    <GlobalWindow
+        :title="title"
+        width="100%"
+        :visible.sync="visible"
+        :confirm-working="isWorking"
+        @confirm="confirm"
+    >
+
+    </GlobalWindow>
+</template>
+
+<script>
+    import BaseOpera from '@/components/base/BaseOpera'
+    import GlobalWindow from '@/components/common/GlobalWindow'
+    export default {
+        name: 'employeeList',
+        extends: BaseOpera,
+        components: { GlobalWindow },
+        data () {
+            return {
+                solution: [],
+                list: []
+            }
+        },
+        created () {
+            this.config({
+                api: '/business/dispatchUnit',
+                'field.id': 'id'
+            })
+        },
+        methods: {
+            open (title) {
+                this.list = []
+                this.title = title
+                this.visible = true
+            }
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    .el-checkbox::v-deep {
+        display: none;
+    }
+</style>
diff --git a/company/src/components/business/selectApplicationForm.vue b/company/src/components/business/selectApplicationForm.vue
new file mode 100644
index 0000000..e8c69a4
--- /dev/null
+++ b/company/src/components/business/selectApplicationForm.vue
@@ -0,0 +1,109 @@
+<template>
+    <GlobalWindow
+        :title="title"
+        width="100%"
+        :visible.sync="visible"
+        :confirm-working="isWorking"
+        @confirm="confirm"
+    >
+        <el-table
+            :data="list"
+            border
+            ref="table"
+            @selection-change="handleSelectionChange"
+            style="width: 100%">
+            <el-table-column
+                type="selection"
+                width="55">
+            </el-table-column>
+            <el-table-column label="搴忓彿" width="80px">
+                <template slot-scope="scope">
+                    <span>{{scope.$index + 1}}</span>
+                </template>
+            </el-table-column>
+            <el-table-column
+                prop="solutionName"
+                label="淇濋櫓鏂规">
+            </el-table-column>
+            <el-table-column
+                prop="bdCode"
+                label="淇濆崟鍙�">
+            </el-table-column>
+            <el-table-column
+                prop="pdCode"
+                label="鎵瑰崟鍙�">
+            </el-table-column>
+            <el-table-column
+                prop="duName"
+                label="娲鹃仯鍗曚綅">
+            </el-table-column>
+            <el-table-column
+                prop="worktypeName"
+                label="鎵�灞炲伐绉�">
+            </el-table-column>
+        </el-table>
+    </GlobalWindow>
+</template>
+
+<script>
+    import BaseOpera from '@/components/base/BaseOpera'
+    import GlobalWindow from '@/components/common/GlobalWindow'
+    import { fetchList } from '@/api/business/insuranceApply'
+    export default {
+        name: 'selectSolutions',
+        extends: BaseOpera,
+        components: { GlobalWindow },
+        data () {
+            return {
+                baseSolutionId: null,
+                list: [],
+                seleData: []
+            }
+        },
+        created () {
+            this.config({
+                api: '/business/dispatchUnit',
+                'field.id': 'id'
+            })
+        },
+        methods: {
+            open (title, id) {
+                this.list = []
+                this.baseSolutionId = id
+                this.title = title
+                this.visible = true
+                this.getList()
+            },
+            confirm() {
+                this.$emit('success', this.seleData[0])
+                this.visible = false
+            },
+            handleSelectionChange (rows) {
+                if (rows.length > 1) {
+                    this.$refs.table.clearSelection()
+                    this.$refs.table.toggleRowSelection(rows.pop())
+                }
+                this.seleData = rows
+                console.log(this.seleData)
+            },
+            getList() {
+                fetchList({
+                    capacity: 10,
+                    page: 1,
+                    model: {
+                        baseSolutionId: this.baseSolutionId,
+                        status: 23
+                    }
+                }).then(res => {
+                    this.list = res
+                })
+            }
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    .el-checkbox::v-deep {
+        display: none;
+    }
+</style>
diff --git a/company/src/views/business/insuranceApplyShop.vue b/company/src/views/business/insuranceApplyShop.vue
index 4b46513..6b641ff 100644
--- a/company/src/views/business/insuranceApplyShop.vue
+++ b/company/src/views/business/insuranceApplyShop.vue
@@ -6,12 +6,12 @@
                 <el-select v-model="searchForm.statusCollect" placeholder="璇烽�夋嫨" @keypress.enter.native="search">
                     <el-option label="寰呭鏍�" value="0"></el-option>
                     <el-option label="寰呭嚭鍗�" value="1"></el-option>
-                  <el-option label="寰呯缃�" value="7"></el-option>
-                  <el-option label="淇濋殰涓�" value="2"></el-option>
-                  <el-option label="宸茶繃鏈�" value="3"></el-option>
-                  <el-option label="宸查��鍥�" value="4"></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="2"></el-option>
+                    <el-option label="宸茶繃鏈�" value="3"></el-option>
+                    <el-option label="宸查��鍥�" value="4"></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="companyId">
diff --git a/company/src/views/business/unionApply.vue b/company/src/views/business/unionApply.vue
new file mode 100644
index 0000000..23a90fc
--- /dev/null
+++ b/company/src/views/business/unionApply.vue
@@ -0,0 +1,148 @@
+<template>
+    <TableLayout :permissions="['business:insuranceapply:query']">
+        <!-- 鎼滅储琛ㄥ崟 -->
+        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
+            <el-form-item label="淇濆崟鐘舵��" prop="status">
+                <el-select v-model="searchForm.status" placeholder="璇烽�夋嫨" @keypress.enter.native="search">
+                    <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="4"></el-option>
+                    <el-option label="宸查��鍥�" value="5"></el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="淇濋櫓鏂规" prop="solutionId">
+                <el-select v-model="searchForm.solutionId" placeholder="璇烽�夋嫨" @change="search">
+                    <el-option
+                        v-for="item in solutionList"
+                        :key="item.baseId"
+                        :label="item.name"
+                        :value="item.baseId">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="鎻愪氦鏃ユ湡" prop="time">
+                <el-date-picker
+                    v-model="searchForm.time"
+                    @change="changeTime"
+                    type="daterange"
+                    range-separator="鑷�"
+                    value-format="yyyy-MM-dd"
+                    start-placeholder="寮�濮嬫棩鏈�"
+                    end-placeholder="缁撴潫鏃ユ湡">
+                </el-date-picker>
+            </el-form-item>
+            <section>
+                <el-button type="primary" @click="search">鎼滅储</el-button>
+                <el-button @click="reset">閲嶇疆</el-button>
+            </section>
+        </el-form>
+        <!-- 琛ㄦ牸鍜屽垎椤� -->
+        <template v-slot:table-wrap>
+            <ul class="toolbar" v-permissions="['business:insurance:create']">
+                <li><el-button type="primary" @click="$refs.OpearaUnionApply.open('鎶曚繚璇︽儏', row)" v-permissions="['business:insurance:create']">鎻愪氦鐢宠</el-button></li>
+            </ul>
+            <el-table
+                v-loading="isWorking.search"
+                :data="tableData.list"
+                stripe
+            >
+                <el-table-column label="搴忓彿" width="80px">
+                    <template slot-scope="scope">
+                        <span>{{scope.$index + 1}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="statusInfo" label="鐘舵��" min-width="100px">
+                    <template slot-scope="{row}">
+                        <span :class="'apply-status'+row.status" >{{row.statusInfo}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="solutionsName" label="淇濋櫓鏂规" min-width="100px"></el-table-column>
+                <el-table-column prop="insureNum" label="鎶曚繚浜烘暟" min-width="100px"></el-table-column>
+                <el-table-column prop="fee" label="鎬昏垂鐢紙鍏冿級" min-width="100px"></el-table-column>
+                <el-table-column prop="createDate" label="鎻愪氦鏃堕棿" min-width="100px"></el-table-column>
+                <el-table-column
+                    v-if="containPermissions(['business:insuranceapply:update', 'business:insuranceapply:delete'])"
+                    label="鎿嶄綔"
+                    min-width="120"
+                    fixed="right"
+                >
+                    <template slot-scope="{row}">
+                        <el-button type="text" icon="el-icon-edit" @click="$refs.detailsEntrustedInsurance.open('濮旀墭鎶曚繚璇︽儏', row)" v-permissions="['business:insuranceapply:update']">鏌ョ湅璇︽儏</el-button>
+                    </template>
+                </el-table-column>
+            </el-table>
+            <pagination
+                @size-change="handleSizeChange"
+                @current-change="handlePageChange"
+                :pagination="tableData.pagination"
+            >
+            </pagination>
+        </template>
+        <!-- 鏂板缓/淇敼 -->
+        <OpearaUnionApply ref="OpearaUnionApply" @success="handlePageChange"/>
+        <!-- 璇︽儏 -->
+        <detailsEntrustedInsurance ref="detailsEntrustedInsurance" />
+    </TableLayout>
+</template>
+
+<script>
+    import BaseTable from '@/components/base/BaseTable'
+    import TableLayout from '@/layouts/TableLayout'
+    import Pagination from '@/components/common/Pagination'
+    import { all as solutionAll } from '@/api/business/solutions'
+    import OpearaUnionApply from '@/components/business/OpearaUnionApply'
+    import detailsEntrustedInsurance from '@/components/business/detailsEntrustedInsurance'
+    export default {
+        name: 'unionApply',
+        extends: BaseTable,
+        components: { TableLayout, Pagination, OpearaUnionApply, detailsEntrustedInsurance },
+        data () {
+            return {
+                // 鎼滅储
+                searchForm: {
+                    queryStartTime: '',
+                    queryEndTime: '',
+                    solutionId: '',
+                    status: '',
+                    time: []
+                },
+                solutionList: []
+            }
+        },
+        created () {
+            this.config({
+                module: '濮旀墭鎶曚繚瀹℃牳淇℃伅琛�',
+                api: '/business/unionApply',
+                'field.id': 'id',
+                'field.main': 'id'
+            })
+            this.search()
+        },
+        methods:{
+            // 鎼滅储妗嗛噸缃�
+            reset () {
+                this.$refs.searchForm.resetFields()
+                this.searchForm.queryStartTime = ''
+                this.searchForm.queryEndTime = ''
+                this.search()
+            },
+            changeTime(e) {
+                if (e.length > 0) {
+                    this.searchForm.queryStartTime = e[0]
+                    this.searchForm.queryEndTime = e[1]
+                } else {
+                    this.searchForm.queryStartTime = ''
+                    this.searchForm.queryEndTime = ''
+                }
+                this.search()
+            },
+            loadSelectList() {
+                solutionAll({dataType:2}).then(res => {
+                    this.solutionList = res
+                }).catch(err => {
+                })
+            }
+        }
+    }
+</script>
diff --git a/company/src/views/business/unionChange.vue b/company/src/views/business/unionChange.vue
new file mode 100644
index 0000000..ef9fd4c
--- /dev/null
+++ b/company/src/views/business/unionChange.vue
@@ -0,0 +1,134 @@
+<template>
+    <TableLayout :permissions="['business:applychange:query']">
+        <!-- 鎼滅储琛ㄥ崟 -->
+        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
+            <el-form-item label="淇濆崟鐘舵��" prop="status">
+                <el-select v-model="searchForm.status" placeholder="璇烽�夋嫨" @change="search">
+                    <el-option label="鍏ㄩ儴" value=""></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="4"></el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="淇濋櫓鏂规" prop="solutionName">
+                <el-input v-model="searchForm.solutionName" placeholder="璇疯緭鍏�" @keypress.enter.native="search"></el-input>
+            </el-form-item>
+            <el-form-item label="鎻愪氦鏃ユ湡" prop="status">
+                <el-date-picker
+                    @change="changeTime"
+                    v-model="searchForm.time"
+                    type="daterange"
+                    value-format="yyyy-MM-dd"
+                    range-separator="鑷�"
+                    start-placeholder="寮�濮嬫棩鏈�"
+                    end-placeholder="缁撴潫鏃ユ湡">
+                </el-date-picker>
+            </el-form-item>
+            <section>
+                <el-button type="primary" @click="search">鎼滅储</el-button>
+                <el-button @click="reset">閲嶇疆</el-button>
+            </section>
+        </el-form>
+        <!-- 琛ㄦ牸鍜屽垎椤� -->
+        <template v-slot:table-wrap>
+            <ul class="toolbar" v-permissions="['business:insurance:create']">
+                <li><el-button type="primary" @click="$refs.add_subtract_entrust.open('鍔犲噺淇濈敵璇�')" v-permissions="['business:insurance:create']">鎻愪氦鐢宠</el-button></li>
+            </ul>
+            <el-table
+                v-loading="isWorking.search"
+                :data="tableData.list"
+                stripe
+            >
+                <el-table-column label="搴忓彿" width="80px">
+                    <template slot-scope="scope">
+                        <span>{{scope.$index + 1}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="status" label="淇濆崟鐘舵��" min-width="100px">
+                    <template slot-scope="{row}">
+                        <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>
+                        <span :class="'change-status'+row.status" v-if="row.status === 4">宸查��鍥�</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="applyCode" label="鍏宠仈淇濆崟鍙�" min-width="100px"></el-table-column>
+                <el-table-column prop="solutionsName" label="淇濋櫓鏂规" min-width="100px"></el-table-column>
+                <el-table-column prop="addNum" label="鍔犱繚浜烘暟锛堜汉锛�" min-width="100px"></el-table-column>
+                <el-table-column prop="delNum" label="鍑忎繚浜烘暟锛堜汉锛�" min-width="100px"></el-table-column>
+                <el-table-column prop="createDate" label="鎻愪氦鏃堕棿" min-width="100px"></el-table-column>
+                <el-table-column
+                    label="鎿嶄綔"
+                    min-width="120"
+                    fixed="right"
+                >
+                    <template slot-scope="{row}">
+                        <el-button type="text" @click="$refs.OperaApplyChangeDetailWindow.open('鍔犲噺淇濊鎯�', row)">鏌ョ湅璇︽儏</el-button>
+                    </template>
+                </el-table-column>
+            </el-table>
+            <pagination
+                @size-change="handleSizeChange"
+                @current-change="handlePageChange"
+                :pagination="tableData.pagination"
+            >
+            </pagination>
+        </template>
+        <!--    鎻愪氦鐢宠    -->
+        <add_subtract_entrust ref="add_subtract_entrust" />
+    </TableLayout>
+</template>
+
+<script>
+    import BaseTable from '@/components/base/BaseTable'
+    import TableLayout from '@/layouts/TableLayout'
+    import Pagination from '@/components/common/Pagination'
+    import add_subtract_entrust from '@/components/business/add_subtract_entrust'
+    export default {
+        name: 'unionChange',
+        extends: BaseTable,
+        components: { TableLayout, Pagination, add_subtract_entrust },
+        data () {
+            return {
+                // 鎼滅储
+                searchForm: {
+                    status: '',
+                    type: '0',
+                    solutionName: '',
+                    queryStartTime: '',
+                    queryEndTime: '',
+                    time: []
+                }
+            }
+        },
+        created () {
+            this.config({
+                module: '鍔犲噺淇濇崲鍘傚悎骞跺崟淇℃伅琛�',
+                api: '/business/unionChange',
+                'field.id': 'id',
+                'field.main': 'id'
+            })
+            this.search()
+        },
+        methods: {
+            changeTime(e) {
+                if (e.length > 0) {
+                    this.searchForm.queryStartTime = e[0]
+                    this.searchForm.queryEndTime = e[1]
+                } else {
+                    this.searchForm.queryStartTime = ''
+                    this.searchForm.queryEndTime = ''
+                }
+                this.search()
+            },
+            reset() {
+                this.searchForm.queryStartTime = ''
+                this.searchForm.queryEndTime = ''
+                this.searchForm.time = []
+                this.$refs.searchForm.resetFields();
+                this.search()
+            }
+        }
+    }
+</script>

--
Gitblit v1.9.3