/**
|
* 电话表管理Admin页面
|
* 功能:实现电话表的查询、管理和详情查看功能
|
*/
|
(function(vc) {
|
var DEFAULT_PAGE = 1;
|
var DEFAULT_ROWS = 10;
|
vc.extends({
|
data: {
|
// 电话表管理信息对象
|
adminPhoneMeterInfo: {
|
// 电话表数据列表
|
phoneBillFlows: [],
|
// 总记录数
|
total: 0,
|
// 总页数
|
records: 1,
|
// 是否显示更多查询条件
|
moreCondition: false,
|
// 查询条件
|
conditions: {
|
// 设备编号
|
deviceNum: '',
|
// 房间编号
|
roomNum: '',
|
// 房间名称模糊查询
|
roomNameLike: '',
|
// 小区ID
|
communityId: ''
|
}
|
}
|
},
|
/**
|
* 初始化方法
|
* 功能:初始化小区选择、加载电话表数据
|
*/
|
_initMethod: function() {
|
// 监听小区选择事件
|
vc.on('selectAdminCommunity','changeCommunity',function(_community){
|
$that.adminPhoneMeterInfo.conditions.communityId = _community.communityId;
|
$that._listPhoneBillFlows(DEFAULT_PAGE, DEFAULT_ROWS);
|
});
|
// 加载电话表数据
|
$that._listPhoneBillFlows(DEFAULT_PAGE, DEFAULT_ROWS);
|
},
|
/**
|
* 初始化事件监听
|
* 功能:监听组件间的事件通信
|
*/
|
_initEvent: function() {
|
// 监听列表刷新事件
|
vc.on('adminPhoneMeter', 'listPhoneBillFlow', function(_param) {
|
$that._listPhoneBillFlows(DEFAULT_PAGE, DEFAULT_ROWS);
|
});
|
// 监听分页事件
|
vc.on('pagination', 'page_event', function(_currentPage) {
|
$that._listPhoneBillFlows(_currentPage, DEFAULT_ROWS);
|
});
|
},
|
methods: {
|
/**
|
* 查询电话表数据
|
* @param {number} _page 当前页码
|
* @param {number} _rows 每页记录数
|
*/
|
_listPhoneBillFlows: function(_page, _rows) {
|
// 设置分页参数
|
$that.adminPhoneMeterInfo.conditions.page = _page;
|
$that.adminPhoneMeterInfo.conditions.row = _rows;
|
// 构建请求参数
|
let param = {
|
params: $that.adminPhoneMeterInfo.conditions
|
};
|
// 发送GET请求查询电话表数据
|
vc.http.apiGet('/app/phoneBillFlowInfo/queryPhoneBillFlowInfo',
|
param,
|
function(json, res) {
|
// 解析响应数据
|
let _json = JSON.parse(json);
|
// 检查响应状态
|
if (_json.code === 0) {
|
// 更新数据列表
|
$that.adminPhoneMeterInfo.total = _json.total;
|
$that.adminPhoneMeterInfo.records = _json.records;
|
$that.adminPhoneMeterInfo.phoneBillFlows = _json.data;
|
// 更新分页组件
|
vc.emit('pagination', 'init', {
|
total: $that.adminPhoneMeterInfo.records,
|
currentPage: _page
|
});
|
} else {
|
// 显示错误提示
|
vc.toast(_json.msg);
|
}
|
},
|
function(errInfo, error) {
|
// 错误处理
|
console.log('请求失败处理');
|
}
|
);
|
},
|
/**
|
* 执行查询操作
|
* 功能:根据当前查询条件重新加载数据
|
*/
|
_queryPhoneMeterMethod: function() {
|
$that._listPhoneBillFlows(DEFAULT_PAGE, DEFAULT_ROWS);
|
},
|
/**
|
* 执行重置操作
|
* 功能:清空查询条件并重新加载数据
|
*/
|
_resetPhoneMeterMethod: function() {
|
// 清空查询条件
|
$that.adminPhoneMeterInfo.conditions.deviceNum = '';
|
$that.adminPhoneMeterInfo.conditions.roomNum = '';
|
$that.adminPhoneMeterInfo.conditions.roomNameLike = '';
|
// 重新加载数据
|
$that._listPhoneBillFlows(DEFAULT_PAGE, DEFAULT_ROWS);
|
},
|
/**
|
* 切换更多查询条件显示状态
|
* 功能:控制更多查询条件的显示与隐藏
|
*/
|
_moreCondition: function() {
|
if ($that.adminPhoneMeterInfo.moreCondition) {
|
$that.adminPhoneMeterInfo.moreCondition = false;
|
} else {
|
$that.adminPhoneMeterInfo.moreCondition = true;
|
}
|
},
|
/**
|
* 跳转到电话表详情页面
|
* @param {object} _phoneBillFlow 电话表数据对象
|
*/
|
_toPhoneMeterDetail: function (_phoneBillFlow) {
|
vc.jumpToPage('/#/pages/property/phoneMeterManage?phoneBillFlowId=' + _phoneBillFlow.id);
|
}
|
}
|
});
|
})(window.vc);
|