(function (vc) { vc.extends({ propTypes: { callBackListener: vc.propTypes.string, //父组件名称 callBackFunction: vc.propTypes.string //父组件监听方法 }, data: { addOrgInfo: { orgId: '', orgName: '', orgLevel: '', parentOrgId: '', parentOrgName: '', description: '', belongCommunityId: '', parentOrg: [], belongCommunitys: [] }, flagOrgName: false }, _initMethod: function () { }, _initEvent: function () { vc.on('addOrg', 'openAddOrgModal', function (_param) { if (_param.hasOwnProperty('parentOrgId')) { vc.component.addOrgInfo.parentOrgId = _param.parentOrgId; vc.component.addOrgInfo.parentOrgName = _param.parentOrgName; } $('#addOrgModel').modal('show'); }); }, methods: { addOrgValidate: function () { return vc.validate.validate({ addOrgInfo: vc.component.addOrgInfo }, { 'addOrgInfo.orgName': [ { limit: "required", param: "", errInfo: "组织名称不能为空" }, { limit: "maxin", param: "2,50", errInfo: "组织名称长度为2至50" } ], 'addOrgInfo.parentOrgId': [ { limit: "required", param: "", errInfo: "上级ID不能为空" }, { limit: "num", param: "", errInfo: "上级ID不正确" } ], 'addOrgInfo.description': [ { limit: "maxLength", param: "200", errInfo: "描述不能为空" }, ] }); }, saveOrgInfo: function () { if (!vc.component.addOrgValidate()) { vc.toast(vc.validate.errInfo); return; } //vc.component.addOrgInfo.communityId = vc.getCurrentCommunity().communityId; //不提交数据将数据 回调给侦听处理 if (vc.notNull($props.callBackListener)) { vc.emit($props.callBackListener, $props.callBackFunction, vc.component.addOrgInfo); $('#addOrgModel').modal('hide'); return; } vc.http.apiPost( '/org.saveOrg', JSON.stringify(vc.component.addOrgInfo), { emulateJSON: true }, function (json, res) { let _json = JSON.parse(json); if (_json.code == 0) { //关闭model $('#addOrgModel').modal('hide'); vc.component.clearAddOrgInfo(); vc.emit('orgTree', 'refreshTree', {}); vc.toast("添加成功"); return; } else { vc.toast(_json.msg); } }, function (errInfo, error) { console.log('请求失败处理'); vc.toast(errInfo); }); }, clearAddOrgInfo: function () { vc.component.addOrgInfo = { orgName: '', orgLevel: '', parentOrgId: '', parentOrgName: '', description: '', parentOrg: [], belongCommunityId: '', communityId: '' }; }, _addOrgListParentOrgInfo: function () { var _tmpOrgLevel = vc.component.addOrgInfo.orgLevel; if (_tmpOrgLevel > 1) { _tmpOrgLevel = _tmpOrgLevel - 1; } var param = { params: { orgLevel: _tmpOrgLevel, page: 1, row: 30, } }; //发送get请求 vc.http.apiGet('/org.listOrgs', param, function (json, res) { var _orgManageInfo = JSON.parse(json); vc.component.addOrgInfo.parentOrg = _orgManageInfo.orgs; }, function (errInfo, error) { console.log('请求失败处理'); } ); }, textOrgName() { var _tmpOrgLevel = vc.component.addOrgInfo.orgLevel; var param = { params: { page: 1, row: 30, orgLevel: _tmpOrgLevel, parentOrgId: vc.component.addOrgInfo.parentOrgId, orgName: vc.component.addOrgInfo.orgName } }; console.log(param, 6666) //发送get请求 vc.http.apiGet('/org.listOrgs', param, function (json, res) { var arr = JSON.parse(json).orgs; if (_tmpOrgLevel == 2) { if (arr.length > 0) { vc.toast("公司名重复"); vc.component.flagOrgName = true } else { vc.component.flagOrgName = false } } else if (_tmpOrgLevel == 3) { if (arr.length > 0) { vc.toast("组织名称重复"); vc.component.flagOrgName = true } else { vc.component.flagOrgName = false } } }, function (errInfo, error) { console.log('请求失败处理'); } ); } } }); })(window.vc);