mirror of
https://gitee.com/java110/MicroCommunityWeb.git
synced 2026-02-23 21:36:37 +08:00
优化费用详情页面
This commit is contained in:
parent
bf505e36eb
commit
0ddb8e8a86
@ -11,6 +11,7 @@
|
||||
ownerId: '',
|
||||
ownerName:'',
|
||||
carNum: '',
|
||||
memberId:'',
|
||||
}
|
||||
},
|
||||
_initMethod: function () {
|
||||
@ -18,6 +19,7 @@
|
||||
_initEvent: function () {
|
||||
vc.on('aRoomDetailCar', 'switch', function (_data) {
|
||||
$that.aRoomDetailCarInfo.ownerId = _data.ownerId;
|
||||
$that.aRoomDetailCarInfo.memberId = _data.carId;
|
||||
$that.aRoomDetailCarInfo.ownerName = _data.ownerName;
|
||||
|
||||
$that._loadARoomDetailCarData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
@ -36,6 +38,7 @@
|
||||
params: {
|
||||
ownerId: $that.aRoomDetailCarInfo.ownerId,
|
||||
carNum: $that.aRoomDetailCarInfo.carNum,
|
||||
memberId: $that.aRoomDetailCarInfo.memberId,
|
||||
page: _page,
|
||||
row: _row
|
||||
}
|
||||
|
||||
@ -10,7 +10,8 @@
|
||||
total: 0,
|
||||
records: 1,
|
||||
feeDetails: [],
|
||||
ownerId: ''
|
||||
ownerId: '',
|
||||
feeId:'',
|
||||
}
|
||||
},
|
||||
_initMethod: function () {
|
||||
@ -41,6 +42,7 @@
|
||||
page: _page,
|
||||
row: _row,
|
||||
ownerId: $that.aRoomDetailHisFeeInfo.ownerId,
|
||||
feeId:$that.aRoomDetailHisFeeInfo.feeId,
|
||||
}
|
||||
};
|
||||
|
||||
@ -69,7 +71,8 @@
|
||||
total: 0,
|
||||
records: 1,
|
||||
feeDetails: [],
|
||||
ownerId: ''
|
||||
ownerId: '',
|
||||
feeId:''
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
@ -12,6 +12,7 @@
|
||||
total: 0,
|
||||
records: 1,
|
||||
roomId: '',
|
||||
feeId: '',
|
||||
roomName: '',
|
||||
ownerName: '',
|
||||
floorNum: '',
|
||||
@ -43,7 +44,9 @@
|
||||
params: {
|
||||
page: _page,
|
||||
row: _row,
|
||||
objId: $that.aRoomDetailMeterWaterLogInfo.roomId
|
||||
objId: $that.aRoomDetailMeterWaterLogInfo.roomId,
|
||||
feeId: $that.aRoomDetailMeterWaterLogInfo.feeId,
|
||||
|
||||
}
|
||||
};
|
||||
//发送get请求
|
||||
@ -78,6 +81,7 @@
|
||||
total: 0,
|
||||
records: 1,
|
||||
roomId: '',
|
||||
feeId: '',
|
||||
ownerName: '',
|
||||
roomName: '',
|
||||
floorNum: '',
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
});
|
||||
vc.on('aRoomDetailOwner', 'paginationPlus', 'page_event',
|
||||
function (_currentPage) {
|
||||
vc.component._loadARoomDetailOwnerData(_currentPage, DEFAULT_ROWS);
|
||||
$that._loadARoomDetailOwnerData(_currentPage, DEFAULT_ROWS);
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
|
||||
@ -9,6 +9,7 @@
|
||||
aRoomDetailReceiptInfo: {
|
||||
feeReceipts: [],
|
||||
payObjId: '',
|
||||
feeId:'',
|
||||
total: '',
|
||||
records: '',
|
||||
selectReceipts: [],
|
||||
@ -24,6 +25,7 @@
|
||||
return;
|
||||
}
|
||||
$that.aRoomDetailReceiptInfo.payObjId = _param.ownerId;
|
||||
$that.aRoomDetailReceiptInfo.feeId = _param.feeId;
|
||||
$that._listARoomDetailReceipt(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
});
|
||||
vc.on('aRoomDetailReceipt', 'paginationPlus', 'page_event',
|
||||
@ -40,6 +42,7 @@
|
||||
page: _page,
|
||||
row: _rows,
|
||||
payObjId: $that.aRoomDetailReceiptInfo.payObjId,
|
||||
feeId: $that.aRoomDetailReceiptInfo.feeId,
|
||||
}
|
||||
};
|
||||
//发送get请求
|
||||
|
||||
@ -9,6 +9,7 @@
|
||||
aRoomDetailRoomInfo: {
|
||||
rooms: [],
|
||||
ownerId: '',
|
||||
roomId:'',
|
||||
roomNum: '',
|
||||
allOweFeeAmount: '0'
|
||||
}
|
||||
@ -18,6 +19,7 @@
|
||||
_initEvent: function () {
|
||||
vc.on('aRoomDetailRoom', 'switch', function (_data) {
|
||||
$that.aRoomDetailRoomInfo.ownerId = _data.ownerId;
|
||||
$that.aRoomDetailRoomInfo.roomId = _data.roomId;
|
||||
$that._loadARoomDetailRoomData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
});
|
||||
vc.on('aRoomDetailRoom', 'paginationPlus', 'page_event',
|
||||
@ -37,6 +39,7 @@
|
||||
params: {
|
||||
ownerId: $that.aRoomDetailRoomInfo.ownerId,
|
||||
roomNum: $that.aRoomDetailRoomInfo.roomNum,
|
||||
roomId: $that.aRoomDetailRoomInfo.roomId,
|
||||
page: _page,
|
||||
row: _row
|
||||
}
|
||||
|
||||
@ -9,7 +9,7 @@
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-lg-7 text-right">
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="margin-top">
|
||||
@ -84,7 +84,9 @@
|
||||
</td>
|
||||
<td class="text-center">{{fee.stateName}}</td>
|
||||
<td class="text-center">
|
||||
|
||||
<button type="button" class="btn btn-white btn-sm" style="margin-left:10px"
|
||||
v-on:click="_toAdminFeeDetail(fee)">详情
|
||||
</button>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
||||
@ -101,7 +101,9 @@
|
||||
_changeContractConfigId:function() {
|
||||
$that._loadARoomDetailRoomFeeData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
},
|
||||
|
||||
_toAdminFeeDetail:function(_fee){
|
||||
vc.jumpToPage('/#/pages/fee/adminFeeDetail?feeId='+_fee.feeId);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
82
public/components/fee/aFeeDetailConfig/aFeeDetailConfig.html
Normal file
82
public/components/fee/aFeeDetailConfig/aFeeDetailConfig.html
Normal file
@ -0,0 +1,82 @@
|
||||
<div class="">
|
||||
<div class="margin-top">
|
||||
<table class="footable table table-stripped toggle-arrow-tiny" data-page-size="15">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="费用类型" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="收费项目" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="费用标识" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="催缴类型" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="付费类型" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="缴费周期" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
|
||||
<th class="text-center">
|
||||
<vc:i18n name="单位" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="公式" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="计费单价" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="附加/固定费用" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="账户抵扣" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="手机缴费" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="保留小数位" namespace="aFeeDetailConfig"></vc:i18n>
|
||||
</th>
|
||||
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="feeConfig in aFeeDetailConfigInfo.feeConfigs">
|
||||
<td class="text-center">{{feeConfig.feeTypeCdName}}</td>
|
||||
<td class="text-center">{{feeConfig.feeName}}</td>
|
||||
<td class="text-center">{{feeConfig.feeFlagName}}</td>
|
||||
<td class="text-center">{{feeConfig.billTypeName}}</td>
|
||||
<td class="text-center">{{feeConfig.paymentCd == '1200' ? '预付费':'后付费'}}</td>
|
||||
<td class="text-center">{{feeConfig.paymentCycle}}</td>
|
||||
<td class="text-center">{{feeConfig.units}}
|
||||
</td>
|
||||
<td class="text-center">{{feeConfig.computingFormulaName}}
|
||||
</td>
|
||||
<td class="text-center">{{feeConfig.computingFormula == '2002' ?
|
||||
'-':feeConfig.squarePrice}}
|
||||
</td>
|
||||
<td class="text-center">{{feeConfig.additionalAmount}}</td>
|
||||
<td class="text-center">{{feeConfig.deductFrom == 'Y' ? '是':'否'}}</td>
|
||||
<td class="text-center">{{feeConfig.payOnline == 'Y' ? '是':'否'}}</td>
|
||||
<td class="text-center">{{feeConfig.scale}}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- 分页 -->
|
||||
<div class="row">
|
||||
<div class="col-sm-4">
|
||||
|
||||
</div>
|
||||
<div class="col-sm-8">
|
||||
<vc:create namespace="aFeeDetailConfig" path="frame/paginationPlus"></vc:create>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
62
public/components/fee/aFeeDetailConfig/aFeeDetailConfig.js
Normal file
62
public/components/fee/aFeeDetailConfig/aFeeDetailConfig.js
Normal file
@ -0,0 +1,62 @@
|
||||
/**
|
||||
入驻小区
|
||||
**/
|
||||
(function (vc) {
|
||||
var DEFAULT_PAGE = 1;
|
||||
var DEFAULT_ROWS = 10;
|
||||
vc.extends({
|
||||
data: {
|
||||
aFeeDetailConfigInfo: {
|
||||
feeConfigs: [],
|
||||
configId:'',
|
||||
}
|
||||
},
|
||||
_initMethod: function () {
|
||||
},
|
||||
_initEvent: function () {
|
||||
vc.on('aFeeDetailConfig', 'switch', function (_data) {
|
||||
$that.aFeeDetailConfigInfo.configId = _data.configId;
|
||||
$that._loadAFeeDetailConfigData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
});
|
||||
vc.on('aFeeDetailConfig', 'paginationPlus', 'page_event',
|
||||
function (_currentPage) {
|
||||
$that._loadAFeeDetailConfigData(_currentPage, DEFAULT_ROWS);
|
||||
});
|
||||
vc.on('aFeeDetailConfig', 'notify', function (_data) {
|
||||
$that._loadAFeeDetailConfigData(DEFAULT_PAGE,DEFAULT_ROWS);
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
_loadAFeeDetailConfigData: function (_page, _row) {
|
||||
let param = {
|
||||
params: {
|
||||
configId:$that.aFeeDetailConfigInfo.configId,
|
||||
page:_page,
|
||||
row:_row
|
||||
}
|
||||
};
|
||||
|
||||
//发送get请求
|
||||
vc.http.apiGet('/feeConfig.queryAdminFeeConfigs',
|
||||
param,
|
||||
function (json) {
|
||||
let _json = JSON.parse(json);
|
||||
$that.aFeeDetailConfigInfo.feeConfigs = _json.feeConfigs;
|
||||
vc.emit('aFeeDetailConfig', 'paginationPlus', 'init', {
|
||||
total: _json.records,
|
||||
dataCount: _json.total,
|
||||
currentPage: _page
|
||||
});
|
||||
},
|
||||
function () {
|
||||
console.log('请求失败处理');
|
||||
}
|
||||
);
|
||||
},
|
||||
//查询
|
||||
_qureyAFeeDetailConfig: function () {
|
||||
$that._loadAFeeDetailConfigData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
},
|
||||
}
|
||||
});
|
||||
})(window.vc);
|
||||
@ -0,0 +1,79 @@
|
||||
<div class="">
|
||||
<div class="margin-top">
|
||||
<table class="footable table table-stripped toggle-arrow-tiny" data-page-size="15">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="房屋(楼栋-单元-房屋)" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="折扣ID" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="折扣名称" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="申请类型" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="申请人" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="申请电话" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="开始时间" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="结束时间" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="状态" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="创建时间" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="使用状态" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="返还类型" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="返还金额" namespace="aFeeDetailDiscount"></vc:i18n>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="applyRoomDiscount in aFeeDetailDiscountInfo.applyRoomDiscounts">
|
||||
<td class="text-center">{{applyRoomDiscount.roomName}}</td>
|
||||
<td class="text-center">{{applyRoomDiscount.discountId}}</td>
|
||||
<td class="text-center">{{applyRoomDiscount.discountName}}</td>
|
||||
<td class="text-center">{{applyRoomDiscount.applyTypeName}}</td>
|
||||
<td class="text-center">{{applyRoomDiscount.createUserName}}</td>
|
||||
<td class="text-center">{{applyRoomDiscount.createUserTel}}</td>
|
||||
<td class="text-center">{{applyRoomDiscount.startTime}}</td>
|
||||
<td class="text-center">{{applyRoomDiscount.endTime}}</td>
|
||||
<td class="text-center">{{applyRoomDiscount.stateName}}</td>
|
||||
<td class="text-center">{{applyRoomDiscount.createTime}}</td>
|
||||
<td class="text-center">{{applyRoomDiscount.inUse == '0' ? '未使用' : '已使用'}}</td>
|
||||
<td class="text-center" v-if="applyRoomDiscount.discountId">
|
||||
{{applyRoomDiscount.returnWay == '1002' ? '账户余额' : '折扣'}}
|
||||
</td>
|
||||
<td class="text-center" v-if="!applyRoomDiscount.discountId">-</td>
|
||||
<td class="text-center">
|
||||
{{applyRoomDiscount.returnAmount ? applyRoomDiscount.returnAmount : '-'}}
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- 分页 -->
|
||||
<div class="row">
|
||||
<div class="col-sm-4">
|
||||
|
||||
</div>
|
||||
<div class="col-sm-8">
|
||||
<vc:create namespace="aFeeDetailDiscount" path="frame/paginationPlus"></vc:create>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -0,0 +1,59 @@
|
||||
/**
|
||||
入驻小区
|
||||
**/
|
||||
(function (vc) {
|
||||
var DEFAULT_PAGE = 1;
|
||||
var DEFAULT_ROWS = 10;
|
||||
vc.extends({
|
||||
data: {
|
||||
aFeeDetailDiscountInfo: {
|
||||
applyRoomDiscounts: [],
|
||||
feeId: '',
|
||||
}
|
||||
},
|
||||
_initMethod: function () {
|
||||
},
|
||||
_initEvent: function () {
|
||||
vc.on('aFeeDetailDiscount', 'switch', function (_data) {
|
||||
$that.aFeeDetailDiscountInfo.feeId = _data.feeId;
|
||||
$that._loadAFeeDetailDiscountData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
});
|
||||
vc.on('aFeeDetailDiscount', 'paginationPlus', 'page_event',
|
||||
function (_currentPage) {
|
||||
$that._loadAFeeDetailDiscountData(_currentPage, DEFAULT_ROWS);
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
_loadAFeeDetailDiscountData: function (_page, _row) {
|
||||
let param = {
|
||||
params: {
|
||||
feeId: $that.aFeeDetailDiscountInfo.feeId,
|
||||
page: _page,
|
||||
row: _row
|
||||
}
|
||||
};
|
||||
|
||||
//发送get请求
|
||||
vc.http.apiGet('/fee.queryAdminApplyRoomDiscount',
|
||||
param,
|
||||
function (json) {
|
||||
var _roomInfo = JSON.parse(json);
|
||||
$that.aFeeDetailDiscountInfo.applyRoomDiscounts = _roomInfo.data;
|
||||
vc.emit('aFeeDetailDiscount', 'paginationPlus', 'init', {
|
||||
total: _roomInfo.records,
|
||||
dataCount: _roomInfo.total,
|
||||
currentPage: _page
|
||||
});
|
||||
},
|
||||
function () {
|
||||
console.log('请求失败处理');
|
||||
}
|
||||
);
|
||||
},
|
||||
//查询
|
||||
_qureyAFeeDetailDiscount: function () {
|
||||
$that._loadAFeeDetailDiscountData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
},
|
||||
}
|
||||
});
|
||||
})(window.vc);
|
||||
82
public/components/fee/aFeeDetailFeeObj/aFeeDetailFeeObj.html
Normal file
82
public/components/fee/aFeeDetailFeeObj/aFeeDetailFeeObj.html
Normal file
@ -0,0 +1,82 @@
|
||||
<div class="">
|
||||
<div class="row margin-top">
|
||||
<div class="col-lg-2 ">
|
||||
<select class="custom-select custom-select-sm" v-model="aFeeDetailFeeObjInfo.payerObjType">
|
||||
<option selected value="">{{vc.i18n('请选择费用对象','aFeeDetailFeeObj')}}</option>
|
||||
<option value="3333">{{vc.i18n('房屋','aFeeDetailFeeObj')}}</option>
|
||||
<option value="6666">{{vc.i18n('车辆','aFeeDetailFeeObj')}}</option>
|
||||
<option value="7777">{{vc.i18n('合同','aFeeDetailFeeObj')}}</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-lg-2 padding-lr-xs">
|
||||
<button type="button" class="btn btn-primary btn-sm" style="margin-left:10px"
|
||||
v-on:click="_qureyAFeeDetailFeeObj()">
|
||||
查询
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<table class="footable table table-stripped toggle-arrow-tiny" data-page-size="15">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="费用编号" namespace="aFeeDetailFeeObj"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="对象类型" namespace="aFeeDetailFeeObj"></vc:i18n>
|
||||
</th>
|
||||
<th data-hide="phone" class="text-center">
|
||||
<vc:i18n name="对象名称" namespace="aFeeDetailFeeObj"></vc:i18n>
|
||||
</th>
|
||||
<th data-hide="phone" class="text-center">
|
||||
<vc:i18n name="业主名称" namespace="aFeeDetailFeeObj"></vc:i18n>
|
||||
</th>
|
||||
<th data-hide="phone" class="text-center">
|
||||
<vc:i18n name="手机号" namespace="aFeeDetailFeeObj"></vc:i18n>
|
||||
</th>
|
||||
<th data-hide="phone" class="text-center">
|
||||
<vc:i18n name="创建时间" namespace="aFeeDetailFeeObj"></vc:i18n>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="feeObj in aFeeDetailFeeObjInfo.feeObjs">
|
||||
<td class="text-center">
|
||||
{{feeObj.feeId}}
|
||||
</td>
|
||||
<td class="text-center" v-if="feeObj.payerObjType == '3333'">
|
||||
房屋
|
||||
</td>
|
||||
<td class="text-center" v-else-if="feeObj.payerObjType == '6666'">
|
||||
车辆
|
||||
</td>
|
||||
<td class="text-center" v-else>
|
||||
合同
|
||||
</td>
|
||||
<td class="text-center">
|
||||
{{feeObj.payerObjName}}
|
||||
</td>
|
||||
<td class="text-center">
|
||||
{{feeObj.ownerName}}
|
||||
</td>
|
||||
<td class="text-center">
|
||||
{{feeObj.ownerTel}}
|
||||
</td>
|
||||
<td class="text-center">
|
||||
{{feeObj.createTime}}
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- 分页 -->
|
||||
<div class="row">
|
||||
<div class="col-sm-4">
|
||||
|
||||
</div>
|
||||
<div class="col-sm-8">
|
||||
<vc:create namespace="aFeeDetailFeeObj" path="frame/paginationPlus"></vc:create>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
61
public/components/fee/aFeeDetailFeeObj/aFeeDetailFeeObj.js
Normal file
61
public/components/fee/aFeeDetailFeeObj/aFeeDetailFeeObj.js
Normal file
@ -0,0 +1,61 @@
|
||||
/**
|
||||
入驻小区
|
||||
**/
|
||||
(function (vc) {
|
||||
var DEFAULT_PAGE = 1;
|
||||
var DEFAULT_ROWS = 10;
|
||||
vc.extends({
|
||||
data: {
|
||||
aFeeDetailFeeObjInfo: {
|
||||
feeObjs: [],
|
||||
configId:'',
|
||||
payerObjType:''
|
||||
}
|
||||
},
|
||||
_initMethod: function () {
|
||||
},
|
||||
_initEvent: function () {
|
||||
vc.on('aFeeDetailFeeObj', 'switch', function (_data) {
|
||||
$that.aFeeDetailFeeObjInfo.configId = _data.configId;
|
||||
$that._loadAFeeDetailFeeObjData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
});
|
||||
vc.on('aFeeDetailFeeObj', 'paginationPlus', 'page_event',
|
||||
function (_currentPage) {
|
||||
$that._loadAFeeDetailFeeObjData(_currentPage, DEFAULT_ROWS);
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
_loadAFeeDetailFeeObjData: function (_page, _row) {
|
||||
let param = {
|
||||
params: {
|
||||
configId:$that.aFeeDetailFeeObjInfo.configId,
|
||||
payerObjType:$that.aFeeDetailFeeObjInfo.payerObjType,
|
||||
page:_page,
|
||||
row:_row
|
||||
}
|
||||
};
|
||||
|
||||
//发送get请求
|
||||
vc.http.apiGet('/feeConfig.listAdminConfigFeeObjs',
|
||||
param,
|
||||
function (json) {
|
||||
var _roomInfo = JSON.parse(json);
|
||||
$that.aFeeDetailFeeObjInfo.feeObjs = _roomInfo.data;
|
||||
vc.emit('aFeeDetailFeeObj', 'paginationPlus', 'init', {
|
||||
total: _roomInfo.records,
|
||||
dataCount: _roomInfo.total,
|
||||
currentPage: _page
|
||||
});
|
||||
},
|
||||
function () {
|
||||
console.log('请求失败处理');
|
||||
}
|
||||
);
|
||||
},
|
||||
//查询
|
||||
_qureyAFeeDetailFeeObj: function () {
|
||||
$that._loadAFeeDetailFeeObjData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
},
|
||||
}
|
||||
});
|
||||
})(window.vc);
|
||||
62
public/components/fee/aFeeDetailHis/aFeeDetailHis.html
Normal file
62
public/components/fee/aFeeDetailHis/aFeeDetailHis.html
Normal file
@ -0,0 +1,62 @@
|
||||
<div class="">
|
||||
<div class="row ">
|
||||
<div class="col-lg-12 text-right"></div>
|
||||
</div>
|
||||
<div class="margin-top">
|
||||
<table class="footable table table-stripped toggle-arrow-tiny" data-page-size="15">
|
||||
<thead>
|
||||
<tr>
|
||||
<tr>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="费用项" namespace="aFeeDetailHis"></vc:i18n>
|
||||
</th>
|
||||
<th data-hide="phone" class="text-center">
|
||||
<vc:i18n name="建账时间" namespace="aFeeDetailHis"></vc:i18n>
|
||||
</th>
|
||||
<th data-hide="phone" class="text-center">
|
||||
<vc:i18n name="计费起始时间" namespace="aFeeDetailHis"></vc:i18n>
|
||||
</th>
|
||||
<th data-hide="phone" class="text-center">
|
||||
<vc:i18n name="动作" namespace="aFeeDetailHis"></vc:i18n>
|
||||
</th>
|
||||
<th data-hide="phone" class="text-center">
|
||||
<vc:i18n name="操作人" namespace="aFeeDetailHis"></vc:i18n>
|
||||
</th>
|
||||
<th data-hide="phone" class="text-center">
|
||||
<vc:i18n name="操作时间" namespace="aFeeDetailHis"></vc:i18n>
|
||||
</th>
|
||||
</tr>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="fee in aFeeDetailHisInfo.fees">
|
||||
<td class="text-center">{{fee.feeName}}
|
||||
<span v-if="fee.payerObjName">({{fee.payerObjName}})</span>
|
||||
</td>
|
||||
<td class="text-center">
|
||||
{{fee.startTime || '-'}}
|
||||
</td>
|
||||
<td class="text-center">
|
||||
{{fee.endTime || '-'}}
|
||||
</td>
|
||||
<td class="text-center">
|
||||
{{_getFeeHisOperate(fee)}}
|
||||
</td>
|
||||
<td class="text-center">
|
||||
{{fee.userName || '-'}}
|
||||
</td>
|
||||
<td class="text-center">
|
||||
{{fee.createTime}}
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- 分页 -->
|
||||
<div class="row">
|
||||
<div class="col-sm-4"></div>
|
||||
<div class="col-sm-8">
|
||||
<vc:create namespace="aFeeDetailHis" path="frame/paginationPlus"></vc:create>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
101
public/components/fee/aFeeDetailHis/aFeeDetailHis.js
Normal file
101
public/components/fee/aFeeDetailHis/aFeeDetailHis.js
Normal file
@ -0,0 +1,101 @@
|
||||
/**
|
||||
入驻小区
|
||||
**/
|
||||
(function (vc) {
|
||||
var DEFAULT_PAGE = 1;
|
||||
var DEFAULT_ROWS = 10;
|
||||
vc.extends({
|
||||
data: {
|
||||
aFeeDetailHisInfo: {
|
||||
fees: [],
|
||||
feeId: '',
|
||||
staffNameLike: '',
|
||||
feeNameLike: '',
|
||||
payerObjName: '',
|
||||
logStartTime: '',
|
||||
logEndTime: '',
|
||||
}
|
||||
},
|
||||
_initMethod: function () {
|
||||
},
|
||||
_initEvent: function () {
|
||||
vc.on('aFeeDetailHis', 'switch', function (_data) {
|
||||
$that.aFeeDetailHisInfo.feeId = _data.feeId;
|
||||
$that.aFeeDetailHisInfo.staffNameLike = _data.staffNameLike;
|
||||
$that.aFeeDetailHisInfo.feeNameLike = _data.feeNameLike;
|
||||
$that.aFeeDetailHisInfo.payerObjName = _data.payerObjName;
|
||||
$that.aFeeDetailHisInfo.logStartTime = _data.logStartTime;
|
||||
$that.aFeeDetailHisInfo.logEndTime = _data.logEndTime;
|
||||
$that._loadAFeeDetailHisData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
});
|
||||
vc.on('aFeeDetailHis', 'notify',
|
||||
function (_data) {
|
||||
$that._loadAFeeDetailHisData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
});
|
||||
vc.on('aFeeDetailHis', 'paginationPlus', 'page_event',
|
||||
function (_currentPage) {
|
||||
vc.component._loadAFeeDetailHisData(_currentPage, DEFAULT_ROWS);
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
_loadAFeeDetailHisData: function (_page, _row) {
|
||||
let param = {
|
||||
params: {
|
||||
feeId: $that.aFeeDetailHisInfo.feeId,
|
||||
staffNameLike: $that.aFeeDetailHisInfo.staffNameLike,
|
||||
feeNameLike: $that.aFeeDetailHisInfo.feeNameLike,
|
||||
payerObjName: $that.aFeeDetailHisInfo.payerObjName,
|
||||
logStartTime: $that.aFeeDetailHisInfo.logStartTime,
|
||||
logEndTime: $that.aFeeDetailHisInfo.logEndTime,
|
||||
page: _page,
|
||||
row: _row
|
||||
}
|
||||
};
|
||||
//发送get请求
|
||||
vc.http.apiGet('/fee.queryAdminHisFee',
|
||||
param,
|
||||
function (json) {
|
||||
let _roomInfo = JSON.parse(json);
|
||||
vc.component.aFeeDetailHisInfo.fees = _roomInfo.data;
|
||||
vc.emit('aFeeDetailHis', 'paginationPlus', 'init', {
|
||||
total: _roomInfo.records,
|
||||
dataCount: _roomInfo.total,
|
||||
currentPage: _page
|
||||
});
|
||||
},
|
||||
function () {
|
||||
console.log('请求失败处理');
|
||||
}
|
||||
);
|
||||
},
|
||||
//查询
|
||||
_qureyAFeeDetailHis: function () {
|
||||
$that._loadAFeeDetailHisData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
},
|
||||
_getFeeHisOperate: function (_fee) {
|
||||
let _feeCount = 0;
|
||||
$that.aFeeDetailHisInfo.fees.forEach(item => {
|
||||
if (_fee.bId == item.bId) {
|
||||
_feeCount += 1;
|
||||
}
|
||||
});
|
||||
if (_feeCount <= 1) {
|
||||
if (_fee.operate == 'ADD') {
|
||||
return '添加';
|
||||
}
|
||||
if (_fee.operate == 'DEL') {
|
||||
return '删除';
|
||||
}
|
||||
return "-"
|
||||
}
|
||||
if (_fee.operate == 'ADD') {
|
||||
return '修改(新)';
|
||||
}
|
||||
if (_fee.operate == 'DEL') {
|
||||
return '修改(旧)';
|
||||
}
|
||||
return "-"
|
||||
}
|
||||
}
|
||||
});
|
||||
})(window.vc);
|
||||
62
public/components/fee/aFeeDetailImport/aFeeDetailImport.html
Normal file
62
public/components/fee/aFeeDetailImport/aFeeDetailImport.html
Normal file
@ -0,0 +1,62 @@
|
||||
<div class="">
|
||||
<div class="margin-top">
|
||||
<table class="footable table table-stripped toggle-arrow-tiny" data-page-size="15">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="楼栋编号" namespace="aFeeDetailImport"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="单元编号" namespace="aFeeDetailImport"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="房屋编号" namespace="aFeeDetailImport"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="费用名称" namespace="aFeeDetailImport"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="开始时间" namespace="aFeeDetailImport"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="结束时间" namespace="aFeeDetailImport"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="总金额" namespace="aFeeDetailImport"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="备注" namespace="aFeeDetailImport"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="状态" namespace="aFeeDetailImport"></vc:i18n>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="detail in aFeeDetailImportInfo.importFeeDetails">
|
||||
<td class="text-center">{{detail.floorNum}}</td>
|
||||
<td class="text-center">{{detail.unitNum}}</td>
|
||||
<td class="text-center">{{detail.roomNum}}</td>
|
||||
<td class="text-center">{{detail.feeName}}</td>
|
||||
<td class="text-center">{{detail.startTime}}</td>
|
||||
<td class="text-center">{{detail.endTime}}</td>
|
||||
<td class="text-center">{{detail.amount}}</td>
|
||||
<td class="text-center">{{detail.remark}}</td>
|
||||
<td class="text-center">
|
||||
<span class="badge badge-success" v-if="detail.state == '1000'">导入成功</span>
|
||||
<span class="badge badge-danger" v-else>导入失败</span>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<!-- 分页 -->
|
||||
<div class="row">
|
||||
<div class="col-sm-4">
|
||||
|
||||
</div>
|
||||
<div class="col-sm-8">
|
||||
<vc:create namespace="aFeeDetailImport" path="frame/paginationPlus"></vc:create>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
59
public/components/fee/aFeeDetailImport/aFeeDetailImport.js
Normal file
59
public/components/fee/aFeeDetailImport/aFeeDetailImport.js
Normal file
@ -0,0 +1,59 @@
|
||||
/**
|
||||
入驻小区
|
||||
**/
|
||||
(function (vc) {
|
||||
var DEFAULT_PAGE = 1;
|
||||
var DEFAULT_ROWS = 10;
|
||||
vc.extends({
|
||||
data: {
|
||||
aFeeDetailImportInfo: {
|
||||
importFeeDetails: [],
|
||||
feeId: '',
|
||||
}
|
||||
},
|
||||
_initMethod: function () {
|
||||
},
|
||||
_initEvent: function () {
|
||||
vc.on('aFeeDetailImport', 'switch', function (_data) {
|
||||
$that.aFeeDetailImportInfo.feeId = _data.feeId;
|
||||
$that._loadAFeeDetailImportData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
});
|
||||
vc.on('aFeeDetailImport', 'paginationPlus', 'page_event',
|
||||
function (_currentPage) {
|
||||
vc.component._loadAFeeDetailImportData(_currentPage, DEFAULT_ROWS);
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
_loadAFeeDetailImportData: function (_page, _row) {
|
||||
let param = {
|
||||
params: {
|
||||
feeId: $that.aFeeDetailImportInfo.feeId,
|
||||
page: _page,
|
||||
row: _row
|
||||
}
|
||||
};
|
||||
|
||||
//发送get请求
|
||||
vc.http.apiGet('/fee.queryAdminImportFeeDetail',
|
||||
param,
|
||||
function (json) {
|
||||
var _roomInfo = JSON.parse(json);
|
||||
vc.component.aFeeDetailImportInfo.importFeeDetails = _roomInfo.data;
|
||||
vc.emit('aFeeDetailImport', 'paginationPlus', 'init', {
|
||||
total: _roomInfo.records,
|
||||
dataCount: _roomInfo.total,
|
||||
currentPage: _page
|
||||
});
|
||||
},
|
||||
function () {
|
||||
console.log('请求失败处理');
|
||||
}
|
||||
);
|
||||
},
|
||||
//查询
|
||||
_qureyAFeeDetailImport: function () {
|
||||
$that._loadAFeeDetailImportData(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
},
|
||||
}
|
||||
});
|
||||
})(window.vc);
|
||||
57
public/components/fee/aFeeDetailSub/aFeeDetailSub.html
Normal file
57
public/components/fee/aFeeDetailSub/aFeeDetailSub.html
Normal file
@ -0,0 +1,57 @@
|
||||
<div>
|
||||
|
||||
<div >
|
||||
<div class="col-lg-12 text-right">
|
||||
|
||||
</div>
|
||||
<table class="footable table table-stripped toggle-arrow-tiny margin-top" data-page-size="15">
|
||||
<thead>
|
||||
<tr>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="父费用ID" namespace="aFeeDetailSub"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="子费用ID" namespace="aFeeDetailSub"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="费用名称" namespace="aFeeDetailSub"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="费用对象" namespace="aFeeDetailSub"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="计费时间段" namespace="aFeeDetailSub"></vc:i18n>
|
||||
</th>
|
||||
<th class="text-center">
|
||||
<vc:i18n name="拆分时间" namespace="aFeeDetailSub"></vc:i18n>
|
||||
</th>
|
||||
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr v-for="sub in aFeeDetailSubInfo.subs">
|
||||
<td class="text-center">
|
||||
<a target="_blank" :href="'/#/pages/fee/adminFeeDetail?feeId='+sub.preFeeId">{{sub.preFeeId}}</a>
|
||||
</td>
|
||||
<td class="text-center">
|
||||
<a target="_blank" :href="'/#/pages/fee/adminFeeDetail?feeId='+sub.feeId">{{sub.feeId}}</a>
|
||||
</td>
|
||||
<td class="text-center">{{sub.feeName}}</td>
|
||||
<td class="text-center">{{sub.payerObjName}}</td>
|
||||
<td class="text-center">{{vc.dateFormat(sub.endTime)}}</br>
|
||||
~{{vc.dateFormat(sub.maxTime)}}
|
||||
</td>
|
||||
<td class="text-center">{{sub.createTime}}</td>
|
||||
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="row">
|
||||
<div class="col-sm-12 float-right">
|
||||
<vc:create namespace="aFeeDetailSub" path="frame/paginationPlus"></vc:create>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
95
public/components/fee/aFeeDetailSub/aFeeDetailSub.js
Normal file
95
public/components/fee/aFeeDetailSub/aFeeDetailSub.js
Normal file
@ -0,0 +1,95 @@
|
||||
/**
|
||||
入驻小区
|
||||
**/
|
||||
(function(vc) {
|
||||
var DEFAULT_PAGE = 1;
|
||||
var DEFAULT_ROWS = 10;
|
||||
vc.extends({
|
||||
data: {
|
||||
aFeeDetailSubInfo: {
|
||||
subs: [],
|
||||
feeId: '',
|
||||
total: '',
|
||||
records: '',
|
||||
fee:{}
|
||||
}
|
||||
},
|
||||
_initMethod: function() {},
|
||||
_initEvent: function() {
|
||||
//切换 至费用页面
|
||||
vc.on('aFeeDetailSub', 'switch', function(_param) {
|
||||
if (_param.feeId == '') {
|
||||
return;
|
||||
}
|
||||
vc.copyObject(_param, $that.aFeeDetailSubInfo);
|
||||
$that._listAFeeDetailSub(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
$that._loadAFeeDetailSubFeeInfo();
|
||||
});
|
||||
vc.on('aFeeDetailSub', 'loadSub', function() {
|
||||
$that._listAFeeDetailSub(DEFAULT_PAGE, DEFAULT_ROWS);
|
||||
$that._loadAFeeDetailSubFeeInfo();
|
||||
|
||||
});
|
||||
vc.on('aFeeDetailSub', 'paginationPlus', 'page_event',
|
||||
function(_currentPage) {
|
||||
$that._listAFeeDetailSub(_currentPage, DEFAULT_ROWS);
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
_listAFeeDetailSub: function(_page, _rows) {
|
||||
let param = {
|
||||
params: {
|
||||
page: _page,
|
||||
row: _rows,
|
||||
pcFeeId: $that.aFeeDetailSubInfo.feeId,
|
||||
}
|
||||
};
|
||||
//发送get请求
|
||||
vc.http.apiGet('/feeSub.listAdminPayFeeSub',
|
||||
param,
|
||||
function(json, res) {
|
||||
let _json = JSON.parse(json);
|
||||
$that.aFeeDetailSubInfo.total = _json.total;
|
||||
$that.aFeeDetailSubInfo.records = _json.records;
|
||||
$that.aFeeDetailSubInfo.subs = _json.data;
|
||||
vc.emit('aFeeDetailSub', 'paginationPlus', 'init', {
|
||||
total: $that.aFeeDetailSubInfo.records,
|
||||
dataCount: $that.aFeeDetailSubInfo.total,
|
||||
currentPage: _page
|
||||
});
|
||||
},
|
||||
function(errInfo, error) {
|
||||
console.log('请求失败处理');
|
||||
}
|
||||
);
|
||||
},
|
||||
_loadAFeeDetailSubFeeInfo: function () {
|
||||
let param = {
|
||||
params: {
|
||||
page: 1,
|
||||
row: 1,
|
||||
feeId: $that.aFeeDetailSubInfo.feeId,
|
||||
}
|
||||
};
|
||||
//发送get请求
|
||||
vc.http.apiGet('/fee.listAdminFee',
|
||||
param,
|
||||
function (json) {
|
||||
let _feeInfo = JSON.parse(json);
|
||||
// 员工列表 和 岗位列表匹配
|
||||
$that.aFeeDetailSubInfo.fee = _feeInfo.fees[0];
|
||||
},
|
||||
function () {
|
||||
console.log('请求失败处理');
|
||||
}
|
||||
);
|
||||
},
|
||||
_mergeFee:function(_fee){
|
||||
vc.emit('mergeFee', 'openMergeFeeModal',_fee);
|
||||
},
|
||||
_splitPayFee: function (_fee) {
|
||||
vc.emit('splitFee', 'openSplitFeeModal', $that.aFeeDetailSubInfo.fee);
|
||||
}
|
||||
}
|
||||
});
|
||||
})(window.vc);
|
||||
267
public/pages/fee/adminFeeDetail/adminFeeDetail.html
Normal file
267
public/pages/fee/adminFeeDetail/adminFeeDetail.html
Normal file
@ -0,0 +1,267 @@
|
||||
<div class="">
|
||||
<div class="white-bg padding-left padding-right padding-top border-radius-top">
|
||||
<div class="flex justify-between">
|
||||
<div class="text-title">
|
||||
费用信息
|
||||
</div>
|
||||
<div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- 业主信息 -->
|
||||
<div class="margin-top">
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
<vc:i18n name="费用ID:" namespace="adminFeeDetailInfo"></vc:i18n>
|
||||
</label>
|
||||
<label class="">{{adminFeeDetailInfo.feeId}}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
<vc:i18n name="费用标识:" namespace="adminFeeDetailInfo"></vc:i18n>
|
||||
</label>
|
||||
<label class="">{{adminFeeDetailInfo.feeFlagName || '-'}}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
<vc:i18n name="费用类型:" namespace="adminFeeDetailInfo"></vc:i18n>
|
||||
</label>
|
||||
<label class="">{{adminFeeDetailInfo.feeTypeCdName}}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
<vc:i18n name="付费对象:" namespace="adminFeeDetailInfo"></vc:i18n>
|
||||
</label>
|
||||
<label class="">{{adminFeeDetailInfo.payerObjName || '-'}}</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
<vc:i18n name="费用项:" namespace="adminFeeDetailInfo"></vc:i18n>
|
||||
</label>
|
||||
<label class="">{{adminFeeDetailInfo.feeName}}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
<vc:i18n name="费用状态:" namespace="adminFeeDetailInfo"></vc:i18n>
|
||||
</label>
|
||||
<label class="">{{adminFeeDetailInfo.stateName}}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
<vc:i18n name="建账时间:" namespace="adminFeeDetailInfo"></vc:i18n>
|
||||
</label>
|
||||
<label class="">{{adminFeeDetailInfo.startTime}}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
<vc:i18n name="批次:" namespace="adminFeeDetailInfo"></vc:i18n>
|
||||
</label>
|
||||
<label class="">{{adminFeeDetailInfo.batchId}}</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
<vc:i18n name="应收开始时间:" namespace="adminFeeDetailInfo"></vc:i18n>
|
||||
</label>
|
||||
<label class="">{{_getEndTime(adminFeeDetailInfo)}}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
<vc:i18n name="应收结束时间:" namespace="adminFeeDetailInfo"></vc:i18n>
|
||||
</label>
|
||||
<label class="">{{_getDeadlineTime(adminFeeDetailInfo)}}</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-3">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
<vc:i18n name="欠费金额:" namespace="adminFeeDetailInfo"></vc:i18n>
|
||||
</label>
|
||||
<label class="">{{adminFeeDetailInfo.amountOwed}}</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-sm-3" v-for="(item,index) in adminFeeDetailInfo.attrs">
|
||||
<div class="form-group">
|
||||
<label class="col-form-label">
|
||||
{{item.specCdName}}:
|
||||
</label>
|
||||
<label class="">{{item.value}}</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="vc-line-primary margin-top"></div>
|
||||
|
||||
<div class="margin-top-sm">
|
||||
<ul class="nav nav-tabs">
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aRoomDetailHisFee'}" v-on:click="changeTab('aRoomDetailHisFee')">
|
||||
<vc:i18n name="缴费记录" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item" v-if="adminFeeDetailInfo.payerObjType == '3333'">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aRoomDetailRoom'}" v-on:click="changeTab('aRoomDetailRoom')">
|
||||
<vc:i18n name="关联房屋" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item" v-if="adminFeeDetailInfo.payerObjType == '6666'">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aRoomDetailCar'}" v-on:click="changeTab('aRoomDetailCar')">
|
||||
<vc:i18n name="关联车辆" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item" v-if="adminFeeDetailInfo.payerObjType == '7777'">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'adminFeeDetailContract'}" v-on:click="changeTab('adminFeeDetailContract')">
|
||||
<vc:i18n name="关联合同" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aFeeDetailHis'}" v-on:click="changeTab('aFeeDetailHis')">
|
||||
<vc:i18n name="修改记录" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aFeeDetailConfig'}" v-on:click="changeTab('aFeeDetailConfig')">
|
||||
<vc:i18n name="费用项" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aRoomDetailOwner'}" v-on:click="changeTab('aRoomDetailOwner')">
|
||||
<vc:i18n name="业主" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aFeeDetailFeeObj'}" v-on:click="changeTab('aFeeDetailFeeObj')">
|
||||
<vc:i18n name="同费用对象" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aRoomDetailMeterWaterLog'}" v-on:click="changeTab('aRoomDetailMeterWaterLog')">
|
||||
<vc:i18n name="关联抄表" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aFeeDetailImport'}" v-on:click="changeTab('aFeeDetailImport')">
|
||||
<vc:i18n name="关联导入" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aFeeDetailDiscount'}" v-on:click="changeTab('aFeeDetailDiscount')">
|
||||
<vc:i18n name="优惠申请" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aRoomDetailReceipt'}" v-on:click="changeTab('aRoomDetailReceipt')">
|
||||
<vc:i18n name="补打收据" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item" v-if="adminFeeDetailInfo.feeFlag != '2006012'">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'aFeeDetailSub'}" v-on:click="changeTab('aFeeDetailSub')">
|
||||
<vc:i18n name="费用拆分" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<!-- <li class="nav-item" v-if="adminFeeDetailInfo.feeFlag == '2006012'">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'adminFeeDetailFeeRule'}" v-on:click="changeTab('adminFeeDetailFeeRule')">
|
||||
<vc:i18n name="账单规则" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item" v-if="adminFeeDetailInfo.feeFlag == '2006012'">
|
||||
<a class="nav-link" v-bind:class="{active:adminFeeDetailInfo._currentTab == 'adminFeeDetailRuleBill'}" v-on:click="changeTab('adminFeeDetailRuleBill')">
|
||||
<vc:i18n name="费用账单" namespace="adminFeeDetail"></vc:i18n>
|
||||
</a>
|
||||
</li> -->
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="white-bg padding-left padding-right padding-top border-radius-bottom">
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aRoomDetailHisFee'">
|
||||
<vc:create path="community/aRoomDetailHisFee"></vc:create>
|
||||
</div>
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aRoomDetailRoom'">
|
||||
<vc:create path="community/aRoomDetailRoom"></vc:create>
|
||||
</div>
|
||||
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aRoomDetailCar'">
|
||||
<vc:create path="community/aRoomDetailCar"></vc:create>
|
||||
</div>
|
||||
<!-- <div v-if="adminFeeDetailInfo._currentTab == 'adminFeeDetailContract'">
|
||||
<vc:create path="fee/adminFeeDetailContract"></vc:create>
|
||||
</div> -->
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aFeeDetailHis'">
|
||||
<vc:create path="fee/aFeeDetailHis"></vc:create>
|
||||
</div>
|
||||
|
||||
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aFeeDetailConfig'">
|
||||
<vc:create path="fee/aFeeDetailConfig"></vc:create>
|
||||
</div>
|
||||
|
||||
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aRoomDetailOwner'">
|
||||
<vc:create path="community/aRoomDetailOwner"></vc:create>
|
||||
</div>
|
||||
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aFeeDetailFeeObj'">
|
||||
<vc:create path="fee/aFeeDetailFeeObj"></vc:create>
|
||||
</div>
|
||||
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aRoomDetailMeterWaterLog'">
|
||||
<vc:create path="community/aRoomDetailMeterWaterLog"></vc:create>
|
||||
</div>
|
||||
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aFeeDetailImport'">
|
||||
<vc:create path="fee/aFeeDetailImport"></vc:create>
|
||||
</div>
|
||||
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aFeeDetailDiscount'">
|
||||
<vc:create path="fee/aFeeDetailDiscount"></vc:create>
|
||||
</div>
|
||||
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aRoomDetailReceipt'">
|
||||
<vc:create path="community/aRoomDetailReceipt"></vc:create>
|
||||
</div>
|
||||
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'aFeeDetailSub'">
|
||||
<vc:create path="fee/aFeeDetailSub"></vc:create>
|
||||
</div>
|
||||
<!--
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'adminFeeDetailFeeRule'">
|
||||
<vc:create path="fee/adminFeeDetailFeeRule"></vc:create>
|
||||
</div>
|
||||
<div v-if="adminFeeDetailInfo._currentTab == 'adminFeeDetailRuleBill'">
|
||||
<vc:create path="fee/adminFeeDetailRuleBill"></vc:create>
|
||||
</div>
|
||||
|
||||
-->
|
||||
</div>
|
||||
|
||||
</div>
|
||||
104
public/pages/fee/adminFeeDetail/adminFeeDetail.js
Normal file
104
public/pages/fee/adminFeeDetail/adminFeeDetail.js
Normal file
@ -0,0 +1,104 @@
|
||||
/**
|
||||
业主详情页面
|
||||
**/
|
||||
(function (vc) {
|
||||
vc.extends({
|
||||
data: {
|
||||
adminFeeDetailInfo: {
|
||||
feeId: '',
|
||||
configId: '',
|
||||
feeFlag:'',
|
||||
feeFlagName: '',
|
||||
feeTypeCdName: '',
|
||||
payerObjName: '',
|
||||
payerObjId: '',
|
||||
payerObjType:'',
|
||||
feeName: '',
|
||||
stateName: '',
|
||||
state: '',
|
||||
startTime: '',
|
||||
batchId: '',
|
||||
endTime: '',
|
||||
deadlineTime: '',
|
||||
amountOwed: '',
|
||||
attrs: [],
|
||||
_currentTab: 'aRoomDetailHisFee',
|
||||
needBack: false,
|
||||
}
|
||||
},
|
||||
_initMethod: function () {
|
||||
$that.adminFeeDetailInfo.feeId = vc.getParam('feeId');
|
||||
if (!vc.notNull($that.adminFeeDetailInfo.feeId)) {
|
||||
return;
|
||||
}
|
||||
$that._loadAdminFeeDetailInfo();
|
||||
|
||||
},
|
||||
_initEvent: function () {
|
||||
vc.on('adminFeeDetail', 'listCarData', function (_info) {
|
||||
//$that._loadAdminFeeDetailInfo();
|
||||
$that.changeTab($that.adminFeeDetailInfo._currentTab);
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
_loadAdminFeeDetailInfo: function () {
|
||||
let param = {
|
||||
params: {
|
||||
page: 1,
|
||||
row: 1,
|
||||
feeId: $that.adminFeeDetailInfo.feeId,
|
||||
}
|
||||
};
|
||||
//发送get请求
|
||||
vc.http.apiGet('/fee.listAdminFee',
|
||||
param,
|
||||
function (json) {
|
||||
let _feeInfo = JSON.parse(json);
|
||||
// 员工列表 和 岗位列表匹配
|
||||
vc.copyObject(_feeInfo.fees[0], $that.adminFeeDetailInfo);
|
||||
$that.adminFeeDetailInfo.attrs = _feeInfo.fees[0].feeAttrs;
|
||||
$that.changeTab($that.adminFeeDetailInfo._currentTab);
|
||||
},
|
||||
function () {
|
||||
console.log('请求失败处理');
|
||||
}
|
||||
);
|
||||
},
|
||||
changeTab: function (_tab) {
|
||||
$that.adminFeeDetailInfo._currentTab = _tab;
|
||||
let _ownerId = "";
|
||||
$that.adminFeeDetailInfo.attrs.forEach(item => {
|
||||
if(item.specCd=='390007'){
|
||||
_ownerId = item.value;
|
||||
}
|
||||
});
|
||||
vc.emit(_tab, 'switch', {
|
||||
feeId: $that.adminFeeDetailInfo.feeId,
|
||||
payerObjId: $that.adminFeeDetailInfo.payerObjId,
|
||||
roomId: $that.adminFeeDetailInfo.payerObjId,
|
||||
carId: $that.adminFeeDetailInfo.payerObjId,
|
||||
configId:$that.adminFeeDetailInfo.configId,
|
||||
state:$that.adminFeeDetailInfo.state,
|
||||
ownerId:_ownerId
|
||||
});
|
||||
},
|
||||
|
||||
_getDeadlineTime: function (_fee) {
|
||||
|
||||
if (_fee.amountOwed == 0 && _fee.endTime == _fee.deadlineTime) {
|
||||
return "-";
|
||||
}
|
||||
if (_fee.state == '2009001') {
|
||||
return "-";
|
||||
}
|
||||
return _fee.deadlineTime;
|
||||
},
|
||||
_getEndTime: function (_fee) {
|
||||
if (_fee.state == '2009001') {
|
||||
return "-";
|
||||
}
|
||||
return _fee.endTime;
|
||||
},
|
||||
}
|
||||
});
|
||||
})(window.vc);
|
||||
Loading…
Reference in New Issue
Block a user