@Log(message = "添加了transRecord,id:{0}。")
  @RequestMapping(value = "/create", method = RequestMethod.POST)
  public String create(
      @RequestParam MultipartFile[] myfiles1,
      @RequestParam MultipartFile[] myfiles2,
      HttpServletRequest request) {
    // 如果只是上传一个文件,则只需要MultipartFile类型接收文件即可,而且无需显式指定@RequestParam注解
    // 如果想上传多个文件,那么这里就要用MultipartFile[]类型来接收文件,并且还要指定@RequestParam注解
    // 并且上传多个文件时,前台表单中的所有<input
    // type="file"/>的name都应该是myfiles1,2,否则参数里的myfiles无法获取到所有上传的文件

    BizTransRecord transRecord = buildBizTransRecord(request);
    // 设置为初始状态
    transRecord.setStatus(TransStatusEnum.I.getValue());
    HttpSession session = HttpReceiver.getHttpSession();
    BizMember member = (BizMember) session.getAttribute("member");
    transRecord.setMemberId(member.getId());
    Map<String, String> extendMap = new HashMap<String, String>();
    extendMap.put("memberNo", member.getMemberNo());
    try {
      transRecordService.save(transRecord, myfiles1, myfiles2, extendMap);
    } catch (ServiceException e) {
      return "redirect:/personalPage?suc=false";
    }
    return "redirect:/personalPage?suc=true";
  }
 @RequestMapping(
     value = "/findAll",
     method = {RequestMethod.GET, RequestMethod.POST})
 public @ResponseBody String findAll(
     Page page, Map<String, Object> map, @RequestParam String type) {
   BizMember member = (BizMember) HttpReceiver.getHttpSession().getAttribute("member");
   if (null == member) {
     AjaxReturnInfo.returnErr("请您先首页登录!");
   }
   List<BizTransRecord> list = transRecordService.findAllByType(page, type);
   if (CollectionUtils.isEmpty(list)) {
     return PageUtils.toJsonString(page, new ArrayList<Map<String, String>>());
   }
   return PageUtils.toJsonString(page, list);
 }
 /**
  * @param map
  * @return
  */
 @RequestMapping(
     value = "/myTransRecords",
     method = {RequestMethod.GET, RequestMethod.POST})
 public @ResponseBody String myTransRecords(
     Page page, Map<String, Object> map, HttpServletRequest request) {
   BizMember member = (BizMember) HttpReceiver.getHttpSession().getAttribute("member");
   if (null == member) {
     return AjaxReturnInfo.returnErr("请您先首页登录!");
   }
   List<BizTransRecordVO> recordVOS =
       transRecordService.findTransRecordByUserForSubmit(page, member.getId());
   List<Map<String, String>> temp = new ArrayList<Map<String, String>>();
   double divi = 100.0;
   for (BizTransRecordVO recordVO : recordVOS) {
     Map<String, String> tempMap = new HashMap<String, String>();
     tempMap.put("id", recordVO.getId() + "");
     tempMap.put("investTypeStr", recordVO.getInvestTypeStr());
     tempMap.put("importDate", recordVO.getImportDate());
     tempMap.put(
         "currIncomeWYuan",
         (null == recordVO.getCurrIncome() ? 0 : recordVO.getCurrIncome()) / divi + "");
     tempMap.put(
         "currOutcomeWYuan",
         (null == recordVO.getCurrOutcome() ? 0 : recordVO.getCurrOutcome()) / divi + "");
     tempMap.put("currValueWYuan", recordVO.getCurrValue() / divi + "");
     tempMap.put(
         "lastDayValueWYuan",
         (null == recordVO.getLastDayValue() ? 0 : recordVO.getLastDayValue()) / divi + "");
     tempMap.put("status", recordVO.getStatus());
     String statusName = "";
     if (StringUtils.equals(recordVO.getStatus(), "I")) {
       statusName = "审核中";
     } else if (StringUtils.equals(recordVO.getStatus(), "S")) {
       statusName = "审核通过";
     } else if (StringUtils.equals(recordVO.getStatus(), "F")) {
       BizReviewLog log = reviewLogService.getBizReviewLog(recordVO.getId(), "TRANS_RECORD");
       if (null != log) {
         tempMap.put("failReason", log.getComment());
       }
       statusName = "审核退回";
     } else {
       statusName = "莫名其妙";
     }
     tempMap.put("statusName", statusName);
     temp.add(tempMap);
   }
   return PageUtils.toJsonString(page, temp);
 }
 /**
  * 上日权益级累计信息查询
  *
  * @param type
  * @param dateStr
  * @return
  */
 @RequestMapping(
     value = "/findLastTransRecord",
     method = {RequestMethod.GET, RequestMethod.POST})
 public @ResponseBody String findLastTransRecord(
     @RequestParam String type, @RequestParam String dateStr) {
   BizMember member = (BizMember) HttpReceiver.getHttpSession().getAttribute("member");
   if (null == member) {
     return AjaxReturnInfo.returnErr("请您先首页登录!");
   }
   long memberId = member.getId();
   Map<String, Object> paramMap = new HashMap<String, Object>();
   // 得到上日权益
   try {
     // 当日交易
     BizTransRecordVO currRecord = transRecordService.findCurrTransRecord(memberId, type, dateStr);
     if (currRecord != null) {
       return AjaxReturnInfo.returnErr("当天记录不得重复录入");
     }
     // 上日交易
     BizTransRecordVO vo =
         transRecordService.findPreviousTransRecord(
             memberId, type, DateUtil.string2Date(dateStr, DateUtil.PATTERN_DATE));
     if (vo == null) { // 表示上日权益没有
       paramMap.put("isHave", "false");
     } else {
       paramMap.put("isHave", "true");
       paramMap.put("lastDayValue", vo.getCurrValue() / 100.0);
     }
     BizTransRecordVO totalInfo =
         transRecordService.queryTotalInfoBeforeOneDate(memberId, type, dateStr);
     paramMap.put(
         "totalInCome",
         totalInfo.getTotalIncome() == null ? 0 : totalInfo.getTotalIncome() / 100.0);
     paramMap.put(
         "totalOutCome",
         totalInfo.getTotalOutcome() == null ? 0 : totalInfo.getTotalOutcome() / 100.0);
   } catch (Exception e) {
     e.printStackTrace();
   }
   return AjaxReturnInfo.returnSuc(paramMap);
 }
 /**
  * 初期资金
  *
  * @param type
  * @return
  */
 @RequestMapping(
     value = "/findFristTransRecord",
     method = {RequestMethod.GET, RequestMethod.POST})
 public @ResponseBody String findFristTransRecord(@RequestParam String type) {
   BizMember member = (BizMember) HttpReceiver.getHttpSession().getAttribute("member");
   if (null == member) {
     AjaxReturnInfo.returnErr("请您先首页登录!");
   }
   long memberId = member.getId();
   Map<String, Object> paramMap = new HashMap<String, Object>();
   BizTransRecordVO transRecord = transRecordService.findFirstTransRecord(memberId, type);
   if (transRecord != null) {
     paramMap.put(
         BizTransRecordConstant.EXISTENCE_OF_FIRST, BizTransRecordConstant.EXIST_OF_FIRST);
     paramMap.put(
         BizTransRecordConstant.ORIGION_VALUES,
         transRecord.getOrigionValue() == null ? 0.0 : transRecord.getOrigionValue() / 100.0);
   } else {
     paramMap.put(
         BizTransRecordConstant.EXISTENCE_OF_FIRST, BizTransRecordConstant.NOT_EXIST_OF_FIRST);
   }
   return AjaxReturnInfo.returnSuc(paramMap);
 }