Ejemplo n.º 1
0
  public boolean saveInterviewNotice(
      InterviewNoticeDto interviewNoticeDto, LoginUserInfoDto loginUserInfo) {

    // 扣除相应服务次数
    SysOrderDto dto = new SysOrderDto();
    dto.setService3Remains(new Long(1));
    boolean result =
        sysOrderService.verifyAuthority(
            dto, loginUserInfo, ApplicationConstant.SERVICE_ITEM_NAME_RECRUIT_CODE, "3", 1);

    if (result) {
      // 分别在发件箱、收件箱保存站内信
      saveInterviewSendNotice(interviewNoticeDto);
      saveInterviewReceiveNotice(interviewNoticeDto);

      // 如果个人用户设置了自动回复站内信,给企业用户回复站内信息
      Long personalUserId = interviewNoticeDto.getReceiverId();
      AutoShortMsgConfigDto autoShortMsgConfigDto =
          shortMessageService.getAutoShortMsgConfigByUserId(personalUserId);
      if (autoShortMsgConfigDto != null) {
        ShortMessageDto shortMessageDto = new ShortMessageDto();
        shortMessageDto.setSenderId(personalUserId);
        shortMessageDto.setReceiverId(loginUserInfo.getId());
        shortMessageDto.setReceiveDate(new Date());
        shortMessageDto.setTitle(autoShortMsgConfigDto.getTitle());
        shortMessageDto.setType("1");
        shortMessageDto.setStatus(ApplicationConstant.NOTICE_UNREAD);
        shortMessageDto.setMessage(autoShortMsgConfigDto.getMsg());
        shortMessageService.saveReceiveMsg(shortMessageDto);
      }
    }
    return result;
  }