From 4efbd1e895f6983dcdfcca5c4ad7df7f49c26cab Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期二, 30 一月 2024 14:35:45 +0800
Subject: [PATCH] Mr.Shi

---
 company/src/api/business/insuranceApply.js                    |   25 ++
 company/src/components/business/OperaInsuranceApplyWindow.vue |  292 ++++++++++++++++++++-----
 company/src/views/enterprise/add_subtract.vue                 |  154 ++++++++++++++
 company/src/components/enterprise/add_subtractDetails.vue     |   34 +++
 company/src/views/enterprise/switchCourt.vue                  |  129 +++++++++++
 company/.env.development                                      |    6 
 6 files changed, 570 insertions(+), 70 deletions(-)

diff --git a/company/.env.development b/company/.env.development
index 4f05da6..bbd9546 100644
--- a/company/.env.development
+++ b/company/.env.development
@@ -1,10 +1,6 @@
 # 寮�鍙戠幆澧冮厤缃�
 NODE_ENV = 'development'
 
-# VUE_APP_API = 'http://192.168.0.104:10023/'
-
-#VUE_APP_API = 'http://192.168.0.134:10023/'
-#VUE_APP_API = 'http://localhost:10023/'
 # 浼佷笟绔�-浠佸悍
 VUE_APP_API = 'http://192.168.0.134:10025/'
 
@@ -13,6 +9,6 @@
 
 # VUE_APP_API = 'http://192.168.0.134:10023/'
 
-#VUE_APP_API = 'http://localhost:10023/'
+# VUE_APP_API = 'http://localhost:10023/'
 
 # VUE_APP_API = 'http://192.168.0.134:10023/'
diff --git a/company/src/api/business/insuranceApply.js b/company/src/api/business/insuranceApply.js
index 038246a..5044d3f 100644
--- a/company/src/api/business/insuranceApply.js
+++ b/company/src/api/business/insuranceApply.js
@@ -74,3 +74,28 @@
 export function updateData (data) {
     return request.post('/business/insuranceApply/updateData', data)
 }
+
+// 鍦ㄤ繚鍒嗛〉鏌ヨ
+export function applyDetailPage (data) {
+    return request.post('/business/applyDetail/page', data)
+}
+
+// 鍔犲噺銆佹崲鍦哄垎椤垫煡璇�
+export function applyChagneDetailPage (data) {
+    return request.post('/business/applyChagneDetail/page', data)
+}
+// 瀵煎嚭鍦ㄤ繚浜哄憳璇﹀崟Excel
+export function exportExcel (data) {
+    return request.post('/business/applyDetail/exportExcel', data, {
+        trim: true,
+        download: true
+    })
+}
+
+// 瀵煎嚭Excel
+export function applyChagneDetailExcel (data) {
+    return request.post('/business/applyChagneDetail/exportExcel', data, {
+        trim: true,
+        download: true
+    })
+}
diff --git a/company/src/components/business/OperaInsuranceApplyWindow.vue b/company/src/components/business/OperaInsuranceApplyWindow.vue
index 37a6fca..c71c349 100644
--- a/company/src/components/business/OperaInsuranceApplyWindow.vue
+++ b/company/src/components/business/OperaInsuranceApplyWindow.vue
@@ -44,7 +44,7 @@
                         border
                         style="width: 100%">
                         <el-table-column
-                            prop="code"
+                            prop="applyCode"
                             align="center"
                             label="淇濆崟鍙�">
                         </el-table-column>
@@ -88,62 +88,77 @@
                 </div>
                 <div class="desc_item_cate">
                     <el-tabs v-model="activeName" @tab-click="handleClick">
-                        <el-tab-pane label="鍦ㄤ繚浜哄憳" name="first"></el-tab-pane>
-                        <el-tab-pane label="鍔�/鍑忎繚璁板綍" name="second"></el-tab-pane>
-                        <el-tab-pane label="鎹㈠巶璁板綍" name="third"></el-tab-pane>
+                        <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" class="demo-form-inline">
-                        <el-form-item label="鍦ㄤ繚鐘舵��" prop="region">
-                            <el-select v-model="formInline.region" placeholder="璇烽�夋嫨">
+                    <el-form :inline="true" :model="formInline" ref="sou" class="demo-form-inline">
+                        <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="region">
-                            <el-select v-model="formInline.region" placeholder="璇烽�夋嫨">
-                                <el-option label="淇濋殰涓�" value="1"></el-option>
-                                <el-option label="涓嶅湪淇�" value="2"></el-option>
+                        <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="region">
-                            <el-select v-model="formInline.region" placeholder="璇烽�夋嫨">
-                                <el-option label="淇濋殰涓�" value="1"></el-option>
-                                <el-option label="涓嶅湪淇�" value="2"></el-option>
+                        <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="user">
-                            <el-input v-model="formInline.user" placeholder="璇疯緭鍏�"></el-input>
+                        <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="user">
+                        <el-form-item label="淇濋櫓鐢熸晥璧锋湡" prop="end">
                             <el-date-picker
-                                v-model="formInline.user"
+                                @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="user">
+                        <el-form-item label="淇濋櫓鐢熸晥姝㈡湡" prop="start">
                             <el-date-picker
-                                v-model="formInline.user"
+                                @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>
                         <section>
-                            <el-button type="primary" @click="onSubmit">鏌ヨ</el-button>
-                            <el-button>閲嶇疆</el-button>
-                            <el-button type="primary">瀵煎嚭鍚嶅崟</el-button>
+                            <el-button type="primary" @click="search">鏌ヨ</el-button>
+                            <el-button @click="resetting">閲嶇疆</el-button>
+                            <el-button type="primary" @click="exportExcel">瀵煎嚭鍚嶅崟</el-button>
                         </section>
                     </el-form>
                 </div>
                 <div class="desc_item_from">
                     <el-table
-                        :data="tableData"
+                        :data="list"
                         border
                         style="width: 100%">
                         <el-table-column label="搴忓彿">
@@ -152,48 +167,48 @@
                             </template>
                         </el-table-column>
                         <el-table-column
-                            prop="date"
+                            prop="memberName"
                             label="鍛樺伐濮撳悕">
                         </el-table-column>
                         <el-table-column
-                            prop="name"
-                            label="鎬у埆"
-                            width="180">
+                            label="鎬у埆">
+                            <template slot-scope="{row}">
+                                <span v-if="row.sex === 0">鐢�</span>
+                                <span v-else>濂�</span>
+                            </template>
                         </el-table-column>
                         <el-table-column
-                            prop="address"
+                            prop="idcardNo"
                             label="韬唤璇佸彿">
                         </el-table-column>
                         <el-table-column
-                            prop="address"
+                            prop="duName"
                             label="娲鹃仯鍗曚綅">
                         </el-table-column>
                         <el-table-column
-                            prop="address"
+                            prop="workTypeName"
                             label="鎵�灞炲伐绉�">
                         </el-table-column>
                         <el-table-column
-                            prop="address"
+                            prop="startTime"
                             label="淇濋櫓鐢熸晥璧锋湡">
                         </el-table-column>
                         <el-table-column
-                            prop="address"
+                            prop="endTime"
                             label="淇濋櫓鐢熸晥姝㈡湡">
                         </el-table-column>
                         <el-table-column
-                            prop="address"
+                            prop="fee"
                             label="浜х敓璐圭敤锛堝厓锛�">
                         </el-table-column>
                     </el-table>
                     <div class="desc_item_from_page">
                         <el-pagination
-                            @size-change="handleSizeChange"
                             @current-change="handleCurrentChange"
                             :current-page="currentPage"
-                            :page-sizes="[100, 200, 300, 400]"
-                            :page-size="100"
-                            layout="total, sizes, prev, pager, next, jumper"
-                            :total="400">
+                            :page-size="10"
+                            layout="total, prev, pager, next, jumper"
+                            :total="total">
                         </el-pagination>
                     </div>
                 </div>
@@ -226,10 +241,12 @@
 import OperaInsuranceApplyCheckWindow from '@/components/business/OperaInsuranceApplyCheckWindow'
 
 import applyReturn from '@/components/enterprise/applyReturn'
-import {getDetail, getSignLink} from "@/api/business/insuranceApply";
+import { getDetail, getSignLink, applyDetailPage, applyChagneDetailPage, exportExcel, applyChagneDetailExcel } from "@/api/business/insuranceApply";
+import { findListByDTO } from "@/api/business/dispatchUnit";
+import { findListByDTO as worktypeFindListByDTO } from "@/api/business/worktype";
 import OperaInsuranceApply from '@/components/enterprise/OperaInsuranceApplyWindow'
 import { mapState } from 'vuex'
-import {all as solutionAll} from "@/api/business/solutions";
+
 export default {
   name: 'OperaInsuranceApplyWindow',
   extends: BaseOpera,
@@ -247,8 +264,17 @@
       rules: {
       },
       formInline: {
-          user: '',
-          region: ''
+          applyStatus: '',
+          duId: '',
+          workTypeId: '',
+          memberName: '',
+          end: [],
+          start: [],
+          endTimeE: '',
+          endTimeS: '',
+          startTimeE: '',
+          startTimeS: '',
+          types: ''
       },
       visible1: false,
       visible2: false,
@@ -257,21 +283,13 @@
       visible5: false,
       reverse: true,
       radio: 0,
-      fileList: [
-          {name: 'food.pdf', url: 'https://fuss10.elemecdn.com/3/63/4e7f3a15429bfda99bce42a18cdd1jpeg.jpeg?imageMogr2/thumbnail/360x360/format/webp/quality/100'}
-      ],
-      activities: [{
-          content: '娲诲姩鎸夋湡寮�濮�',
-          timestamp: '2018-04-15'
-      }, {
-          content: '閫氳繃瀹℃牳',
-          timestamp: '2018-04-13'
-      }, {
-          content: '鍒涘缓鎴愬姛',
-          timestamp: '2018-04-11'
-      }],
+      activities: [],
       tableData: [],
-      activeName: 'first',
+        list: [],
+        dwList: [],
+        gzList: [],
+      activeName: '0',
+        total: 0,
       currentPage: 1
     }
   },
@@ -290,13 +308,155 @@
         this.title = title
         this.dataId = target.id
         this.getDetail()
+        this.getList()
+        this.getDW()
+        this.getGZ()
      },
+      // 娲鹃仯鍗曚綅
+      getDW() {
+          findListByDTO({ applyId: this.dataId })
+            .then(res => {
+                this.dwList = res
+            })
+      },
+      // 宸ョ
+      getGZ() {
+          worktypeFindListByDTO({
+              id: this.dataId,
+              queryType: 2
+          }).then(res => {
+              this.gzList = res
+          })
+      },
+      resetting() {
+            this.formInline.end = []
+            this.formInline.end = []
+            this.formInline.endTimeE = ''
+            this.formInline.endTimeS = ''
+            this.formInline.startTimeE = ''
+            this.formInline.startTimeS = ''
+            this.$refs.sou.resetFields();
+            this.search()
+      },
+      search() {
+          this.currentPage = 1
+          this.getList()
+      },
+      changeStart(e) {
+            if (e.length > 0) {
+                this.formInline.startTimeE = e[0]
+                this.formInline.startTimeS = e[1]
+            } else {
+                this.formInline.startTimeE = ''
+                this.formInline.startTimeS = ''
+            }
+            this.search()
+      },
+      changeEnd(e) {
+         if (e.length > 0) {
+             this.formInline.endTimeE = e[0]
+             this.formInline.endTimeS = e[1]
+         } else {
+             this.formInline.endTimeE = ''
+             this.formInline.endTimeS = ''
+         }
+          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,
+                      types: this.formInline.types
+                  }
+              }).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
+             })
+         } else {
+             applyChagneDetailPage({
+                 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,
+                     types: this.formInline.types
+                 }
+             }).then(res => {
+                 this.list = res.records
+                 this.total = res.total
+             })
+         }
+      },
       handleClick(e) {
-         console.log(e)
+        this.activeName = e.index
+          if (e.index === '1') {
+            this.formInline.types = [0, 1]
+          } else if (e.index === '2') {
+            this.formInline.types = [2]
+          }
+          this.resetting()
       },
     goSign(){
       getSignLink(this.dataId).then(res => {
-          window.open(res)
+        window.open(res)
       }).catch(err => {
        this.$tip.apiFailed(err)
       })
@@ -313,11 +473,13 @@
         window.open(this.model.baoxiandanFile.fileurlFull)
       }
     },
-    handleSizeChange(){
-
+    handleSizeChange(val){
+        console.log(val)
     },
-    handleCurrentChange(){
-
+    handleCurrentChange(val){
+        console.log(val)
+        this.page = val
+        this.getList()
     },
     onSubmit(){
 
@@ -328,7 +490,7 @@
         this.tableData = new Array()
         this.tableData.push(res)
         console.log(this.tableData)
-        this.activities=res.applyLogList
+        this.activities = res.applyLogList
       }).catch(err => {
       })
     },
diff --git a/company/src/components/enterprise/add_subtractDetails.vue b/company/src/components/enterprise/add_subtractDetails.vue
new file mode 100644
index 0000000..1591b4e
--- /dev/null
+++ b/company/src/components/enterprise/add_subtractDetails.vue
@@ -0,0 +1,34 @@
+<template>
+    <GlobalWindow
+        :title="title"
+        :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: 'add_subtractDetails',
+        extends: BaseOpera,
+        components: { GlobalWindow },
+        data () {
+            return {
+                // 琛ㄥ崟鏁版嵁
+                form: {
+                    id: null
+                }
+            }
+        },
+        created () {
+            this.config({
+                api: '/business/applyChange',
+                'field.id': 'id'
+            })
+        }
+    }
+</script>
diff --git a/company/src/views/enterprise/add_subtract.vue b/company/src/views/enterprise/add_subtract.vue
new file mode 100644
index 0000000..8a89ddc
--- /dev/null
+++ b/company/src/views/enterprise/add_subtract.vue
@@ -0,0 +1,154 @@
+<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="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="2"></el-option>
+                    <el-option label="宸插叧闂�" value="3"></el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="淇濋櫓鏂规" prop="solutionsId">
+                <el-select v-model="searchForm.solutionsId" placeholder="璇烽�夋嫨" @change="search">
+                    <el-option
+                        v-for="item in list"
+                        :key="item.id"
+                        :label="item.name"
+                        :value="item.id">
+                    </el-option>
+                </el-select>
+            </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:applychange:create']">
+                <li><el-button type="primary" @click="$refs.operaApplyChangeWindow.open('鍔犲噺淇濊鎯�')" v-permissions="['business:applychange: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 v-if="row.status === 0">寰呯缃�</span>
+                        <span v-if="row.status === 1">宸茬绔�</span>
+                        <span v-if="row.status === 2">宸蹭笂浼犳壒鍗�</span>
+                        <span v-if="row.status === 3">閫�鍥炵敵璇�</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="code" label="鎶曚繚浼佷笟" min-width="100px"></el-table-column>
+                <el-table-column prop="code" label="鍏宠仈淇濆崟鍙�" min-width="100px"></el-table-column>
+                <el-table-column prop="code" label="淇濋櫓鏂规" min-width="100px"></el-table-column>
+                <el-table-column prop="code" label="鍔犱繚浜烘暟锛堜汉锛�" min-width="100px"></el-table-column>
+                <el-table-column prop="code" label="鍑忎繚浜烘暟锛堜汉锛�" min-width="100px"></el-table-column>
+                <el-table-column prop="code" 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.operaApplyChangeWindow.open('鍔犲噺淇濊鎯�', row)">鏌ョ湅璇︽儏</el-button>
+                    </template>
+                </el-table-column>
+            </el-table>
+            <pagination
+                @size-change="handleSizeChange"
+                @current-change="handlePageChange"
+                :pagination="tableData.pagination"
+            >
+            </pagination>
+        </template>
+        <!-- 璇︽儏 -->
+        <add_subtractDetails ref="add_subtractDetails" @success="handlePageChange"/>
+    </TableLayout>
+</template>
+
+<script>
+    import BaseTable from '@/components/base/BaseTable'
+    import TableLayout from '@/layouts/TableLayout'
+    import Pagination from '@/components/common/Pagination'
+    import add_subtractDetails from '@/components/enterprise/add_subtractDetails'
+    import { all } from '@/api/business/solutions'
+    export default {
+        name: 'add_subtract',
+        extends: BaseTable,
+        components: { TableLayout, Pagination, add_subtractDetails },
+        data () {
+            return {
+                // 鎼滅储
+                searchForm: {
+                    status: '',
+                    type: '0',
+                    solutionsId: '',
+                    createDateE: '',
+                    createDateS: '',
+                    time: []
+                },
+                list: []
+            }
+        },
+        created () {
+            this.config({
+                module: '鍔犲噺淇濇崲鍘傜敵璇蜂俊鎭〃',
+                api: '/business/applyChange',
+                'field.id': 'id',
+                'field.main': 'id'
+            })
+            this.search()
+            this.getAll()
+        },
+        methods: {
+            getAll() {
+                all()
+                    .then(res => {
+                        this.list = res
+                    })
+            },
+            changeTime(e) {
+                if (e.length > 0) {
+                    this.searchForm.createDateS = e[0]
+                    this.searchForm.createDateE = e[1]
+                } else {
+                    this.searchForm.createDateS = ''
+                    this.searchForm.createDateE = ''
+                }
+                this.search()
+            },
+            reset() {
+                this.searchForm.createDateS = ''
+                this.searchForm.createDateE = ''
+                this.searchForm.time = []
+                this.$refs.searchForm.resetFields();
+                this.search()
+            }
+        }
+    }
+</script>
diff --git a/company/src/views/enterprise/switchCourt.vue b/company/src/views/enterprise/switchCourt.vue
new file mode 100644
index 0000000..5d645ee
--- /dev/null
+++ b/company/src/views/enterprise/switchCourt.vue
@@ -0,0 +1,129 @@
+<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="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-select>
+            </el-form-item>
+            <el-form-item label="鎶曚繚浼佷笟" prop="status">
+                <el-select v-model="searchForm.status" placeholder="璇烽�夋嫨">
+                    <el-option
+                            v-for="item in options"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="淇濋櫓鏂规" prop="status">
+                <el-select v-model="searchForm.status" placeholder="璇烽�夋嫨">
+                    <el-option
+                            v-for="item in options"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="鎻愪氦鏃ユ湡" prop="status">
+                <el-date-picker
+                        v-model="searchForm.status"
+                        type="daterange"
+                        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>
+                <el-button @click="$refs.add_subtractDetails.open('鍔犲噺淇濊鎯�')">鏌ョ湅璇︽儏</el-button>
+            </section>
+        </el-form>
+        <!-- 琛ㄦ牸鍜屽垎椤� -->
+        <template v-slot:table-wrap>
+            <ul class="toolbar" v-permissions="['business:applychange:create']">
+                <li><el-button type="primary" @click="$refs.operaApplyChangeWindow.open('鍔犲噺淇濊鎯�')" v-permissions="['business:applychange: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 v-if="row.status === 0">寰呯缃�</span>
+                        <span v-if="row.status === 1">宸茬绔�</span>
+                        <span v-if="row.status === 2">宸蹭笂浼犳壒鍗�</span>
+                        <span v-if="row.status === 3">閫�鍥炵敵璇�</span>
+                    </template>
+                </el-table-column>
+                <el-table-column prop="code" label="鎶曚繚浼佷笟" min-width="100px"></el-table-column>
+                <el-table-column prop="code" label="鍏宠仈淇濆崟鍙�" min-width="100px"></el-table-column>
+                <el-table-column prop="code" label="淇濋櫓鏂规" min-width="100px"></el-table-column>
+                <el-table-column prop="code" label="鍔犱繚浜烘暟锛堜汉锛�" min-width="100px"></el-table-column>
+                <el-table-column prop="code" label="鍑忎繚浜烘暟锛堜汉锛�" min-width="100px"></el-table-column>
+                <el-table-column prop="code" 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.operaApplyChangeWindow.open('鍔犲噺淇濊鎯�', row)">鏌ョ湅璇︽儏</el-button>
+                    </template>
+                </el-table-column>
+            </el-table>
+            <pagination
+                    @size-change="handleSizeChange"
+                    @current-change="handlePageChange"
+                    :pagination="tableData.pagination"
+            >
+            </pagination>
+        </template>
+        <!-- 璇︽儏 -->
+        <add_subtractDetails ref="add_subtractDetails" @success="handlePageChange"/>
+    </TableLayout>
+</template>
+
+<script>
+    import BaseTable from '@/components/base/BaseTable'
+    import TableLayout from '@/layouts/TableLayout'
+    import Pagination from '@/components/common/Pagination'
+    import add_subtractDetails from '@/components/enterprise/add_subtractDetails'
+    export default {
+        name: 'switchCourt',
+        extends: BaseTable,
+        components: { TableLayout, Pagination, add_subtractDetails },
+        data () {
+            return {
+                // 鎼滅储
+                searchForm: {
+                    status: '',
+                    type: ''
+                },
+                options: []
+            }
+        },
+        created () {
+            this.config({
+                module: '鍔犲噺淇濇崲鍘傜敵璇蜂俊鎭〃',
+                api: '/business/applyChange',
+                'field.id': 'id',
+                'field.main': 'id'
+            })
+            this.search()
+        }
+    }
+</script>

--
Gitblit v1.9.3