From 6f51f667ae7b13dca029045c221d0b1722cf98df Mon Sep 17 00:00:00 2001
From: zhangjq <z16372660229@163.com>
Date: 星期二, 27 一月 2026 18:17:08 +0800
Subject: [PATCH] 更新房产导入功能及其他相关组件

---
 public/pages/admin/advertisementSummary/advertisementSummary.html |  554 ++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 448 insertions(+), 106 deletions(-)

diff --git a/public/pages/admin/advertisementSummary/advertisementSummary.html b/public/pages/admin/advertisementSummary/advertisementSummary.html
index 98b3a48..4caf5e9 100644
--- a/public/pages/admin/advertisementSummary/advertisementSummary.html
+++ b/public/pages/admin/advertisementSummary/advertisementSummary.html
@@ -7,118 +7,160 @@
                 </h5>
             </div>
             <div class="ibox-content">
+                <!-- 鏌ヨ鏉′欢鍖哄煙 -->
                 <div class="row">
-                    <div class="col-sm-3">
-                        <div class="form-group">
-                            <label for="contractNameLike">鍚堝悓鍚嶇О</label>
-                            <input type="text" class="form-control" id="contractNameLike" 
-                                   v-model="advertisementSummaryInfo.conditions.contractNameLike" 
-                                   placeholder="璇疯緭鍏ュ悎鍚屽悕绉�">
-                        </div>
-                    </div>
-                    <div class="col-sm-3">
-                        <div class="form-group">
-                            <label for="contractCode">鍚堝悓缂栧彿</label>
-                            <input type="text" class="form-control" id="contractCode" 
-                                   v-model="advertisementSummaryInfo.conditions.contractCode" 
-                                   placeholder="璇疯緭鍏ュ悎鍚岀紪鍙�">
-                        </div>
-                    </div>
-                    <div class="col-sm-3">
-                        <div class="form-group">
-                            <label for="contractType">鍚堝悓绫诲瀷</label>
-                            <select class="form-control" id="contractType" 
-                                    v-model="advertisementSummaryInfo.conditions.contractType">
-                                <option value="">鍏ㄩ儴</option>
-                                <option v-for="(item, index) in advertisementSummaryInfo.contractTypes" :key="index"
-                                        v-bind:value="item.contractType">
-                                    {{item.contractTypeName}}
-                                </option>
-                            </select>
-                        </div>
-                    </div>
-                    <div class="col-sm-3">
-                        <div class="form-group">
-                            <label for="state">鍚堝悓鐘舵��</label>
-                            <select class="form-control" id="state" 
-                                    v-model="advertisementSummaryInfo.conditions.state">
-                                <option value="">鍏ㄩ儴</option>
-                                <option value="1000">鑽夌</option>
-                                <option value="2000">鐢熸晥</option>
-                                <option value="3000">杩囨湡</option>
-                                <option value="4000">缁堟</option>
-                            </select>
+                    <div class="col-sm-12">
+                        <div class="ibox">
+                            <div class="ibox-title">
+                                <h5>鏌ヨ鏉′欢</h5>
+                                <div class="ibox-tools">
+                                    <a class="collapse-link">
+                                        <i class="fa fa-chevron-down"></i>
+                                    </a>
+                                </div>
+                            </div>
+                            <div class="ibox-content">
+                                <div class="row">
+                                    <div class="col-sm-3">
+                                        <div class="form-group">
+                                            <label for="contractNameLike">鍚堝悓鍚嶇О</label>
+                                            <input type="text" class="form-control" id="contractNameLike" 
+                                                   v-model="advertisementSummaryInfo.conditions.contractNameLike" 
+                                                   placeholder="璇疯緭鍏ュ悎鍚屽悕绉�">
+                                        </div>
+                                    </div>
+                                    <div class="col-sm-3">
+                                        <div class="form-group">
+                                            <label for="contractCode">鍚堝悓缂栧彿</label>
+                                            <input type="text" class="form-control" id="contractCode" 
+                                                   v-model="advertisementSummaryInfo.conditions.contractCode" 
+                                                   placeholder="璇疯緭鍏ュ悎鍚岀紪鍙�">
+                                        </div>
+                                    </div>
+                                    <div class="col-sm-3">
+                                        <div class="form-group">
+                                            <label for="contractType">鍚堝悓绫诲瀷</label>
+                                            <select class="form-control" id="contractType" 
+                                                    v-model="advertisementSummaryInfo.conditions.contractType">
+                                                <option value="">鍏ㄩ儴</option>
+                                                <option v-for="(item, index) in advertisementSummaryInfo.contractTypes" :key="index"
+                                                        v-bind:value="item.contractType">
+                                                    {{item.contractTypeName}}
+                                                </option>
+                                            </select>
+                                        </div>
+                                    </div>
+                                    <div class="col-sm-3">
+                                        <div class="form-group">
+                                            <label for="state">鍚堝悓鐘舵��</label>
+                                            <select class="form-control" id="state" 
+                                                    v-model="advertisementSummaryInfo.conditions.state">
+                                                <option value="">鍏ㄩ儴</option>
+                                                <option value="1000">鑽夌</option>
+                                                <option value="2000">鐢熸晥</option>
+                                                <option value="3000">杩囨湡</option>
+                                                <option value="4000">缁堟</option>
+                                            </select>
+                                        </div>
+                                    </div>
+                                </div>
+                                <div class="row">
+                                    <div class="col-sm-12 text-right">
+                                        <button type="button" class="btn btn-primary" v-on:click="_queryContractMethod()">
+                                            <i class="fa fa-search"></i>
+                                            鏌ヨ
+                                        </button>
+                                        <button type="button" class="btn btn-primary" v-on:click="_resetContractMethod()">
+                                            <i class="fa fa-repeat"></i>
+                                            閲嶇疆
+                                        </button>
+                                        <button type="button" class="btn btn-primary" v-on:click="_openAddContractModal()">
+                                            <i class="fa fa-plus"></i>
+                                            娣诲姞鍚堝悓
+                                        </button>
+                                        <button type="button" class="btn btn-primary" v-on:click="_openImportContractModal()">
+                                            <i class="fa fa-upload"></i>
+                                            瀵煎叆鏁版嵁
+                                        </button>
+                                        <button type="button" class="btn btn-primary" v-on:click="_exportContractData()" style="margin-left: 10px;">
+                                            <i class="fa fa-download"></i>
+                                            瀵煎嚭
+                                        </button>
+                                    </div>
+                                </div>
+                            </div>
                         </div>
                     </div>
                 </div>
+                
+                <!-- 鏁版嵁琛ㄦ牸鍖哄煙 -->
                 <div class="row">
-                    <div class="col-sm-12 text-right">
-                        <button type="button" class="btn btn-primary btn-md" v-on:click="_queryContractMethod()">
-                            <i class="fa fa-search"></i>
-                            鏌ヨ
-                        </button>
-                        <button type="button" class="btn btn-primary btn-md" v-on:click="_resetContractMethod()">
-                            <i class="fa fa-repeat"></i>
-                            閲嶇疆
-                        </button>
-                        <button type="button" class="btn btn-primary btn-md" v-on:click="_openAddContractModal()">
-                            <i class="fa fa-plus"></i>
-                            娣诲姞鍚堝悓
-                        </button>
-                        <button type="button" class="btn btn-primary btn-md" v-on:click="_openImportContractModal()">
-                            <i class="fa fa-upload"></i>
-                            瀵煎叆鏁版嵁
-                        </button>
+                    <div class="col-sm-12">
+                        <table class="footable table table-stripped toggle-arrow-tiny" data-page-size="15">
+                            <thead>
+                                <tr>
+                                    <th class="text-center">搴忓彿</th>
+                                    <th class="text-center">鍚堝悓缂栧彿</th>
+                                    <th class="text-center">鍚堝悓鍚嶇О</th>
+                                    <th class="text-center">鍚堝悓绫诲瀷</th>
+                                    <th class="text-center">鍚堝悓鐘舵��</th>
+                                    <th class="text-center">鐗╀笟鍏徃鍚嶇О</th>
+                                    <th class="text-center">鍚堝悓骞撮檺(骞�)</th>
+                                    <th class="text-center">鏄惁瀛樻。</th>
+                                    <th class="text-center">鍚堝悓鎻愰啋鏃ユ湡</th>
+                                    <th class="text-center">鎿嶄綔</th>
+                                </tr>
+                            </thead>
+                            <tbody>
+                                <tr v-for="(contract, index) in advertisementSummaryInfo.contracts" :key="contract.contractId">
+                                    <td class="text-center">{{index + 1}}</td>
+                                    <td class="text-center">{{contract.contractCode || '-'}}</td>
+                                    <td class="text-center">{{contract.contractName || '-'}}</td>
+                                    <td class="text-center">{{contract.contractTypeName || '-'}}</td>
+                                    <td class="text-center">
+                                        <span v-if="contract.state === '1000'" class="label label-info">鑽夌</span>
+                                        <span v-else-if="contract.state === '2000'" class="label label-success">鐢熸晥</span>
+                                        <span v-else-if="contract.state === '3000'" class="label label-warning">杩囨湡</span>
+                                        <span v-else-if="contract.state === '4000'" class="label label-danger">缁堟</span>
+                                        <span v-else class="label label-default">鏈煡</span>
+                                    </td>
+                                    <td class="text-center">{{contract.propertyCompany || '-'}}</td>
+                                    <td class="text-center">{{contract.contractTerm || '-'}}</td>
+                                    <td class="text-center">
+                                        <span v-if="contract.isArchived === '0'" class="label label-info">鏈瓨妗�</span>
+                                        <span v-else-if="contract.isArchived === '1'" class="label label-success">宸插瓨妗�</span>
+                                        <span v-else class="label label-default">鏈煡</span>
+                                    </td>
+                                    <td class="text-center">{{contract.contractReminderDate || '-'}}</td>
+                                    <td class="text-center">
+                                        <button type="button" class="btn btn-xs btn-info" 
+                                                v-on:click="_openEditContractModel(contract)">缂栬緫</button>
+                                        <button type="button" class="btn btn-xs btn-danger" 
+                                                v-on:click="_openDeleteContractModel(contract)">鍒犻櫎</button>
+                                    </td>
+                                </tr>
+                                <tr v-if="advertisementSummaryInfo.contracts.length == 0">
+                                    <td colspan="10" style="text-align: center; color: #999;">
+                                        鏆傛棤鏁版嵁
+                                    </td>
+                                </tr>
+                            </tbody>
+                            <tfoot>
+                                <tr>
+                                    <td colspan="10">
+                                        <ul class="pagination float-right"></ul>
+                                    </td>
+                                </tr>
+                            </tfoot>
+                        </table>
+                        
+                        <!-- 鍒嗛〉鍖哄煙 -->
+                        <div class="row margin-top-xs">
+                            <div class="col-sm-12 float-right">
+                                <vc:create path="frame/pagination"></vc:create>
+                            </div>
+                        </div>
                     </div>
-                </div>
-            </div>
-        </div>
-        <div class="margin-top">
-            <div>
-                <div class="hc-table-div">
-                    <table class="table table-bordered" data-page-size="15">
-                        <thead>
-                            <tr>
-                                <th class="text-center">搴忓彿</th>
-                                <th class="text-center">鍚堝悓缂栧彿</th>
-                                <th class="text-center">鍚堝悓鍚嶇О</th>
-                                <th class="text-center">鍚堝悓绫诲瀷</th>
-                                <th class="text-center">鍚堝悓鐘舵��</th>
-                                <th class="text-center">鎿嶄綔</th>
-                            </tr>
-                        </thead>
-                        <tbody>
-                            <tr v-for="(contract, index) in advertisementSummaryInfo.contracts" :key="contract.contractId">
-                                <td class="text-center">{{index + 1}}</td>
-                                <td class="text-center">{{contract.contractCode}}</td>
-                                <td class="text-center">{{contract.contractName}}</td>
-                                <td class="text-center">{{contract.contractTypeName}}</td>
-                                <td class="text-center">
-                                    <span v-if="contract.state === '1000'" class="label label-info">鑽夌</span>
-                                    <span v-else-if="contract.state === '2000'" class="label label-success">鐢熸晥</span>
-                                    <span v-else-if="contract.state === '3000'" class="label label-warning">杩囨湡</span>
-                                    <span v-else-if="contract.state === '4000'" class="label label-danger">缁堟</span>
-                                    <span v-else class="label label-default">鏈煡</span>
-                                </td>
-                                <td class="text-center">
-                                    <button type="button" class="btn btn-xs btn-info" 
-                                            v-on:click="_openEditContractModel(contract)">缂栬緫</button>
-                                    <button type="button" class="btn btn-xs btn-danger" 
-                                            v-on:click="_openDeleteContractModel(contract)">鍒犻櫎</button>
-                                </td>
-                            </tr>
-                            <tr v-if="advertisementSummaryInfo.contracts.length == 0">
-                                <td colspan="6" style="text-align: center; color: #999;">
-                                    鏆傛棤鏁版嵁
-                                </td>
-                            </tr>
-                        </tbody>
-                    </table>
-                </div>
-            </div>
-            <div class="row margin-top-xs">
-                <div class="col-sm-12 float-right">
-                    <vc:create path="frame/pagination"></vc:create>
                 </div>
             </div>
         </div>
@@ -182,4 +224,304 @@
             </div>
         </div>
     </div>
+    
+    <!-- 骞垮憡鍚堝悓淇℃伅绠$悊鍖哄煙 -->
+    <div class="margin-top">
+        <div class="ibox">
+            <div class="ibox-title">
+                <h5>
+                    骞垮憡鍚堝悓淇℃伅绠$悊
+                </h5>
+            </div>
+            <div class="ibox-content">
+                <!-- 骞垮憡鍚堝悓淇℃伅鏌ヨ鏉′欢鍖哄煙 -->
+                <div class="row">
+                    <div class="col-sm-12">
+                        <div class="ibox">
+                            <div class="ibox-title">
+                                <h5>鏌ヨ鏉′欢</h5>
+                                <div class="ibox-tools">
+                                    <a class="collapse-link">
+                                        <i class="fa fa-chevron-down"></i>
+                                    </a>
+                                </div>
+                            </div>
+                            <div class="ibox-content">
+                                <div class="row">
+                                    <div class="col-sm-3">
+                                        <div class="form-group">
+                                            <label for="adContractId">鍚堝悓ID</label>
+                                            <input type="text" class="form-control" id="adContractId" 
+                                                   v-model="adContractInfo.conditions.contractId" 
+                                                   placeholder="璇疯緭鍏ュ悎鍚孖D">
+                                        </div>
+                                    </div>
+                                    <div class="col-sm-3">
+                                        <div class="form-group">
+                                            <label for="adType">骞垮憡绫诲瀷</label>
+                                            <select class="form-control" id="adType" 
+                                                    v-model="adContractInfo.conditions.adType" 
+                                                    @change="adContractInfo.conditions.subType = ''">
+                                                <option value="">鍏ㄩ儴</option>
+                                                <option v-for="(value, key) in AD_TYPES" :key="key" :value="key">
+                                                    {{key}}
+                                                </option>
+                                            </select>
+                                        </div>
+                                    </div>
+                                    <div class="col-sm-3">
+                                        <div class="form-group">
+                                            <label for="subType">骞垮憡瀛愮被鍨�</label>
+                                            <select class="form-control" id="subType" 
+                                                    v-model="adContractInfo.conditions.subType">
+                                                <option value="">鍏ㄩ儴</option>
+                                                <option v-for="(subType, index) in _getSubTypes(adContractInfo.conditions.adType)" :key="index" 
+                                                        :value="subType">
+                                                    {{subType}}
+                                                </option>
+                                            </select>
+                                        </div>
+                                    </div>
+                                    <div class="col-sm-3">
+                                        <div class="form-group">
+                                            <label for="cooperationForm">鍚堜綔鍐呭褰㈠紡</label>
+                                            <input type="text" class="form-control" id="cooperationForm" 
+                                                   v-model="adContractInfo.conditions.cooperationForm" 
+                                                   placeholder="璇疯緭鍏ュ悎浣滃唴瀹瑰舰寮�">
+                                        </div>
+                                    </div>
+                                </div>
+                                <div class="row">
+                                    <div class="col-sm-12 text-right">
+                                        <button type="button" class="btn btn-primary" v-on:click="_queryAdContractInfo()">
+                                            <i class="fa fa-search"></i>
+                                            鏌ヨ
+                                        </button>
+                                        <button type="button" class="btn btn-primary" v-on:click="_resetAdContractQuery()">
+                                            <i class="fa fa-repeat"></i>
+                                            閲嶇疆
+                                        </button>
+                                        <button type="button" class="btn btn-primary" v-on:click="_openAddAdContractModal()">
+                                            <i class="fa fa-plus"></i>
+                                            娣诲姞骞垮憡鍚堝悓淇℃伅
+                                        </button>
+                                        <button type="button" class="btn btn-primary" v-on:click="_queryAdContractInfoStatistics()" style="margin-left: 10px;">
+                                            <i class="fa fa-bar-chart"></i>
+                                            缁熻
+                                        </button>
+                                    </div>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+                
+                <!-- 骞垮憡鍚堝悓淇℃伅鏁版嵁琛ㄦ牸鍖哄煙 -->
+                <div class="row">
+                    <div class="col-sm-12">
+                        <table class="footable table table-stripped toggle-arrow-tiny" data-page-size="15">
+                            <thead>
+                                <tr>
+                                    <th class="text-center">搴忓彿</th>
+                                    <th class="text-center">鍚堝悓ID</th>
+                                    <th class="text-center">骞垮憡绫诲瀷</th>
+                                    <th class="text-center">骞垮憡瀛愮被鍨�</th>
+                                    <th class="text-center">鍚堜綔鍐呭褰㈠紡</th>
+                                    <th class="text-center">灏忓尯妤兼爧鏁�/鐢垫鏁�</th>
+                                    <th class="text-center">涓婄嚎鏁伴噺</th>
+                                    <th class="text-center">璁炬柦瀹夎浣嶇疆</th>
+                                    <th class="text-center">鎿嶄綔</th>
+                                </tr>
+                            </thead>
+                            <tbody>
+                                <tr v-for="(item, index) in adContractInfo.dataList" :key="item.id">
+                                    <td class="text-center">{{index + 1}}</td>
+                                    <td class="text-center">{{item.contractId || '-'}}</td>
+                                    <td class="text-center">{{item.adType || '-'}}</td>
+                                    <td class="text-center">{{item.subType || '-'}}</td>
+                                    <td class="text-center">{{item.cooperationForm || '-'}}</td>
+                                    <td class="text-center">{{item.buildingElevatorCount || '-'}}</td>
+                                    <td class="text-center">{{item.onlineQuantity || '-'}}</td>
+                                    <td class="text-center">{{item.facilityLocation || '-'}}</td>
+                                    <td class="text-center">
+                                        <button type="button" class="btn btn-xs btn-info" 
+                                                v-on:click="_openEditAdContractModal(item)">缂栬緫</button>
+                                        <button type="button" class="btn btn-xs btn-danger" 
+                                                v-on:click="_deleteAdContractInfo(item.id)">鍒犻櫎</button>
+                                    </td>
+                                </tr>
+                                <tr v-if="adContractInfo.dataList.length == 0">
+                                    <td colspan="9" style="text-align: center; color: #999;">
+                                        鏆傛棤鏁版嵁
+                                    </td>
+                                </tr>
+                            </tbody>
+                            <tfoot>
+                                <tr>
+                                    <td colspan="9">
+                                        <ul class="pagination float-right">
+                                            <li class="page-item" :class="{disabled: adContractInfo.page <= 1}">
+                                                <a class="page-link" @click="_changeAdContractPage(adContractInfo.page - 1)">涓婁竴椤�</a>
+                                            </li>
+                                            <li class="page-item active">
+                                                <a class="page-link">{{adContractInfo.page}}</a>
+                                            </li>
+                                            <li class="page-item" :class="{disabled: adContractInfo.page >= Math.ceil(adContractInfo.total / adContractInfo.row)}">
+                                                <a class="page-link" @click="_changeAdContractPage(adContractInfo.page + 1)">涓嬩竴椤�</a>
+                                            </li>
+                                        </ul>
+                                    </td>
+                                </tr>
+                            </tfoot>
+                        </table>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+    
+    <!-- 骞垮憡鍚堝悓淇℃伅娣诲姞/缂栬緫寮圭獥 -->
+    <div class="modal fade" id="adContractInfoModal" tabindex="-1" role="dialog" aria-labelledby="adContractInfoModalLabel" aria-hidden="true">
+        <div class="modal-dialog modal-lg" role="document">
+            <div class="modal-content">
+                <div class="modal-body">
+                    <h3 class="m-t-none m-b">
+                        {{adContractInfo.isEdit ? '缂栬緫骞垮憡鍚堝悓淇℃伅' : '娣诲姞骞垮憡鍚堝悓淇℃伅'}}
+                    </h3>
+                    <div class="ibox-content">
+                        <div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">鍚堝悓ID <span class="text-danger">*</span></label>
+                                <div class="col-sm-10">
+                                    <input type="text" class="form-control" 
+                                           v-model="adContractInfo.formData.contractId" 
+                                           placeholder="璇疯緭鍏ュ悎鍚孖D">
+                                </div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">骞垮憡绫诲瀷 <span class="text-danger">*</span></label>
+                                <div class="col-sm-10">
+                                    <select class="form-control" 
+                                            v-model="adContractInfo.formData.adType" 
+                                            @change="adContractInfo.formData.subType = ''">
+                                        <option value="">璇烽�夋嫨骞垮憡绫诲瀷</option>
+                                        <option v-for="(value, key) in AD_TYPES" :key="key" :value="key">
+                                            {{key}}
+                                        </option>
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">骞垮憡瀛愮被鍨� <span class="text-danger">*</span></label>
+                                <div class="col-sm-10">
+                                    <select class="form-control" 
+                                            v-model="adContractInfo.formData.subType">
+                                        <option value="">璇烽�夋嫨骞垮憡瀛愮被鍨�</option>
+                                        <option v-for="(subType, index) in _getSubTypes(adContractInfo.formData.adType)" :key="index" 
+                                                :value="subType">
+                                            {{subType}}
+                                        </option>
+                                    </select>
+                                </div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">鍚堜綔鍐呭褰㈠紡 <span class="text-danger">*</span></label>
+                                <div class="col-sm-10">
+                                    <input type="text" class="form-control" 
+                                           v-model="adContractInfo.formData.cooperationForm" 
+                                           placeholder="璇疯緭鍏ュ悎浣滃唴瀹瑰舰寮�">
+                                </div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">灏忓尯妤兼爧鏁�/鐢垫鏁�</label>
+                                <div class="col-sm-10">
+                                    <input type="text" class="form-control" 
+                                           v-model="adContractInfo.formData.buildingElevatorCount" 
+                                           placeholder="璇疯緭鍏ュ皬鍖烘ゼ鏍嬫暟/鐢垫鏁�">
+                                </div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">涓婄嚎鏁伴噺</label>
+                                <div class="col-sm-10">
+                                    <input type="text" class="form-control" 
+                                           v-model="adContractInfo.formData.onlineQuantity" 
+                                           placeholder="璇疯緭鍏ヤ笂绾挎暟閲�">
+                                </div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">璁炬柦瀹夎浣嶇疆</label>
+                                <div class="col-sm-10">
+                                    <input type="text" class="form-control" 
+                                           v-model="adContractInfo.formData.facilityLocation" 
+                                           placeholder="璇疯緭鍏ヨ鏂藉畨瑁呬綅缃�">
+                                </div>
+                            </div>
+                            <div class="ibox-content">
+                                <button class="btn btn-primary float-right" type="button" v-on:click="_saveAdContractInfo()">
+                                    <i class="fa fa-check"></i>&nbsp;淇濆瓨
+                                </button>
+                                <button type="button" class="btn btn-warning float-right" style="margin-right:20px;" data-dismiss="modal">
+                                    <i class="fa fa-close"></i>&nbsp;鍙栨秷
+                                </button>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+    
+    <!-- 骞垮憡鍚堝悓淇℃伅缁熻寮圭獥 -->
+    <div class="modal fade" id="adContractInfoStatisticsModal" tabindex="-1" role="dialog" aria-labelledby="adContractInfoStatisticsModalLabel" aria-hidden="true">
+        <div class="modal-dialog" role="document">
+            <div class="modal-content">
+                <div class="modal-body">
+                    <h3 class="m-t-none m-b">
+                        骞垮憡鍚堝悓淇℃伅缁熻
+                    </h3>
+                    <div class="ibox-content">
+                        <div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">鎬昏褰曟暟</label>
+                                <div class="col-sm-10">
+                                    <input type="text" class="form-control" 
+                                           :value="adContractInfo.statistics.totalCount" 
+                                           readonly>
+                                </div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">骞垮憡绫诲瀷缁熻</label>
+                                <div class="col-sm-10">
+                                    <div v-for="(count, type) in adContractInfo.statistics.adTypeCount" :key="type" class="mb-2">
+                                        <label>{{type}}: </label>
+                                        <span>{{count}}鏉�</span>
+                                    </div>
+                                    <div v-if="Object.keys(adContractInfo.statistics.adTypeCount).length === 0" class="text-muted">
+                                        鏆傛棤鏁版嵁
+                                    </div>
+                                </div>
+                            </div>
+                            <div class="form-group row">
+                                <label class="col-sm-2 col-form-label">骞垮憡瀛愮被鍨嬬粺璁�</label>
+                                <div class="col-sm-10">
+                                    <div v-for="(count, type) in adContractInfo.statistics.subTypeCount" :key="type" class="mb-2">
+                                        <label>{{type}}: </label>
+                                        <span>{{count}}鏉�</span>
+                                    </div>
+                                    <div v-if="Object.keys(adContractInfo.statistics.subTypeCount).length === 0" class="text-muted">
+                                        鏆傛棤鏁版嵁
+                                    </div>
+                                </div>
+                            </div>
+                            <div class="ibox-content">
+                                <button type="button" class="btn btn-primary float-right" data-dismiss="modal">
+                                    <i class="fa fa-close"></i>&nbsp;鍏抽棴
+                                </button>
+                            </div>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
 </div>
\ No newline at end of file

--
Gitblit v1.8.0