优化代码

This commit is contained in:
Your Name 2023-04-26 09:31:27 +08:00
parent ed239da5ea
commit 58498a44d3
3 changed files with 193 additions and 1 deletions

View File

@ -0,0 +1,107 @@
<div>
<div class="margin-top">
<table class="footable table table-stripped toggle-arrow-tiny" style="margin-top:10px" data-page-size="10">
<thead>
<tr>
<th class="text-center">
<vc:i18n name="费用项" namespace="contractDetailHisFee"></vc:i18n>
</th>
<th class="text-center">
<vc:i18n name="收费对象" namespace="contractDetailHisFee"></vc:i18n>
</th>
<th data-hide="phone" class="text-center">
<vc:i18n name="周期(单位:月)" namespace="contractDetailHisFee"></vc:i18n>
</th>
<th data-hide="phone" class="text-center">
<vc:i18n name="应收/实收(单位:元)" namespace="contractDetailHisFee"></vc:i18n>
</th>
<th data-hide="phone" class="text-center">
<vc:i18n name="缴费方式" namespace="contractDetailHisFee"></vc:i18n>
</th>
<th data-hide="phone" class="text-center">
<vc:i18n name="缴费起始段" namespace="contractDetailHisFee"></vc:i18n>
</th>
<th data-hide="phone" class="text-center">
<vc:i18n name="缴费时间" namespace="contractDetailHisFee"></vc:i18n>
</th>
<th data-hide="phone" class="text-center">
<vc:i18n name="收银员" namespace="staffDetailHisFee"></vc:i18n>
</th>
<th data-hide="phone" class="text-center">
<vc:i18n name="状态" namespace="contractDetailHisFee"></vc:i18n>
</th>
<th data-hide="phone" class="text-center">
<vc:i18n name="备注" namespace="contractDetailHisFee"></vc:i18n>
</th>
<th data-hide="phone" class="text-center">
<vc:i18n name="操作" namespace="contractDetailHisFee"></vc:i18n>
</th>
</tr>
</thead>
<tbody>
<tr v-for="feeDetail in contractDetailHisFeeInfo.feeDetails">
<td class="text-center">
{{feeDetail.feeName}}
</td>
<td class="text-center">
{{feeDetail.payerObjName}}
</td>
<td class="text-center">
{{feeDetail.cycles}}
</td>
<td class="text-center">
{{feeDetail.receivableAmount}}/{{feeDetail.receivedAmount}}<br>
<div v-for="(item,index) in feeDetail.feeAccountDetailDtoList" :key="index"
v-bind:value="item.state" v-if="item.state != '1001'">
{{item.stateName}}: {{item.amount}}<br>
</div>
<div v-for="(item,index) in feeDetail.payFeeDetailDiscountDtoList" :key="index"
v-bind:value="item.state">
{{item.discountName}}: {{Math.abs(item.discountPrice)}}<br>
</div>
</td>
<td class="text-center">
{{feeDetail.primeRateName}}
</td>
<td class="text-center">
{{vc.dateFormat(feeDetail.startTime)}}~</br>
<span v-if="feeDetail.startTime >= feeDetail.endTime">
{{vc.dateFormat(feeDetail.endTime)}}
</span>
<span v-else>
{{vc.dateSubOneDay(vc.dateFormat(feeDetail.endTime),vc.dateFormat(feeDetail.endTime),feeDetail.feeFlag)}}
</span>
</td>
<td class="text-center">
{{feeDetail.createTime}}
</td>
<td class="text-center">
{{feeDetail.cashierName || '-'}}
</td>
<td class="text-center">
{{feeDetail.stateName}}
</td>
<td class="text-center">
{{feeDetail.remark}}
</td>
<td class="text-center">
<div class="btn-group"
v-if="feeDetail.state=='1400' || feeDetail.state== 1200 || feeDetail.state== ''">
<button class="btn-white btn btn-xs" v-on:click="_toRefundFee(feeDetail)">
<vc:i18n name="详情" namespace="contractDetailHisFee"></vc:i18n>
</button>
</div>
</td>
</tr>
</tbody>
<tr>
<td colspan="12">
<ul class="pagination float-right"></ul>
</td>
</tr>
</table>
<vc:create namespace="contractDetailHisFee" path="frame/paginationPlus"></vc:create>
</div>
</div>

View File

@ -0,0 +1,81 @@
/**
入驻小区
**/
(function (vc) {
var DEFAULT_PAGE = 1;
var DEFAULT_ROWS = 10;
vc.extends({
data: {
contractDetailHisFeeInfo: {
total: 0,
records: 1,
feeDetails: [],
contractId: ''
}
},
_initMethod: function () {
},
_initEvent: function () {
//切换 至费用页面
vc.on('contractDetailHisFee', 'switch', function (_param) {
$that.clearContractDetailHisFeeInfo();
if (_param.contractId == '') {
return;
}
vc.copyObject(_param, $that.contractDetailHisFeeInfo)
$that._listOwnerDetailFeeDetails(DEFAULT_PAGE, DEFAULT_ROWS);
});
vc.on('contractDetailHisFee', 'notify', function () {
$that._listOwnerDetailFeeDetails(DEFAULT_PAGE, DEFAULT_ROWS);
});
vc.on('contractDetailHisFee', 'paginationPlus', 'page_event',
function (_currentPage) {
vc.component._listOwnerDetailFeeDetails(_currentPage, DEFAULT_ROWS);
});
},
methods: {
_listOwnerDetailFeeDetails: function (_page, _row) {
let param = {
params: {
page: _page,
row: _row,
communityId: vc.getCurrentCommunity().communityId,
payerObjId: $that.contractDetailHisFeeInfo.contractId,
}
};
//发送get请求
vc.http.apiGet('/fee.queryFeeDetail',
param,
function (json) {
let _feeConfigInfo = JSON.parse(json);
vc.component.contractDetailHisFeeInfo.total = _feeConfigInfo.total;
vc.component.contractDetailHisFeeInfo.records = _feeConfigInfo.records;
vc.component.contractDetailHisFeeInfo.feeDetails = _feeConfigInfo.feeDetails;
vc.emit('contractDetailHisFee', 'paginationPlus', 'init', {
total: vc.component.contractDetailHisFeeInfo.records,
dataCount: vc.component.contractDetailHisFeeInfo.total,
currentPage: _page
});
},
function () {
console.log('请求失败处理');
}
);
},
clearContractDetailHisFeeInfo: function () {
$that.contractDetailHisFeeInfo = {
total: 0,
records: 1,
feeDetails: [],
contractId: ''
}
},
_toRefundFee: function (_detail) {
vc.jumpToPage('/#/pages/property/propertyFee?feeId=' + _detail.feeId);
}
}
});
})(window.vc);

View File

@ -182,7 +182,7 @@
</a>
</li>
<li class="nav-item">
<a class="nav-link" v-bind:class="{active:contractDetailInfo._currentTab == 'contractDetailRoom3'}" v-on:click="changeTab('contractDetailRoom3')">
<a class="nav-link" v-bind:class="{active:contractDetailInfo._currentTab == 'contractDetailHisFee'}" v-on:click="changeTab('contractDetailHisFee')">
<vc:i18n name="合同缴费记录" namespace="contractDetail"></vc:i18n>
</a>
</li>
@ -231,5 +231,9 @@
<vc:create path="contract/contractDetailFee"></vc:create>
</div>
<div v-if="contractDetailInfo._currentTab == 'contractDetailHisFee'">
<vc:create path="contract/contractDetailHisFee"></vc:create>
</div>
</div>