优化华宁物业报表

This commit is contained in:
java110 2021-08-15 10:18:44 +08:00
parent 63467ae5e6
commit b3bea4eeb6
7 changed files with 309 additions and 21 deletions

View File

@ -20,21 +20,21 @@
_initEvent: function () {
//切换 至费用页面
vc.on('reportHuaningOweFee', 'switch', function (_param) {
$that.clearReportProficientRoomFeeInfo();
$that.clearReportHuaningOweFeeInfo();
$that.reportHuaningOweFeeInfo.conditions = _param;
console.log($that.reportHuaningOweFeeInfo.conditions)
$that._listReportProficientRoomFee(DEFAULT_PAGE, DEFAULT_ROWS);
$that._listReportHuaningOweFee(DEFAULT_PAGE, DEFAULT_ROWS);
});
vc.on('reportHuaningOweFee', 'notify', function () {
$that._listReportProficientRoomFee(DEFAULT_PAGE, DEFAULT_ROWS);
$that._listReportHuaningOweFee(DEFAULT_PAGE, DEFAULT_ROWS);
});
vc.on('reportHuaningOweFee', 'paginationPlus', 'page_event',
function (_currentPage) {
vc.component._listReportProficientRoomFee(_currentPage, DEFAULT_ROWS);
vc.component._listReportHuaningOweFee(_currentPage, DEFAULT_ROWS);
});
},
methods: {
_listReportProficientRoomFee: function (_page, _row) {
_listReportHuaningOweFee: function (_page, _row) {
$that.reportHuaningOweFeeInfo.conditions.page = _page;
$that.reportHuaningOweFeeInfo.conditions.row = _row;
$that.reportHuaningOweFeeInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
@ -80,7 +80,7 @@
});
return _value;
},
clearReportProficientRoomFeeInfo: function () {
clearReportHuaningOweFeeInfo: function () {
$that.reportHuaningOweFeeInfo = {
fees: [],
roomId: '',
@ -115,7 +115,7 @@
return year + "年前未收金额";
},
_getPreAmount:function(_fee){
return parseFloat(_fee.oweAmount) - parseFloat(_fee.curOweAmount);
return (parseFloat(_fee.oweAmount) - parseFloat(_fee.curOweAmount)).toFixed(2);
}
}
});

View File

@ -0,0 +1,40 @@
<div>
<div class="margin-top">
<div class="row">
<div class="col-sm-12 margin-lr-0 padding-lr-0">
<table class="footable table table-stripped " style="margin-top:10px" data-page-size="10">
<thead>
<tr>
<th class="text-center " style="border-bottom: none;">楼栋号</th>
<th class="text-center" style="border-bottom: none;">每月应收</th>
<th class="text-center " style="border-bottom: none;">{{reportHuaningPayFeeInfo.conditions.month}}月实收</th>
<th class="text-center " style="border-bottom: none;">{{reportHuaningPayFeeInfo.conditions.month}}月实收中属于{{reportHuaningPayFeeInfo.conditions.year}}年1-{{reportHuaningPayFeeInfo.conditions.month}}月部分</th>
<th class="text-center " style="border-bottom: none;">{{reportHuaningPayFeeInfo.conditions.month}}月实收中属于{{reportHuaningPayFeeInfo.conditions.year}}年{{reportHuaningPayFeeInfo.conditions.month}}月部分</th>
<th class="text-center " style="border-bottom: none;">{{reportHuaningPayFeeInfo.conditions.month}}月实收中属于{{_getNextMonth()}}起预收部分</th>
<th class="text-center " style="border-bottom: none;">{{reportHuaningPayFeeInfo.conditions.month}}月实收中属于收{{reportHuaningPayFeeInfo.conditions.year}}年前部分</th>
</tr>
</thead>
<tbody>
<tr v-for="fee in reportHuaningPayFeeInfo.fees">
<td class="text-center ">{{fee.floorNum}}</td>
<td class="text-center ">{{fee.receivableAmount}}</td>
<td class="text-center ">{{fee.receivedAmount}}</td>
<td class="text-center">{{fee.receivedAmount1}}</td>
<td class="text-center">{{fee.receivedAmount2}}</td>
<td class="text-center">{{fee.receivedAmount3}}</td>
<td class="text-center">{{fee.receivedAmount4}}</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="row">
<div class="col-sm-5">
<span> </span>
</div>
<div class="col-sm-7 float-right">
<vc:create namespace="reportHuaningPayFee" path="frame/paginationPlus"></vc:create>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,83 @@
/**
入驻小区
**/
(function (vc) {
var DEFAULT_PAGE = 1;
var DEFAULT_ROWS = 10;
vc.extends({
data: {
reportHuaningPayFeeInfo: {
fees: [],
listColumns: [],
roomId: '',
roomName: '',
conditions: {
year: new Date().getFullYear(),
month: new Date().getMonth() + 1
},
dateStr: vc.dateFormat(new Date().getTime())
}
},
_initMethod: function () {
},
_initEvent: function () {
//切换 至费用页面
vc.on('reportHuaningPayFee', 'switch', function (_param) {
$that.clearReportProficientRoomFeeInfo();
$that.reportHuaningPayFeeInfo.conditions = _param;
$that._listReportHuaningPayFee(DEFAULT_PAGE, DEFAULT_ROWS);
});
vc.on('reportHuaningPayFee', 'notify', function () {
$that._listReportHuaningPayFee(DEFAULT_PAGE, DEFAULT_ROWS);
});
vc.on('reportHuaningPayFee', 'paginationPlus', 'page_event',
function (_currentPage) {
vc.component._listReportHuaningPayFee(_currentPage, DEFAULT_ROWS);
});
},
methods: {
_listReportHuaningPayFee: function (_page, _row) {
$that.reportHuaningPayFeeInfo.conditions.page = _page;
$that.reportHuaningPayFeeInfo.conditions.row = _row;
$that.reportHuaningPayFeeInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
let param = {
params: $that.reportHuaningPayFeeInfo.conditions
};
//发送get请求
vc.http.apiGet('/reportFeeMonthStatistics/queryHuaningPayFee',
param,
function (json) {
let _feeConfigInfo = JSON.parse(json);
vc.component.reportHuaningPayFeeInfo.total = _feeConfigInfo.total;
vc.component.reportHuaningPayFeeInfo.records = _feeConfigInfo.records;
vc.component.reportHuaningPayFeeInfo.fees = _feeConfigInfo.data;
vc.emit('reportHuaningPayFee', 'paginationPlus', 'init', {
total: _feeConfigInfo.records,
currentPage: _page
});
}, function () {
console.log('请求失败处理');
}
);
},
clearReportProficientRoomFeeInfo: function () {
$that.reportHuaningPayFeeInfo = {
fees: [],
roomId: '',
roomName: '',
name: '',
conditions: {
year: new Date().getFullYear(),
month: new Date().getMonth() + 1
},
dateStr: vc.dateFormat(new Date().getTime())
}
},
_getNextMonth: function () {
let _date = vc.addMonth(new Date(), 1);
let date = new Date(_date);
return date.getFullYear() + "年" + (date.getMonth() + 1) + "月"
}
}
});
})(window.vc);

View File

@ -0,0 +1,38 @@
<div>
<div class="margin-top">
<div class="row">
<div class="col-sm-12 margin-lr-0 padding-lr-0">
<table class="footable table table-stripped " style="margin-top:10px" data-page-size="10">
<thead>
<tr>
<th class="text-center " style="border-bottom: none;">楼栋号</th>
<th class="text-center" style="border-bottom: none;">应收</th>
<th class="text-center " style="border-bottom: none;">已收</th>
<th class="text-center " style="border-bottom: none;">促收优惠</th>
<th class="text-center " style="border-bottom: none;">未收</th>
<th class="text-center " style="border-bottom: none;">预收</th>
</tr>
</thead>
<tbody>
<tr v-for="fee in reportHuaningPayFeeTwoInfo.fees">
<td class="text-center ">{{fee.floorNum}}</td>
<td class="text-center ">{{fee.receivableAmount}}</td>
<td class="text-center ">{{fee.receivedAmount}}</td>
<td class="text-center">{{fee.receivedAmount1}}</td>
<td class="text-center">{{fee.receivedAmount2}}</td>
<td class="text-center">{{fee.receivedAmount3}}</td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="row">
<div class="col-sm-5">
<span> </span>
</div>
<div class="col-sm-7 float-right">
<vc:create namespace="reportHuaningPayFeeTwo" path="frame/paginationPlus"></vc:create>
</div>
</div>
</div>
</div>

View File

@ -0,0 +1,78 @@
/**
入驻小区
**/
(function (vc) {
var DEFAULT_PAGE = 1;
var DEFAULT_ROWS = 10;
vc.extends({
data: {
reportHuaningPayFeeTwoInfo: {
fees: [],
listColumns: [],
roomId: '',
roomName: '',
conditions: {
year: new Date().getFullYear(),
month: new Date().getMonth() + 1
},
dateStr: vc.dateFormat(new Date().getTime())
}
},
_initMethod: function () {
},
_initEvent: function () {
//切换 至费用页面
vc.on('reportHuaningPayFeeTwo', 'switch', function (_param) {
$that.clearReportHuaningPayFeeTwoInfo();
$that.reportHuaningPayFeeTwoInfo.conditions = _param;
$that._listReportHuaningPayFeeTwo(DEFAULT_PAGE, DEFAULT_ROWS);
});
vc.on('reportHuaningPayFeeTwo', 'notify', function () {
$that._listReportHuaningPayFeeTwo(DEFAULT_PAGE, DEFAULT_ROWS);
});
vc.on('reportHuaningPayFeeTwo', 'paginationPlus', 'page_event',
function (_currentPage) {
vc.component._listReportHuaningPayFeeTwo(_currentPage, DEFAULT_ROWS);
});
},
methods: {
_listReportHuaningPayFeeTwo: function (_page, _row) {
$that.reportHuaningPayFeeTwoInfo.conditions.page = _page;
$that.reportHuaningPayFeeTwoInfo.conditions.row = _row;
$that.reportHuaningPayFeeTwoInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
let param = {
params: $that.reportHuaningPayFeeTwoInfo.conditions
};
//发送get请求
vc.http.apiGet('/reportFeeMonthStatistics/queryHuaningPayFeeTwo',
param,
function (json) {
let _feeConfigInfo = JSON.parse(json);
vc.component.reportHuaningPayFeeTwoInfo.total = _feeConfigInfo.total;
vc.component.reportHuaningPayFeeTwoInfo.records = _feeConfigInfo.records;
vc.component.reportHuaningPayFeeTwoInfo.fees = _feeConfigInfo.data;
vc.emit('reportHuaningPayFeeTwo', 'paginationPlus', 'init', {
total: _feeConfigInfo.records,
currentPage: _page
});
}, function () {
console.log('请求失败处理');
}
);
},
clearReportHuaningPayFeeTwoInfo: function () {
$that.reportHuaningPayFeeTwoInfo = {
fees: [],
roomId: '',
roomName: '',
name: '',
conditions: {
year: new Date().getFullYear(),
month: new Date().getMonth() + 1
},
dateStr: vc.dateFormat(new Date().getTime())
}
},
}
});
})(window.vc);

View File

@ -35,9 +35,14 @@
</div>
<div class="col-sm-3">
<div class="form-group">
<input type="text" class="form-control form-control-md"
:placeholder="_getReportProficientRoomName()"
v-model="reportHuaningInfo.conditions.objName">
<select class="form-control-md form-control input-s-sm inline"
v-model="reportHuaningInfo.conditions.floorNum">
<option selected value="">请选择楼栋</option>
<option v-for="(item,index) in reportHuaningInfo.floors" :key="index"
:value="item.floorNum">
{{item.floorNum}}
</option>
</select>
</div>
</div>
<div class="col-sm-2">
@ -50,6 +55,19 @@
</button>
</div>
</div>
<div class="row">
<!--费用类型-->
<div class="col-sm-3" v-if="reportHuaningInfo._currentTab == 'reportHuaningPayFee'">
<input type="text" placeholder="请填写年份" class="form-control form-control-md"
v-model="reportHuaningInfo.conditions.year">
</div>
<div class="col-sm-3" v-if="reportHuaningInfo._currentTab == 'reportHuaningPayFee'">
<div class="form-group">
<input type="text" placeholder="请填写月份" class="form-control form-control-md"
v-model="reportHuaningInfo.conditions.month">
</div>
</div>
</div>
</div>
</div>
</div>
@ -62,17 +80,24 @@
v-on:click="changeTab('reportHuaningOweFee')">未收情况表</a>
</li>
<li class="nav-item">
<a class="nav-link" v-bind:class="{active:reportHuaningInfo._currentTab == 'reportHuaningCarFee'}"
v-on:click="changeTab('reportHuaningCarFee')">当月收费情况表</a>
<a class="nav-link" v-bind:class="{active:reportHuaningInfo._currentTab == 'reportHuaningPayFee'}"
v-on:click="changeTab('reportHuaningPayFee')">当月收费情况表</a>
</li>
<li class="nav-item">
<a class="nav-link" v-bind:class="{active:reportHuaningInfo._currentTab == 'reportHuaningPayFeeTwo'}"
v-on:click="changeTab('reportHuaningPayFeeTwo')">当月收费情况表2</a>
</li>
</ul>
</div>
<div v-if="reportHuaningInfo._currentTab == 'reportHuaningOweFee'">
<vc:create path="property/reportHuaningOweFee"></vc:create>
</div>
<!--
<div v-if="reportHuaningInfo._currentTab == 'reportHuaningCarFee'">
<vc:create path="property/reportHuaningCarFee"></vc:create>
</div> -->
<div v-if="reportHuaningInfo._currentTab == 'reportHuaningPayFee'">
<vc:create path="property/reportHuaningPayFee"></vc:create>
</div>
<div v-if="reportHuaningInfo._currentTab == 'reportHuaningPayFeeTwo'">
<vc:create path="property/reportHuaningPayFeeTwo"></vc:create>
</div>
</div>
</div>

View File

@ -13,12 +13,13 @@
_currentTab: 'reportHuaningOweFee',
feeTypeCds: [],
feeConfigDtos: [],
floors: [],
conditions: {
configId: '',
feeTypeCd: '',
startTime: '',
endTime: '',
objName: ''
floorNum: '',
year: new Date().getFullYear(),
month: new Date().getMonth() + 1
}
}
},
@ -28,6 +29,7 @@
vc.getDict('pay_fee_config', "fee_type_cd", function (_data) {
vc.component.reportHuaningInfo.feeTypeCds = _data;
});
$that._listFloorData();
},
_initEvent: function () {
vc.on("indexContext", "_queryIndexContextData", function (_param) {
@ -43,7 +45,7 @@
let param = {
params: {
page: 1,
row: 50,
row: 100,
communityId: vc.getCurrentCommunity().communityId,
feeTypeCd: $that.reportHuaningInfo.conditions.feeTypeCd,
isDefault: '',
@ -95,7 +97,29 @@
+ "&feeTypeCd=" + $that.reportHuaningInfo.conditions.feeTypeCd
+ "&objType=" + _objType
+ "&pagePath=reportYearCollection");
}
},
_listFloorData: function (_page, _rows) {
var param = {
params: {
communityId:vc.getCurrentCommunity().communityId,
row:50,
page:1
}
};
//发送get请求
vc.http.get('listFloor',
'list',
param,
function (json, res) {
var listFloorData = JSON.parse(json);
vc.component.reportHuaningInfo.floors = listFloorData.apiFloorDataVoList;
}, function (errInfo, error) {
console.log('请求失败处理');
}
);
},
}
})
})(window.vc);