示例#1
0
 /**
  * 生成群发文件
  *
  * @param terminalid 群发号码
  * @param blackid 黑名单号码
  * @param whiteid 白名单号码
  * @param task 群发任务对象
  * @throws Exception
  */
 public long saveTaskSendFile(String terminalid, String filePath) throws Exception {
   int submitCnt = 0;
   try {
     if (null != terminalid && !terminalid.equals("")) {
       terminalid = terminalid.replaceAll(",", ",");
       submitCnt = terminalid.split(",").length;
       // 把号码写入文件
       terminalid = terminalid.replaceAll(",", "\r\n"); // 把输入的号码分隔符","换成行号
       FileTools.writeTxt(terminalid, filePath);
     }
   } catch (Exception e) {
     log.error("生成群发文件出错:" + e.getMessage());
   }
   return submitCnt;
 }
示例#2
0
  /**
   * 保存SMS群发任务
   *
   * @param task
   * @param uploadfile
   * @param uploadblackfile
   * @param uploadwhitefile
   * @throws Exception
   */
  @Transactional
  public void saveMsmTask(
      BatchTask task,
      MultipartFile uploadfile,
      MultipartFile uploadblackfile,
      MultipartFile uploadwhitefile,
      Long mmsvalue)
      throws Exception {
    String IsNewTerminalId = task.getIsNewTerminalId();
    String srcFrom = task.getSrcFrom();
    String smsorwapservice[] = task.getService().split("\\|");
    task.setFeeType(Long.valueOf(smsorwapservice[1]));
    task.setServiceId(smsorwapservice[0]);
    task.setFee(Long.valueOf(smsorwapservice[2]));
    task.setStatus(0L);

    task.setSpeed(50L);
    task.setTaskType(2l);
    task.setCreateTime(TimeStamp.getTime(14));
    task.setPriority(10L);
    task.setTraceRespond(1L);
    task.setStartTime(
        task.getStartTime().replaceAll("-", "").replaceAll(" ", "").replaceAll(":", ""));
    task.setStopTime(
        task.getStopTime().replaceAll("-", "").replaceAll(" ", "").replaceAll(":", ""));
    task.setCustomTag(0l);
    if (null != mmsvalue && !"".equals(mmsvalue)) {
      ContMms mmsInfo = mmsDao.findOne(mmsvalue);
      String mmstitle = mmsInfo.getTitle();
      String mmscontent = mmsInfo.getContentPath();
      String mmssmil = mmsInfo.getSmilName();
      task.setTitle(mmstitle);
      task.setContent(mmscontent);
      task.setSmil(mmssmil);
    }
    task = batchTaskDao.save(task);
    if (IsNewTerminalId.equals("1")) {
      PathInfo filepath =
          bsFileService.dealModuleFile(
              uploadfile, BsFileService.MODULE_TASK_BATCH, task.getId()); // 群发号码文件路径
      PathInfo whiteFilepath =
          bsFileService.dealModuleFile(
              uploadwhitefile, BsFileService.MODULE_TASK_BATCH_WHITE, task.getId()); // 白名单号码文件路径
      PathInfo blackFilepath =
          bsFileService.dealModuleFile(
              uploadblackfile, BsFileService.MODULE_TASK_BATCH_BLACK, task.getId()); // 黑名单号码文件路径

      // 号码文件来源文本文件
      if (srcFrom.equals("1")) {
        if (uploadfile != null && !uploadfile.isEmpty()) {
          List list = FileTools.readLines(filepath.getRealPath());
          task.setSubmitCnt(Long.valueOf(list.size()));
          // task.setMobileListFile(filepath.getRealWebPath(""));
          task.setMobileListFile(filepath.getRealPath()); // 存放号码文件绝对路径
        }
        if (uploadwhitefile != null && !uploadwhitefile.isEmpty()) {
          // task.setWhiteListFile(whiteFilepath.getRealPath());
          task.setWhiteListFile(whiteFilepath.getRealPath()); // 存放号码文件绝对路径
        }
        if (uploadblackfile != null && !uploadblackfile.isEmpty()) {
          // task.setBlackListFile(blackFilepath.getRealWebPath(""));
          task.setBlackListFile(blackFilepath.getRealPath()); // 存放号码文件绝对路径
        }
      } else {
        task.setSubmitCnt(saveTaskSendFile(task.getTerminalid(), filepath.getRealPath()));
        // saveTaskSendFile(task.getTerminalid(),
        // filepath.getRealPath());
        task.setMobileListFile(filepath.getRealPath()); // 存放号码文件绝对路径
        if (null != task.getBlackid() && !"".equals(task.getBlackid())) {
          // 黑名单文件
          saveTaskSendFile(task.getBlackid(), blackFilepath.getRealPath());
          // task.setBlackListFile(blackFilepath.getRealWebPath(""));
          task.setBlackListFile(blackFilepath.getRealPath()); // 存放号码文件绝对路径
        }
        if (null != task.getWhiteid() && !"".equals(task.getWhiteid())) {
          // 白名单文件
          saveTaskSendFile(task.getWhiteid(), whiteFilepath.getRealPath());
          // task.setWhiteListFile(whiteFilepath.getRealWebPath(""));
          task.setWhiteListFile(whiteFilepath.getRealPath()); // 存放号码文件绝对路径
        }
      }

      batchTaskDao.save(task);
    }
  }