Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/ipandorgunitmapping/dwr/IpAndOrgUnitMappingTableManager.java =================================================================== diff -u -r15581 -r15595 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/ipandorgunitmapping/dwr/IpAndOrgUnitMappingTableManager.java (.../IpAndOrgUnitMappingTableManager.java) (revision 15581) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/basedatamanager/ipandorgunitmapping/dwr/IpAndOrgUnitMappingTableManager.java (.../IpAndOrgUnitMappingTableManager.java) (revision 15595) @@ -41,7 +41,7 @@ * @param ipAddress * @return */ - public String ipAddressIsRepeat(String ipAddress) { + public String ipAddressIsRepeat(String oldId, String ipAddress) { String[] newIpAddressArray = ipAddress.split(","); @@ -50,12 +50,13 @@ for (IpAndOrgUnitMapping ipAndOrgUnitMapping : ipAndOrgUnitMappingList) { + String id = ipAndOrgUnitMapping.getId().toString(); String[] ipArray = ipAndOrgUnitMapping.getIpAddress().split(","); for (String ip : ipArray) { if (ip.indexOf("-") < 0) { //只对单个ip做是否重复,ip地址段验证交集有待改善 for (String newIpAddress : newIpAddressArray) { - if (newIpAddress.indexOf("-") < 0 && newIpAddress.equals(ip)) { + if (newIpAddress.indexOf("-") < 0 && newIpAddress.equals(ip) && !id.equals(oldId)) { return "yes"; } } Index: ssts-web/src/main/webapp/disinfectsystem/basedatamanager/iPAndOrgUnitMapping/iPAndOrgUnitMappingForm.js =================================================================== diff -u -r15588 -r15595 --- ssts-web/src/main/webapp/disinfectsystem/basedatamanager/iPAndOrgUnitMapping/iPAndOrgUnitMappingForm.js (.../iPAndOrgUnitMappingForm.js) (revision 15588) +++ ssts-web/src/main/webapp/disinfectsystem/basedatamanager/iPAndOrgUnitMapping/iPAndOrgUnitMappingForm.js (.../iPAndOrgUnitMappingForm.js) (revision 15595) @@ -30,6 +30,10 @@ autoScroll : true, labelAlign : 'right', items : [{ + xtype : 'hidden', + name : 'orgUnitCoding', + id : 'orgUnitCoding' + }, { xtype : 'combo', name : "orgUnit", id : "orgUnit", @@ -43,7 +47,13 @@ triggerAction : 'all', minChars : 0, maxHeight : 200, - anchor : '95%' + anchor : '95%', + listeners:{ + select:function(combo, record, index){ + var orgUnitCoding = top.Ext.getCmp("orgUnit").getValue(); + top.Ext.getCmp("orgUnitCoding").setValue(orgUnitCoding); + } + } }, { xtype : 'textarea', name : 'ipAddress', @@ -75,7 +85,6 @@ height : 260, border : false, modal : true, -// autoHeight : true, plain : true, items : formObj }); @@ -89,8 +98,8 @@ params : {id : id}, success : function(form, action) { var data = action.result.data; - top.Ext.getCmp('orgUnit').setValue(data.orgUnitCoding); - top.Ext.getCmp('orgUnit').setRawValue(data.orgUnitName); + top.Ext.getCmp('orgUnit').setValue(data.orgUnitName); + top.Ext.getCmp('orgUnitCoding').setValue(data.orgUnitCoding); }, failure : function(form, action) { } @@ -110,7 +119,7 @@ return false; } - var orgUnitCoding = top.Ext.getCmp('orgUnit').getValue(); + var orgUnitCoding = top.Ext.getCmp('orgUnitCoding').getValue(); var orgUnitName = top.Ext.getCmp('orgUnit').getRawValue(); var ipAddress = top.Ext.getCmp('ipAddress').getValue().replace(/\s/ig, ''); //把回车换行、空格等等不可见字符去掉 @@ -121,28 +130,26 @@ return false; } - var flag = false; //验证ip是否已经被绑定过了 + var flag = false; DWREngine.setAsync(false); - IpAndOrgUnitMappingTableManager.ipAddressIsRepeat(ipAddress, function(config) { + IpAndOrgUnitMappingTableManager.ipAddressIsRepeat(id, ipAddress, function(config) { if (config == 'yes') { flag = true; } }); DWREngine.setAsync(true); - if (flag) { showResult('此IP已经绑定过科室了'); thisButton.enable(); return false; } - - top.Ext.getCmp('ipAddress').setRawValue(ipAddress); //把回车换行、空格等等不可见字符去掉,再提交 + + top.Ext.getCmp('ipAddress').setValue(ipAddress); //把回车换行、空格等等不可见字符去掉,再提交 formObj.form.submit({ url : WWWROOT + '/disinfectSystem/baseData/ipAndOrgUnitMappingAction!saveIpAndOrgUnitMapping.do', method : 'POST', params : { - orgUnitCoding : orgUnitCoding, orgUnitName : orgUnitName, id : id },