1.jsp
onvaluechanged="onPkgNameChanged"
2.js
<%-- 不能输入相同的套餐名称 --%>
function onPkgNameChanged(e){
var orgNo = nui.get("orgNo").getValue();
var pkgName = nui.get("textbox_pkgName").getValue();
var pkgId = nui.get("hidden_pkgId").getValue();
var json = nui.encode({"entity/orgNo":orgNo,"entity/pkgName":pkgName,"entity/pkgId":pkgId});
$.ajax({
url:"checkPkgName.biz.ext",
type:'POST',
data:json,
cache:false,
contentType:'text/json',
success:function(text){
var returnJson = nui.decode(text);
if(returnJson.exception == null){
var flag = returnJson.flag;
if(flag){
mini.showTips({
content:'<b:message key="common.msg.name_exists_reenter"/>',
state: "warning",
x: "center",
y: "top",
timeout: 3000
});
nui.get("textbox_pkgName").setValue("");
}
}
}
});
}
3.java
public Boolean checkPkgName(DataObject entity){
Map<String, Object> condition = new HashMap<String, Object>();
condition.put("pkgName", entity.get("pkgName"));
condition.put("orgNo", entity.get("orgNo"));
condition.put("pkgId", entity.get("pkgId"));
Integer[] returnObject = getDASTemplate().queryByNamedSql(Integer.class, "checkPkgName", condition);
if(returnObject != null && returnObject.length > 0){
int flag=returnObject[0];
if(flag==1){
return true;
}else{
return false;
}
}else{
return false;
}
}
4.sql
<!-- 查询套餐名称是否被用 -->
<select id="checkPkgName" parameterClass="java.util.Map" resultClass="java.lang.Integer">
select count(1) as "flag"
from E_BILL_PACKAGE
where PKG_NAME = #pkgName#
and ORG_NO like #orgNo# || '%'
<isNotNull prepend="AND" property="pkgId">
<![CDATA[ PKG_ID <> #pkgId# ]]>
</isNotNull>
</select>