zhangjq
2026-01-26 a235fc6fa66bb1905e28e531729be2c80858e1a8
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
/**
 入驻小区
 **/
(function (vc) {
    var DEFAULT_PAGE = 1;
    var DEFAULT_ROWS = 10;
    vc.extends({
        data: {
            assetImportLogInfo: {
                logs: [],
                total: 0,
                records: 1,
                moreCondition: false,
                carNum: ''
            }
        },
        _initMethod: function () {
            vc.component._listAssetImportLogs(DEFAULT_PAGE, DEFAULT_ROWS);
        },
        _initEvent: function () {
            vc.on('assetImportLog', 'listAssetImportLog', function (_param) {
                vc.component._listAssetImportLogs(DEFAULT_PAGE, DEFAULT_ROWS);
            });
            vc.on('pagination', 'page_event', function (_currentPage) {
                vc.component._listAssetImportLogs(_currentPage, DEFAULT_ROWS);
            });
        },
        methods: {
            _listAssetImportLogs: function (_page, _rows) {
                var param = {
                    params: {
                        page: _page,
                        row: _rows,
                        communityId: vc.getCurrentCommunity().communityId
                    }
                };
                //发送get请求
                vc.http.apiGet('/assetImportLog/queryAssetImportLog',
                    param,
                    function (json, res) {
                        try {
                            let _assetImportLogInfo = JSON.parse(json);
                            console.log('查询导入日志成功,返回数据:', _assetImportLogInfo);
                            
                            // 验证数据格式,确保所有必要字段存在
                            if (_assetImportLogInfo && _assetImportLogInfo.code == 0) {
                                // 为组件数据添加默认值,防止出现undefined错误
                                vc.component.assetImportLogInfo.total = _assetImportLogInfo.total || 0;
                                vc.component.assetImportLogInfo.records = _assetImportLogInfo.records || 0;
                                vc.component.assetImportLogInfo.logs = _assetImportLogInfo.data || [];
                                
                                // 初始化分页组件
                                vc.emit('pagination', 'init', {
                                    total: vc.component.assetImportLogInfo.records,
                                    dataCount: vc.component.assetImportLogInfo.total,
                                    currentPage: _page
                                });
                            } else {
                                // 数据格式不符合预期,显示友好错误信息
                                console.warn('导入日志数据格式不符合预期:', _assetImportLogInfo);
                                vc.toast('查询导入日志失败: ' + (_assetImportLogInfo.msg || '未知错误'));
                            }
                        } catch (e) {
                            // 解析失败,显示友好错误信息
                            console.error('解析导入日志失败:', e, json);
                            vc.toast('解析导入日志失败: ' + e.message);
                        }
                    },
                    function (errInfo, error) {
                        // 详细记录错误信息,便于调试
                        console.error('请求导入日志失败:', errInfo, error);
                        
                        // 显示友好的错误信息
                        let errorMsg = '查询导入日志失败: ';
                        if (errInfo && errInfo.includes('Read timed out')) {
                            errorMsg += '请求超时,请稍后重试';
                        } else if (errInfo && errInfo.includes('I/O error')) {
                            errorMsg += '网络异常,请检查网络连接';
                        } else {
                            errorMsg += (errInfo || '未知错误');
                        }
                        
                        vc.toast(errorMsg);
                    }
                );
            },
            _queryData: function () {
                vc.component._listAssetImportLogs(DEFAULT_PAGE, DEFAULT_ROWS);
            },
            _openDetail: function (_log) {
                vc.jumpToPage('/#/pages/property/assetImportLogDetail?logId=' + _log.logId + "&logType=" + _log.logType);
            }
        }
    });
})(window.vc);