@Test public void testSendHtmlMail() { Map<String, Object> map = new HashMap<String, Object>(); Flow flow = new Flow(); flow.setPaticipants("wangyue10-zhanglihui-记文清qa-向海龙alb"); flow.setNotstandardreason("KA外部特殊政策"); map.put("flowid", flow.getId()); List<Flowtask> flowTask = new ArrayList<Flowtask>(); Flowtask task1 = new Flowtask(); task1.setErpCustomerName("wangyue10"); task1.setEndtime(new Date()); task1.setOperatorName("wangyue10"); task1.setFlowtaskstatusName("审核通过"); task1.setMsg("1"); flowTask.add(task1); Flowtask task2 = new Flowtask(); task2.setErpCustomerName("zhanglihui"); task2.setEndtime(new Date()); task2.setOperatorName("zhanglihui"); task2.setFlowtaskstatusName("审核通过"); task2.setMsg("2"); flowTask.add(task2); Flowtask task3 = new Flowtask(); task3.setErpCustomerName("记文清qa"); task3.setEndtime(new Date()); task3.setOperatorName("记文清qa"); task3.setFlowtaskstatusName("审核中"); task3.setMsg("3"); flowTask.add(task3); map.put("contractName", "新签"); Contractinapprove contract = new Contractinapprove(); contract.setContractid(105L); map.put("contractId", contract.getContractid()); Flowtask task = new Flowtask(); task.setErpCustomerName("zhanglihui"); map.put("prePerson", task.getErpCustomerName()); map.put("nextPerson", flowTask.get(flowTask.size() - 1).getErpCustomerName()); map.put("flow", flow); map.put("flowTask", flowTask); // 发起人信息 Useracct useracct = new Useracct(); useracct.setUsername("陈刚"); map.put("addUserName", useracct.getUsername()); StringBuilder sb = new StringBuilder("您的【"); sb.append("新签"); sb.append("】合同【"); sb.append(contract.getContractid()); sb.append("】已经通过【"); sb.append(task.getErpCustomerName()); sb.append("】审批,当前待【"); sb.append(flowTask.get(flowTask.size() - 1).getErpCustomerName()); sb.append("】审批"); String content = VelocityUtils.getInstance().parse("contract_approved_node_notice.vm", map); // MailHtmlUtils.sendHtmlMail("*****@*****.**", sb.toString(), content, // "1", "*****@*****.**"); }