mirror of
https://gitee.com/java110/MicroCommunityWeb.git
synced 2026-02-24 21:59:12 +08:00
1、缴费明细报表新增费用项查询
2、费用分向报表新增费用类型和费用项查询 3、优化左侧菜单失去焦点问题 4、优化创建停车费用显示水电费问题
This commit is contained in:
parent
a84244a1bb
commit
6114fe421c
@ -120,20 +120,19 @@
|
||||
vc.setMenuState('OFF');
|
||||
},
|
||||
_gotoPage: function (_href) {
|
||||
let copyMenus = this.menus;
|
||||
for (var menuIndex = 0; menuIndex < copyMenus.length; menuIndex++) {
|
||||
if (copyMenus[menuIndex].hasOwnProperty('childs')) {
|
||||
var _childs = copyMenus[menuIndex].childs;
|
||||
for (var menuIndex = 0; menuIndex < this.menus.length; menuIndex++) {
|
||||
if (this.menus[menuIndex].hasOwnProperty('childs')) {
|
||||
var _childs = this.menus[menuIndex].childs;
|
||||
for(var childIndex = 0; childIndex < _childs.length; childIndex++){
|
||||
if(_href == _childs[childIndex].href){
|
||||
copyMenus[menuIndex].childs[childIndex].active = true;
|
||||
this.menus[menuIndex].childs[childIndex].active = true;
|
||||
} else {
|
||||
copyMenus[menuIndex].childs[childIndex].active = false;
|
||||
this.menus[menuIndex].childs[childIndex].active = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
this.$set(this.menus, copyMenus);
|
||||
this.$forceUpdate();
|
||||
vc.jumpToPage(_href);
|
||||
}
|
||||
|
||||
|
||||
@ -16,7 +16,6 @@
|
||||
<script src="/js/bootstrap/bootstrap.min.js"></script>
|
||||
<script src="/js/bootstrap/bootstrap-datetimepicker.js"></script>
|
||||
<script src="/js/toastr.min.js"></script>
|
||||
|
||||
</head>
|
||||
|
||||
<body class="vc-body">
|
||||
|
||||
@ -5,10 +5,10 @@
|
||||
<div class="ibox-title">
|
||||
<h5>{{listCarFeeInfo.carNum}}费用({{listCarFeeInfo.parkingName}})</h5>
|
||||
<div class="ibox-tools" style="top:10px;">
|
||||
<button type="button" class="btn btn-primary btn-sm" style="margin-left:10px"
|
||||
<!-- <button type="button" class="btn btn-primary btn-sm" style="margin-left:10px"
|
||||
v-on:click="_openAddMeterWaterModal()">
|
||||
水电抄表
|
||||
</button>
|
||||
</button> -->
|
||||
<button type="button" class="btn btn-primary btn-sm" style="margin-left:10px"
|
||||
v-on:click="_openCarCreateFeeAddModal()">
|
||||
创建费用
|
||||
|
||||
@ -5,6 +5,9 @@
|
||||
<div class="ibox-title">
|
||||
<h5>查询条件</h5>
|
||||
<div class="ibox-tools" style="top:10px;">
|
||||
<button type="button" class="btn btn-link btn-sm" style="margin-right:10px;"
|
||||
v-on:click="_moreCondition()">{{reportFeeBreakdownInfo.moreCondition == true?'隐藏':'更多'}}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="ibox-content">
|
||||
@ -15,7 +18,8 @@
|
||||
v-model="reportFeeBreakdownInfo.conditions.floorName" class=" form-control">
|
||||
<div class="input-group-prepend">
|
||||
<button type="button" class="btn btn-primary btn-sm"
|
||||
v-on:click="_openChooseFloorMethod()"><i class="fa fa-search"></i> 选择
|
||||
v-on:click="_openChooseFloorMethod()">
|
||||
<i class="fa fa-search"></i> 选择
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
@ -32,20 +36,36 @@
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-4">
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<input type="text" placeholder="请填写房屋编号" class="form-control form-control-md"
|
||||
v-model="reportFeeBreakdownInfo.conditions.roomNum">
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-1">
|
||||
<button type="button" class="btn btn-primary btn-md" v-on:click="_queryMethod()"><i
|
||||
class="fa fa-search"></i> 查询
|
||||
<div class="col-sm-2">
|
||||
<button type="button" class="btn btn-primary btn-md" v-on:click="_queryMethod()">
|
||||
<i class="fa fa-search"></i> 查询
|
||||
</button>
|
||||
<button type="button" class="btn btn-info btn-md" v-on:click="_resetMethod()"
|
||||
style="margin-left: 20px;">
|
||||
<i class="fa fa-repeat"></i> 重置
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="row" v-show="reportFeeBreakdownInfo.moreCondition == true">
|
||||
<div class="col-sm-4">
|
||||
<div class="form-group">
|
||||
<select class="form-control-md form-control input-s-sm inline"
|
||||
v-model="reportFeeBreakdownInfo.conditions.configId">
|
||||
<option selected value="">请选择收费项</option>
|
||||
<option v-for="(item,index) in reportFeeBreakdownInfo.feeConfigDtos" :key="index"
|
||||
:value="item.configId">
|
||||
{{item.feeName}}
|
||||
</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group input-group">
|
||||
<input type="text" placeholder="请选择缴费开始时间"
|
||||
v-model="reportFeeBreakdownInfo.conditions.startTime"
|
||||
@ -60,6 +80,17 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row" v-show="reportFeeBreakdownInfo.moreCondition == true">
|
||||
<!--费用类型-->
|
||||
<div class="col-sm-4">
|
||||
<select class="custom-select" v-model="reportFeeBreakdownInfo.conditions.feeTypeCd">
|
||||
<option selected value="">请选择费用类型</option>
|
||||
<option v-for="(item,index) in reportFeeBreakdownInfo.feeTypeCds" :key="index"
|
||||
v-bind:value="item.statusCd">{{item.name}}
|
||||
</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -71,8 +102,7 @@
|
||||
<h5>费用分项表</h5>
|
||||
<div class="ibox-tools" style="top:10px;">
|
||||
<button type="button" class="btn btn-primary btn-sm" v-on:click="_exportFee()">
|
||||
<i class="fa fa-plus"></i>
|
||||
导出
|
||||
<i class="fa fa-plus"></i>导出
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
@ -81,17 +111,19 @@
|
||||
<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>
|
||||
<th class="text-center">欠费金额(单位:元)</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="(fee,index) in reportFeeBreakdownInfo.fees">
|
||||
<td class="text-center">{{index+1}}</td>
|
||||
<td class="text-center">{{fee.feeTypeCd}}</td>
|
||||
<td class="text-center">{{fee.feeName}}</td>
|
||||
<td class="text-center">{{fee.feeCreateTime}}</td>
|
||||
<td class="text-center">{{fee.createTime}}</td>
|
||||
|
||||
@ -13,24 +13,30 @@
|
||||
moreCondition: false,
|
||||
title: '',
|
||||
roomUnits: [],
|
||||
feeConfigDtos: [],
|
||||
feeTypeCds: [],
|
||||
conditions: {
|
||||
floorId: '',
|
||||
floorName: '',
|
||||
roomNum: '',
|
||||
unitId: '',
|
||||
startTime:'',
|
||||
endTime:''
|
||||
configId: '',
|
||||
feeTypeCd: '',
|
||||
startTime: '',
|
||||
endTime: ''
|
||||
}
|
||||
}
|
||||
},
|
||||
_initMethod: function () {
|
||||
vc.component._initDate();
|
||||
vc.component._listFees(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
|
||||
//关联字典表费用类型
|
||||
vc.getDict('pay_fee_config', "fee_type_cd", function (_data) {
|
||||
vc.component.reportFeeBreakdownInfo.feeTypeCds = _data;
|
||||
});
|
||||
// vc.initDateMonth('startTime', function (_startTime) {
|
||||
// $that.reportFeeBreakdownInfo.conditions.startTime = _startTime;
|
||||
// });
|
||||
|
||||
// vc.initDateMonth('endTime', function (_endTime) {
|
||||
// $that.reportFeeBreakdownInfo.conditions.endTime = _endTime;
|
||||
// let start = Date.parse(new Date($that.reportFeeBreakdownInfo.conditions.startTime + "-01"))
|
||||
@ -40,10 +46,8 @@
|
||||
// $that.reportFeeBreakdownInfo.conditions.endTime = '';
|
||||
// }
|
||||
// });
|
||||
|
||||
},
|
||||
_initEvent: function () {
|
||||
|
||||
vc.on('reportFeeBreakdown', 'chooseFloor', function (_param) {
|
||||
vc.component.reportFeeBreakdownInfo.conditions.floorId = _param.floorId;
|
||||
vc.component.reportFeeBreakdownInfo.conditions.floorName = _param.floorName;
|
||||
@ -93,18 +97,18 @@
|
||||
}
|
||||
});
|
||||
},
|
||||
_queryMethod:function(){
|
||||
//查询
|
||||
_queryMethod: function () {
|
||||
vc.component._listFees(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
},
|
||||
//查询方法
|
||||
_listFees: function (_page, _rows) {
|
||||
|
||||
vc.component.reportFeeBreakdownInfo.conditions.page = _page;
|
||||
vc.component.reportFeeBreakdownInfo.conditions.row = _rows;
|
||||
vc.component.reportFeeBreakdownInfo.conditions.communityId = vc.getCurrentCommunity().communityId;
|
||||
var param = {
|
||||
params: vc.component.reportFeeBreakdownInfo.conditions
|
||||
};
|
||||
|
||||
//发送get请求
|
||||
vc.http.apiGet('/reportFeeMonthStatistics/queryFeeBreakdown',
|
||||
param,
|
||||
@ -113,6 +117,46 @@
|
||||
vc.component.reportFeeBreakdownInfo.total = _reportFeeBreakdownInfo.total;
|
||||
vc.component.reportFeeBreakdownInfo.records = _reportFeeBreakdownInfo.records;
|
||||
vc.component.reportFeeBreakdownInfo.fees = _reportFeeBreakdownInfo.data;
|
||||
if (_reportFeeBreakdownInfo.data.length > 0) {
|
||||
vc.component.reportFeeBreakdownInfo.feeConfigDtos = _reportFeeBreakdownInfo.data[0].feeConfigDtos;
|
||||
}
|
||||
vc.emit('pagination', 'init', {
|
||||
total: vc.component.reportFeeBreakdownInfo.records,
|
||||
currentPage: _page
|
||||
});
|
||||
}, function (errInfo, error) {
|
||||
console.log('请求失败处理');
|
||||
}
|
||||
);
|
||||
},
|
||||
//重置
|
||||
_resetMethod: function () {
|
||||
vc.component._resetListFee(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
},
|
||||
//重置方法
|
||||
_resetListFee: function (_page, _rows) {
|
||||
vc.component.reportFeeBreakdownInfo.conditions.floorId = "";
|
||||
vc.component.reportFeeBreakdownInfo.conditions.floorName = "";
|
||||
vc.component.reportFeeBreakdownInfo.conditions.unitId = "";
|
||||
vc.component.reportFeeBreakdownInfo.conditions.roomNum = "";
|
||||
vc.component.reportFeeBreakdownInfo.conditions.configId = "";
|
||||
vc.component.reportFeeBreakdownInfo.conditions.startTime = "";
|
||||
vc.component.reportFeeBreakdownInfo.conditions.endTime = "";
|
||||
vc.component.reportFeeBreakdownInfo.conditions.feeTypeCd = "";
|
||||
var param = {
|
||||
params: vc.component.reportFeeBreakdownInfo.conditions
|
||||
};
|
||||
//发送get请求
|
||||
vc.http.apiGet('/reportFeeMonthStatistics/queryFeeBreakdown',
|
||||
param,
|
||||
function (json, res) {
|
||||
var _reportFeeBreakdownInfo = JSON.parse(json);
|
||||
vc.component.reportFeeBreakdownInfo.total = _reportFeeBreakdownInfo.total;
|
||||
vc.component.reportFeeBreakdownInfo.records = _reportFeeBreakdownInfo.records;
|
||||
vc.component.reportFeeBreakdownInfo.fees = _reportFeeBreakdownInfo.data;
|
||||
if (_reportFeeBreakdownInfo.data.length > 0) {
|
||||
vc.component.reportFeeBreakdownInfo.feeConfigDtos = _reportFeeBreakdownInfo.data[0].feeConfigDtos;
|
||||
}
|
||||
vc.emit('pagination', 'init', {
|
||||
total: vc.component.reportFeeBreakdownInfo.records,
|
||||
currentPage: _page
|
||||
@ -147,11 +191,18 @@
|
||||
vc.toast(errInfo);
|
||||
});
|
||||
},
|
||||
_openChooseFloorMethod:function(){
|
||||
vc.emit('searchFloor','openSearchFloorModel',{});
|
||||
_openChooseFloorMethod: function () {
|
||||
vc.emit('searchFloor', 'openSearchFloorModel', {});
|
||||
},
|
||||
_exportFee:function(){
|
||||
vc.jumpToPage('/callComponent/exportReportFee/exportData?communityId='+vc.getCurrentCommunity().communityId+"&pagePath=reportFeeBreakdown");
|
||||
_moreCondition: function () {
|
||||
if (vc.component.reportFeeBreakdownInfo.moreCondition) {
|
||||
vc.component.reportFeeBreakdownInfo.moreCondition = false;
|
||||
} else {
|
||||
vc.component.reportFeeBreakdownInfo.moreCondition = true;
|
||||
}
|
||||
},
|
||||
_exportFee: function () {
|
||||
vc.jumpToPage('/callComponent/exportReportFee/exportData?communityId=' + vc.getCurrentCommunity().communityId + "&pagePath=reportFeeBreakdown");
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
@ -87,15 +87,15 @@
|
||||
<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>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="fee in reportFeeSummaryInfo.fees">
|
||||
<td class="text-center">{{fee.createTime}}</td>
|
||||
<td class="text-center">{{fee.feeYear+'年'+fee.feeMonth+'月'}}</td>
|
||||
<td class="text-center">{{fee.receivableAmount}}</td>
|
||||
<td class="text-center">{{fee.receivedAmount}}</td>
|
||||
<td class="text-center">{{fee.oweAmount}}</td>
|
||||
|
||||
@ -17,7 +17,8 @@
|
||||
class=" form-control">
|
||||
<div class="input-group-prepend">
|
||||
<button type="button" class="btn btn-primary btn-sm"
|
||||
v-on:click="_openChooseFloorMethod()"><i class="fa fa-search"></i> 选择
|
||||
v-on:click="_openChooseFloorMethod()">
|
||||
<i class="fa fa-search"></i> 选择
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
@ -82,17 +83,17 @@
|
||||
<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="fee in reportFloorUnitFeeSummaryInfo.fees">
|
||||
<td class="text-center">{{fee.createTime}}</td>
|
||||
<td class="text-center">{{fee.feeYear+'年'+fee.feeMonth+'月'}}</td>
|
||||
<td class="text-center">{{fee.floorNum}}号楼</td>
|
||||
<td class="text-center">{{fee.unitNum}}单元</td>
|
||||
<td class="text-center">{{fee.receivableAmount}}</td>
|
||||
|
||||
@ -79,6 +79,20 @@
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row" v-show="reportPayFeeDetailInfo.moreCondition == true">
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<select class="form-control-md form-control input-s-sm inline"
|
||||
v-model="reportPayFeeDetailInfo.conditions.configId">
|
||||
<option selected value="">请选择收费项</option>
|
||||
<option v-for="(item,index) in reportPayFeeDetailInfo.feeConfigDtos" :key="index"
|
||||
:value="item.configId">
|
||||
{{item.feeName}}
|
||||
</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -14,6 +14,7 @@
|
||||
title: '',
|
||||
roomUnits: [],
|
||||
primeRates: [],
|
||||
feeConfigDtos: [],
|
||||
totalReceivableAmount: 0.0,
|
||||
totalReceivedAmount: 0.0,
|
||||
allReceivableAmount: 0.0,
|
||||
@ -23,6 +24,7 @@
|
||||
floorName: '',
|
||||
roomNum: '',
|
||||
unitId: '',
|
||||
configId: '',
|
||||
primeRate: '',
|
||||
startTime: '',
|
||||
endTime: ''
|
||||
@ -136,6 +138,7 @@
|
||||
vc.component.reportPayFeeDetailInfo.totalReceivedAmount = _reportPayFeeDetailInfo.data[0].totalReceivedAmount;
|
||||
vc.component.reportPayFeeDetailInfo.allReceivableAmount = _reportPayFeeDetailInfo.data[0].allReceivableAmount;
|
||||
vc.component.reportPayFeeDetailInfo.allReceivedAmount = _reportPayFeeDetailInfo.data[0].allReceivedAmount;
|
||||
vc.component.reportPayFeeDetailInfo.feeConfigDtos = _reportPayFeeDetailInfo.data[0].feeConfigDtos;
|
||||
} else {
|
||||
vc.component.reportPayFeeDetailInfo.totalReceivableAmount = "0.0";
|
||||
vc.component.reportPayFeeDetailInfo.totalReceivedAmount = "0.0";
|
||||
@ -164,6 +167,7 @@
|
||||
vc.component.reportPayFeeDetailInfo.conditions.primeRate = "";
|
||||
vc.component.reportPayFeeDetailInfo.conditions.startTime = "";
|
||||
vc.component.reportPayFeeDetailInfo.conditions.endTime = "";
|
||||
vc.component.reportPayFeeDetailInfo.conditions.configId = "";
|
||||
var param = {
|
||||
params: vc.component.reportPayFeeDetailInfo.conditions
|
||||
};
|
||||
@ -180,6 +184,7 @@
|
||||
vc.component.reportPayFeeDetailInfo.totalReceivedAmount = _reportPayFeeDetailInfo.data[0].totalReceivedAmount;
|
||||
vc.component.reportPayFeeDetailInfo.allReceivableAmount = _reportPayFeeDetailInfo.data[0].allReceivableAmount;
|
||||
vc.component.reportPayFeeDetailInfo.allReceivedAmount = _reportPayFeeDetailInfo.data[0].allReceivedAmount;
|
||||
vc.component.reportPayFeeDetailInfo.feeConfigDtos = _reportPayFeeDetailInfo.data[0].feeConfigDtos;
|
||||
} else {
|
||||
vc.component.reportPayFeeDetailInfo.totalReceivableAmount = 0.0;
|
||||
vc.component.reportPayFeeDetailInfo.totalReceivedAmount = 0.0;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user