| public/pages/property/costDetail/costDetail.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| public/pages/property/costDetail/detail/detail.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| public/pages/property/costDetail/edit/edit.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
public/pages/property/costDetail/costDetail.js
@@ -83,7 +83,7 @@ } // 如果还是没有小区列表,通过API获取 if (!communityInfos || communityInfos.length <= 3) { if (!communityInfos || !Array.isArray(communityInfos) || communityInfos.length <= 3) { console.log('小区列表不完整,通过API获取'); let param = { params: { @@ -638,12 +638,18 @@ vc.jumpToPage('/#/pages/property/costDetail/add'); }, _viewCostDetail: function (_item) { // 存储当前记录到localStorage localStorage.setItem('costDetailCurrentItem', JSON.stringify(_item._originalData)); vc.jumpToPage('/#/pages/property/costDetail/detail?costDetailId=' + _item.costDetailId); }, _viewMore: function (_item) { // 存储当前记录到localStorage localStorage.setItem('costDetailCurrentItem', JSON.stringify(_item._originalData)); vc.jumpToPage('/#/pages/property/costDetail/more?costDetailId=' + _item.costDetailId); }, _editCostDetail: function (_item) { // 存储当前记录到localStorage localStorage.setItem('costDetailCurrentItem', JSON.stringify(_item._originalData)); vc.jumpToPage('/#/pages/property/costDetail/edit?costDetailId=' + _item.costDetailId); }, _deleteCostDetail: function (_item) { public/pages/property/costDetail/detail/detail.js
@@ -31,6 +31,21 @@ var costDetailId = vc.getParam('costDetailId'); if (costDetailId) { $that.costDetailInfo.costDetailId = costDetailId; // 尝试从localStorage获取数据 try { var storedItem = localStorage.getItem('costDetailCurrentItem'); if (storedItem) { var item = JSON.parse(storedItem); console.log('从localStorage获取到数据:', item); $that._fillDetailData(item); return; // 直接使用本地存储的数据,不再请求API } } catch (e) { console.error('读取localStorage失败:', e); } // 如果localStorage中没有数据,再通过API请求 $that._loadCostDetail(); } else { vc.toast('缺少费用明细ID'); @@ -44,7 +59,7 @@ methods: { _loadCostDetail: function () { var params = { communityName: vc.getCurrentCommunity().name, id: $that.costDetailInfo.costDetailId, page: 1, row: 1000 }; @@ -63,18 +78,31 @@ console.log('API返回数据:', _json); if (_json.code === 0 && _json.data) { var records = Array.isArray(_json.data) ? _json.data : []; console.log('查询到记录数:', records.length); var foundItem = null; var targetId = String($that.costDetailInfo.costDetailId); for (var i = 0; i < records.length; i++) { var recordId = String(records[i].id); console.log('比较ID: 目标=' + targetId + ', 记录=' + recordId); if (recordId === targetId || records[i].id == $that.costDetailInfo.costDetailId) { foundItem = records[i]; // 检查返回的是单个对象还是数组 if (Array.isArray(_json.data)) { var records = _json.data; console.log('查询到记录数:', records.length); for (var i = 0; i < records.length; i++) { var recordId = String(records[i].id); console.log('比较ID: 目标=' + targetId + ', 记录=' + recordId); if (recordId === targetId || records[i].id == $that.costDetailInfo.costDetailId) { foundItem = records[i]; console.log('找到匹配记录:', foundItem); break; } } } else { // 后端直接返回单个对象 var singleItem = _json.data; console.log('后端返回单个对象:', singleItem); var recordId = String(singleItem.id); if (recordId === targetId || singleItem.id == $that.costDetailInfo.costDetailId) { foundItem = singleItem; console.log('找到匹配记录:', foundItem); break; } } @@ -84,16 +112,14 @@ } else { console.error('未找到匹配的记录,目标ID:', $that.costDetailInfo.costDetailId); vc.toast('未找到该费用明细,ID: ' + $that.costDetailInfo.costDetailId); setTimeout(function () { vc.goBack(); }, 1500); // 不直接返回上一页,而是显示错误信息并提供返回按钮 // 这样用户可以清楚地看到错误原因,而不是被强制退出 } } else { console.error('API返回错误:', _json); vc.toast(_json.msg || '未找到该费用明细'); setTimeout(function () { vc.goBack(); }, 1500); // 不直接返回上一页,而是显示错误信息并提供返回按钮 // 这样用户可以清楚地看到错误原因,而不是被强制退出 } } catch (e) { console.error('数据解析失败:', e); public/pages/property/costDetail/edit/edit.js
@@ -175,6 +175,21 @@ var costDetailId = vc.getParam('costDetailId'); if (costDetailId) { $that.costDetailInfo.costDetailId = costDetailId; // 尝试从localStorage获取数据 try { var storedItem = localStorage.getItem('costDetailCurrentItem'); if (storedItem) { var item = JSON.parse(storedItem); console.log('从localStorage获取到数据:', item); $that._fillFormData(item); return; // 直接使用本地存储的数据,不再请求API } } catch (e) { console.error('读取localStorage失败:', e); } // 如果localStorage中没有数据,再通过API请求 $that._loadCostDetail(); } else { vc.toast('缺少费用明细ID'); @@ -228,7 +243,7 @@ }, _loadCostDetail: function () { var params = { communityName: vc.getCurrentCommunity().name, id: $that.costDetailInfo.costDetailId, page: 1, row: 1000 }; @@ -247,18 +262,31 @@ console.log('API返回数据:', _json); if (_json.code === 0 && _json.data) { var records = Array.isArray(_json.data) ? _json.data : []; console.log('查询到记录数:', records.length); var foundItem = null; var targetId = String($that.costDetailInfo.costDetailId); for (var i = 0; i < records.length; i++) { var recordId = String(records[i].id); console.log('比较ID: 目标=' + targetId + ', 记录=' + recordId); if (recordId === targetId || records[i].id == $that.costDetailInfo.costDetailId) { foundItem = records[i]; // 检查返回的是单个对象还是数组 if (Array.isArray(_json.data)) { var records = _json.data; console.log('查询到记录数:', records.length); for (var i = 0; i < records.length; i++) { var recordId = String(records[i].id); console.log('比较ID: 目标=' + targetId + ', 记录=' + recordId); if (recordId === targetId || records[i].id == $that.costDetailInfo.costDetailId) { foundItem = records[i]; console.log('找到匹配记录:', foundItem); break; } } } else { // 后端直接返回单个对象 var singleItem = _json.data; console.log('后端返回单个对象:', singleItem); var recordId = String(singleItem.id); if (recordId === targetId || singleItem.id == $that.costDetailInfo.costDetailId) { foundItem = singleItem; console.log('找到匹配记录:', foundItem); break; } } @@ -268,16 +296,12 @@ } else { console.error('未找到匹配的记录,目标ID:', $that.costDetailInfo.costDetailId); vc.toast('未找到该费用明细,ID: ' + $that.costDetailInfo.costDetailId); setTimeout(function () { vc.goBack(); }, 1500); // 不直接返回上一页,而是显示错误信息并提供返回按钮 } } else { console.error('API返回错误:', _json); vc.toast('未找到该费用明细'); setTimeout(function () { vc.goBack(); }, 1500); vc.toast(_json.msg || '未找到该费用明细'); // 不直接返回上一页,而是显示错误信息并提供返回按钮 } } catch (e) { console.error('数据解析失败:', e);