第一步: 前台页面代码
在发送ajax 请求时需要加入下面这个参数 ,后台接收时使用下面的注解(下面是完整demo)
traditional:true,//这个参数必须添加,采用传统方式转换
@RequestParam(value="shelves", required=false) 这个 注解会包含空数组对象的,这样就可以接收了。
其中idsFlagshipStoreSelected 和 idsSalesManSelected 是数组对象,并且 可能是空的,
var businessHandoverPhone = $("#businessHandoverPhone").val() ;
//选中的旗舰店id
var idsFlagshipStoreSelected =
$('select[name="duallistbox_demo1[]"]').bootstrapDualListbox({selectedListLabel:true}).val();
var flagshipStoreFlag = $('select[name="duallistbox_demo1[]_helper1"]').find('option').length == 0 ;
//选中的服务经理id
var idsSalesManSelected =
$('select[name="duallistbox_demo2[]"]').bootstrapDualListbox({selectedListLabel:true}).val();
var salesManFlag = $('select[name="duallistbox_demo1[]_helper1"]').find('option').length == 0 ;
var data = {"businessHandoverPhone":businessHandoverPhone,"toHandoverName":toHandoverName,
"idsFlagshipStoreSelected":idsFlagshipStoreSelected ,
"flagshipStoreFlag":flagshipStoreFlag ,"idsSalesManSelected":idsSalesManSelected ,
"salesManFlag":salesManFlag} ;
$.ajax({
url: ctx + '/sys/businessHandover/authc_json/businessManagerHandover',
type:'post',
dataType:'json',
traditional:true,//这个参数必须添加,采用传统方式转换
data : data,
success:function (result) {
if(result.resultCode == 0) {
showSuccessMsgAtBottom(result.resultMessage);
//刷新列表
$('#thisTable').bootstrapTable("refresh");
layer.close(index) ;
}else{
showErrorMsgAtBottom(result.resultMessage) ;
}
}
});
后台接收代码
@RequestMapping("/authc_json/businessManagerHandover")
@ResponseBody
public Map<String,Object> businessManagerHandover(
@RequestParam String businessHandoverPhone ,
@RequestParam String toHandoverName ,
@RequestParam(value="idsFlagshipStoreSelected", required=false) String[] idsFlagshipStoreSelected ,
@RequestParam Boolean flagshipStoreFlag,
@RequestParam(value="idsSalesManSelected", required=false) String[] idsSalesManSelected ,
@RequestParam Boolean salesManFlag ){
Map<String,Object> map = new HashMap<>() ;
Map<String,Object> checkMap = BusinessHandoverCheck.checkBusinessHandoverRoleCode(businessHandoverPhone , toHandoverName) ;
if (checkMap.size() == 0 ) {
Users users = usersService.findByName(toHandoverName) ;
Users unDeleteUsers = usersService.findByName(businessHandoverPhone) ;
try {
map = businessHandoverService.transferData(idsFlagshipStoreSelected , flagshipStoreFlag , idsSalesManSelected , salesManFlag ,users ,unDeleteUsers ) ;
}catch (Exception e) {
map = _ResultUtils.showError("1","操作失败!") ;
}
} else {
map = checkMap ;
}
return map ;
}