From 7617ab95d74747e8fa784b207dcfcf7c77393a94 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期日, 04 二月 2024 14:36:54 +0800
Subject: [PATCH] Mr.Shi

---
 company/src/components/common/GlobalWindow.vue                   |    2 
 company/src/components/enterprise/directInvoicingApplication.vue |  395 ++++++++++++++++++++++++++
 company/src/views/enterprise/directInvoicing.vue                 |   42 --
 company/src/api/business/taxes.js                                |   12 
 company/src/components/enterprise/entrustmentHistory.vue         |   59 +++
 company/src/assets/style/variables.scss                          |    2 
 company/src/components/enterprise/directInsuranceDetails.vue     |  363 ++++++++++++++++++++++++
 company/.env.development                                         |    4 
 8 files changed, 837 insertions(+), 42 deletions(-)

diff --git a/company/.env.development b/company/.env.development
index ae6d1e8..ae9fca5 100644
--- a/company/.env.development
+++ b/company/.env.development
@@ -2,13 +2,13 @@
 NODE_ENV = 'development'
 
 # 浼佷笟绔�-浠佸悍
-#VUE_APP_API = 'http://192.168.0.134:10025/'
+VUE_APP_API = 'http://192.168.0.134:10025/'
 
 # 骞冲彴绔�-浠佸悍
 # VUE_APP_API = 'http://192.168.0.134:10023/'
 
 # 骞冲彴绔�-钀嶅
- VUE_APP_API = 'http://192.168.0.103:10023/'
+# VUE_APP_API = 'http://192.168.0.103:10023/'
 
 # VUE_APP_API = 'http://localhost:10023/'
 # VUE_APP_API = 'http://localhost:10023/'
diff --git a/company/src/api/business/taxes.js b/company/src/api/business/taxes.js
index 5d47b66..953bfb7 100644
--- a/company/src/api/business/taxes.js
+++ b/company/src/api/business/taxes.js
@@ -27,3 +27,15 @@
         trim: true
     })
 }
+
+// 鑾峰彇鐩翠繚鏁版嵁淇℃伅
+export function getDirectTaxes (id) {
+    return request.get(`/business/taxes/getDirectTaxes?id=${id}`)
+}
+
+// 鎻愪氦鐩存墭鎶曟姤寮�绁�
+export function directInvoicing(data) {
+    return request.post('/business/taxes/directInvoicing', data, {
+        trim: true
+    })
+}
diff --git a/company/src/assets/style/variables.scss b/company/src/assets/style/variables.scss
index d982769..b7a84b0 100644
--- a/company/src/assets/style/variables.scss
+++ b/company/src/assets/style/variables.scss
@@ -10,7 +10,7 @@
 // 澶撮儴楂樺害
 $header-height: 60px;
 // 鑿滃崟瀹藉害
-$menu-width: 208px;
+$menu-width: 250px;
 // 椤甸潰鏈�灏忓搴�
 $page-min-width: 1000px;
 
diff --git a/company/src/components/common/GlobalWindow.vue b/company/src/components/common/GlobalWindow.vue
index f973e7c..298b468 100644
--- a/company/src/components/common/GlobalWindow.vue
+++ b/company/src/components/common/GlobalWindow.vue
@@ -78,7 +78,7 @@
 $input-height: 32px;
 .global-window {
   top: 80px !important;
-  left: 218px !important;
+  left: 250px !important;
   // 澶撮儴鏍囬
   ::v-deep .el-drawer__header {
     padding: 0 10px 0 0;
diff --git a/company/src/components/enterprise/directInsuranceDetails.vue b/company/src/components/enterprise/directInsuranceDetails.vue
new file mode 100644
index 0000000..d6ac55c
--- /dev/null
+++ b/company/src/components/enterprise/directInsuranceDetails.vue
@@ -0,0 +1,363 @@
+<template>
+    <GlobalWindow
+            :title="title"
+            width="100%"
+            :visible.sync="visible"
+            :confirm-working="isWorking"
+            @confirm="confirm"
+    >
+        <div class="info">
+            <div class="info_list">
+                <div class="info_list_item">
+                    <div class="info_list_item_label">寮�绁ㄥ悕绉帮細</div>
+                    <div class="info_list_item_val">{{userInfo.company.name}}</div>
+                </div>
+                <div class="info_list_item">
+                    <div class="info_list_item_label">绾崇◣浜鸿瘑鍒彿锛�</div>
+                    <div class="info_list_item_val">{{userInfo.company.code}}</div>
+                </div>
+                <div class="info_list_item">
+                    <div class="info_list_item_label">寮�鎴疯锛�</div>
+                    <div class="info_list_item_val">{{userInfo.company.taxBank}}</div>
+                </div>
+                <div class="info_list_item">
+                    <div class="info_list_item_label">璐﹀彿锛�</div>
+                    <div class="info_list_item_val">
+                        {{userInfo.company.taxAccount}}
+                    </div>
+                </div>
+                <div class="info_list_item" style="width: 100%;">
+                    <div class="info_list_item_label">鍦板潃銆佺數璇濓細</div>
+                    <div class="info_list_item_val">{{userInfo.company.invoiceAddr}} {{userInfo.company.phone}}</div>
+                </div>
+                <div class="info_list_item" style="width: 100%;">
+                    <div class="info_list_item_label">寮�绁ㄩ噾棰濓細</div>
+                    <div class="info_list_item_val" style="color:rgba(249, 86, 1, 0.996078431372549);">{{totalPrice}}</div>
+                </div>
+                <div class="list" style="width: 100%;" v-if="form.type === 0">
+                    <div class="list_label">
+                        鎺ユ敹鏂瑰紡锛氱數瀛愬彂绁�
+                    </div>
+                    <div class="list_val">
+                        <div class="list_val_label">鎺ユ敹鍦板潃锛�</div>
+                        <div class="list_val_info">{{form.addr}}</div>
+                    </div>
+                </div>
+                <div class="list" style="width: 100%;" v-else>
+                    <div class="list_label">
+                        鎺ユ敹鏂瑰紡锛氱焊璐ㄥ彂绁�
+                    </div>
+                    <div class="list_val">
+                        <div class="list_val_label">鎺ユ敹鍦板潃锛�</div>
+                        <div class="list_val_info">{{form.addr}}</div>
+                    </div>
+                </div>
+            </div>
+            <!--      鍔犲噺淇�      -->
+            <el-table
+                :data="list1"
+                border
+                show-summary
+                :summary-method="getSummaries1"
+                style="width: 100%; margin-bottom: 20px;">
+                <el-table-column
+                    label="搴忓彿"
+                    align="center"
+                    width="80">
+                    <template slot-scope="scope">
+                        <span>{{scope.$index + 1}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    prop="solutionName"
+                    label="淇濋櫓鏂规">
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    prop="applyCode"
+                    label="淇濆崟鍙�">
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    label="閲戦">
+                    <template slot-scope="{row}">
+                        <span style="color:rgba(249, 86, 1, 0.996078431372549);">{{row.totalFee}}</span>
+                    </template>
+                </el-table-column>
+            </el-table>
+            <!--      鍐茬孩鍗�      -->
+            <el-table
+                :data="list2"
+                border
+                show-summary
+                :summary-method="getSummaries2"
+                style="width: 100%; margin-bottom: 20px;">
+                <el-table-column
+                    label="鍐茬孩鍗�"
+                    align="center"
+                    width="80">
+                    <template slot-scope="scope">
+                        <span>{{scope.$index + 1}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    prop="solutionsName"
+                    label="淇濋櫓鏂规">
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    prop="downCode"
+                    label="鍙戠エ鍙�">
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    prop="createTime"
+                    label="鐢宠寮�绁ㄦ椂闂�">
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    label="閲戦">
+                    <template slot-scope="{row}">
+                        <span style="color:rgba(249, 86, 1, 0.996078431372549);">{{row.totalFee}}</span>
+                    </template>
+                </el-table-column>
+            </el-table>
+        </div>
+        <template v-slot:footer>
+            <el-button @click="close">杩斿洖</el-button>
+        </template>
+    </GlobalWindow>
+</template>
+
+<script>
+    import BaseOpera from '@/components/base/BaseOpera'
+    import GlobalWindow from '@/components/common/GlobalWindow'
+    import { getDetail } from '@/api/business/taxes'
+    import { mapState } from 'vuex'
+    export default {
+        name: 'directInsuranceDetails',
+        extends: BaseOpera,
+        components: { GlobalWindow },
+        data () {
+            return {
+                list1: [],
+                list2: [],
+                totalPrice: 0,
+                form: {
+                    id: null,
+                    type: '',
+                    addr: ''
+                }
+            }
+        },
+        created () {
+            this.config({
+                api: '/business/taxes',
+                'field.id': 'id'
+            })
+        },
+        computed: {
+            ...mapState(['userInfo'])
+        },
+        methods: {
+            open (title, target) {
+                this.title = title
+                this.visible = true
+                this.list1 = []
+                this.list2 = []
+                this.$nextTick(() => {
+                    for (const key in this.form) {
+                        this.form[key] = target[key]
+                    }
+                    this.getData()
+                })
+            },
+            close () {
+                this.visible = false
+            },
+            getData() {
+                getDetail(this.form.id)
+                    .then(res => {
+                        let price = 0
+                        this.list1 = res.applyList
+                        this.list2 = res.delTaxList
+                        if (this.list1 && this.list1.length > 0) {
+                            this.list1.forEach(item => {
+                                price += item.totalFee
+                            })
+                        }
+                        if (this.list2 && this.list2.length > 0) {
+                            this.list2.forEach(row => {
+                                price += row.totalFee
+                            })
+                        }
+                        this.totalPrice = price
+                    })
+            },
+            getSummaries1 (param) {
+                const { columns, data } = param
+                const sums = []
+                columns.forEach((column, index) => {
+                    if (index === 0) {
+                        sums[index] = '鍚堣'
+                    } else if (index == 4) {
+                        let price = 0
+                        data.forEach(item => {
+                            price += item.totalFee
+                        })
+                        sums[index] = price
+                    }
+                })
+                return sums;
+            },
+            getSummaries2 (param) {
+                const { columns, data } = param
+                const sums = []
+                columns.forEach((column, index) => {
+                    if (index === 0) {
+                        sums[index] = '鍚堣'
+                    } else if (index == 5) {
+                        let price = 0
+                        data.forEach(item => {
+                            price += item.totalFee
+                        })
+                        sums[index] = price
+                    }
+                })
+                return sums;
+            }
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    ::v-deep .el-table__footer-wrapper tbody td {
+        cursor: pointer;
+        text-align: center;
+        &:nth-child(5) {
+            color:rgba(249, 86, 1, 0.996078431372549);
+        }
+    }
+    .red {
+        color: red;
+    }
+    .info {
+        width: 100%;
+        .info_label {
+            width: 100%;
+            display: flex;
+            align-items: center;
+            justify-content: space-between;
+            margin-bottom: 20px;
+            span {
+                font-size: 14px;
+                font-weight: 500;
+                color: #000000;
+            }
+        }
+        .info_list {
+            width: 100%;
+            display: flex;
+            align-items: left;
+            flex-wrap: wrap;
+            .list::v-deep {
+                width: 100%;
+                display: flex;
+                align-items: center;
+                justify-content: space-between;
+                margin-bottom: 15px;
+                .el-radio__label {
+                    color: black;
+                    font-size: 14px;
+                }
+                .list_label {
+                    color: black;
+                    font-size: 14px;
+                    margin-right: 20px;
+                }
+                .list_val {
+                    flex: 1;
+                    display: flex;
+                    align-items: center;
+                    .list_val_label {
+                        font-size: 14px;
+                        color: black;
+                        flex-shrink: 0;
+                        margin-right: 15px;
+                    }
+                    .list_val_info {
+                        flex: 1;
+                        font-size: 14px;
+                        color: black;
+                    }
+                }
+            }
+            .info_list_item {
+                width: 50%;
+                display: flex;
+                align-items: start;
+                font-size: 14px;
+                margin-bottom: 20px;
+                .info_list_item_label {
+                    width: 150px;
+                    flex-shrink: 0;
+                }
+                .info_list_item_val {
+                    flex: 1;
+                    display: flex;
+                    align-items: center;
+                    .image {
+                        width: 100px;
+                        height: 100px;
+                        display: flex;
+                        align-items: center;
+                        justify-content: center;
+                        overflow: hidden;
+                        img {
+                            width: 100%;
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    .form {
+        width: 100%;
+        display: flex;
+        flex-direction: column;
+        .form_item {
+            width: 100%;
+            display: flex;
+            align-items: center;
+            margin-bottom: 20px;
+            &:last-child {
+                margin-bottom: 0 !important;
+            }
+            .form_item_label {
+                width: 100px;
+                flex-shrink: 0;
+                font-size: 14px;
+                color: black;
+            }
+            .form_item_val {
+                flex: 1;
+                min-height: 35px;
+                display: flex;
+                align-items: center;
+                input {
+                    width: 100%;
+                    height: 100%;
+                    font-size: 14px;
+                    color: black;
+                    padding: 5px 10px;
+                    outline: none;
+                    box-sizing: border-box;
+                    border: 1px solid #ececec;
+                }
+            }
+        }
+    }
+</style>
diff --git a/company/src/components/enterprise/directInvoicingApplication.vue b/company/src/components/enterprise/directInvoicingApplication.vue
new file mode 100644
index 0000000..f5dbcc1
--- /dev/null
+++ b/company/src/components/enterprise/directInvoicingApplication.vue
@@ -0,0 +1,395 @@
+<template>
+    <GlobalWindow
+        :title="title"
+        width="100%"
+        :visible.sync="visible"
+        :confirm-working="isWorking"
+        @confirm="confirm"
+    >
+        <div class="info">
+            <div class="info_list">
+                <div class="info_list_item">
+                    <div class="info_list_item_label">寮�绁ㄥ悕绉帮細</div>
+                    <div class="info_list_item_val">{{userInfo.company.name}}</div>
+                </div>
+                <div class="info_list_item">
+                    <div class="info_list_item_label">绾崇◣浜鸿瘑鍒彿锛�</div>
+                    <div class="info_list_item_val">{{userInfo.company.code}}</div>
+                </div>
+                <div class="info_list_item">
+                    <div class="info_list_item_label">寮�鎴疯锛�</div>
+                    <div class="info_list_item_val">{{userInfo.company.taxBank}}</div>
+                </div>
+                <div class="info_list_item">
+                    <div class="info_list_item_label">璐﹀彿锛�</div>
+                    <div class="info_list_item_val">
+                        {{userInfo.company.taxAccount}}
+                    </div>
+                </div>
+                <div class="info_list_item" style="width: 100%;">
+                    <div class="info_list_item_label">鍦板潃銆佺數璇濓細</div>
+                    <div class="info_list_item_val">{{userInfo.company.invoiceAddr}} {{userInfo.company.phone}}</div>
+                </div>
+                <div class="info_list_item" style="width: 100%;">
+                    <div class="info_list_item_label">寮�绁ㄩ噾棰濓細</div>
+                    <div class="info_list_item_val" style="color:rgba(249, 86, 1, 0.996078431372549);">{{totalPrice}}</div>
+                </div>
+                <div class="list" style="width: 100%;">
+                    <el-radio v-model="type" label="0">鐢靛瓙鍙戠エ</el-radio>
+                    <div class="list_val">
+                        <div class="list_val_label">鎺ユ敹鍦板潃锛�</div>
+                        <el-input v-model="val" :disabled="type === '1'" placeholder="111222333@qq.com"></el-input>
+                    </div>
+                </div>
+                <div class="list" style="width: 100%;">
+                    <el-radio v-model="type" label="1">绾歌川鍙戠エ</el-radio>
+                    <div class="list_val">
+                        <div class="list_val_label">鎺ユ敹鍦板潃锛�</div>
+                        <el-input v-model="val1" :disabled="type === '0'" placeholder="瀹夊窘鐪佸悎鑲ュ競缁忔祹鎶�鏈紑鍙戝尯鑾茶姳璺互涓溿�佺煶闂ㄨ矾浠ュ崡鑾茶姳璺�1锛�     0551-63450845"></el-input>
+                    </div>
+                </div>
+            </div>
+            <!--      鍔犲噺淇�      -->
+            <el-table
+                :data="list1"
+                border
+                show-summary
+                :summary-method="getSummaries1"
+                style="width: 100%; margin-bottom: 20px;">
+                <el-table-column
+                    label="搴忓彿"
+                    align="center"
+                    width="80">
+                    <template slot-scope="scope">
+                        <span>{{scope.$index + 1}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    prop="solutionsName"
+                    label="淇濋櫓鏂规">
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    prop="insuranceCode"
+                    label="淇濆崟鍙�">
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    label="閲戦">
+                    <template slot-scope="{row}">
+                        <span style="color:rgba(249, 86, 1, 0.996078431372549);">{{row.amount}}</span>
+                    </template>
+                </el-table-column>
+            </el-table>
+            <!--      鍐茬孩鍗�      -->
+            <el-table
+                :data="list2"
+                border
+                show-summary
+                :summary-method="getSummaries2"
+                @selection-change="handleSelectionChange"
+                style="width: 100%; margin-bottom: 20px;">
+                <el-table-column type="selection" fixed="left" width="55"></el-table-column>
+                <el-table-column
+                    label="鍐茬孩鍗�"
+                    align="center"
+                    width="80">
+                    <template slot-scope="scope">
+                        <span>{{scope.$index + 1}}</span>
+                    </template>
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    prop="solutionsName"
+                    label="淇濋櫓鏂规">
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    prop="downCode"
+                    label="鍙戠エ鍙�">
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    prop="createTime"
+                    label="鐢宠寮�绁ㄦ椂闂�">
+                </el-table-column>
+                <el-table-column
+                    align="center"
+                    label="閲戦">
+                    <template slot-scope="{row}">
+                        <span style="color:rgba(249, 86, 1, 0.996078431372549);">{{row.amount}}</span>
+                    </template>
+                </el-table-column>
+            </el-table>
+        </div>
+    </GlobalWindow>
+</template>
+
+<script>
+    import BaseOpera from '@/components/base/BaseOpera'
+    import GlobalWindow from '@/components/common/GlobalWindow'
+    import { getDirectTaxes, directInvoicing } from '@/api/business/taxes'
+    import { mapState } from 'vuex'
+    export default {
+        name: 'directInvoicingApplication',
+        extends: BaseOpera,
+        components: { GlobalWindow },
+        data () {
+            return {
+                list1: [],
+                list2: [],
+                form: {
+                    id: null
+                },
+                setectData: [],
+                type: '0',
+                val: '',
+                val1: '',
+                rules: {
+                    backInfo: [
+                        { required: true, message: '璇疯緭鍏ラ��鍥炶鏄�' }
+                    ]
+                }
+            }
+        },
+        created () {
+            this.config({
+                api: '/business/taxes',
+                'field.id': 'id'
+            })
+        },
+        computed: {
+            ...mapState(['userInfo']),
+            totalPrice() {
+                let price = 0
+                this.list1.forEach(item => {
+                    price += item.amount
+                })
+                this.setectData.forEach(item => {
+                    this.list2.forEach(row => {
+                        if (item.id === row.id) {
+                            price += row.amount
+                        }
+                    })
+                })
+                return price
+            }
+        },
+        watch: {
+            type: {
+                handler(news) {
+                    this.val = ''
+                    this.val1 = ''
+                }
+            }
+        },
+        methods: {
+            open (title, target) {
+                this.title = title
+                this.visible = true
+                this.list1 = []
+                this.list2 = []
+                this.$nextTick(() => {
+                    for (const key in this.form) {
+                        this.form[key] = target[key]
+                    }
+                    this.getData()
+                })
+            },
+            confirm () {
+                if (!this.val && !this.val1) {
+                    this.$message.warning('璇疯緭鍏ユ帴鏀跺湴鍧�')
+                    return
+                }
+                if (this.setectData.length === 0) {
+                    this.$message.warning('鑷冲皯鍕鹃�変竴椤瑰啿绾㈠崟鏁版嵁')
+                    return
+                }
+                this.isWorking = true
+                directInvoicing({
+                    address: this.val1 || this.val,
+                    id: this.form.id,
+                    invoicingDetailDTOList: this.setectData.map(item => item.id),
+                    invoicingMoney: this.totalPrice,
+                    type: this.type
+                }).then(res => {
+                    this.visible = false
+                    this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
+                    this.$emit('success')
+                }).catch(e => {
+                    this.$tip.apiFailed(e)
+                }).finally(() => {
+                    this.isWorking = false
+                })
+            },
+            handleSelectionChange(e) {
+                this.setectData = e
+            },
+            getData() {
+                getDirectTaxes(this.form.id)
+                    .then(res => {
+                        res.forEach(item => {
+                            if (item.type === 2) {
+                                this.list2.push(item)
+                            } else {
+                                this.list1.push(item)
+                            }
+                        })
+                    })
+            },
+            getSummaries1 (param) {
+                const { columns, data } = param
+                const sums = []
+                columns.forEach((column, index) => {
+                    if (index === 0) {
+                        sums[index] = '鍚堣'
+                    } else if (index == 4) {
+                        let price = 0
+                        data.forEach(item => {
+                            price += item.amount
+                        })
+                        sums[index] = price
+                    }
+                })
+                return sums;
+            },
+            getSummaries2 (param) {
+                const { columns, data } = param
+                const sums = []
+                columns.forEach((column, index) => {
+                    if (index === 0) {
+                        sums[index] = '鍚堣'
+                    } else if (index == 5) {
+                        let price = 0
+                        data.forEach(item => {
+                            price += item.amount
+                        })
+                        sums[index] = price
+                    }
+                })
+                return sums;
+            }
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    ::v-deep .el-table__footer-wrapper tbody td {
+        cursor: pointer;
+        text-align: center;
+        &:nth-child(5) {
+            color:rgba(249, 86, 1, 0.996078431372549);
+        }
+    }
+    .red {
+        color: red;
+    }
+    .info {
+        width: 100%;
+        .info_label {
+            width: 100%;
+            display: flex;
+            align-items: center;
+            justify-content: space-between;
+            margin-bottom: 20px;
+            span {
+                font-size: 14px;
+                font-weight: 500;
+                color: #000000;
+            }
+        }
+        .info_list {
+            width: 100%;
+            display: flex;
+            align-items: left;
+            flex-wrap: wrap;
+            .list::v-deep {
+                width: 100%;
+                display: flex;
+                align-items: center;
+                justify-content: space-between;
+                margin-bottom: 15px;
+                .el-radio__label {
+                    color: black;
+                    font-size: 14px;
+                }
+                .list_val {
+                    flex: 1;
+                    display: flex;
+                    align-items: center;
+                    .list_val_label {
+                        font-size: 14px;
+                        color: black;
+                        flex-shrink: 0;
+                        margin-right: 15px;
+                    }
+                }
+            }
+            .info_list_item {
+                width: 50%;
+                display: flex;
+                align-items: start;
+                font-size: 14px;
+                margin-bottom: 20px;
+                .info_list_item_label {
+                    width: 150px;
+                    flex-shrink: 0;
+                }
+                .info_list_item_val {
+                    flex: 1;
+                    display: flex;
+                    align-items: center;
+                    .image {
+                        width: 100px;
+                        height: 100px;
+                        display: flex;
+                        align-items: center;
+                        justify-content: center;
+                        overflow: hidden;
+                        img {
+                            width: 100%;
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    .form {
+        width: 100%;
+        display: flex;
+        flex-direction: column;
+        .form_item {
+            width: 100%;
+            display: flex;
+            align-items: center;
+            margin-bottom: 20px;
+            &:last-child {
+                margin-bottom: 0 !important;
+            }
+            .form_item_label {
+                width: 100px;
+                flex-shrink: 0;
+                font-size: 14px;
+                color: black;
+            }
+            .form_item_val {
+                flex: 1;
+                min-height: 35px;
+                display: flex;
+                align-items: center;
+                input {
+                    width: 100%;
+                    height: 100%;
+                    font-size: 14px;
+                    color: black;
+                    padding: 5px 10px;
+                    outline: none;
+                    box-sizing: border-box;
+                    border: 1px solid #ececec;
+                }
+            }
+        }
+    }
+</style>
diff --git a/company/src/components/enterprise/entrustmentHistory.vue b/company/src/components/enterprise/entrustmentHistory.vue
index f4eda21..50c2ca9 100644
--- a/company/src/components/enterprise/entrustmentHistory.vue
+++ b/company/src/components/enterprise/entrustmentHistory.vue
@@ -20,28 +20,50 @@
                 </template>
             </el-table-column>
             <el-table-column
-                prop="solutionName"
+                prop="createDate"
                 label="鐢宠寮�绁ㄦ椂闂�">
             </el-table-column>
             <el-table-column
-                prop="bdCode"
                 label="寮�绁ㄧ姸鎬�">
+                <template slot-scope="{row}">
+                    <span v-if="row.status === 1">宸插紑绁�</span>
+                    <span v-else-if="row.status === 2">骞冲彴鎾ゅ洖</span>
+                    <span v-else-if="row.status === 3">宸插啿绾�</span>
+                    <span v-else>寰呭鐞�</span>
+                </template>
             </el-table-column>
             <el-table-column
-                prop="applyChangeId"
+                prop="price"
                 label="寮�绁ㄩ噾棰濓紙鍏冿級">
             </el-table-column>
             <el-table-column
-                prop="duName"
                 label="鎺ユ敹鏂瑰紡">
+                <template slot-scope="{row}">
+                    <span v-if="row.type === 1">绾歌川鍙戠エ</span>
+                    <span v-else>鐢靛瓙鍙戠エ</span>
+                </template>
+            </el-table-column>
+            <el-table-column
+                label="鐢靛瓙鍙戠エ">
+                <template slot-scope="{row}">
+                    <el-image
+                        style="width: 50px; height: 50px"
+                        :src="row.imgurlFull"
+                        :preview-src-list="[row.imgurlFull]">
+                    </el-image>
+                </template>
             </el-table-column>
             <el-table-column
                 label="鎿嶄綔">
                 <template slot-scope="{row}">
-                    <el-button type="text">鐢宠璇︽儏</el-button>
+                    <el-button type="text" @click="see(row)">鐢宠璇︽儏</el-button>
                 </template>
             </el-table-column>
         </el-table>
+        <template v-slot:footer>
+            <el-button @click="close">杩斿洖</el-button>
+        </template>
+        <directInsuranceDetails ref="directInsuranceDetails" />
     </GlobalWindow>
 </template>
 
@@ -49,10 +71,11 @@
     import BaseOpera from '@/components/base/BaseOpera'
     import GlobalWindow from '@/components/common/GlobalWindow'
     import { list } from '@/api/business/taxes'
+    import directInsuranceDetails from '@/components/enterprise/directInsuranceDetails'
     export default {
         name: 'entrustmentHistory',
         extends: BaseOpera,
-        components: { GlobalWindow },
+        components: { GlobalWindow, directInsuranceDetails },
         data () {
             return {
                 form: {
@@ -72,6 +95,7 @@
         methods: {
             open (title, target) {
                 this.title = title
+                this.list = []
                 this.visible = true
                 // 缂栬緫
                 this.$nextTick(() => {
@@ -81,13 +105,34 @@
                     this.getList()
                 })
             },
+            see(row) {
+                let info = ''
+                if (row.status === 1) {
+                    info = '宸插紑绁�'
+                } else if (row.status === 2) {
+                    info = '骞冲彴鎾ゅ洖'
+                } else if (row.status === 3) {
+                    info = '宸插啿绾�'
+                } else {
+                    info = '寰呭鐞�'
+                }
+                this.$refs.directInsuranceDetails.open(`寮�绁ㄨ鎯咃紙${info}锛塦, row)
+            },
             getList() {
                 list({ insuranceApplyId: this.form.id })
                     .then(res => {
-                        console.log(res)
                         this.list = res
                     })
+            },
+            close () {
+                this.visible = false
             }
         }
     }
 </script>
+
+<style>
+    .el-image-viewer__wrapper {
+        z-index: 3000 !important;
+    }
+</style>
diff --git a/company/src/views/enterprise/directInvoicing.vue b/company/src/views/enterprise/directInvoicing.vue
index 399b0a0..759def1 100644
--- a/company/src/views/enterprise/directInvoicing.vue
+++ b/company/src/views/enterprise/directInvoicing.vue
@@ -4,15 +4,12 @@
         <template v-slot:table-wrap>
             <ul style="margin-bottom: 30px;width: 100%;display: flex;align-items: center;justify-content: space-between;">
                 <li style="font-size: 18px;font-weight: bold;">鐢宠寮�绁�</li>
-                <li><el-button type="primary" @click="apply">鎻愪氦寮�绁�</el-button></li>
             </ul>
             <el-table
-                    v-loading="isWorking.search"
-                    :data="tableData.list"
-                    stripe
-                    @selection-change="handleSelectionChange"
+                v-loading="isWorking.search"
+                :data="tableData.list"
+                stripe
             >
-                <el-table-column type="selection" fixed="left" width="55"></el-table-column>
                 <el-table-column label="搴忓彿" width="80px">
                     <template slot-scope="scope">
                         <span>{{scope.$index + 1}}</span>
@@ -42,18 +39,19 @@
                 <el-table-column label="鎿嶄綔" min-width="180px">
                     <template slot-scope="{row}">
                         <el-button type="text" @click="$refs.entrustmentHistory.open('寮�绁ㄥ巻鍙�', row)">寮�绁ㄥ巻鍙�</el-button>
+                        <el-button type="text" @click="$refs.directInvoicingApplication.open('寮�绁ㄧ敵璇�', row)">鐢宠寮�绁�</el-button>
                     </template>
                 </el-table-column>
             </el-table>
             <pagination
-                    @size-change="handleSizeChange"
-                    @current-change="handlePageChange"
-                    :pagination="tableData.pagination"
+                @size-change="handleSizeChange"
+                @current-change="handlePageChange"
+                :pagination="tableData.pagination"
             >
             </pagination>
         </template>
         <!--   鐢宠    -->
-        <entrustedInvoicingApplication ref="entrustedInvoicingApplication" @success="handlePageChange" />
+        <directInvoicingApplication ref="directInvoicingApplication" @success="handlePageChange" />
         <!--    寮�绁ㄥ巻鍙�    -->
         <entrustmentHistory ref="entrustmentHistory" @success="handlePageChange" />
     </TableLayout>
@@ -63,12 +61,12 @@
     import BaseTable from '@/components/base/BaseTable'
     import TableLayout from '@/layouts/TableLayout'
     import Pagination from '@/components/common/Pagination'
-    import entrustedInvoicingApplication from '@/components/enterprise/entrustedInvoicingApplication'
+    import directInvoicingApplication from '@/components/enterprise/directInvoicingApplication'
     import entrustmentHistory from '@/components/enterprise/entrustmentHistory'
     export default {
         name: 'directInvoicing',
         extends: BaseTable,
-        components: { TableLayout, Pagination, entrustedInvoicingApplication, entrustmentHistory },
+        components: { TableLayout, Pagination, directInvoicingApplication, entrustmentHistory },
         data () {
             return {
                 searchForm: {
@@ -86,25 +84,7 @@
             this.search()
         },
         methods: {
-            apply() {
-                if (this.tableData.selectedRows.length === 0) {
-                    this.$message.warning('鑷冲皯閫夋嫨涓�椤瑰唴瀹�')
-                    return
-                }
-                for (let i = 0; i < this.tableData.selectedRows.length; i++) {
-                    if (this.tableData.selectedRows[i].currentFee - this.tableData.selectedRows[i].taxesMoney === 0) {
-                        this.$message.warning(`绗�${i + 1}椤瑰彲寮�绁ㄩ噾棰濅负0锛屼笉鑳借繘琛屽紑绁紒`)
-                        return
-                    }
-                }
-                let obj = {}
-                obj.list = JSON.parse(JSON.stringify(this.tableData.selectedRows))
-                obj.list.forEach(item => {
-                    item.totalPrice = item.currentFee - item.taxesMoney
-                })
-                console.log(obj.list)
-                this.$refs.entrustedInvoicingApplication.open('鐢宠寮�绁�', obj)
-            }
+
         }
     }
 </script>

--
Gitblit v1.9.3