From 5bdaf416d66b675131004de1aba5d161772a52b0 Mon Sep 17 00:00:00 2001
From: liubp <1535785116@qq.com>
Date: 星期五, 19 十二月 2025 18:27:52 +0800
Subject: [PATCH] 添加所属小区字段
---
public/pages/property/costDetail/costDetail.js | 244 +++++++++++++
public/pages/common/communityManage/detail/detail.html | 8
public/pages/admin/contractChangeManage/contractChangeManage.html | 4
public/pages/admin/contractChangeManage/contractChangeManage.js | 6
public/pages/admin/newContractManage/newContractManage.html | 4
public/pages/admin/expirationContractManage/expirationContractManage.js | 4
public/pages/common/communityManage/edit/edit.html | 17
public/pages/admin/addContract/addContract.js | 36 +
public/pages/common/communityManage/edit/edit.js | 75 +++
public/pages/property/costDetail/costDetail.html | 167 ++++-----
public/pages/admin/addContract/addContract.html | 19 +
public/pages/admin/contractTypeManage/contractTypeManage.js | 6
public/pages/common/communityManage/add/add.js | 94 ++--
public/pages/admin/contractManage/contractManage.js | 6
public/pages/admin/newContractManage/newContractManage.js | 6
public/pages/admin/expirationContractManage/expirationContractManage.html | 4
public/pages/admin/contractManage/contractManage.html | 4
public/css/vc.css | 310 ++++++++++++++++
public/pages/common/communityManage/add/add.html | 6
public/pages/common/communityManage/detail/detail.js | 2
20 files changed, 837 insertions(+), 185 deletions(-)
diff --git a/public/css/vc.css b/public/css/vc.css
index 80e53c4..d756004 100644
--- a/public/css/vc.css
+++ b/public/css/vc.css
@@ -9,7 +9,7 @@
--vc-menu-sub-font-color: #545761;
--vc-menu-sub-bg-active-color: #EAF0FE;
--vc-menu-sub-active-font-color: #3E77FC;
- --vc-menu-sub-title-font-color: #4F525C;
+ --vc-menu-sub-title-font-color: #404357;
--vc-menu-sub-footer: #F6F6F7;
--vc-nav-bg: #1D1F2D;
--vc-nav-color: #888888;
@@ -534,7 +534,7 @@
}
.border-bottom {
- border-bottom: 1px solid #e7eaec !important;
+ border-bottom: 1px solid #e7eaec;
}
.border-radius {
@@ -747,7 +747,7 @@
.vc-nav ul li.active {
color: var(--vc-nav-active-color);
- border-bottom: 2px solid var(--vc-nav-active-color) !important;
+ border-bottom: 2px solid var(--vc-nav-active-color);
}
.vc-main .vc-main-content {
@@ -1042,7 +1042,7 @@
}
.table-scroll {
- overflow-y: scroll !important;
+ overflow-y: scroll;
}
.hc-table-div::-webkit-scrollbar {
@@ -1197,6 +1197,7 @@
font-size: 14px;
font-weight: bold;
margin: 10px 0 5px;
+ color: #404357;
}
.community-add .detail-note {
@@ -1240,13 +1241,310 @@
.community-add input.error,
.community-add select.error {
- border-color: #dc3545 !important;
+ border-color: #dc3545;
background-color: #fff5f5;
box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
.community-add input.error:focus,
.community-add select.error:focus {
- border-color: #dc3545 !important;
+ border-color: #dc3545;
box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
+}
+
+.cost-detail-container {
+ width: 98%;
+ margin: 20px auto;
+ font-family: "寰蒋闆呴粦", sans-serif;
+ background: transparent;
+ padding: 0;
+}
+
+.cost-detail-container * {
+ box-sizing: border-box;
+}
+
+.cost-detail-container h2 {
+ margin-bottom: 20px;
+ color: #333;
+ font-size: 18px;
+ font-weight: 600;
+}
+
+.cost-detail-container .search-bar {
+ margin-bottom: 15px;
+ padding: 15px;
+ background: #f5f5f5;
+ border-radius: 4px;
+ display: flex;
+ align-items: center;
+ flex-wrap: wrap;
+ gap: 12px;
+}
+
+.cost-detail-container .search-bar div {
+ display: flex;
+ align-items: center;
+ gap: 8px;
+}
+
+.cost-detail-container .search-bar label {
+ font-size: 14px;
+ color: #333;
+ white-space: nowrap;
+ font-weight: 500;
+}
+
+.cost-detail-container .search-bar input,
+.cost-detail-container .search-bar select {
+ padding: 6px 12px;
+ border: 1px solid #d9d9d9;
+ border-radius: 4px;
+ font-size: 14px;
+ height: 32px;
+ min-width: 150px;
+ background: #fff;
+}
+
+.cost-detail-container .search-bar .queryDate {
+ position: relative;
+}
+
+.cost-detail-container .search-bar input:focus,
+.cost-detail-container .search-bar select:focus {
+ outline: none;
+ border-color: #1677ff;
+}
+
+.cost-detail-container .search-bar button {
+ padding: 6px 16px;
+ border-radius: 4px;
+ cursor: pointer;
+ font-size: 14px;
+ height: 32px;
+ transition: all 0.3s;
+}
+
+.cost-detail-container .search-bar .query-btn {
+ background: #1677ff;
+ color: #fff;
+ border: 1px solid #1677ff;
+}
+
+.cost-detail-container .search-bar .query-btn:hover {
+ background: #4096ff;
+ color: #fff;
+ border-color: #4096ff;
+}
+
+.cost-detail-container .search-bar .reset-btn {
+ background: #fff;
+ color: #666;
+ border: 1px solid #d9d9d9;
+}
+
+.cost-detail-container .search-bar .reset-btn:hover {
+ color: #333;
+ border-color: #bfbfbf;
+}
+
+.cost-detail-container .search-bar .action-buttons {
+ margin-left: auto;
+ display: flex;
+ gap: 12px;
+}
+
+.cost-detail-container .action-buttons button {
+ padding: 6px 16px;
+ border-radius: 4px;
+ cursor: pointer;
+ font-size: 14px;
+ height: 32px;
+ transition: all 0.3s;
+}
+
+.cost-detail-container .action-buttons .add-btn {
+ background: #1677ff;
+ color: #fff;
+ border: 1px solid #1677ff;
+}
+
+.cost-detail-container .action-buttons .add-btn:hover {
+ background: #4096ff;
+}
+
+.cost-detail-container .action-buttons .import-btn {
+ background: #fff;
+ color: #333;
+ border: 1px solid #d9d9d9;
+}
+
+.cost-detail-container .action-buttons .import-btn:hover {
+ background: #f5f5f5;
+ border-color: #bfbfbf;
+}
+
+.cost-detail-container table {
+ width: 100%;
+ border-collapse: collapse;
+ border: 1px solid #e8e8e8;
+ font-size: 14px;
+ background: #fff;
+ margin-bottom: 0;
+}
+
+.cost-detail-container table th,
+.cost-detail-container table td {
+ padding: 12px;
+ border: 1px solid #e8e8e8;
+ text-align: center;
+}
+
+.cost-detail-container table th {
+ background: #f5f5f5;
+ font-weight: 600;
+ white-space: nowrap;
+ color: #333;
+ text-align: center;
+}
+
+.cost-detail-container table td {
+ color: #333;
+ text-align: center;
+}
+
+.cost-detail-container table tbody tr {
+ background: #fff;
+}
+
+.cost-detail-container table tbody tr:hover {
+ background: #f5f5f5;
+}
+
+.cost-detail-container table td a {
+ color: #1677ff;
+ text-decoration: none;
+ margin-right: 12px;
+ cursor: pointer;
+ white-space: nowrap;
+}
+
+.cost-detail-container table td a:hover {
+ text-decoration: underline;
+ color: #4096ff;
+}
+
+.cost-detail-container table td a:last-child {
+ margin-right: 0;
+}
+
+.cost-detail-container .pagination {
+ margin-top: 20px;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ font-size: 14px;
+ color: #333;
+}
+
+.cost-detail-container .pagination .pagination-info {
+ color: #666;
+}
+
+.cost-detail-container .pagination .pagination-controls {
+ display: flex;
+ align-items: center;
+ gap: 8px;
+}
+
+.cost-detail-container .pagination .page-size-select {
+ padding: 4px 8px;
+ border: 1px solid #d9d9d9;
+ border-radius: 4px;
+ font-size: 14px;
+ height: 32px;
+ width: 60px;
+}
+
+.cost-detail-container .pagination .page-size-label,
+.cost-detail-container .pagination .jump-label,
+.cost-detail-container .pagination .page-label {
+ color: #666;
+ margin: 0 4px;
+}
+
+.cost-detail-container .pagination .page-btn {
+ padding: 4px 8px;
+ border: 1px solid #d9d9d9;
+ background: #fff;
+ cursor: pointer;
+ font-size: 14px;
+ min-width: 32px;
+ height: 32px;
+ border-radius: 4px;
+ transition: all 0.3s;
+ color: #333;
+}
+
+.cost-detail-container .pagination .page-btn:hover:not(:disabled) {
+ color: #1677ff;
+ border-color: #1677ff;
+}
+
+.cost-detail-container .pagination .page-btn:disabled {
+ opacity: 0.5;
+ cursor: not-allowed;
+ background: #f5f5f5;
+}
+
+.cost-detail-container .pagination .page-btn.active {
+ background: #1677ff;
+ color: #fff;
+ border-color: #1677ff;
+}
+
+.cost-detail-container .pagination .page-ellipsis {
+ color: #666;
+ padding: 0 4px;
+}
+
+.cost-detail-container .pagination .jump-input {
+ width: 50px;
+ padding: 4px 8px;
+ text-align: center;
+ border: 1px solid #d9d9d9;
+ border-radius: 4px;
+ font-size: 14px;
+ height: 32px;
+ margin: 0 4px;
+}
+
+.cost-detail-container .pagination .jump-input:focus {
+ outline: none;
+ border-color: #1677ff;
+}
+
+.cost-detail-container .action-buttons .add-btn i {
+ margin-right: 4px;
+}
+
+.cost-detail-container .pagination .page-btn[disabled] {
+ background-color: #f5f5f5;
+ border-color: #d9d9d9;
+ color: rgba(0, 0, 0, 0.25);
+}
+
+@media (max-width: 1200px) {
+ .cost-detail-container {
+ width: 95%;
+ overflow-x: auto;
+ }
+
+ .cost-detail-container table {
+ min-width: 1400px;
+ }
+}
+
+#costDetailTableHead th{
+ background-color: rgb(233, 243, 255);
}
\ No newline at end of file
diff --git a/public/pages/admin/addContract/addContract.html b/public/pages/admin/addContract/addContract.html
index 31b9a72..1f3ca00 100644
--- a/public/pages/admin/addContract/addContract.html
+++ b/public/pages/admin/addContract/addContract.html
@@ -57,6 +57,25 @@
<div class="form-group row">
<label class="col-sm-3 col-form-label padding-lr-sm text-right">
<span>
+ <vc:i18n name="鎵�灞炲皬鍖�" namespace="addContract"></vc:i18n>
+ </span>
+ </label>
+ <div class="col-sm-9 padding-lr-xs">
+ <select class="custom-select" v-model="addContractInfo.communityId"
+ @change="_changeCommunity()">
+ <option selected disabled value="">
+ {{vc.i18n('璇烽�夋嫨鎵�灞炲皬鍖�','addContract')}}
+ </option>
+ <option v-for="(item,index) in addContractInfo.communities" :key="index" :value="item.communityId">{{item.name}}
+ </option>
+ </select>
+ </div>
+ </div>
+ </div>
+ <div class="col-sm-4">
+ <div class="form-group row">
+ <label class="col-sm-3 col-form-label padding-lr-sm text-right">
+ <span>
<vc:i18n name="鍚堝悓鍚嶇О" namespace="addContract"></vc:i18n>
</span>
</label>
diff --git a/public/pages/admin/addContract/addContract.js b/public/pages/admin/addContract/addContract.js
index e27b978..ccfff1b 100644
--- a/public/pages/admin/addContract/addContract.js
+++ b/public/pages/admin/addContract/addContract.js
@@ -3,6 +3,7 @@
data: {
addContractInfo: {
communityId: vc.getCurrentCommunity().communityId,
+ communities: [],
contractId: '',
contractName: '',
contractCode: '',
@@ -53,6 +54,7 @@
},
_initMethod: function () {
vc.component._initAddContractInfo();
+ $that._loadCommunities();
$that._loadAddContractType();
$that._loadAddContractParkA();
$that._loadAddContractParkB();
@@ -344,6 +346,13 @@
param: "",
errInfo: "鍚堝悓绛捐鏃堕棿涓嶈兘涓虹┖"
}
+ ],
+ 'addContractInfo.communityId': [
+ {
+ limit: "required",
+ param: "",
+ errInfo: "璇烽�夋嫨鎵�灞炲皬鍖�"
+ }
]
});
},
@@ -372,7 +381,8 @@
vc.toast(vc.validate.errInfo);
return;
}
- $that.addContractInfo.communityId = vc.getCurrentCommunity().communityId;
+ // 浣跨敤涓嬫媺妗嗛�変腑鐨刢ommunityId浼犻�掔粰鎺ュ彛
+ // addContractInfo.communityId 宸查�氳繃 v-model 缁戝畾锛屽寘鍚敤鎴烽�夋嫨鐨勫��
vc.http.apiPost(
'/contract/saveContract',
@@ -443,6 +453,27 @@
staffName: '',
nextUserId: ''
};
+ },
+ _loadCommunities: function () {
+ let param = {
+ params: {
+ page: 1,
+ row: 100
+ }
+ };
+ //鍙戦�乬et璇锋眰
+ vc.http.apiGet('/community.listCommunitys',
+ param,
+ function (json, res) {
+ let _communityInfo = JSON.parse(json);
+ if (_communityInfo.code == 0) {
+ $that.addContractInfo.communities = _communityInfo.communitys || [];
+ }
+ },
+ function (errInfo, error) {
+ console.log('璇锋眰澶辫触澶勭悊');
+ }
+ );
},
_loadAddContractType: function () {
let param = {
@@ -567,6 +598,9 @@
}
);
},
+ _changeCommunity: function () {
+ // 灏忓尯鍙樻洿鏃剁殑澶勭悊閫昏緫
+ },
_goBack: function () {
vc.goBack();
},
diff --git a/public/pages/admin/contractChangeManage/contractChangeManage.html b/public/pages/admin/contractChangeManage/contractChangeManage.html
index 5769b4f..661b199 100644
--- a/public/pages/admin/contractChangeManage/contractChangeManage.html
+++ b/public/pages/admin/contractChangeManage/contractChangeManage.html
@@ -76,6 +76,9 @@
<thead>
<tr>
<th class="text-center">
+ <vc:i18n name="鎵�灞炲皬鍖�" namespace="contractChangeManage"></vc:i18n>
+ </th>
+ <th class="text-center">
<vc:i18n name="鍚堝悓鍚嶇О" namespace="contractChangeManage"></vc:i18n>
</th>
<th class="text-center">
@@ -112,6 +115,7 @@
</thead>
<tbody>
<tr v-for="contract in contractChangeManageInfo.contracts">
+ <td class="text-center">{{contract.communityName}}</td>
<td class="text-center">{{contract.contractName}}</td>
<td class="text-center">{{contract.contractCode}}</td>
<td class="text-center">{{contract.contractTypeName}}</td>
diff --git a/public/pages/admin/contractChangeManage/contractChangeManage.js b/public/pages/admin/contractChangeManage/contractChangeManage.js
index 5f74b29..7f0b8dc 100644
--- a/public/pages/admin/contractChangeManage/contractChangeManage.js
+++ b/public/pages/admin/contractChangeManage/contractChangeManage.js
@@ -13,7 +13,7 @@
moreCondition: false,
contractId: '',
conditions: {
- communityId: vc.getCurrentCommunity().communityId,
+ // communityId: vc.getCurrentCommunity().communityId,
contractName: '',
contractCode: '',
contractType: ''
@@ -40,7 +40,7 @@
var param = {
params: vc.component.contractChangeManageInfo.conditions
};
- param.params.communityId = vc.getCurrentCommunity().communityId;
+ // param.params.communityId = vc.getCurrentCommunity().communityId;
param.params.contractName = param.params.contractName.trim();
param.params.contractCode = param.params.contractCode.trim();
//鍙戦�乬et璇锋眰
@@ -96,7 +96,7 @@
},
//閲嶇疆
_resetContractMethod: function () {
- vc.component.contractChangeManageInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
+ // vc.component.contractChangeManageInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
vc.component.contractChangeManageInfo.conditions.contractName = "";
vc.component.contractChangeManageInfo.conditions.contractCode = "";
vc.component.contractChangeManageInfo.conditions.contractType = "";
diff --git a/public/pages/admin/contractManage/contractManage.html b/public/pages/admin/contractManage/contractManage.html
index f272222..590ddec 100644
--- a/public/pages/admin/contractManage/contractManage.html
+++ b/public/pages/admin/contractManage/contractManage.html
@@ -99,6 +99,9 @@
<thead>
<tr>
<th class="text-center">
+ <vc:i18n name="鎵�灞炲皬鍖�" namespace="contractManage"></vc:i18n>
+ </th>
+ <th class="text-center">
<vc:i18n name="鍚堝悓鍚嶇О" namespace="contractManage"></vc:i18n>
</th>
<th class="text-center">
@@ -135,6 +138,7 @@
</thead>
<tbody>
<tr v-for="contract in contractManageInfo.contracts">
+ <td class="text-center">{{contract.communityName}}</td>
<td class="text-center">{{contract.contractName}}</td>
<td class="text-center">{{contract.contractCode}}</td>
<td class="text-center">
diff --git a/public/pages/admin/contractManage/contractManage.js b/public/pages/admin/contractManage/contractManage.js
index 8f977d9..8b257a9 100644
--- a/public/pages/admin/contractManage/contractManage.js
+++ b/public/pages/admin/contractManage/contractManage.js
@@ -13,7 +13,7 @@
moreCondition: false,
contractId: '',
conditions: {
- communityId: vc.getCurrentCommunity().communityId,
+ // communityId: vc.getCurrentCommunity().communityId,
contractNameLike: '',
contractCodeLike: '',
contractType: '',
@@ -101,7 +101,7 @@
var param = {
params: vc.component.contractManageInfo.conditions
};
- param.params.communityId = vc.getCurrentCommunity().communityId;
+ // param.params.communityId = vc.getCurrentCommunity().communityId;
param.params.contractNameLike = param.params.contractNameLike.trim();
param.params.contractCodeLike = param.params.contractCodeLike.trim();
param.params.partyBLike = param.params.partyBLike.trim();
@@ -159,7 +159,7 @@
},
//閲嶇疆
_resetContractMethod: function () {
- vc.component.contractManageInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
+ // vc.component.contractManageInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
vc.component.contractManageInfo.conditions.contractNameLike = "";
// vc.component.contractManageInfo.conditions.contractCode = "";
vc.component.contractManageInfo.conditions.contractType = "";
diff --git a/public/pages/admin/contractTypeManage/contractTypeManage.js b/public/pages/admin/contractTypeManage/contractTypeManage.js
index b8516b5..3d2de5f 100644
--- a/public/pages/admin/contractTypeManage/contractTypeManage.js
+++ b/public/pages/admin/contractTypeManage/contractTypeManage.js
@@ -21,7 +21,7 @@
typeName: '',
audit: '',
contractTypeId: '',
- communityId: vc.getCurrentCommunity().communityId,
+ // communityId: vc.getCurrentCommunity().communityId,
}
}
@@ -50,7 +50,7 @@
var param = {
params: vc.component.contractTypeManageInfo.conditions
};
- param.params.communityId = vc.getCurrentCommunity().communityId;
+ // param.params.communityId = vc.getCurrentCommunity().communityId;
param.params.typeName = param.params.typeName.trim();
param.params.audit = param.params.audit.trim();
//鍙戦�乬et璇锋眰
@@ -88,7 +88,7 @@
//閲嶇疆
_resetContractTypeMethod: function () {
vc.component.contractTypeManageInfo.conditions.typeName = "";
- vc.component.contractTypeManageInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
+ // vc.component.contractTypeManageInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
vc.component.contractTypeManageInfo.conditions.audit = "";
vc.component._listContractTypes(DEFAULT_PAGE, DEFAULT_ROWS);
},
diff --git a/public/pages/admin/expirationContractManage/expirationContractManage.html b/public/pages/admin/expirationContractManage/expirationContractManage.html
index ddef9e3..d9978fc 100644
--- a/public/pages/admin/expirationContractManage/expirationContractManage.html
+++ b/public/pages/admin/expirationContractManage/expirationContractManage.html
@@ -64,6 +64,9 @@
<thead>
<tr>
<th class="text-center">
+ <span><vc:i18n name="鎵�灞炲皬鍖�" namespace="expirationContractManage"></vc:i18n></span>
+ </th>
+ <th class="text-center">
<span><vc:i18n name="鍚堝悓鍚嶇О" namespace="expirationContractManage"></vc:i18n></span>
</th>
<th class="text-center">
@@ -100,6 +103,7 @@
</thead>
<tbody>
<tr v-for="contract in expirationContractInfo.contracts">
+ <td class="text-center">{{contract.communityName}}</td>
<td class="text-center">{{contract.contractName}}</td>
<td class="text-center">{{contract.contractCode}}</td>
<td class="text-center">{{contract.contractTypeName}}</td>
diff --git a/public/pages/admin/expirationContractManage/expirationContractManage.js b/public/pages/admin/expirationContractManage/expirationContractManage.js
index b1ccc13..55c3028 100644
--- a/public/pages/admin/expirationContractManage/expirationContractManage.js
+++ b/public/pages/admin/expirationContractManage/expirationContractManage.js
@@ -13,7 +13,7 @@
moreCondition: false,
contractId: '',
conditions: {
- communityId: vc.getCurrentCommunity().communityId,
+ // communityId: vc.getCurrentCommunity().communityId,
contractNameLike: '',
contractCode: '',
contractType: '',
@@ -93,7 +93,7 @@
},
//閲嶇疆
_resetContractMethod: function () {
- vc.component.expirationContractInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
+ // vc.component.expirationContractInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
vc.component.expirationContractInfo.conditions.contractNameLike = "";
vc.component.expirationContractInfo.conditions.contractCode = "";
vc.component.expirationContractInfo.conditions.contractType = "";
diff --git a/public/pages/admin/newContractManage/newContractManage.html b/public/pages/admin/newContractManage/newContractManage.html
index b6e363b..a2f1306 100644
--- a/public/pages/admin/newContractManage/newContractManage.html
+++ b/public/pages/admin/newContractManage/newContractManage.html
@@ -67,6 +67,9 @@
<thead>
<tr>
<th class="text-center">
+ <span><vc:i18n name="鎵�灞炲皬鍖�" namespace="newContractManage"></vc:i18n></span>
+ </th>
+ <th class="text-center">
<span><vc:i18n name="鍚堝悓鍚嶇О" namespace="newContractManage"></vc:i18n></span>
</th>
<th class="text-center">
@@ -103,6 +106,7 @@
</thead>
<tbody>
<tr v-for="contract in newContractManageInfo.contracts">
+ <td class="text-center">{{contract.communityName}}</td>
<td class="text-center">{{contract.contractName}}</td>
<td class="text-center">{{contract.contractCode}}</td>
<td class="text-center">
diff --git a/public/pages/admin/newContractManage/newContractManage.js b/public/pages/admin/newContractManage/newContractManage.js
index c924e5e..4192c76 100644
--- a/public/pages/admin/newContractManage/newContractManage.js
+++ b/public/pages/admin/newContractManage/newContractManage.js
@@ -14,7 +14,7 @@
contractId: '',
conditions: {
contractNameLike: '',
- communityId: vc.getCurrentCommunity().communityId,
+ // communityId: vc.getCurrentCommunity().communityId,
contractCode: '',
contractType: '',
state: ''
@@ -42,7 +42,7 @@
params: vc.component.newContractManageInfo.conditions
};
param.params.contractNameLike = param.params.contractNameLike.trim();
- param.params.communityId = vc.getCurrentCommunity().communityId;
+ // param.params.communityId = vc.getCurrentCommunity().communityId;
param.params.contractCode = param.params.contractCode.trim();
//鍙戦�乬et璇锋眰
vc.http.apiGet('/contract/queryContract',
@@ -102,7 +102,7 @@
//閲嶇疆
_resetContractMethod: function () {
vc.component.newContractManageInfo.conditions.contractNameLike = "";
- vc.component.newContractManageInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
+ // vc.component.newContractManageInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
vc.component.newContractManageInfo.conditions.contractCode = "";
vc.component.newContractManageInfo.conditions.contractType = "";
vc.component._listContracts(DEFAULT_PAGE, DEFAULT_ROWS);
diff --git a/public/pages/common/communityManage/add/add.html b/public/pages/common/communityManage/add/add.html
index c3ae5cb..1d4bc8d 100644
--- a/public/pages/common/communityManage/add/add.html
+++ b/public/pages/common/communityManage/add/add.html
@@ -238,10 +238,10 @@
<div class="radio-group" style="width: 153px; margin-right: 90px;">
<label>鏄惁鏈夊浐瀹氱殑瑁呬慨鍨冨溇鍫嗘斁鐐�</label>
- <label style="margin-left: -40px;"><input type="radio" name="garbage" value=true v-model="formData.hasDecorationRubbishPoint"> 鏈�</label>
- <label style="margin-left: -40px;"><input type="radio" name="garbage" value=false v-model="formData.hasDecorationRubbishPoint"> 鏃�</label>
+ <label><input type="radio" name="garbage" value="鏄�" v-model="formData.hasDecorationRubbishPoint"> 鏈�</label>
+ <label><input type="radio" name="garbage" value="鍚�" v-model="formData.hasDecorationRubbishPoint"> 鏃�</label>
</div>
- <label>闇�淇濆畨鍊煎畧鍑哄叆鍙�(涓�)</label>
+ <label style="margin-left: 100px;">闇�淇濆畨鍊煎畧鍑哄叆鍙�(涓�)</label>
<input type="text" placeholder="璇疯緭鍏�" style="width: 153px;" v-model.number="formData.securityEntranceCount">
</div>
</div>
diff --git a/public/pages/common/communityManage/add/add.js b/public/pages/common/communityManage/add/add.js
index 292903a..43ee78d 100644
--- a/public/pages/common/communityManage/add/add.js
+++ b/public/pages/common/communityManage/add/add.js
@@ -122,7 +122,7 @@
// 纭繚 vc.component 宸插畬鍏ㄥ垵濮嬪寲鍚庡啀璋冪敤
let retryCount = 0;
const maxRetries = 20; // 鏈�澶氶噸璇�20娆★紙绾�1绉掞級
- const loadData = function() {
+ const loadData = function () {
if (vc.component && typeof vc.component._loadCommunityDetail === 'function') {
vc.component._loadCommunityDetail();
} else {
@@ -140,14 +140,14 @@
_initEvent: function () {
// 鍒濆鍖栨椂娣诲姞杈撳叆浜嬩欢鐩戝惉锛岃嚜鍔ㄧЩ闄ら敊璇牱寮�
const $that = this;
- setTimeout(function() {
+ setTimeout(function () {
// 涓烘墍鏈夎緭鍏ユ鍜岄�夋嫨妗嗘坊鍔犺緭鍏ヤ簨浠剁洃鍚�
const inputs = document.querySelectorAll('.community-add input, .community-add select');
- inputs.forEach(function(input) {
- input.addEventListener('input', function() {
+ inputs.forEach(function (input) {
+ input.addEventListener('input', function () {
$that.removeError(input.id);
});
- input.addEventListener('change', function() {
+ input.addEventListener('change', function () {
$that.removeError(input.id);
});
});
@@ -155,33 +155,33 @@
},
methods: {
// 娣诲姞閿欒鏍峰紡
- addError: function(elementId) {
+ addError: function (elementId) {
const element = document.getElementById(elementId);
if (element) {
element.classList.add('error');
}
},
// 绉婚櫎閿欒鏍峰紡
- removeError: function(elementId) {
+ removeError: function (elementId) {
const element = document.getElementById(elementId);
if (element) {
element.classList.remove('error');
}
},
// 娓呴櫎鎵�鏈夐敊璇牱寮�
- clearAllErrors: function() {
+ clearAllErrors: function () {
const elements = document.querySelectorAll('.community-add input.error, .community-add select.error');
- elements.forEach(function(element) {
+ elements.forEach(function (element) {
element.classList.remove('error');
});
},
- toBoolString: function(value, defaultValue) {
+ toBoolString: function (value, defaultValue) {
if (value === undefined || value === null) {
return defaultValue;
}
return value ? 'true' : 'false';
},
- chooseProvince: function(event) {
+ chooseProvince: function (event) {
const provCode = event.target.value;
vc.component.selectProv = provCode;
vc.component.selectCity = '';
@@ -190,7 +190,7 @@
vc.component.areas = [];
// 鏇存柊 formData 涓殑鐪佷唤鍚嶇О
if (vc.component.provs && vc.component.provs.length > 0) {
- vc.component.provs.forEach(function(_param) {
+ vc.component.provs.forEach(function (_param) {
if (_param.areaCode == provCode) {
vc.component.selectProvName = _param.areaName;
vc.component.formData.projectAddressProvince = _param.areaName;
@@ -204,14 +204,14 @@
vc.component._initArea('202', provCode);
}
},
- chooseCity: function(event) {
+ chooseCity: function (event) {
const cityCode = event.target.value;
vc.component.selectCity = cityCode;
vc.component.selectArea = '';
vc.component.areas = [];
// 鏇存柊 formData 涓殑鍩庡競鍚嶇О
if (vc.component.citys && vc.component.citys.length > 0) {
- vc.component.citys.forEach(function(_param) {
+ vc.component.citys.forEach(function (_param) {
if (_param.areaCode == cityCode) {
vc.component.selectCityName = _param.areaName;
vc.component.formData.projectAddressCity = _param.areaName;
@@ -224,25 +224,25 @@
vc.component._initArea('303', cityCode);
}
},
- chooseArea: function(event) {
+ chooseArea: function (event) {
const areaCode = event.target.value;
vc.component.selectArea = areaCode;
vc.component.formData.cityCode = areaCode;
vc.component.formData.areaAddress = '';
-
+
// 鏇存柊 formData 涓殑鍖哄幙鍚嶇О
if (vc.component.areas && vc.component.areas.length > 0) {
- vc.component.areas.forEach(function(_param) {
+ vc.component.areas.forEach(function (_param) {
if (_param.areaCode == areaCode) {
vc.component.selectAreaName = _param.areaName;
vc.component.formData.projectAddressDistrict = _param.areaName;
}
});
}
-
+
// 鏋勫缓鍖哄煙鍦板潃
if (vc.component.provs && vc.component.provs.length > 0) {
- vc.component.provs.forEach(function(_param) {
+ vc.component.provs.forEach(function (_param) {
if (_param.areaCode == vc.component.selectProv) {
vc.component.selectProvName = _param.areaName;
vc.component.formData.areaAddress = _param.areaName;
@@ -250,7 +250,7 @@
});
}
if (vc.component.citys && vc.component.citys.length > 0) {
- vc.component.citys.forEach(function(_param) {
+ vc.component.citys.forEach(function (_param) {
if (_param.areaCode == vc.component.selectCity) {
vc.component.selectCityName = _param.areaName;
if (vc.component.formData.areaAddress) {
@@ -262,7 +262,7 @@
});
}
if (vc.component.areas && vc.component.areas.length > 0) {
- vc.component.areas.forEach(function(_param) {
+ vc.component.areas.forEach(function (_param) {
if (_param.areaCode == vc.component.selectArea) {
vc.component.selectAreaName = _param.areaName;
if (vc.component.formData.areaAddress) {
@@ -274,7 +274,7 @@
});
}
},
- _initArea: function(_areaLevel, _parentAreaCode) {
+ _initArea: function (_areaLevel, _parentAreaCode) {
var _param = {
params: {
areaLevel: _areaLevel,
@@ -291,7 +291,7 @@
// 濉厖鐪佷唤涓嬫媺妗�
const provinceSelect = document.getElementById('province');
if (provinceSelect) {
- _tmpAreas.forEach(function(item) {
+ _tmpAreas.forEach(function (item) {
const option = document.createElement('option');
option.value = item.areaCode;
option.textContent = item.areaName;
@@ -304,7 +304,7 @@
const citySelect = document.getElementById('city');
if (citySelect) {
citySelect.innerHTML = '<option value="">璇烽�夋嫨甯�</option>';
- _tmpAreas.forEach(function(item) {
+ _tmpAreas.forEach(function (item) {
const option = document.createElement('option');
option.value = item.areaCode;
option.textContent = item.areaName;
@@ -317,7 +317,7 @@
const areaSelect = document.getElementById('area');
if (areaSelect) {
areaSelect.innerHTML = '<option value="">璇烽�夋嫨鍖�</option>';
- _tmpAreas.forEach(function(item) {
+ _tmpAreas.forEach(function (item) {
const option = document.createElement('option');
option.value = item.areaCode;
option.textContent = item.areaName;
@@ -338,7 +338,7 @@
return {};
}
return {
- communityId: info.communityId || info.communityId || '',
+ communityId: info.communityId || '',
newBId: info.newBId || '',
feePrice: info.feePrice || '',
projectAddressProvince: info.projectAddressProvince || info.provinceName || '',
@@ -393,7 +393,7 @@
groundNonMotorVehicleArea: info.groundNonMotorVehicleArea || info.nonElectricCarGroundArea || '',
undergroundNonMotorVehicleArea: info.undergroundNonMotorVehicleArea || info.nonElectricCarUndergroundArea || '',
clubhouseArea: info.clubhouseArea || info.clubArea || '',
- hasDecorationRubbishPoint: vc.component.toBoolString(info.hasDecorationRubbishPoint, info.garbageFixed ? 'true' : 'false'),
+ hasDecorationRubbishPoint: info.hasDecorationRubbishPoint === '鏄�' || info.garbageFixed == 1 ? '鏄�' : '鍚�',
securityEntranceCount: info.securityEntranceCount || info.gateGuardTotal || '',
elevatorCount: info.elevatorCount || info.elevatorTotal || '',
elevatorType: info.elevatorType || '',
@@ -435,17 +435,17 @@
}
const $that = this;
const formData = vc.component.formData;
-
+
// 娓呴櫎涔嬪墠鐨勯敊璇牱寮�
vc.component.clearAllErrors();
-
+
// 楠岃瘉蹇呭~瀛楁
if (!formData.name || formData.name.trim() === '') {
vc.toast('璇疯緭鍏ュ皬鍖哄悕绉�');
vc.component.addError('input-name');
return;
}
-
+
// 鏋勫缓璇︾粏鍦板潃
const addressParts = [];
if (formData.projectAddressTown) {
@@ -455,7 +455,7 @@
addressParts.push(formData.projectAddressRoad);
}
const address = addressParts.join(' ') || '';
-
+
if (!address || address.trim() === '') {
vc.toast('璇疯緭鍏ヨ缁嗗湴鍧�');
if (!formData.projectAddressTown || formData.projectAddressTown.trim() === '') {
@@ -466,7 +466,7 @@
}
return;
}
-
+
// 鏋勫缓鍖哄煙鍦板潃
let areaAddress = formData.areaAddress || '';
// 濡傛灉 areaAddress 涓虹┖锛屽皾璇曚粠鐪佸競鍖哄悕绉版瀯寤�
@@ -489,7 +489,7 @@
}
areaAddress = areaParts.join('');
}
-
+
if (!areaAddress || areaAddress.trim() === '') {
vc.toast('璇烽�夋嫨鎵�鍦ㄥ煄甯�');
if (!vc.component.selectProv) {
@@ -503,7 +503,7 @@
}
return;
}
-
+
// 楠岃瘉鍖哄煙缂栫爜锛堝繀椤婚�夋嫨鍒板尯鍘跨骇鍒級
const cityCode = formData.cityCode || vc.component.selectArea || '';
if (!cityCode || cityCode.trim() === '') {
@@ -519,7 +519,7 @@
}
return;
}
-
+
// 楠岃瘉鑱旂郴鐢佃瘽锛堜娇鐢ㄧ墿涓氳仈绯讳汉鐢佃瘽鎴栨姤淇數璇濓級
const tel = formData.propertyManagerPhone || formData.dayRepairPhone || '';
if (!tel || tel.trim() === '') {
@@ -529,13 +529,13 @@
vc.component.addError('input-phone');
}
// 濡傛灉鐗╀笟鑱旂郴浜虹數璇濅负绌猴紝涓旀棩闂寸數璇濅篃涓虹┖锛屽垯涔熸爣璁版棩闂寸數璇�
- if ((!formData.propertyManagerPhone || formData.propertyManagerPhone.trim() === '') &&
+ if ((!formData.propertyManagerPhone || formData.propertyManagerPhone.trim() === '') &&
(!formData.dayRepairPhone || formData.dayRepairPhone.trim() === '')) {
vc.component.addError('input-day-phone');
}
return;
}
-
+
// 鐘舵�佹槧灏勶細statusCd (1=姝e父, 2=鏆傚仠, 3=娉ㄩ攢) -> state (鐘舵�佺紪鐮�)
let state = '1100'; // 榛樿姝e父鐘舵��
if (formData.statusCd === '1') {
@@ -545,7 +545,7 @@
} else if (formData.statusCd === '3') {
state = '1300'; // 娉ㄩ攢锛堝亣璁剧紪鐮侊級
}
-
+
// 鏋勫缓鎻愪氦鏁版嵁
const submitData = {
// 鍩虹鍙傛暟 - 蹇呭~
@@ -555,7 +555,7 @@
tel: tel,
cityCode: cityCode,
state: state,
-
+
// 鍩虹鍙傛暟 - 鍙��
tmpAddress: formData.tmpAddress || '',
nearbyLandmarks: formData.nearbyLandmarks || '',
@@ -568,7 +568,7 @@
communityId: formData.communityId || '',
communityCode: formData.communityCode || '',
communityArea: formData.communityArea || '',
-
+
// 椤圭洰鎵╁睍鍙傛暟
projectAddressProvince: formData.projectAddressProvince || '',
projectAddressCity: formData.projectAddressCity || '',
@@ -622,7 +622,6 @@
groundNonMotorVehicleArea: formData.groundNonMotorVehicleArea || '',
undergroundNonMotorVehicleArea: formData.undergroundNonMotorVehicleArea || '',
clubhouseArea: formData.clubhouseArea || '',
- hasDecorationRubbishPoint: formData.hasDecorationRubbishPoint || '',
securityEntranceCount: formData.securityEntranceCount || '',
elevatorCount: formData.elevatorCount || '',
elevatorType: formData.elevatorType || '',
@@ -650,11 +649,11 @@
multilayerVillaBuildingCount: formData.multilayerVillaBuildingCount || '',
residentialHouseholdCount: formData.residentialHouseholdCount || '',
shopHouseholdCount: formData.shopHouseholdCount || '',
-
+
// 鎵╁睍灞炴��
attrs: formData.attrs || []
};
-
+
// 杞崲鏁板瓧瀛楁
const numberFields = [
'fireHydrantCount', 'fireChannelCount', 'waterTankCount', 'reservoirCount',
@@ -665,23 +664,22 @@
'barrierGateCount', 'waterPumpCount', 'groundParkingSpaces', 'undergroundParkingSpaces',
'totalBuildingCount', 'buildingUnitCount', 'highRiseBuildingCount',
'multilayerVillaBuildingCount', 'residentialHouseholdCount', 'shopHouseholdCount',
- 'payFeeMonth', 'hasManagerCertificate', 'hasDecorationRubbishPoint'
+ 'payFeeMonth', 'hasManagerCertificate'
];
numberFields.forEach(field => {
if (submitData[field] !== '' && submitData[field] !== null && submitData[field] !== undefined) {
submitData[field] = Number(submitData[field]);
- } else if (field === 'hasManagerCertificate' || field === 'hasDecorationRubbishPoint') {
+ } else if (field === 'hasManagerCertificate') {
submitData[field] = 0;
}
});
-
// 杞崲Decimal瀛楁
const decimalFields = [
'feePrice', 'projectLandArea', 'totalConstructionArea', 'chargeableTotalArea',
'chargeableAreaMultilayer', 'chargeableAreaHighRise1', 'chargeableAreaHighRiseUp',
'chargeableAreaShop', 'chargeableAreaVilla', 'chargeableAreaOffice',
'chargeableAreaCommercialHouse', 'greenArea', 'groundNonMechanicalFee',
- 'garageNonMechanicalFee', 'temporaryHourlyFee', 'temporaryDailyFee',
+ 'garageNonMechanicalFee', 'temporaryHourlyFee', 'temporaryDailyFee',
'temporaryPerTimeFee', 'communityArea'
];
decimalFields.forEach(field => {
@@ -691,7 +689,7 @@
submitData[field] = 0;
}
});
-
+
// 娓呯悊绌哄瓧绗︿覆瀛楁锛岃浆鎹负null鎴栧垹闄�
Object.keys(submitData).forEach(key => {
if (submitData[key] === '') {
diff --git a/public/pages/common/communityManage/detail/detail.html b/public/pages/common/communityManage/detail/detail.html
index daba27b..994e97b 100644
--- a/public/pages/common/communityManage/detail/detail.html
+++ b/public/pages/common/communityManage/detail/detail.html
@@ -71,7 +71,7 @@
<p>{{communityDetailInfo.publicArea || '--'}} 銕�</p>
</div>
<div class="detail-note">
- 闈㈢Н鏄庣粏锛歿{communityDetailInfo.areaDetails || ('鎬伙細' + communityDetailInfo.totalArea + ' 鍖呮嫭锛�(浣忓畢锛�' + communityDetailInfo.residentialArea + ' 闈炰綇瀹咃細' + communityDetailInfo.nonResidentialArea + ')') || '--'}}
+ <label style="color: #404357; font-weight: 800;"> 闈㈢Н鏄庣粏锛�</label>{{communityDetailInfo.areaDetails || ('鎬伙細' + communityDetailInfo.totalArea + ' 鍖呮嫭锛�(浣忓畢锛�' + communityDetailInfo.residentialArea + ' 闈炰綇瀹咃細' + communityDetailInfo.nonResidentialArea + ')') || '--'}}
</div>
</div>
@@ -82,7 +82,7 @@
<label>鐗╀笟绠$悊澶勫湴鍧�锛�</label>
<p>{{communityDetailInfo.managementAddress || '--'}}</p>
</div>
- <div class="sub-title">绠$悊澶勮仈绯讳汉锛�</div>
+ <div class="sub-title" style="color: #404357;">绠$悊澶勮仈绯讳汉锛�</div>
<div class="form-group">
<label>濮撳悕锛�</label>
<p>{{communityDetailInfo.managementContactName || '--'}}</p>
@@ -94,7 +94,7 @@
<label>澶滈棿鐢佃瘽锛�</label>
<p>{{communityDetailInfo.managementContactNightTel || '--'}}</p>
</div>
- <div class="sub-title">灏忓尯缁忕悊/璐熻矗浜�</div>
+ <div class="sub-title" style="color: #404357;">灏忓尯缁忕悊/璐熻矗浜�</div>
<div class="form-group">
<label>濮撳悕锛�</label>
<p>{{communityDetailInfo.managerName || '--'}}</p>
@@ -198,7 +198,7 @@
<p>{{communityDetailInfo.pumpTotal || '--'}}</p>
<label>鏄惁鏈夊浐瀹氱殑瑁呬慨鍨冨溇鍫嗘斁鐐癸細</label>
<div class="radio-group">
- <p>{{communityDetailInfo.hasDecorationRubbishPoint === true ? '鏈�' : '鏃�'}}</p>
+ <p>{{communityDetailInfo.hasDecorationRubbishPoint}}</p>
</div>
<label>闇�淇濆畨鍊煎畧鍑哄叆鍙�(涓�)锛�</label>
<p>{{communityDetailInfo.gateGuardTotal || '--'}}</p>
diff --git a/public/pages/common/communityManage/detail/detail.js b/public/pages/common/communityManage/detail/detail.js
index 3f991d4..e6b8e20 100644
--- a/public/pages/common/communityManage/detail/detail.js
+++ b/public/pages/common/communityManage/detail/detail.js
@@ -234,7 +234,7 @@
gateSupplierContactName: info.barrierSupplierContact || info.gateSupplierContactName || '',
gateSupplierContactTel: info.barrierSupplierPhone || info.gateSupplierContactTel || '',
pumpTotal: info.waterPumpCount || info.pumpTotal || '',
- hasDecorationRubbishPoint: info.hasDecorationRubbishPoint || info.hasDecorationRubbishPoint,
+ hasDecorationRubbishPoint: info.hasDecorationRubbishPoint,
gateGuardTotal: info.securityEntranceCount || info.gateGuardTotal || '',
carTotal: info.totalMotorVehicleSpaces || info.carTotal || '',
carGroundTotal: info.groundMotorVehicleSpaces || info.groundParkingSpaces || info.carGroundTotal || '',
diff --git a/public/pages/common/communityManage/edit/edit.html b/public/pages/common/communityManage/edit/edit.html
index 6eb20bc..09c6866 100644
--- a/public/pages/common/communityManage/edit/edit.html
+++ b/public/pages/common/communityManage/edit/edit.html
@@ -12,13 +12,13 @@
</div>
<div class="form-group">
<label>鎵�鍦ㄥ煄甯�</label>
- 鐪�<select id="province" v-model="selectProv" @change="chooseProvince($event); removeError('province')">
+ 鐪�<select id="province" name="projectAddressProvince" v-model="selectProv" @change="chooseProvince($event); removeError('province')">
<option value="">璇烽�夋嫨鐪�</option>
</select>
- 甯�<select id="city" v-model="selectCity" @change="chooseCity($event); removeError('city')">
+ 甯�<select id="city" name="projectAddressCity" v-model="selectCity" @change="chooseCity($event); removeError('city')">
<option value="">璇烽�夋嫨甯�</option>
</select>
- 鍖�<select id="area" v-model="selectArea" @change="chooseArea($event); removeError('area')">
+ 鍖�<select id="area" name="projectAddressDistrict" v-model="selectArea" @change="chooseArea($event); removeError('area')">
<option value="">璇烽�夋嫨鍖�</option>
</select>
<label>璇︾粏鍦板潃</label>
@@ -238,10 +238,15 @@
<div class="radio-group" style="width: 153px; margin-right: 90px;">
<label>鏄惁鏈夊浐瀹氱殑瑁呬慨鍨冨溇鍫嗘斁鐐�</label>
- <label style="margin-left: -40px;"><input type="radio" name="garbage" value=true v-model="formData.hasDecorationRubbishPoint"> 鏈�</label>
- <label style="margin-left: -40px;"><input type="radio" name="garbage" value=false v-model="formData.hasDecorationRubbishPoint"> 鏃�</label>
+ <!-- 浣跨敤鈥滄槸 / 鍚︹�濓紝涓庢帴鍙e瓧娈典繚鎸佷竴鑷� -->
+ <label>
+ <input type="radio" name="garbage" value="鏄�" v-model="formData.hasDecorationRubbishPoint"> 鏈�
+ </label>
+ <label>
+ <input type="radio" name="garbage" value="鍚�" v-model="formData.hasDecorationRubbishPoint"> 鏃�
+ </label>
</div>
- <label>闇�淇濆畨鍊煎畧鍑哄叆鍙�(涓�)</label>
+ <label style="margin-left: 100px;">闇�淇濆畨鍊煎畧鍑哄叆鍙�(涓�)</label>
<input type="text" placeholder="璇疯緭鍏�" style="width: 153px;" v-model.number="formData.securityEntranceCount">
</div>
</div>
diff --git a/public/pages/common/communityManage/edit/edit.js b/public/pages/common/communityManage/edit/edit.js
index 7b57da9..d5e7e3e 100644
--- a/public/pages/common/communityManage/edit/edit.js
+++ b/public/pages/common/communityManage/edit/edit.js
@@ -367,7 +367,7 @@
if (!detail) {
return;
}
- // 澶勭悊琛屾斂鍖虹紪鐮侊紙濡�310115 -> 鐪侊細310000锛屽競锛�310100锛屽尯锛�310115锛�
+ // 浼樺厛浣跨敤 cityCode锛堣鏀垮尯缂栫爜锛屽310115 -> 鐪侊細310000锛屽競锛�310100锛屽尯锛�310115锛�
const areaCode = detail.cityCode || '';
if (areaCode && areaCode.length >= 6) {
const provCode = areaCode.substring(0, 2) + '0000';
@@ -378,8 +378,62 @@
// 鍏堝姞杞藉競锛屽啀鍔犺浇鍖�
vc.component._initArea('202', provCode);
vc.component._initArea('303', cityCode);
+ } else {
+ // 濡傛灉娌℃湁 cityCode锛屽垯鏍规嵁鎺ュ彛杩斿洖鐨勭渷甯傚尯鍚嶇О鍖归厤涓嬫媺閫夐」
+ // 杩欓噷鍦板尯鏁版嵁鏄紓姝ュ姞杞界殑锛屽洜姝ら噰鐢ㄩ噸璇曟柟寮忥紝鐩村埌鍖归厤鎴愬姛鎴栬揪鍒版渶澶ф鏁�
+ let retry = 0;
+ const maxRetry = 20;
+ const matchAreaByName = function() {
+ const provName = detail.projectAddressProvince || '';
+ const cityName = detail.projectAddressCity || '';
+ const districtName = detail.projectAddressDistrict || '';
+
+ // 1. 鍖归厤鐪�
+ if (provName && !vc.component.selectProv && vc.component.provs && vc.component.provs.length > 0) {
+ const prov = vc.component.provs.find(p => p.areaName === provName);
+ if (prov) {
+ vc.component.selectProv = prov.areaCode;
+ vc.component.selectProvName = prov.areaName;
+ vc.component.formData.projectAddressProvince = prov.areaName;
+ // 鍔犺浇甯傚垪琛�
+ vc.component._initArea('202', prov.areaCode);
+ }
+ }
+
+ // 2. 鍖归厤甯�
+ if (cityName && vc.component.selectProv && !vc.component.selectCity &&
+ vc.component.citys && vc.component.citys.length > 0) {
+ const city = vc.component.citys.find(c => c.areaName === cityName);
+ if (city) {
+ vc.component.selectCity = city.areaCode;
+ vc.component.selectCityName = city.areaName;
+ vc.component.formData.projectAddressCity = city.areaName;
+ // 鍔犺浇鍖哄垪琛�
+ vc.component._initArea('303', city.areaCode);
+ }
+ }
+
+ // 3. 鍖归厤鍖�
+ if (districtName && vc.component.selectCity && !vc.component.selectArea &&
+ vc.component.areas && vc.component.areas.length > 0) {
+ const area = vc.component.areas.find(a => a.areaName === districtName);
+ if (area) {
+ vc.component.selectArea = area.areaCode;
+ vc.component.selectAreaName = area.areaName;
+ vc.component.formData.projectAddressDistrict = area.areaName;
+ vc.component.formData.cityCode = area.areaCode;
+ }
+ }
+
+ // 濡傛灉杩樻病鏈夊畬鏁村尮閰嶅埌鍖猴紝骞朵笖鏈秴杩囬噸璇曟鏁帮紝鍒欑户缁噸璇�
+ if ((!vc.component.selectArea || !vc.component.formData.cityCode) && retry < maxRetry) {
+ retry++;
+ setTimeout(matchAreaByName, 100);
+ }
+ };
+ matchAreaByName();
}
- // 琛ラ綈鍚嶇О锛堢敤浜庢彁浜わ級
+ // 琛ラ綈鍚嶇О锛堢敤浜庢彁浜わ紝闃叉鎺ュ彛鏈夊�间絾涓婇潰鏈鐩栵級
vc.component.formData.projectAddressProvince = detail.projectAddressProvince || vc.component.formData.projectAddressProvince;
vc.component.formData.projectAddressCity = detail.projectAddressCity || vc.component.formData.projectAddressCity;
vc.component.formData.projectAddressDistrict = detail.projectAddressDistrict || vc.component.formData.projectAddressDistrict;
@@ -399,11 +453,11 @@
return fallback;
};
return {
- communityId: info.communityId || info.communityId || '',
+ communityId: info.communityId || '',
newBId: info.newBId || '',
feePrice: info.feePrice || '',
- projectAddressProvince: info.projectAddressProvince || info.provinceName || '',
- projectAddressCity: info.projectAddressCity || info.cityName || '',
+ projectAddressProvince: info.projectAddressProvince || '',
+ projectAddressCity: info.projectAddressCity || '',
projectAddressDistrict: info.projectAddressDistrict || info.areaName || '',
projectAddressTown: info.projectAddressTown || '',
projectAddressRoad: info.projectAddressRoad || '',
@@ -456,7 +510,7 @@
groundNonMotorVehicleArea: info.groundNonMotorVehicleArea || info.nonElectricCarGroundArea || '',
undergroundNonMotorVehicleArea: info.undergroundNonMotorVehicleArea || info.nonElectricCarUndergroundArea || '',
clubhouseArea: info.clubhouseArea || info.clubArea || '',
- hasDecorationRubbishPoint: toBoolString(info.hasDecorationRubbishPoint, info.garbageFixed ? 'true' : 'false'),
+ hasDecorationRubbishPoint: info.hasDecorationRubbishPoint === '鏄�' || info.garbageFixed == 1 ? '鏄�' : '鍚�',
securityEntranceCount: info.securityEntranceCount || info.gateGuardTotal || '',
elevatorCount: info.elevatorCount || info.elevatorTotal || '',
elevatorType: info.elevatorType || '',
@@ -626,18 +680,19 @@
submitData[field] = Number(submitData[field]);
}
});
- // 纭繚Integer瀛楁涓烘暣鏁扮被鍨�
+ // 纭繚Integer瀛楁涓烘暣鏁扮被鍨嬶紙浠呯敤浜庨渶瑕佷紶 0/1 鐨勫竷灏斿瓧娈碉級
const normalizeBoolToNumber = function(val) {
- if (val === true || val === 'true' || val === 1 || val === '1') {
+ if (val === true || val === 'true' || val === 1 || val === '1' || val === '鏄�') {
return 1;
}
- if (val === false || val === 'false' || val === 0 || val === '0') {
+ if (val === false || val === 'false' || val === 0 || val === '0' || val === '鍚�') {
return 0;
}
return val;
};
+ // 涓婂矖璇佷粛鐒舵寜 0/1 鎻愪氦
submitData.hasManagerCertificate = normalizeBoolToNumber(submitData.hasManagerCertificate);
- submitData.hasDecorationRubbishPoint = normalizeBoolToNumber(submitData.hasDecorationRubbishPoint);
+ // hasDecorationRubbishPoint 淇濇寔涓衡�滄槸 / 鍚︹�濓紝鐩存帴闅忚〃鍗曟彁浜�
// 鎻愪氦鏁版嵁
vc.http.apiPost(
'/community.updateCommunity',
diff --git a/public/pages/property/costDetail/costDetail.html b/public/pages/property/costDetail/costDetail.html
index 94a61ef..ae94c64 100644
--- a/public/pages/property/costDetail/costDetail.html
+++ b/public/pages/property/costDetail/costDetail.html
@@ -1,132 +1,115 @@
-<div class="container">
+<div class="cost-detail-container">
<h2>璐圭敤鏄庣粏琛�</h2>
-
+
<!-- 鎼滅储鏍� -->
<div class="search-bar">
<div>
- <label>鏃ユ湡</label>
- <input type="datetime-local" value="2023-08-08T12:12:12">
+ <label>鏃ユ湡锛�</label>
+ <input type="text" class="form-control queryDate" placeholder="璇烽�夋嫨鏃ユ湡" v-model="costDetailInfo.conditions.date" />
</div>
<div>
- <label>灏忓尯</label>
- <select>
- <option>楸煎鑺卞洯A鍖�</option>
+ <label>灏忓尯锛�</label>
+ <select class="form-control" v-model="costDetailInfo.conditions.communityName" style="text-align: center;line-height: 0px;">
+ <option value="">璇烽�夋嫨</option>
+ <option value="楸煎鑺卞洯A鍖�">楸煎鑺卞洯A鍖�</option>
</select>
</div>
<div>
- <label>灏忓尯缂栫爜</label>
- <input type="text" placeholder="璇疯緭鍏�">
+ <label>灏忓尯缂栫爜锛�</label>
+ <input type="text" class="form-control" placeholder="璇疯緭鍏�" v-model="costDetailInfo.conditions.communityCode" />
</div>
- <button>鏌ヨ</button>
- <button>閲嶇疆</button>
- <div style="margin-left: auto;">
- <button class="add-btn">娣诲姞</button>
- <button class="import-btn">璐圭敤瀵煎叆</button>
+ <button type="button" class="query-btn" v-on:click="_queryCostDetails()" style="line-height: 0px;">鏌ヨ</button>
+ <button type="button" class="reset-btn" v-on:click="_resetQuery()" style="line-height: 0px;">閲嶇疆</button>
+ <div class="action-buttons">
+ <button type="button" class="add-btn" v-on:click="_addCostDetail()" style="line-height: 0px;">
+ 娣诲姞
+ </button>
+ <button type="button" class="import-btn" v-on:click="_importCostDetail()" style="line-height: 0px;">璐圭敤瀵煎叆</button>
</div>
</div>
<!-- 璐圭敤琛ㄦ牸 -->
<table>
<thead>
- <tr>
+ <tr id="costDetailTableHead">
<th>搴忓彿</th>
<th>娴佽浆缂栫爜</th>
<th>灏忓尯缂栫爜</th>
<th>灏忓尯鍚嶇О</th>
<th>鏃ユ湡</th>
<th>宸ョ▼鍐呭</th>
- <th>绠$悊澶勯噾棰�(鍏�)</th>
+ <th>绠$悊澶勯噾棰� (鍏�)</th>
<th>鏄惁鐩栫珷</th>
- <th>涓氬浼氶噾棰�(鍏�)</th>
- <th>瀹′环閲戦(鍏�)</th>
+ <th>涓氬浼氶噾棰� (鍏�)</th>
+ <th>瀹′环閲戦 (鍏�)</th>
<th>鏄惁鐩栫珷</th>
<th>绛炬姤閮ㄩ棬</th>
- <th>鍩洪噾绫诲瀷涓�绾у垎绫�</th>
- <th>鍩洪噾绫诲瀷浜岀骇鍒嗙被</th>
+ <th>鍩洪噾绫诲瀷-涓�绾у垎绫�</th>
+ <th>鍩洪噾绫诲瀷-浜岀骇鍒嗙被</th>
<th>骞�/鍏ㄤ綋</th>
<th>缁翠慨绫诲瀷</th>
<th>鎿嶄綔</th>
</tr>
</thead>
<tbody>
- <tr>
- <td>1</td>
- <td>118652</td>
- <td>A-15-1-6</td>
- <td>楸煎鑺卞洯</td>
- <td>2025-10-10</td>
- <td>璺潰閬撶墮銆佸闈㈠ぇ鐞嗙煶</td>
- <td>50000.00</td>
- <td>鏄�</td>
- <td>50000.00</td>
- <td>50000.00</td>
- <td>鏄�</td>
- <td>宸ョ▼閮�</td>
- <td>缁翠慨鍩洪噾</td>
- <td>闃叉按</td>
- <td>鍏ㄤ綋</td>
- <td>閬撹矾</td>
- <td><a href="#">鏇村</a> <a href="#">缂栬緫</a> <a href="#">鍒犻櫎</a></td>
+ <tr v-for="(item, index) in costDetailInfo.costDetails">
+ <td>{{(costDetailInfo.paginationInfo.currentPage - 1) * costDetailInfo.paginationInfo.rows + index + 1}}</td>
+ <td>{{item.flowCode || '-'}}</td>
+ <td>{{item.communityCode || '-'}}</td>
+ <td>{{item.communityName || '-'}}</td>
+ <td>{{item.date || '-'}}</td>
+ <td>{{item.projectContent || '-'}}</td>
+ <td>{{item.managementAmount || '-'}}</td>
+ <td>{{item.managementStamped == '1' ? '鏄�' : '鍚�'}}</td>
+ <td>{{item.committeeAmount || '-'}}</td>
+ <td>{{item.appraisalAmount || '-'}}</td>
+ <td>{{item.committeeStamped == '1' ? '鏄�' : '鍚�'}}</td>
+ <td>{{item.approvalDepartment || '-'}}</td>
+ <td>{{item.fundTypeLevel1 || '-'}}</td>
+ <td>{{item.fundTypeLevel2 || '-'}}</td>
+ <td>{{item.buildingType || '-'}}</td>
+ <td>{{item.maintenanceType || '-'}}</td>
+ <td>
+ <a href="javascript:void(0)" v-on:click="_viewMore(item)">鏇村</a>
+ <a href="javascript:void(0)" v-on:click="_editCostDetail(item)">缂栬緫</a>
+ <a href="javascript:void(0)" v-on:click="_deleteCostDetail(item)">鍒犻櫎</a>
+ </td>
</tr>
- <tr>
- <td>2</td>
- <td>118407</td>
- <td>A-15-1-5</td>
- <td>楸煎鑺卞洯</td>
- <td>2025-10-10</td>
- <td>璺潰閬撶墮銆佸闈㈠ぇ鐞嗙煶</td>
- <td>50000.00</td>
- <td>鏄�</td>
- <td>50000.00</td>
- <td>50000.00</td>
- <td>鏄�</td>
- <td>宸ョ▼閮�</td>
- <td>缁翠慨鍩洪噾</td>
- <td>鎴垮眿缁翠慨</td>
- <td>鍏ㄤ綋</td>
- <td>閬撹矾</td>
- <td><a href="#">鏇村</a> <a href="#">缂栬緫</a> <a href="#">鍒犻櫎</a></td>
+ <tr v-if="costDetailInfo.costDetails.length == 0">
+ <td colspan="17" style="text-align: center; color: #999;">鏆傛棤鏁版嵁</td>
</tr>
- <tr>
- <td>3</td>
- <td>118652</td>
- <td>A-15-1-4</td>
- <td>楸煎鑺卞洯</td>
- <td>2025-10-10</td>
- <td>璺潰閬撶墮銆佸闈㈠ぇ鐞嗙煶</td>
- <td>50000.00</td>
- <td>鍚�</td>
- <td>50000.00</td>
- <td>50000.00</td>
- <td>鍚�</td>
- <td>宸ョ▼閮�</td>
- <td>鍏叡鏀剁泭閲�</td>
- <td>绯荤粺澶�</td>
- <td>鍏ㄤ綋</td>
- <td>閬撹矾</td>
- <td><a href="#">鏇村</a> <a href="#">缂栬緫</a> <a href="#">鍒犻櫎</a></td>
- </tr>
- <!-- 鍙户缁坊鍔犲叾浠栬锛堢ず渚嬩粎灞曠ず鍓�3琛岋級 -->
</tbody>
</table>
<!-- 鍒嗛〉鏍� -->
<div class="pagination">
- <span>鍏�100鏉¤褰�</span>
- <div style="margin-left: auto;">
- <span>45/椤�</span>
- <button><</button>
- <button>1</button>
- <button class="active">2</button>
- <button>3</button>
- <button>4</button>
- <button>5</button>
- <span>...</span>
- <button>99</button>
- <button>></button>
- <span>璺宠浆鑷�</span>
- <input type="text" value="2">
- <span>椤�</span>
+ <span class="pagination-info">鍏眥{costDetailInfo.paginationInfo.dataCount || 0}}鏉¤褰�</span>
+ <div class="pagination-controls">
+ <select class="page-size-select" v-model="costDetailInfo.paginationInfo.rows" v-on:change="_changePageSize()">
+ <option value="15">15</option>
+ <option value="30">30</option>
+ <option value="50">50</option>
+ <option value="100">100</option>
+ </select>
+ <span class="page-size-label">/椤�</span>
+ <button class="page-btn" v-on:click="_goToPage(costDetailInfo.paginationInfo.currentPage - 1)"
+ :disabled="costDetailInfo.paginationInfo.currentPage == 1">鈥�</button>
+ <button class="page-btn" v-for="page in costDetailInfo.paginationInfo.pageList"
+ :class="{active: page.currentPage}"
+ v-on:click="_goToPage(page.page)"
+ v-if="page.pageView != '...'">
+ {{page.pageView}}
+ </button>
+ <span v-for="page in costDetailInfo.paginationInfo.pageList"
+ v-if="page.pageView == '...'"
+ class="page-ellipsis">...</span>
+ <button class="page-btn" v-on:click="_goToPage(costDetailInfo.paginationInfo.currentPage + 1)"
+ :disabled="costDetailInfo.paginationInfo.currentPage == costDetailInfo.paginationInfo.total">鈥�</button>
+ <span class="jump-label">璺宠浆鑷�</span>
+ <input type="number" class="jump-input" v-model="costDetailInfo.jumpPage" min="1" :max="costDetailInfo.paginationInfo.total" />
+ <span class="page-label">椤�</span>
+ <button class="page-btn" v-on:click="_jumpToPage()">纭畾</button>
</div>
</div>
-</div>
\ No newline at end of file
+</div>
+
diff --git a/public/pages/property/costDetail/costDetail.js b/public/pages/property/costDetail/costDetail.js
index e69de29..978e309 100644
--- a/public/pages/property/costDetail/costDetail.js
+++ b/public/pages/property/costDetail/costDetail.js
@@ -0,0 +1,244 @@
+/**
+ 璐圭敤鏄庣粏琛�
+ **/
+(function (vc) {
+ var DEFAULT_PAGE = 1;
+ var DEFAULT_ROWS = 15;
+ var $that = {};
+ vc.extends({
+ data: {
+ costDetailInfo: {
+ costDetails: [],
+ paginationInfo: {
+ currentPage: 1,
+ rows: DEFAULT_ROWS,
+ total: 1,
+ dataCount: 0,
+ pageList: []
+ },
+ jumpPage: 1,
+ conditions: {
+ date: '',
+ communityName: '',
+ communityCode: ''
+ }
+ }
+ },
+ _initMethod: function () {
+ $that = vc.component;
+ $that._injectStyles();
+ $that._listCostDetails(DEFAULT_PAGE, DEFAULT_ROWS);
+ $that._initDate();
+ },
+ _initEvent: function () {
+ vc.on('costDetail', 'listCostDetail', function (_param) {
+ $that._listCostDetails(DEFAULT_PAGE, DEFAULT_ROWS);
+ });
+ },
+ methods: {
+ _initDate: function () {
+ $(".queryDate").datetimepicker({
+ language: 'zh-CN',
+ fontAwesome: 'fa',
+ format: 'yyyy-mm-dd hh:ii:ss',
+ initTime: true,
+ initialDate: new Date(),
+ autoClose: 1,
+ todayBtn: true
+ });
+ $('.queryDate').datetimepicker()
+ .on('changeDate', function (ev) {
+ var value = $(".queryDate").val();
+ $that.costDetailInfo.conditions.date = value;
+ });
+ //闃叉澶氭鐐瑰嚮鏃堕棿鎻掍欢澶卞幓鐒︾偣
+ var queryDateElements = document.getElementsByClassName('form-control queryDate');
+ if (queryDateElements.length > 0) {
+ queryDateElements[0].addEventListener('click', function(e) {
+ e.currentTarget.blur();
+ });
+ }
+ },
+ _listCostDetails: function (_page, _rows) {
+ $that.costDetailInfo.conditions.page = _page;
+ $that.costDetailInfo.conditions.row = _rows;
+ $that.costDetailInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
+ var param = {
+ params: $that.costDetailInfo.conditions
+ };
+ //鍙戦�乬et璇锋眰
+ vc.http.apiGet('/costDetail/queryCostDetail',
+ param,
+ function (json, res) {
+ var _json = JSON.parse(json);
+ $that.costDetailInfo.paginationInfo.dataCount = _json.total || 0;
+ $that.costDetailInfo.paginationInfo.total = _json.records || 1;
+ $that.costDetailInfo.costDetails = _json.data || [];
+ $that.costDetailInfo.paginationInfo.currentPage = _page;
+ $that._freshPageList();
+ },
+ function (errInfo, error) {
+ console.log('璇锋眰澶辫触澶勭悊');
+ $that.costDetailInfo.costDetails = [];
+ $that.costDetailInfo.paginationInfo.dataCount = 0;
+ $that.costDetailInfo.paginationInfo.total = 1;
+ $that._freshPageList();
+ }
+ );
+ },
+ _freshPageList: function () {
+ var currentPage = $that.costDetailInfo.paginationInfo.currentPage;
+ var total = $that.costDetailInfo.paginationInfo.total;
+ var pageList = [];
+
+ if (total <= 7) {
+ // 鎬婚〉鏁板皬浜庣瓑浜�7锛屾樉绀烘墍鏈夐〉鐮�
+ for (var i = 1; i <= total; i++) {
+ pageList.push({
+ page: i,
+ pageView: i,
+ currentPage: i == currentPage
+ });
+ }
+ } else {
+ // 鎬婚〉鏁板ぇ浜�7锛屾樉绀洪儴鍒嗛〉鐮�
+ if (currentPage <= 4) {
+ // 褰撳墠椤靛湪鍓�4椤�
+ for (var i = 1; i <= 5; i++) {
+ pageList.push({
+ page: i,
+ pageView: i,
+ currentPage: i == currentPage
+ });
+ }
+ pageList.push({
+ page: 0,
+ pageView: '...',
+ currentPage: false
+ });
+ pageList.push({
+ page: total,
+ pageView: total,
+ currentPage: false
+ });
+ } else if (currentPage >= total - 3) {
+ // 褰撳墠椤靛湪鍚�4椤�
+ pageList.push({
+ page: 1,
+ pageView: 1,
+ currentPage: false
+ });
+ pageList.push({
+ page: 0,
+ pageView: '...',
+ currentPage: false
+ });
+ for (var i = total - 4; i <= total; i++) {
+ pageList.push({
+ page: i,
+ pageView: i,
+ currentPage: i == currentPage
+ });
+ }
+ } else {
+ // 褰撳墠椤靛湪涓棿
+ pageList.push({
+ page: 1,
+ pageView: 1,
+ currentPage: false
+ });
+ pageList.push({
+ page: 0,
+ pageView: '...',
+ currentPage: false
+ });
+ for (var i = currentPage - 1; i <= currentPage + 1; i++) {
+ pageList.push({
+ page: i,
+ pageView: i,
+ currentPage: i == currentPage
+ });
+ }
+ pageList.push({
+ page: 0,
+ pageView: '...',
+ currentPage: false
+ });
+ pageList.push({
+ page: total,
+ pageView: total,
+ currentPage: false
+ });
+ }
+ }
+
+ $that.costDetailInfo.paginationInfo.pageList = pageList;
+ },
+ _queryCostDetails: function () {
+ $that._listCostDetails(DEFAULT_PAGE, $that.costDetailInfo.paginationInfo.rows);
+ },
+ _resetQuery: function () {
+ $that.costDetailInfo.conditions.date = '';
+ $that.costDetailInfo.conditions.communityName = '';
+ $that.costDetailInfo.conditions.communityCode = '';
+ $('.queryDate').val('');
+ $that._listCostDetails(DEFAULT_PAGE, $that.costDetailInfo.paginationInfo.rows);
+ },
+ _changePageSize: function () {
+ $that._listCostDetails(DEFAULT_PAGE, $that.costDetailInfo.paginationInfo.rows);
+ },
+ _goToPage: function (_page) {
+ if (!_page || _page < 1 || _page > $that.costDetailInfo.paginationInfo.total) {
+ return;
+ }
+ $that._listCostDetails(_page, $that.costDetailInfo.paginationInfo.rows);
+ },
+ _jumpToPage: function () {
+ var page = parseInt($that.costDetailInfo.jumpPage);
+ if (isNaN(page) || page < 1) {
+ page = 1;
+ }
+ if (page > $that.costDetailInfo.paginationInfo.total) {
+ page = $that.costDetailInfo.paginationInfo.total;
+ }
+ $that._listCostDetails(page, $that.costDetailInfo.paginationInfo.rows);
+ },
+ _addCostDetail: function () {
+ // 璺宠浆鍒版坊鍔犻〉闈㈡垨鎵撳紑娣诲姞寮圭獥
+ vc.jumpToPage('/#/pages/property/costDetail/add');
+ },
+ _importCostDetail: function () {
+ // 鎵撳紑瀵煎叆寮圭獥鎴栬烦杞埌瀵煎叆椤甸潰
+ vc.toast('璐圭敤瀵煎叆鍔熻兘');
+ },
+ _viewMore: function (_item) {
+ // 鏌ョ湅璇︽儏
+ vc.jumpToPage('/#/pages/property/costDetail/detail?costDetailId=' + _item.costDetailId);
+ },
+ _editCostDetail: function (_item) {
+ // 缂栬緫
+ vc.jumpToPage('/#/pages/property/costDetail/edit?costDetailId=' + _item.costDetailId);
+ },
+ _deleteCostDetail: function (_item) {
+ vc.confirm('纭畾瑕佸垹闄よ繖鏉¤垂鐢ㄦ槑缁嗗悧锛�', function () {
+ var param = {
+ params: {
+ costDetailId: _item.costDetailId
+ }
+ };
+ vc.http.apiPost('/costDetail/deleteCostDetail',
+ param,
+ function (json, res) {
+ vc.toast('鍒犻櫎鎴愬姛');
+ $that._listCostDetails($that.costDetailInfo.paginationInfo.currentPage, $that.costDetailInfo.paginationInfo.rows);
+ },
+ function (errInfo, error) {
+ vc.message(errInfo);
+ }
+ );
+ });
+ }
+ }
+ });
+})(window.vc);
+
--
Gitblit v1.8.0