mirror of
https://gitee.com/java110/MicroCommunityWeb.git
synced 2026-02-24 21:59:12 +08:00
141 lines
5.9 KiB
JavaScript
Executable File
141 lines
5.9 KiB
JavaScript
Executable File
(function(vc){
|
|
var DEFAULT_ROWS = 10
|
|
vc.extends({
|
|
propTypes: {
|
|
emitListener:vc.propTypes.string,
|
|
emitFunction:vc.propTypes.string
|
|
},
|
|
data:{
|
|
addOrgCommunityInfo:{
|
|
communitys:[],
|
|
communityName:'',
|
|
orgId:'',
|
|
orgName:'',
|
|
selectCommunitys:[]
|
|
}
|
|
},
|
|
watch: { // 监视双向绑定的数据数组
|
|
checkData: {
|
|
handler(){ // 数据数组有变化将触发此函数
|
|
if(vc.component.addOrgCommunityInfo.selectCommunitys.length == vc.component.addOrgCommunityInfo.communitys.length){
|
|
document.querySelector('#quan').checked = true;
|
|
}else {
|
|
document.querySelector('#quan').checked = false;
|
|
}
|
|
},
|
|
deep: true // 深度监视
|
|
}
|
|
},
|
|
_initMethod:function(){
|
|
},
|
|
_initEvent:function(){
|
|
vc.on('addOrgCommunity','openAddOrgCommunityModal',function(_param){
|
|
vc.component._refreshChooseOrgInfo();
|
|
$('#addOrgCommunityModel').modal('show');
|
|
vc.copyObject(_param,vc.component.addOrgCommunityInfo);
|
|
vc.component._loadAllCommunityInfo(1,10,'');
|
|
});
|
|
|
|
vc.on('addOrgCommunity','paginationPlus', 'page_event', function (_currentPage) {
|
|
vc.component._loadAllCommunityInfo(_currentPage, DEFAULT_ROWS);
|
|
});
|
|
},
|
|
methods:{
|
|
_loadAllCommunityInfo:function(_page,_row,_name){
|
|
var param = {
|
|
params:{
|
|
page:_page,
|
|
row:_row,
|
|
name:_name,
|
|
orgId:vc.component.addOrgCommunityInfo.orgId
|
|
}
|
|
};
|
|
|
|
//发送get请求
|
|
vc.http.get('addOrgCommunity',
|
|
'list',
|
|
param,
|
|
function(json){
|
|
var _communityInfo = JSON.parse(json);
|
|
vc.component.addOrgCommunityInfo.communitys = _communityInfo.communitys;
|
|
vc.emit('addOrgCommunity','paginationPlus', 'init', {
|
|
total: _communityInfo.records,
|
|
currentPage: _page
|
|
});
|
|
},function(){
|
|
console.log('请求失败处理');
|
|
}
|
|
);
|
|
},
|
|
addOrgCommunity:function(_org){
|
|
var _selectCommunitys = vc.component.addOrgCommunityInfo.selectCommunitys;
|
|
var _tmpCommunitys = vc.component.addOrgCommunityInfo.communitys;
|
|
if(_selectCommunitys.length <1){
|
|
vc.toast("请选择隶属小区");
|
|
return ;
|
|
}
|
|
var _communitys = [];
|
|
for(var _selectIndex = 0 ;_selectIndex <_selectCommunitys.length ;_selectIndex ++){
|
|
for(var _communityIndex =0; _communityIndex < _tmpCommunitys.length;_communityIndex++){
|
|
if(_selectCommunitys[_selectIndex] == _tmpCommunitys[_communityIndex].communityId){
|
|
_communitys.push({
|
|
communityId:_tmpCommunitys[_communityIndex].communityId,
|
|
communityName:_tmpCommunitys[_communityIndex].name
|
|
});
|
|
}
|
|
}
|
|
}
|
|
var _objData = {
|
|
orgId:vc.component.addOrgCommunityInfo.orgId,
|
|
orgName:vc.component.addOrgCommunityInfo.orgName,
|
|
communitys:_communitys
|
|
}
|
|
vc.http.post('addOrgCommunity',
|
|
'save',
|
|
JSON.stringify(_objData),
|
|
{
|
|
emulateJSON: true
|
|
},
|
|
function(json,res){
|
|
$('#addOrgCommunityModel').modal('hide');
|
|
if(res.status == 200){
|
|
vc.emit($props.emitListener,$props.emitFunction,{
|
|
});
|
|
return ;
|
|
}
|
|
vc.toast(json);
|
|
},function(){
|
|
console.log('请求失败处理');
|
|
}
|
|
);
|
|
$('#addOrgCommunityModel').modal('hide');
|
|
},
|
|
queryCommunitys:function(){
|
|
vc.component._loadAllCommunityInfo(1,10,vc.component.addOrgCommunityInfo.communityName);
|
|
},
|
|
_refreshChooseOrgInfo:function(){
|
|
vc.component.addOrgCommunityInfo={
|
|
communitys:[],
|
|
communityName:'',
|
|
orgId:'',
|
|
orgName:'',
|
|
selectCommunitys:[]
|
|
};
|
|
},
|
|
checkAll:function(e){
|
|
var checkObj = document.querySelectorAll('.checkItem'); // 获取所有checkbox项
|
|
if(e.target.checked){ // 判定全选checkbox的勾选状态
|
|
for(var i=0;i<checkObj.length;i++){
|
|
if(!checkObj[i].checked){ // 将未勾选的checkbox选项push到绑定数组中
|
|
vc.component.addOrgCommunityInfo.selectCommunitys.push(checkObj[i].value);
|
|
}
|
|
}
|
|
}else { // 如果是去掉全选则清空checkbox选项绑定数组
|
|
vc.component.addOrgCommunityInfo.selectCommunitys = [];
|
|
}
|
|
}
|
|
}
|
|
|
|
});
|
|
})(window.vc);
|