前台创建多个name 一样的名称 用String[] 传到 控制器
来源:互联网 发布:数据分组分析法案例 编辑:程序博客网 时间:2024/04/30 09:01
前台创建多个对象 name属性 一样的名称 在参数方法传递中用String[] 传到 控制器
能否建个bean,把这个name 属性定义为string [],然后直接传递到这个bean 里面去 到后台创建多个对象?、
因为前台合同里新建多个产品和款项名称,所以用String[]传递其中参数名称,再获取数组长度判断个数
循环新建对象。
/**
* 创建新合同
*/
@RequestMapping(value = "/contractAdd.html", method = RequestMethod.POST)
public ModelAndView contractAdd(HttpSession session, CrmContract contract,
@RequestParam("fileinput") MultipartFile[] fileinput,
HttpServletRequest request, String[] contractProductName,
String[] contractProductPrice, String[] contractProductNumber,
String[] totalPrice, String[] contractPayName,
String[] contractPayDate, String[] contractPayAmount,
String[] contractPayPercent,
String[] contractPayRemark, String[] contractDeliveryName,
String[] contractDeliveryDate, String[] contractDeliveryRemark) {
SystemUser loginUser = (SystemUser) session
.getAttribute(SystemConstants.SESSION_KEY_LOGIN_USER);
String path="";
String name="";
for (int i = 0; i < fileinput.length; i++) {
try {
String RealName =fileinput[i].getOriginalFilename();
String fileName = time + fileinput[i].getOriginalFilename();
String relativeFilePath = FileUploadManager.transferImage(
fileinput[i], new String[] { "crm", "file" }, fileName);
path+= relativeFilePath+",";
name+= RealName+",";
contract.setContractFileName(name);
contract.setContractFile(path);
} catch (IllegalStateException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
List<CrmContractProduct> list3 = new ArrayList<CrmContractProduct>();
for (int i = 0; i < contractProductName.length; i++) {
CrmContractProduct product = new CrmContractProduct();
product.setProductId(Long.parseLong(contractProductName[i]));
product.setContractProductPrice(Double
.parseDouble(contractProductPrice[i]));
product.setContractProductNumber(Long
.parseLong(contractProductNumber[i]));
product.setTotalPrice(Double.parseDouble(totalPrice[i]));
list3.add(product);
}
List<CrmContractPay> list = new ArrayList<CrmContractPay>();
for (int i = 0; i < contractPayName.length; i++) {
CrmContractPay pay = new CrmContractPay();
pay.setContractPayName(contractPayName[i]);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date;
try {
date = sdf.parse(contractPayDate[i]);
pay.setContractPayDate(date);
} catch (ParseException e) {
e.printStackTrace();
}
pay.setContractPayAmount(Long.parseLong(contractPayAmount[i]));
pay.setContractPayPercent(Long.parseLong(contractPayPercent[i]));
pay.setContractPayRemark(contractPayRemark[i]);
list.add(pay);
}
;
List<CrmContractDelivery> list2 = new ArrayList<CrmContractDelivery>();
for (int j = 0; j < contractDeliveryName.length; j++) {
CrmContractDelivery delivery = new CrmContractDelivery();
delivery.setContractDeliveryName(contractDeliveryName[j]);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date;
try {
date = sdf.parse(contractDeliveryDate[j]);
delivery.setContractDeliveryDate(date);
} catch (ParseException e) {
e.printStackTrace();
}
delivery.setContractDeliveryRemark(contractDeliveryRemark[j]);
list2.add(delivery);
}
contractService.createContract(contract, list, list2, list3);
ModelAndView m = new ModelAndView(
"redirect:/contract/contractlist.html");
ApplicationUtil.getMsgm().getSuccesses().add("合同创建成功");
return m;
}
- 前台创建多个name 一样的名称 用String[] 传到 控制器
- Swift - 用装有控制器name的数组for循环批量创建控制器(string转UIViewController)
- springMVC如何将String类型的值传到前台
- 怎样上传多个那么name一样的文件??
- 怎样上传多个那么name一样的文件??
- 3个分支公司中的部门子域控制器的创建方法与3个分支公司的第一台子域控制器一样
- [Android]根据名称name来获取string的值
- 前台传到后台的数据乱码
- 前台传到后台的数据为“”
- 后台List<String> list 传到前台 select输出 问题
- 多控制器的创建
- jquery validate对于多个同样名称的name进行验证
- 文件下载(不创建文件,直接传到前台)
- 创建第一个控制器
- ext6 如何把grid表格的多个数据用json数组传到后台
- 验证多组name一样的文本框是否为空
- ajax中如何读取前台传到后台的xml
- Extjs前台数据传到java乱码问题的解决
- 微信加入“微社区” Discuz!发力移动社交
- poj-1325
- 寻找汉密尔顿回路(java版)
- vsnprintf 打印变长参数
- JQuery了。。。
- 前台创建多个name 一样的名称 用String[] 传到 控制器
- Android工程打包第三方jar包和so方法
- (一)无显示器无键盘无路由器,最简方式配置树莓派
- The declared package "" does not match the expected package "javaControlSql"
- 直升机思维
- Access、Hybrid和Trunk三种模式的理解
- 读取修改配置文件
- CF FF# E .DZY Loves Fibonacci Numbers
- phpMyAdmin for CentOS6.5安装、配置与使用