需求:t:dictSelect 中的部分特殊值不能重複選擇,其餘值不受限制。
1、前端頁面使用ajaxurl:
<t:dictSelect field="acctType" type="list" typeGroupCode="szc_actype" hasLabel="false" title="賬套類型" datatype="*" extendJson="{ajaxurl:'swBdKdaccountController.do?checkAcctType&id=${swBdKdaccountPage.id}'}"></t:dictSelect>
2、後臺處理:
/**
* 檢查是否存在數據倉庫
*
* @param ids
* @return
* @return
*/
@RequestMapping(params = "checkAcctType")
@ResponseBody
public Map<String, Object> checkAcctType(SwBdKdaccountEntity swBdKdaccount,HttpServletRequest request) {
String newAcctType=request.getParameter("param");
swBdKdaccount=swBdKdaccountService.get(SwBdKdaccountEntity.class,request.getParameter("id"));
Map<String,Object> element = new LinkedHashMap<String,Object>();
if("database".equals(newAcctType)) {
if(swBdKdaccount==null || !newAcctType.equals(swBdKdaccount.getAcctType())) {
List<SwBdKdaccountEntity> dws = swBdKdaccountService.findByProperty(SwBdKdaccountEntity.class, "acctType","database");
if(dws.size()>0) {
element.put("info", "已存在,不允許重複定義");
element.put("status", "n");
return element;
}
}
}
element.put("info", "校驗信息通過");
element.put("status", "y");
return element;
}
返回值說明:
(1)返回Map<String,Object>類型;
(2)返回的map中需要設置status(通過:y,不通過:n)、info信息。