From da2f967549510050954682c0372927647257fb11 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期一, 26 五月 2025 18:15:26 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/2.0.1' into 2.0.1

---
 company/src/components/business/OperaSettleClaimsWindow.vue |  333 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 320 insertions(+), 13 deletions(-)

diff --git a/company/src/components/business/OperaSettleClaimsWindow.vue b/company/src/components/business/OperaSettleClaimsWindow.vue
index 4d6201b..922b4f5 100644
--- a/company/src/components/business/OperaSettleClaimsWindow.vue
+++ b/company/src/components/business/OperaSettleClaimsWindow.vue
@@ -19,7 +19,80 @@
                     </div>
                 </div>
             </div>
-            <div class="box_desc">
+            <template v-if="userInfo.type === 1">
+                <div class="box_tui">
+                    <span class="box_tui_status">宸查��鍥�</span>
+                    <div class="box_tui_title">閫�鍥炶鏄�</div>
+                    <div class="box_tui_info">鏃堕棿锛�2025-03-11 12:23</div>
+                    <div class="box_tui_info">浜哄憳锛氬钩鍙扮悊璧斾汉鍛�-寮犱笁-18876784433</div>
+                    <div class="box_tui_row"><div class="yuan"></div>浣忛櫌鐥呭巻鏉愭枡涓嶅畬鏁达紝璇疯ˉ鍏�2025骞�1鏈�1鏃ヨ嚦2鏈�1鏃ユ棩鏈熼棿鐨勪綇闄㈣褰�</div>
+                </div>
+                <div class="box_dk" v-if="info.status === 13">
+                    <div class="box_dk_title">
+                        <i class="el-icon-success"></i>
+                        <span>宸叉墦娆�</span>
+                    </div>
+                    <div class="box_dk_list">
+                        <div class="box_dk_list_row">
+                            <div class="box_dk_list_row_label">鎵撴鏃堕棿锛�</div>
+                            <div class="box_dk_list_row_value">2025-06-08 09:52</div>
+                        </div>
+                        <div class="box_dk_list_row">
+                            <div class="box_dk_list_row_label">鎵撴璇存槑锛�</div>
+                            <div class="box_dk_list_row_value">杩欓噷鏄墦娆捐鏄�</div>
+                        </div>
+                        <div class="box_dk_list_row">
+                            <div class="box_dk_list_row_label">鎵撴鍑瘉锛�</div>
+                            <div class="box_dk_list_row_l">
+                                <div class="box_dk_list_row_l_img">
+                                    <img src="" alt="">
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+                <div class="box_comInfo" v-if="[10,11,12].includes(info.status)">
+                    <div class="box_comInfo_title">
+                        <i class="el-icon-info"></i>
+                        <span>閲嶈鎻愮ず</span>
+                    </div>
+                    <div class="box_comInfo_text">
+                        <span>鈥� 璧斾粯娆鹃」灏嗗湪纭鍚� 1-3 涓伐浣滄棩鍐呭埌璐�</span>
+                        <span>鈥� 璇风‘璁ゆ敹娆捐处鎴蜂俊鎭噯纭棤璇�</span>
+                        <span>鈥� 濡傛湁鐤戦棶璇峰強鏃惰仈绯诲鏈� 0551-77738493</span>
+                    </div>
+                </div>
+                <div class="box_price" v-if="[10,11,12].includes(info.status)">
+                    <span class="box_price_title">璧斾粯閲戦{{[11].includes(info.status) ? '寰呯‘璁�' : '宸茬‘璁�'}}</span>
+                    <span class="box_price_jine">楼{{info.hpAccount + info.hpOtherAccount}}</span>
+                    <el-button type="text" style="margin-bottom: 5px;" @click="$refs.compensationDetails.open('璧斾粯璇︽儏', info.hpAccountContent)">鏌ョ湅璧斾粯璇︽儏</el-button>
+                    <el-button type="primary" @click="confirmFeeInfo" v-if="[11].includes(info.status)">纭</el-button>
+                </div>
+                <div class="box_sinfo" v-if="[10,11,12].includes(info.status)">
+                    <div class="box_sinfo_title">
+                        <span>鏀舵淇℃伅</span>
+                        <span @click="$refs.paymentInformation.open('淇敼鏀舵淇℃伅', {
+                            id: info.id,
+                            receiveBank: info.receiveBank,
+                            receiveAccount: info.receiveAccount,
+                            receiveUserName: info.receiveUserName
+                        })">淇敼</span>
+                    </div>
+                    <div class="box_sinfo_row">
+                        <div class="box_sinfo_row_label">寮�鎴烽摱琛岋細</div>
+                        <div class="box_sinfo_row_val">{{info.receiveBank}}</div>
+                    </div>
+                    <div class="box_sinfo_row">
+                        <div class="box_sinfo_row_label">璐﹀彿锛�</div>
+                        <div class="box_sinfo_row_val">{{info.receiveAccount}}</div>
+                    </div>
+                    <div class="box_sinfo_row">
+                        <div class="box_sinfo_row_label">鎴峰悕锛�</div>
+                        <div class="box_sinfo_row_val">{{info.receiveUserName}}</div>
+                    </div>
+                </div>
+            </template>
+            <div class="box_desc" v-if="[9,10].includes(info.status)">
                 <div class="box_desc_head">
                     <div class="box_desc_title">
                         <i class="el-icon-success"></i>
@@ -50,30 +123,36 @@
                             <i class="el-icon-warning"></i>
                             <span>椋庨櫓妗堜欢</span>
                         </div>
-                        <el-select v-model="info.caseType" @change="setCaseType" style="width: 100px;" placeholder="妗堜欢绫诲瀷" v-if="[9,10,11].includes(info.status)">
-                            <el-option label="鍖荤枟" :value="1"></el-option>
-                            <el-option label="浼ゆ畫" :value="2"></el-option>
-                            <el-option label="姝讳骸" :value="3"></el-option>
-                        </el-select>
+                        <template v-if="userInfo.type === 0">
+                            <el-select v-model="info.caseType" @change="setCaseType" style="width: 100px;" placeholder="妗堜欢绫诲瀷" v-if="[9,10,11].includes(info.status)">
+                                <el-option label="鍖荤枟" :value="1"></el-option>
+                                <el-option label="浼ゆ畫" :value="2"></el-option>
+                                <el-option label="姝讳骸" :value="3"></el-option>
+                            </el-select>
+                        </template>
                     </div>
                     <div class="box_desc_btns">
                         <template v-if="userInfo.type === 1">
-                            <el-button type="danger" @click="revoke()" v-if="[1,2,3,4,5,9,7,10,11].includes(info.status)">鎾ら攢鎶ユ</el-button>
+                            <el-button type="danger" @click="revoke()" v-if="[1,2,3,4,5,9,7,10].includes(info.status)">鎾ら攢鎶ユ</el-button>
+                            <el-button type="primary" @click="addReport(1)" v-if="[3].includes(info.status) && info.reportNumStatus === 0">娣诲姞鎶ユ鍙�</el-button>
+                            <el-button type="primary" @click="$refs.additionMaterial_ba.open('琛ュ厖鏉愭枡', info.id)" v-if="[3].includes(info.status)">琛ュ厖鏉愭枡</el-button>
                         </template>
                         <template v-if="userInfo.type === 0">
                             <el-button type="danger" @click="returnCase" v-if="[1,2].includes(info.status)">閫�鍥�</el-button>
                             <el-button type="primary" @click="register" v-if="[1,2].includes(info.status)">绔嬫</el-button>
                             <el-button type="primary" @click="$refs.acceptance.open('妗堜欢鍙楃悊', info.id)" v-if="[3,5].includes(info.status)">鍙楃悊</el-button>
-                            <el-button type="primary" @click="addRemark" v-if="![0,1,2,4,14].includes(info.status)">澶囨敞</el-button>
+                            <el-button type="primary" @click="addRemark" v-if="![0,1,2,4,13,14].includes(info.status)">澶囨敞</el-button>
                             <el-button type="primary" @click="addReport(1)" v-if="[3].includes(info.status) && info.reportNumStatus === 0">娣诲姞鎶ユ鍙�</el-button>
                             <el-button type="primary" @click="addReport(2)" v-if="[9].includes(info.status) && info.reportNumStatus === 1">缂栬緫鎶ユ鍙�</el-button>
                             <el-button type="primary" @click="$refs.adjustment.open('鐞嗙畻', info.id, 1)" v-if="[9].includes(info.status)">鐞嗙畻</el-button>
                             <el-button type="primary" @click="$refs.adjustment.open('閲嶆柊鐞嗙畻', info.id, 1)" v-if="[10].includes(info.status)">閲嶆柊鐞嗙畻</el-button>
                             <el-button type="primary" @click="$refs.adjustment.open('鏍歌禂', info.id, 2)" v-if="[10].includes(info.status)">鏍歌禂</el-button>
+                            <el-button type="primary" @click="$refs.adjustment.open('淇敼閲戦', info.id, 2)" v-if="[11,12].includes(info.status)">淇敼閲戦</el-button>
+                            <el-button type="primary" @click="$refs.makePayment.open('鎵撴', info.id)" v-if="[12].includes(info.status)">鎵撴</el-button>
                             <el-button type="primary" @click="supplementaryMaterials" v-if="[9].includes(info.status)">琛ュ厖鏉愭枡</el-button>
                             <el-button type="primary" @click="$refs.additionMaterial_ba.open('娣诲姞鏉愭枡', info.id)" v-if="[9,10].includes(info.status)">娣诲姞鏉愭枡</el-button>
                         </template>
-                        <el-button icon="el-icon-refresh-left" type="primary" circle @click="$refs.caseProgress.open('妗堜欢杩涘害', info.settleClaimsLogList)" v-if="![0,14].includes(info.status)"></el-button>
+                        <el-button icon="el-icon-refresh-left" type="primary" circle @click="$refs.caseProgress.open('妗堜欢杩涘害', info.settleClaimsLogList)" v-if="![0,13,14].includes(info.status)"></el-button>
                     </div>
                 </div>
                 <div class="box_desc_list">
@@ -278,6 +357,12 @@
         <AdditionMaterial_ba ref="additionMaterial_ba" @success="getDetail" />
         <!--    鐞嗙畻    -->
         <adjustment ref="adjustment" @success="getDetail" />
+        <!--  璧斾粯璇︽儏  -->
+        <CompensationDetails ref="compensationDetails" />
+        <!--    淇敼鏀舵淇℃伅    -->
+        <PaymentInformation ref="paymentInformation" @success="getDetail" />
+        <!--   鎵撴     -->
+        <MakePayment ref="makePayment" @success="getDetail" />
     </GlobalWindow>
 </template>
 
@@ -290,18 +375,23 @@
     addReportNum,
     addRemark,
     saveSupplementDescribe,
-    updCaseType } from '@/api/business/settleRisk'
+    updCaseType,
+    confirmFee,
+    payCash } from '@/api/business/settleRisk'
 import RiskCaseReminder from '@/components/business/riskCaseReminder'
 import CaseProgress from '@/components/business/caseProgress'
 import Acceptance from '@/components/business/acceptance'
 import AdditionMaterial_ba from '@/components/business/additionMaterial_ba'
 import adjustment from '@/components/business/adjustment'
+import CompensationDetails from '@/components/business/compensationDetails'
+import PaymentInformation from '@/components/business/paymentInformation'
+import MakePayment from '@/components/business/makePayment'
 import { mapState } from 'vuex'
 
 export default {
   name: 'OperaSettleClaimsWindow',
   extends: BaseOpera,
-  components: { GlobalWindow, RiskCaseReminder, CaseProgress, Acceptance, AdditionMaterial_ba, adjustment },
+  components: { GlobalWindow, MakePayment, PaymentInformation, CompensationDetails, RiskCaseReminder, CaseProgress, Acceptance, AdditionMaterial_ba, adjustment },
   data () {
     return {
         show: false,
@@ -498,7 +588,21 @@
               case 3:
                   return '鎰忓鍙椾激'
           }
-      }
+      },
+      confirmFeeInfo() {
+          this.$confirm('鏄惁纭璧斾粯閲戦?', '鎻愮ず', {
+              confirmButtonText: '纭畾',
+              cancelButtonText: '鍙栨秷',
+              type: 'warning'
+          }).then(() => {
+              confirmFee(this.id)
+                  .then(res => {
+                      this.getDetail()
+                  })
+          }).catch(() => {
+
+          });
+      },
   }
 }
 </script>
@@ -506,6 +610,209 @@
 <style lang="scss" scoped>
     .box {
         width: 100%;
+        .box_tui {
+            width: 100%;
+            padding: 17px 0;
+            box-sizing: border-box;
+            margin-bottom: 30px;
+            .box_tui_status {
+                padding: 3px 8px;
+                border-radius: 15px;
+                background-color: rgba(254,226,225,1);
+                color: rgba(153,27,27,1);
+                font-size: 12px;
+            }
+            .box_tui_title {
+                color: rgba(16,16,16,1);
+                font-size: 16px;
+                margin-top: 15px;
+            }
+            .box_tui_info {
+                color: rgba(154,154,154,1);
+                font-size: 14px;
+                margin-top: 10px;
+            }
+            .box_tui_row {
+                color: rgba(16,16,16,1);
+                font-size: 14px;
+                margin-top: 10px;
+                display: flex;
+                align-items: center;
+                .yuan {
+                    width: 5px;
+                    height: 5px;
+                    border-radius: 50%;
+                    margin-right: 5px;
+                    background-color: rgba(153,27,27,1);
+                }
+            }
+        }
+        .box_dk {
+            width: 100%;
+            display: flex;
+            flex-direction: column;
+            margin-bottom: 30px;
+            .box_dk_title {
+                width: 100%;
+                display: flex;
+                align-items: center;
+                margin-bottom: 12px;
+                i {
+                    font-size: 20px;
+                    margin-right: 5px;
+                    color: #34C758;
+                }
+                span {
+                    color: rgba(52,199,88,1);
+                    font-size: 18px;
+                }
+            }
+            .box_dk_list {
+                width: 100%;
+                display: flex;
+                flex-direction: column;
+                .box_dk_list_row {
+                    width: 100%;
+                    display: flex;
+                    align-items: start;
+                    margin-bottom: 15px;
+                    &:last-child {
+                        margin: 0 !important;
+                    }
+                    .box_dk_list_row_label {
+                        flex-shrink: 0;
+                        color: rgba(16,16,16,1);
+                        font-size: 14px;
+                    }
+                    .box_dk_list_row_value {
+                        flex: 1;
+                        color: rgba(16,16,16,1);
+                        font-size: 14px;
+                    }
+                    .box_dk_list_row_l {
+                        flex: 1;
+                        display: flex;
+                        align-items: center;
+                        flex-wrap: wrap;
+                        .box_dk_list_row_l_img {
+                            width: 80px;
+                            height: 80px;
+                            display: flex;
+                            align-items: center;
+                            justify-content: center;
+                            overflow: hidden;
+                            margin-right: 15px;
+                            margin-bottom: 15px;
+                            img {
+                                width: 100%;
+                                height: 100%;
+                            }
+                        }
+                    }
+                }
+            }
+        }
+        .box_sinfo {
+            width: 100%;
+            display: flex;
+            flex-direction: column;
+            margin-bottom: 30px;
+            .box_sinfo_title {
+                width: 100%;
+                display: flex;
+                align-items: center;
+                margin-bottom: 26px;
+                span {
+                    &:nth-child(1) {
+                        color: rgba(16,16,16,1);
+                        font-size: 16px;
+                        margin-right: 10px;
+                    }
+                    &:nth-child(2) {
+                        color: rgba(22,93,255,1);
+                        font-size: 14px;
+                        cursor: pointer;
+                        text-decoration: underline;
+                    }
+                }
+            }
+            .box_sinfo_row {
+                width: 100%;
+                margin-bottom: 15px;
+                display: flex;
+                align-items: center;
+                .box_sinfo_row_label {
+                    flex-shrink: 0;
+                    color: rgba(154,154,154,1);
+                    font-size: 14px;
+                }
+                .box_sinfo_row_val {
+                    flex: 1;
+                    color: rgba(16,16,16,1);
+                    font-size: 14px;
+                }
+            }
+        }
+        .box_price {
+            width: 100%;
+            padding: 30px 0;
+            background-color: #ffffff;
+            display: flex;
+            flex-direction: column;
+            align-items: center;
+            justify-content: center;
+            margin-bottom: 30px;
+            border-bottom: 1px solid #ececec;
+            .box_price_title {
+                color: rgba(16,16,16,1);
+                font-size: 20px;
+                margin-bottom: 10px;
+            }
+            .box_price_jine {
+                color: rgba(255,162,63,1);
+                font-size: 29px;
+                margin-bottom: 10px;
+            }
+        }
+        .box_comInfo {
+            width: 100%;
+            padding: 11px 21px;
+            box-sizing: border-box;
+            background-color: rgba(240,246,254,1);
+            display: flex;
+            flex-direction: column;
+            margin-bottom: 30px;
+            .box_comInfo_title {
+                width: 100%;
+                display: flex;
+                align-items: center;
+                margin-bottom: 12px;
+                i {
+                    color: #165DFF;
+                    font-size: 20px;
+                    margin-right: 5px;
+                }
+                span {
+                    color: rgba(16,16,16,1);
+                    font-size: 14px;
+                }
+            }
+            .box_comInfo_text {
+                width: 100%;
+                padding-left: 20px;
+                box-sizing: border-box;
+                display: flex;
+                flex-direction: column;
+                span {
+                    color: rgba(16,16,16,1);
+                    font-size: 14px;
+                    margin-bottom: 10px;
+                    &:last-child {
+                        margin: 0 !important;
+                    }
+                }
+            }
+        }
         .box_status {
             width: 100%;
             padding: 30px 0;
@@ -513,7 +820,7 @@
             display: flex;
             align-items: start;
             justify-content: center;
-            margin-bottom: 30px;
+            /*margin-bottom: 30px;*/
             .box_status_row {
                 width: 200px;
                 display: flex;

--
Gitblit v1.9.3