handler: function() {
var baseCustomerForm = me.getAddBaseCustomerForm().getForm();
var linkStore = me.getResultLinkGrid().getStore();
if (!baseCustomerForm.isValid()) {
return;
} var customerLinkList = [];
for (var i = 0; i < linkStore.data.items.length; i++) {
var customerLink = new Object();
customerLink.customerLink = linkStore.data.items[i].data.customerLink,
customerLink.customerLinkMobile = linkStore.data.items[i].data.customerLinkMobile,
customerLink.customerLinkPhone = linkStore.data.items[i].data.customerLinkPhone,
customerLink.province = linkStore.data.items[i].data.province,
customerLink.city = linkStore.data.items[i].data.city,
customerLink.county = linkStore.data.items[i].data.county,
customerLink.street = linkStore.data.items[i].data.street,
customerLink.provinceName = linkStore.data.items[i].data.provinceName,
customerLink.cityName = linkStore.data.items[i].data.cityName,
customerLink.countyName = linkStore.data.items[i].data.countyName,
customerLink.streetName = linkStore.data.items[i].data.streetName,
customerLink.customerAddress = linkStore.data.items[i].data.customerAddress,
customerLink.isMain = linkStore.data.items[i].data.isMain,
customerLinkList.push(customerLink);
}
var flag = true;
for (var j = 0; j < customerLinkList.length; j++) {
if (customerLinkList[j].isMain == 1) {
flag = false;
}
}
if (flag) {
Ext.ux.Toast.msg('提示', '请选择一个主联系人', 'error');
return;
} var data = {
'customerCode': baseCustomerForm.findField('customerCode').getValue(),
'customerName': baseCustomerForm.findField('customerName').getValue(),
'customerLinkList': JSON.stringify(customerLinkList)
} Ext.Ajax.request({
url: hostName + '/base/isExisCustomer.do' + urlToken,
params: data,
success: function(response) {
var result = Ext.JSON.decode(response.responseText);
if (result.data.success) {
//设置保存按钮点击一次
Ext.getCmp('addBaseCustomerButton').setDisabled(true);
Ext.Ajax.request({
url: hostName + '/base/addCustomer' + urlToken,
params: data,
success: function(response) {
var result = Ext.JSON.decode(response.responseText);
if (result.success) {
Ext.getCmp('addBaseCustomerButton').setDisabled(false);
Ext.ux.Toast.msg('提示', '新增成功');
me.close();
var grid = Ext.getCmp('BaseData_BaseCustomerInfo_BaseCustomerInfoPageElementGridPanel_ID');
// 加载表格
grid.getStore().load(); } else {
Ext.getCmp('addBaseCustomerButton').setDisabled(false);
Ext.ux.Toast.msg('提示', '新增失败');
}
},
failure: function(response) {
Ext.getCmp('addBaseCustomerButton').setDisabled(false);
Ext.ux.Toast.msg('提示', response.responseText, 'error');
}
}); } else {
Ext.ux.Toast.msg('提示', result.data.msg, 'error');
}
},
failure: function(response) {
Ext.ux.Toast.msg('提示', response.responseText, 'error');
}
});
}

controller接收list

   //新增客户信息
@RequestMapping(value = "base/addCustomer")
@ResponseBody
public ResultEntity addBaseCustomerEntity(String customerLinkList, String customerCode,
String customerName, HttpServletRequest request) {
BaseCustomerVo baseCustomerVo=new BaseCustomerVo();
UserLoginVo user = getUserLoginVo(request);
if (user != null) {
baseCustomerVo.setCreateUserCode(user.getUserCode());
baseCustomerVo.setCreateUserName(user.getUserName());
baseCustomerVo.setModifyUserCode(user.getUserCode());
baseCustomerVo.setModifyUserName(user.getUserName());
baseCustomerVo.setCustomerCompanyCode(user.getCompCode());
baseCustomerVo.setCustomerCompanyName(user.getCompName());
//如果是直营,客户的orgCode为null,如果是加盟,为当前登录用户的orgCode
if(user.getOrgKind()==Constant.ORG_KIND_JOIN){
baseCustomerVo.setOrgCode(user.getOrgCode());
}else{
baseCustomerVo.setOrgCode(null);
}
}
baseCustomerVo.setCustomerCode(customerCode);
baseCustomerVo.setCustomerName(customerName);
baseCustomerVo.setCustomerStatue(1);
//新增客户
baseCustomerService.addCustomerEntity(baseCustomerVo); //新增客户联系人
//json转换为list
List<BaseCustomerLinkmanEntity> linkList = new ArrayList<>();
List<BaseCustomerLinkmanEntity> linkManList = new ArrayList<>();
linkList = JSONObject.parseArray(customerLinkList, BaseCustomerLinkmanEntity.class);
for (BaseCustomerLinkmanEntity custLink:linkList) {
custLink.setCustomerCode(customerCode);
custLink.setCustomerName(customerName);
if(user!=null){
custLink.setCreateUserCode(user.getUserCode());
custLink.setCreateUserName(user.getUserName());
custLink.setCompanyCode(user.getCompCode());
} linkManList.add(custLink);
}
baseCustomerLinkmanService.updateCustomerLinkman(linkManList);
return returnSuccess();
}

前端传list,springmvc接收list的方法的更多相关文章

  1. js跳转到新页面传参以及接收参数的方法

    1.传递参数: window.location.href = "./list.html?id="+id; 1.接收参数: (1)接收参数函数封装 function GetReque ...

  2. SpringMVC接收多参数的处理方法

    问题:依赖SpringMVC自带的机制解析多对象参数往往出现解析不了的问题,使用较为复杂. 解决思路:前端 JS 先把传递到后台的对象转换为 JSON 字符串,后台直接使用字符串类型接收,再使用 st ...

  3. 利用webuploader插件上传图片文件,完整前端示例demo,服务端使用SpringMVC接收

    利用WebUploader插件上传图片文件完整前端示例demo,服务端使用SpringMVC接收 Webuploader简介   WebUploader是由Baidu WebFE(FEX)团队开发的一 ...

  4. 让 SpringMVC 接收多个对象的4种方法

    问题背景: 我要在一个表单里同时一次性提交多名乘客的个人信息到SpringMVC,前端HTML和SpringMVC Controller里该如何处理? 第1种方法:表单提交,以字段数组接收: 第2种方 ...

  5. 4种方法让SpringMVC接收多个对象(转:http://blog.csdn.net/lutinghuan/article/details/46820023)

    问题背景: 我要在一个表单里同时一次性提交多名乘客的个人信息到SpringMVC,前端HTML和SpringMVC Controller里该如何处理? 第1种方法:表单提交,以字段数组接收: 第2种方 ...

  6. 4种方法让SpringMVC接收多个对象 <转>

    问题背景: 我要在一个表单里同时一次性提交多名乘客的个人信息到SpringMVC,前端HTML和SpringMVC Controller里该如何处理? 第1种方法:表单提交,以字段数组接收: 第2种方 ...

  7. 4种方法让SpringMVC接收多个对象

    问题背景: 我要在一个表单里同一时候一次性提交多名乘客的个人信息到SpringMVC,前端HTML和SpringMVC Controller里该怎样处理? 第1种方法:表单提交,以字段数组接收: 第2 ...

  8. Django后端向前端直接传html语言防止转义的方法(2种)

    Django后端向前端直接传html语言防止转义的方法(2种) 目的,为了让前端对后端传输的这种方式不转义 1.使用mark_safe() from django.utils.safestring i ...

  9. django设置并获取cookie/session,文件上传,ajax接收文件,post/get请求及跨域请求等的方法

    django设置并获取cookie/session,文件上传,ajax接收文件等的方法: views.py文件: from django.shortcuts import render,HttpRes ...

随机推荐

  1. LCA最近公共祖先知识点整理

    题解报告:hdu 2586 How far away ? Problem Description There are n houses in the village and some bidirect ...

  2. ForeignKeyConstraint 外键约束的使用及作用的学习[转]

    原文链接 da.SelectCommand.CommandText="select au_id,au_fname,au_lname from authors"; da.Fill(d ...

  3. Jenkins视图使用--添加删除视图

    job建立的特别多的时候,我们可能不太容易找到自己的某个job,这时,我们就可以在Jenkins中建立视图.job的视图类似于我们电脑上的文件夹.可以通过一些过滤规则,将已经建好的job过滤到视图中, ...

  4. 作用域链、this细说

    一.作用域链 作用域:浏览器给js的一个生存环境(栈内存) 作用域链:js中的关键字var和function 都可以提前声明和定义,提前声明和定义的放在我们的内存地址(堆内存)中.然后js从上到下逐行 ...

  5. 字符串、数组、json

    一.字符串 string 1.字符串的定义: (1).var s="haha"; (2).var s=new string ("hello") 对象形式定义 2 ...

  6. PHP获取时间总结

    查询前一年时间戳 mktime(0,0,0,date('m'),date('d'),date('Y')-1); strtotime('-12 month'); 查询前6个月时间戳 mktime(0,0 ...

  7. 微软将于12月起开始推送Windows 10 Mobile

    [环球科技报道 记者 陈薇]据瘾科技网站10月8日消息,根据微软Lumia官方Faceboo发布的消息,新版系统Windows 10 Mobile 将会12月起陆续开始推送. 推送的具体时程根据地区. ...

  8. javaee 第七周作业

    一.什么是JSON? JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式.它基于 ECMAScript (欧洲计算机协会制定的js规范)的一 ...

  9. 在Eclipse中设置自动补全

    在Eclipse中菜单中,Window->Preferences->Java->Editor->Content Assist中的Auto activation triggers ...

  10. faster rcnn环境编译

    步骤和fast rcnn的编译一样,在编译中遇到了一个问题: 刚开始是以为python-numpy没有安装到位,后来发现是Makefile.config的配置出现了问题.原来的配置是: PYTHON_ ...