1.biz Service

  //3.修改报销单void update(ClaimVoucher claimVoucher, List<ClaimVoucherItem> items);

2.Impl

 public void update(ClaimVoucher claimVoucher, List<ClaimVoucherItem> items) {claimVoucher.setNextDealSn(claimVoucher.getCreateSn());claimVoucher.setStatus(Contant.CLAIMVOUCHER_CREATED);claimVoucherDao.update(claimVoucher);List<ClaimVoucherItem> olds = claimVoucherItemDao.selectByClaimVoucher(claimVoucher.getId());for(ClaimVoucherItem old:olds){boolean isHave=false;for(ClaimVoucherItem item:items){if(item.getId()==old.getId()){isHave=true;break;}}if(!isHave){claimVoucherItemDao.delete(old.getId());}}for(ClaimVoucherItem item:items){item.setClaimVoucherId(claimVoucher.getId());if(item.getId()>0){claimVoucherItemDao.update(item);}else{claimVoucherItemDao.insert(item);}}}

3.Contoller

  @RequestMapping("/to_update")public String toUpdate(int id,Map<String,Object> map){map.put("items", Contant.getItems());ClaimVoucherInfo info =new ClaimVoucherInfo();//报销单的基本对象info.setClaimVoucher(claimVoucherBiz.get(id));//报销单的详细信息info.setItems(claimVoucherBiz.getItems(id));map.put("info",info);return "claim_voucher_update";}@RequestMapping("/update")public String update(HttpSession session, ClaimVoucherInfo info){Employee employee = (Employee)session.getAttribute("employee");info.getClaimVoucher().setCreateSn(employee.getSn());claimVoucherBiz.update(info.getClaimVoucher(),info.getItems());return "redirect:deal";}

4.JSP

在页面上首先要显示之前的信息

 <c:forEach items="${info.items}" varStatus="sta"><div><div class="col-md-3"><label for="items[${sta.index}].item" class="field prepend-icon"><form:hidden path="items[${sta.index}].id"/><form:hidden path="items[${sta.index}].claimVoucherId"/><form:select path="items[${sta.index}].item" cssClass="gui-input" placeholder="花销类型..." items="${items}"/></label></div><div class="col-md-3"><label for="items[${sta.index}].amount" class="field prepend-icon"><form:input path="items[${sta.index}].amount" cssClass="gui-input money" placeholder="金额..."/><label for="items[${sta.index}].amount" class="field-icon"><i class="fa fa-lock"></i></label></label></div><div class="col-md-5"><label for="items[${sta.index}].comment" class="field prepend-icon"><form:input path="items[${sta.index}].comment" cssClass="gui-input" placeholder="备注..." /><label for="items[${sta.index}].comment" class="field-icon"><i class="fa fa-lock"></i></label></label></div><div class="col-md-1" style="text-align:right;"><button type="button" class="button"> X </button></div></div></c:forEach>

有问题

【SSM-报销单】6.报销单-修改报销单相关推荐

  1. NC65 报销单使用银企直联网银支付后,银行的电子回执单的收款人开户行跟报销单的收款对象的开户行不一致

    NC65 报销单使用银企直联网银支付后,银行的电子回执单的收款人开户行跟报销单的收款对象的开户行不一致,如下图: 解决方案:检查供应商的银行账户对应的联行号是否跟开户行对应.如果不对应,则需要修改为对 ...

  2. 基于SSM的网上出差审批与费用报销系统 java毕业设计

    基于SSM的网上出差审批与费用报销系统-编号:jsp242 本课题是一个基于SSM的管理系统,本网上出差审批与费用报销系统是在Windows7系统的环境下,利用Eclipse和Mysql工具开发的.在 ...

  3. (附源码)计算机毕业设计SSM基于百度AI平台的财税报销系统

    (附源码)计算机毕业设计SSM基于百度AI平台的财税报销系统 项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclisp ...

  4. Java+mysql基于SSM的网上出差审批与费用报销系统 开题 毕业设计

    本课题是一个基于SSM的管理系统,本网上出差审批与费用报销系统是在Windows7系统的环境下,利用Eclipse和Mysql工具开发的.在网上出差审批与费用报销系统中分为管理员和普通用户2个模块.其 ...

  5. 【ZUFE-经费报销】浙江财经大学发票报销经验分享(以新苗报销为例)

    目录 新苗经费报销 发票抬头 报销材料 主要类型 (一)差旅票 (二)交通发票 (三)办公用品发票 (四)通信发票(开票日期在2021.09.13后的不能再报销) 截至目前,个人报销成功过4次新苗,第 ...

  6. 报销软件兴起,结束手工报销时代

    报销软件兴起,结束手工报销时代 在我们的日常工作中离不开费用报销,如商务旅行.培训.招待等等,在没有云报销软件之前,差不多每一名工作人员都经历过繁琐的报销流程.然而,在报销业务的过程中,找领导签署到财 ...

  7. 道一云与畅捷通T+对接集成获取报销信息列表连通凭证创建(报销交通费(青海))

    道一云与畅捷通T+对接集成获取报销信息列表连通凭证创建(报销交通费(青海)) 接通系统:道一云 在道一云坚实的技术基础上,道一云推出全新升级的2.0产品矩阵,分别是低码平台.智能门户.场景应用.基于云 ...

  8. SAP WM 确认TO单的时候不能修改目的地STORAGE BIN

    SAP WM 确认TO单的时候不能修改目的地STORAGE BIN SAP项目实践中,根据业务需要,SAP系统可以实现允许业务人员在对TO单做确认的时候去修改TO上的目的地Storage Bin.毕竟 ...

  9. SAP PM 初级系列21 - 一个技术关闭的维修工单不能再被修改了!

    SAP PM 初级系列21 - 一个技术关闭的维修工单不能再被修改了! 维修工单号:102333362已经被Techical completion了, 试图执行IW32去修改它, 系统提示说:Noti ...

最新文章

  1. 人类第一次将42写成3个整数的立方和,最后一个100以内的自然数告破
  2. 树回归--python Tkinter库创建GUI(2)
  3. 2021年四季度企业薪酬报告发布 38个核心城市平均薪酬首次超万
  4. Java基础知识强化之网络编程笔记25:Android网络通信之 Future接口介绍(Java程序执行超时)...
  5. 懒人专用SSH框架下的基本配置
  6. android 智能家居 pdf,智能家居项目化教程.pdf
  7. Linux学习笔记第八周七次课(4月3日)
  8. 2019蓝桥杯B组:完全二叉树权值
  9. js基础知识汇总01
  10. 小学信息技术了解计算机课件,小学信息技术《走进计算机》ppt课件
  11. 使用Servlet技术~登录-02
  12. Java是什么?Java能干嘛?
  13. List of music used by Apple Inc.
  14. 店盈通:新品牌如何活得更好、活得更久
  15. chrome突然无法复制粘贴了
  16. Life:怎样提高睡眠质量?
  17. macbookair有没有touchbar_Touch Bar 真的好用吗?苹果全新 MacBook Pro 触控条上手体验...
  18. Ubuntu下安装LXDE+XRDP实现远程桌面访问(最轻量级桌面)
  19. Javascript学习总结——继承
  20. 使用parent.layer.open()打开页面如何调用子页面的方法

热门文章

  1. .html .val .text 的区别
  2. #今日论文推荐# 速递:机器学习帮助构建人类肠道微生物群体感应网络
  3. 金三银四铜五铁六,面试得做好这个准备
  4. 蚂蚁微贷互动营销技术体系实践 1
  5. 介绍VO、DTO、PO、DO
  6. 刘钰02018010219
  7. larvel 路由未生效_laravel 路由修改不起作用解决方案
  8. 美术鉴赏课的体会和深入理解计算机系统,中外美术鉴赏学习心得体会(选修课)-20210612092854.pdf-原创力文档...
  9. RAM在单片机里究竟有什么用?
  10. 你的网站其实并不安全,真实的黑客攻防事件