zhangjq
2026-01-22 e6b749aef5621ab5b79fc2da880c3964302bb009
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
/**
 * 电话表管理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);