(function (vc) { var DEFAULT_PAGE = 1; var DEFAULT_ROWS = 10; vc.extends({ data: { listOwnerInfo: { owners: [], personRoles: [], total: 0, records: 1, moreCondition: false, _currentOwnerId: '', _eventName: '', conditions: { personRole: '', ownerId: '', name: '', link: '', idCard: '', roomNum: '', roomId: '', roomName: '', personType: '' }, currentPage: DEFAULT_PAGE, listColumns: [] } }, _initMethod: function () { $that._getColumns(function () { $that._listOwnerData($that.listOwnerInfo.currentPage, DEFAULT_ROWS); }); let _personRoles = [{ statusCd: '', name: '全部' }]; vc.getDict('building_owner', "person_role", function (_data) { _data.forEach(_d => { _personRoles.push(_d); }); }); $that.listOwnerInfo.personRoles = _personRoles; }, _initEvent: function () { vc.on('listOwner', 'listOwnerData', function () { $that._listOwnerData($that.listOwnerInfo.currentPage, DEFAULT_ROWS); }); vc.on('pagination', 'page_event', function (_currentPage) { $that.listOwnerInfo.currentPage = _currentPage; $that._listOwnerData(_currentPage, DEFAULT_ROWS); }); vc.on('listOwner', 'chooseRoom', function (_room) { if ($that.listOwnerInfo._eventName == 'PayPropertyFee') { vc.jumpToPage("/#/pages/property/listRoomFee?" + vc.objToGetParam(_room)); } else { vc.jumpToPage("/#/pages/property/ownerRepairManage?ownerId=" + $that.listOwnerInfo._currentOwnerId + "&roomId=" + _room.roomId); } }); vc.on('listOwner', 'chooseParkingSpace', function (_parkingSpace) { vc.jumpToPage("/#/pages/property/listParkingSpaceFee?" + vc.objToGetParam(_parkingSpace)); }); }, methods: { _listOwnerData: function (_page, _row) { $that.listOwnerInfo.conditions.page = _page; $that.listOwnerInfo.conditions.row = _row; $that.listOwnerInfo.conditions.communityId = vc.getCurrentCommunity().communityId; let param = { params: $that.listOwnerInfo.conditions } //发送get请求 vc.http.apiGet('/owner.queryOwners', param, function (json, res) { let _json = JSON.parse(json); $that.listOwnerInfo.total = _json.total; $that.listOwnerInfo.records = _json.records; $that.listOwnerInfo.owners = _json.data; $that.dealOwnerAttr(_json.data); vc.emit('pagination', 'init', { total: $that.listOwnerInfo.records, dataCount: $that.listOwnerInfo.total, currentPage: _page }); }, function (errInfo, error) { console.log('请求失败处理'); } ); }, _openAddOwnerModal: function () { //打开添加框 vc.emit('addOwner', 'openAddOwnerModal', -1); }, _openDelOwnerModel: function (_owner) { // 打开删除对话框 vc.emit('deleteOwner', 'openOwnerModel', _owner); }, _openEditOwnerModel: function (_owner) { vc.emit('editOwner', 'openEditOwnerModal', _owner); }, //查询 _queryOwnerMethod: function () { $that._listOwnerData(DEFAULT_PAGE, DEFAULT_ROWS); }, //重置 _resetOwnerMethod: function () { $that.listOwnerInfo.conditions = { personRole: '', ownerId: '', name: '', link: '', idCard: '', roomNum: '', roomId: '', roomName: '', personType: '' }; $that._listOwnerData(DEFAULT_PAGE, DEFAULT_ROWS); }, _openAddOwnerRoom: function (_owner) { vc.jumpToPage("/#/pages/property/addOwnerRoomBinding?ownerId=" + _owner.ownerId); }, _openHireParkingSpace: function (_owner) { vc.jumpToPage("/#/pages/property/hireParkingSpace?ownerId=" + _owner.ownerId); }, _openSellParkingSpace: function (_owner) { vc.jumpToPage("/#/pages/property/sellParkingSpace?ownerId=" + _owner.ownerId); }, _openOwnerDetailModel: function (_owner) { vc.jumpToPage("/#/pages/owner/ownerDetail?ownerId=" + _owner.ownerId + "&ownerName=" + _owner.name + "&needBack=true"); }, _openOwnerDetailMember: function (_owner) { vc.jumpToPage("/#/pages/owner/ownerDetail?ownerId=" + _owner.ownerId + "&ownerName=" + _owner.name + "&needBack=true¤tTab=ownerDetailMember"); }, _openDeleteOwnerRoom: function (_owner) { vc.jumpToPage("/#/pages/property/deleteOwnerRoom?ownerId=" + _owner.ownerId); }, _openPayPropertyFee: function (_owner) { //查看 业主是否有多套房屋,如果有多套房屋,则提示对话框选择,只有一套房屋则直接跳转至交费页面缴费 $that.listOwnerInfo._eventName = "PayPropertyFee"; $that.listOwnerInfo._currentOwnerId = _owner.ownerId; // 暂存如果有多个房屋是回调回来时 ownerId 会丢掉 var param = { params: { communityId: vc.getCurrentCommunity().communityId, ownerId: _owner.ownerId } } vc.http.apiGet('/room.queryRoomsByOwner', param, function (json, res) { var listRoomData = JSON.parse(json); var rooms = listRoomData.rooms; if (rooms.length == 1) { vc.jumpToPage("/#/pages/property/listRoomFee?" + vc.objToGetParam(rooms[0])); } else if (rooms.length == 0) { //vc.toast("当前业主未查询到房屋信息"); vc.toast("当前业主未查询到房屋信息"); } else { vc.emit('searchRoom', 'showOwnerRooms', rooms); } }, function (errInfo, error) { console.log('请求失败处理'); } ); }, _moreCondition: function () { if ($that.listOwnerInfo.moreCondition) { $that.listOwnerInfo.moreCondition = false; } else { $that.listOwnerInfo.moreCondition = true; } }, dealOwnerAttr: function (owners) { if (!owners) { return; } owners.forEach(item => { $that._getColumnsValue(item); }); }, _getColumnsValue: function (_owner) { _owner.listValues = []; if (!_owner.hasOwnProperty('ownerAttrDtos') || _owner.ownerAttrDtos.length < 1) { $that.listOwnerInfo.listColumns.forEach(_value => { _owner.listValues.push(''); }) return; } let _ownerAttrDtos = _owner.ownerAttrDtos; $that.listOwnerInfo.listColumns.forEach(_value => { let _tmpValue = ''; _ownerAttrDtos.forEach(_attrItem => { if (_value == _attrItem.specName) { _tmpValue = _attrItem.valueName; } }) _owner.listValues.push(_tmpValue); }) }, _getColumns: function (_call) { $that.listOwnerInfo.listColumns = []; vc.getAttrSpec('building_owner_attr', function (data) { $that.listOwnerInfo.listColumns = []; data.forEach(item => { if (item.listShow == 'Y') { $that.listOwnerInfo.listColumns.push(item.specName); } }); _call(); }); }, _viewOwnerRooms: function (_owner) { vc.emit('ownerRooms', 'openOwnerRoomModel', _owner); }, _viewOwnerMembers: function (_owner) { vc.emit('ownerMembers', 'openOwnerMemberModel', _owner); }, _viewOwnerCars: function (_owner) { vc.emit('ownerCars', 'openOwnerCarModel', _owner); }, _viewOweFees: function (_owner) { vc.emit('ownerOweFees', 'openOwnerOweFeeModel', _owner); }, _viewOwnerFace: function (_url) { vc.emit('viewImage', 'showImage', { url: _url }); }, swatchPersonRole: function (item) { $that.listOwnerInfo.conditions.personRole = item.statusCd; $that._listOwnerData(DEFAULT_PAGE, DEFAULT_ROWS); }, } }) })(window.vc);