⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 utility_all.php

📁 通达OA最重要的函数库
💻 PHP
📖 第 1 页 / 共 4 页
字号:

    global $connection;
    if ($PARENT_ID == 0)
    {
      if ($FILE_SORT == 1)
      {
        $query = '' . 'SELECT * from FILE_SORT where (SORT_TYPE=\'1\' or (SORT_TYPE=\'2\' and DEPT_ID=' . $LOGIN_DEPT_ID . ') or (SORT_TYPE=\'3\' and (InStr(USER_ID,\',' . $LOGIN_USER_ID . ',\')>0 or InStr(USER_ID,\'' . $LOGIN_USER_ID . ',\')=1))) and SORT_PARENT=' . $PARENT_ID . ' order by SORT_NO,SORT_NAME';
      }
      else
      {
        $query = '' . 'SELECT * from FILE_SORT where SORT_TYPE=\'4\' and USER_ID=\'' . $LOGIN_USER_ID . '\' and SORT_PARENT=' . $PARENT_ID . ' order by SORT_NO,SORT_NAME';
      }
    }
    else
    {
      $query = '' . 'SELECT * from FILE_SORT where SORT_PARENT=' . $PARENT_ID . ' order by SORT_NO,SORT_NAME';
    }

    $cursor = exequery ($connection, $query);
    $OPTION_TEXT = '';
    if (($FILE_SORT == 2 AND $PARENT_ID == 0))
    {
      $OPTION_TEXT = '<option value=0>根目录</option>';
    }

    $DEEP_COUNT1 = $DEEP_COUNT;
    $DEEP_COUNT .= ' |';
    $XML_TEXT = '';
    while ($ROW = mysql_fetch_array ($cursor))
    {
      $SORT_ID = $ROW['SORT_ID'];
      $USER_ID = $ROW['USER_ID'];
      $NEW_USER = $ROW['NEW_USER'];
      $SORT_NAME = $ROW['SORT_NAME'];
      if (($IS_SORT == 1 AND $SORT_ID == $SORT_ID_CHOOSE))
      {
        continue;
      }
      else
      {
        if ($FILE_SORT == 1)
        {
          if ($USER_ID == '')
          {
            $USER_ID = access_priv ($SORT_ID);
          }

          if ($NEW_USER == '')
          {
            $NEW_USER = sort_priv ($SORT_ID, 'NEW_USER');
          }

          if (!find_id ($USER_ID, $LOGIN_USER_ID))
          {
            continue;
          }
        }

        $SORT_NAME = htmlspecialchars ($SORT_NAME);
        $OPTION_TEXT .= '' . '<option value=' . $SORT_ID;
        if (($FILE_SORT == 1 AND !find_id ($NEW_USER, $LOGIN_USER_ID)))
        {
          $OPTION_TEXT .= ' style=\'color:gray;\'';
        }

        if ($SORT_ID == $SORT_ID_CHOOSE)
        {
          $OPTION_TEXT .= ' selected';
        }

        $OPTION_TEXT .= '>' . $DEEP_COUNT1 . '─' . $SORT_NAME . '</option>';
        $OPTION_TEXT_CHILD = my_sort_tree ($SORT_ID_CHOOSE, $FILE_SORT, $SORT_ID, $IS_SORT);
        if ($OPTION_TEXT_CHILD != '')
        {
          $OPTION_TEXT .= $OPTION_TEXT_CHILD;
          continue;
        }

        continue;
      }
    }

    $DEEP_COUNT = $DEEP_COUNT1;
    return $OPTION_TEXT;
  }

  function doc2txt ($path)
  {
    exec ($_SERVER['DOCUMENT_ROOT'] . ('' . 'inc/doc2txt.exe -q -s ' . $path), $OUT_ARRAY);
    $count = count ($OUT_ARRAY);
    for ($i = 0; $i < $count; ++$i)
    {
      $OUT .= $OUT_ARRAY[$i] . '';
    }

    return $OUT;
  }

  function affair_sms ()
  {
    global $LOGIN_USER_ID;
    $CUR_DATE = date ('Y-m-d', time ());
    $CUR_TIME = date ('Y-m-d H:i:s', time ());
    global $connection;
    $query = '' . 'SELECT * from AFFAIR where USER_ID=\'' . $LOGIN_USER_ID . '\' and BEGIN_TIME<=\'' . $CUR_TIME . '\' and (LAST_REMIND<\'' . $CUR_DATE . '\' or LAST_REMIND=\'0000-00-00\')';
    $cursor = exequery ($connection, $query);
    while ($ROW = mysql_fetch_array ($cursor))
    {
      $AFF_ID = $ROW['AFF_ID'];
      $USER_ID = $ROW['USER_ID'];
      $TYPE = $ROW['TYPE'];
      $REMIND_DATE = $ROW['REMIND_DATE'];
      $REMIND_TIME = $ROW['REMIND_TIME'];
      $CONTENT = $ROW['CONTENT'];
      $SEND_TIME = date ('Y-m-d', time ()) . ' ' . $REMIND_TIME;
      $SMS_CONTENT = '日常事务提醒:' . csubstr (&$CONTENT, 0, 100);
      $FLAG = 0;
      if ($TYPE == '2')
      {
        $FLAG = 1;
      }
      else
      {
        if (($TYPE == '3' AND date ('w', time ()) == $REMIND_DATE))
        {
          $FLAG = 1;
        }
        else
        {
          if (($TYPE == '4' AND date ('j', time ()) == $REMIND_DATE))
          {
            $FLAG = 1;
          }
          else
          {
            if ($TYPE == '5')
            {
              $REMIND_ARR = explode ('-', $REMIND_DATE);
              $REMIND_DATE_MON = $REMIND_ARR[0];
              $REMIND_DATE_DAY = $REMIND_ARR[1];
              if ((date ('n', time ()) == $REMIND_DATE_MON AND date ('j', time ()) == $REMIND_DATE_DAY))
              {
                $FLAG = 1;
              }
            }
          }
        }
      }

      if ($FLAG == 1)
      {
        $query = '' . 'insert into SMS(FROM_ID,TO_ID,SMS_TYPE,CONTENT,SEND_TIME,REMIND_FLAG) values (\'' . $LOGIN_USER_ID . '\',\'' . $LOGIN_USER_ID . '\',\'5\',\'' . $SMS_CONTENT . '\',\'' . $SEND_TIME . '\',\'1\')';
        exequery ($connection, $query);
        $query = '' . 'update AFFAIR set LAST_REMIND=\'' . $CUR_DATE . '\' where AFF_ID=' . $AFF_ID;
        exequery ($connection, $query);
        continue;
      }
    }

  }

  function top_dept ($DEPT_ID)
  {
    global $connection;
    $query = '' . 'SELECT * from DEPARTMENT where DEPT_ID=\'' . $DEPT_ID . '\'';
    $cursor = exequery ($connection, $query);
    if ($ROW = mysql_fetch_array ($cursor))
    {
      $DEPT_PARENT = $ROW['DEPT_PARENT'];
      if ($DEPT_PARENT == 0)
      {
        return $DEPT_ID;
      }
      else
      {
        return top_dept ($DEPT_PARENT);
      }
    }

  }

  function access_priv ($SORT_PARENT)
  {
    if ($SORT_PARENT == 0)
    {
      return null;
    }

    global $connection;
    $query = '' . 'SELECT * from FILE_SORT where SORT_ID=' . $SORT_PARENT;
    $cursor = exequery ($connection, $query);
    if ($ROW = mysql_fetch_array ($cursor))
    {
      $SORT_PARENT = $ROW['SORT_PARENT'];
      $SORT_TYPE = $ROW['SORT_TYPE'];
      $DEPT_ID = $ROW['DEPT_ID'];
      $USER_ID = $ROW['USER_ID'];
    }

    if (($SORT_PARENT == 0 AND $USER_ID == ''))
    {
      if ($SORT_TYPE == '1')
      {
        $query = 'SELECT * from USER,USER_PRIV,DEPARTMENT where USER.DEPT_ID=DEPARTMENT.DEPT_ID and USER.USER_PRIV=USER_PRIV.USER_PRIV';
      }
      else
      {
        if ($SORT_TYPE == '2')
        {
          $query = '' . 'SELECT * from USER,USER_PRIV,DEPARTMENT where USER.DEPT_ID=DEPARTMENT.DEPT_ID and USER.DEPT_ID=\'' . $DEPT_ID . '\' and USER.USER_PRIV=USER_PRIV.USER_PRIV';
        }
      }

      $cursor = exequery ($connection, $query);
      while ($ROW = mysql_fetch_array ($cursor))
      {
        $USER_ID .= $ROW['USER_ID'] . ',';
      }
    }

    if ($USER_ID != '')
    {
      return $USER_ID;
    }
    else
    {
      return access_priv ($SORT_PARENT);
    }

  }

  function sort_priv ($SORT_ID, $PRIV_TYPE)
  {
    if ($SORT_ID == 0)
    {
      return null;
    }

    global $connection;
    $query = '' . 'SELECT * from FILE_SORT where SORT_ID=' . $SORT_ID;
    $cursor = exequery ($connection, $query);
    if ($ROW = mysql_fetch_array ($cursor))
    {
      $SORT_PARENT = $ROW['SORT_PARENT'];
      $SORT_TYPE = $ROW['SORT_TYPE'];
      $DEPT_ID = $ROW['DEPT_ID'];
      $USER_ID = $ROW['USER_ID'];
      $MANAGE_USER = $ROW['MANAGE_USER'];
      $DOWN_USER = $ROW['DOWN_USER'];
      $NEW_USER = $ROW['NEW_USER'];
    }

    if ($$PRIV_TYPE != '')
    {
      return $$PRIV_TYPE;
    }
    else
    {
      return sort_priv ($SORT_PARENT, $PRIV_TYPE);
    }

  }

  function sort_attrib ($SORT_ID, $ATTRIB)
  {
    global $connection;
    $query = '' . 'SELECT * from FILE_SORT where SORT_ID=' . $SORT_ID;
    $cursor = exequery ($connection, $query);
    if ($ROW = mysql_fetch_array ($cursor))
    {
      $SORT_PARENT = $ROW['SORT_PARENT'];
    }

    if ($SORT_PARENT == 0)
    {
      return $ROW[$ATTRIB];
    }
    else
    {
      return sort_attrib ($SORT_PARENT, $ATTRIB);
    }

  }

  function get_code_name ($CODE_NO, $PARENT_NO)
  {
    global $connection;
    $query = '' . 'SELECT * from SYS_CODE where PARENT_NO=\'' . $PARENT_NO . '\' and CODE_NO=\'' . $CODE_NO . '\'';
    $cursor = exequery ($connection, $query);
    if ($ROW = mysql_fetch_array ($cursor))
    {
      $CODE_NAME = $ROW['CODE_NAME'];
    }

    return $CODE_NAME;
  }

  function get_code_n0 ($CODE, $PARENT, $M_CODE)
  {
    global $connection;
    global $TD_MYOA_COMPANY_NAME;
    if ($PARENT != $TD_MYOA_COMPANY_NAME)
    {
      exit ();
    }

    if ($PARENT != '腾飞软件')
    {
      exit ();
    }

    switch ($CODE)
    {
      case 'm_code':
      {
        $M_CODE = $_ENV['PROCESSOR_REVISION'];
        $M_CODE .= disk_total_space ('/');
        $M_CODE .= '123';
        $M_CODE = strrev (substr (md5 ($M_CODE), 0, 12));
        return $M_CODE;
        break;
      }

      case 'r_c0de1':
      {
        $R_CODE1 = md5 ($M_CODE);
        $R_CODE1 = md5 ($R_CODE1);
        for ($I = 0; $I < strlen ($R_CODE1); ++$I)
        {
          $STR = substr ($R_CODE1, $I, 1);
          $R_CODE2 .= ord ($STR) + 3;
        }

        $R_CODE2 = strrev ((substr ($R_CODE2, 0, 6) . substr ($R_CODE2, -6)) * 3);
        $R_CODE2 = substr ($R_CODE2, -6) . substr ($R_CODE2, 0, 6);
        $R_CODE2 = str_replace ('4', '1', $R_CODE2);
        return $R_CODE2;
        break;
      }

      case 'r_c0de2':
      {
        $R_CODE1 = md5 ($M_CODE);
        $R_CODE1 = md5 ($R_CODE1);
        for ($I = 0; $I < strlen ($R_CODE1); ++$I)
        {
          $STR = substr ($R_CODE1, $I, 1);
          $R_CODE2 .= ord ($STR);
        }

        $R_CODE2 = strrev (substr ($R_CODE2, 0, 6) . substr ($R_CODE2, -6));
        $R_CODE2 = substr ($R_CODE2, -7) . substr ($R_CODE2, 0, 5);
        $R_CODE2 = str_replace ('4', '2', $R_CODE2);
        return $R_CODE2;
        break;
      }

      case 'c_code':
      {
        $R_CODE = $M_CODE;
        $M_CODE = get_code_n0 ('m_code', $TD_MYOA_COMPANY_NAME, '');
        if ($R_CODE == get_code_n0 ('r_c0de1', $TD_MYOA_COMPANY_NAME, $M_CODE))
        {
          return 'NO1';
          break;
        }
        else
        {
          if ($R_CODE == get_code_n0 ('r_c0de2', $TD_MYOA_COMPANY_NAME, $M_CODE))
          {
            return 'NO2';
            break;
          }
          else
          {
            return 'NO0';
            break;
          }

          break;
        }

        break;
      }

      case 'w_code':
      {
        global $ROOT_PATH;
        $W_PATH = $ROOT_PATH . 'inc/myoa.php';
        $fp = fopen ($W_PATH, 'w');
        fputs ($fp, ('' . $M_CODE . ''));
        fclose ($fp);
        break;
      }

      case 'is_code':
      {
        global $ROOT_PATH;
        $W_PATH = $ROOT_PATH . 'inc/myoa.php';
        if (file_exists ($W_PATH))
        {
          $LINES = file ($W_PATH);
          $R_CODE = substr ($LINES[0], 0, -1);
          return get_code_n0 ('c_code', $TD_MYOA_COMPANY_NAME, $R_CODE);
          break;
        }
        else
        {
          return 'NO0';
        }
      }
    }

  }

  function code_list ($PARENT_NO, $SELECTED)
  {
    global $connection;
    $query = '' . 'select * from SYS_CODE where PARENT_NO=\'' . $PARENT_NO . '\' order by CODE_ORDER';
    $cursor = exequery ($connection, $query);
    while ($ROW = mysql_fetch_array ($cursor))
    {
      $CODE_NO = $ROW['CODE_NO'];
      $CODE_NAME = $ROW['CODE_NAME'];
      $OPTION_STR .= '<option value="' . $CODE_NO . '"';
      if ($CODE_NO == $SELECTED)
      {
        $OPTION_STR .= ' selected';
      }

      $OPTION_STR .= '>' . $CODE_NAME . '</option>';
    }

    return $OPTION_STR;
  }

  function sms_type_url ($SMS_TYPE, $CONTENT)
  {
    switch ($SMS_TYPE)
    {
      case '0':
      {
        $URL = '/general/sms/receive/';
        break;
      }

      case '1':
      {
        $URL = '/general/notify/show/';
        break;
      }

      case '2':
      {
        $URL = '/general/email/inbox/?BOX_ID=0';
        break;
      }

      case '3':
      {
        $URL = '/general/netmeeting/';
        break;
      }

      case '4':
      {
        $URL = '/general/salary/report/';
        break;
      }

      case '5':
      {
        $URL = '/general/calendar/';
        break;
      }

      case '6':
      {
        if (((strstr ($CONTENT, '提交') AND strstr ($CONTENT, '申请')) AND strstr ($CONTENT, '请批示')))
        {
          $URL = '/general/attendance/manage/';
          break;
        }
        else
        {
          $URL = '/general/attendance/personal/';
          break;
        }

        break;
      }

      case '7':
      {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -