通达OA 使用Ajax和工作流插件实现根据人力资源系统数据增加OA账号(图文详解)

所属分类: 网络编程 / AJAX相关 阅读数: 906
收藏 0 赞 0 分享

本次小飞鱼开发的程序主要解决某下属公司在人力系统中增加账号不能马上审批完毕的问题,可以通过这个流程审批后由插件在后台判断自动增加OA账号,增加机制与hr与OA系统同步相同。

只进行增加操作,没有修改、删除的操作。原有已经进行了两个系统的数据自动同步开发,因此这次的开发属于一个补充的内容,仅在此提供一个应用的思路和开发过程的探讨。

前端发起人申请时填写hr系统中已经分配的工号,即可对应查询出其他相关数据。为了避免查出数据后对工号修改,增加一个确认工号输入框。其他信息由Ajax自动获取为只读形式。这样通过从另外的系统获取数据方式可以避免完全人为输入数据造成错误。

通过流程审批完毕后,流转到OA管理员哪里,管理员在进行下一步转交时即在后台创建账号,如果没有错误则会提示创建成功,如果有错误也会进行提示。

hr系统为宏景的人力系统,数据库为SQL Server2008,因此本开发中还需要连接sqlserver的数据库。

系统的主要代码:

$query="select * from t_hr_view where c01u7='" .$gonghao. "'"; 
$cursor=sqlsrv_query($conn,$query); 
if($row=sqlsrv_fetch_array($cursor,SQLSRV_FETCH_ASSOC)){ 
  $hr_dept_id=$row["E0122_0"];  
  $hr_dept_name=$row["e0122"];  
  $OA=$row["OA"]; 
  $hr_name=$row["A0101"]; 
  $hr_gangwei=$row["e01a1"]; 
  $hr_gonghao=$row["c01u7"]; 
  $hr_unique_id=$row["unique_id"]; 
  if($OA==1 or $OA==2){ 
    $query2="select * from user where hr_unique_id='$hr_unique_id' limit 1"; 
    $cursor2=exequery(TD::conn(),$query2); 
    $num=mysql_num_rows($cursor2); 
    if($num==0 and $hr_gonghao!=""){ 
      //新增用户 
      $DEPT_ID="0"; 
      $new_flag=1; 
      $query4="select DEPT_ID  from department where hr_dept_id='$hr_dept_id' limit 1"; 
      $cursor4=exequery(TD::conn(),$query4); 
      if($row4=mysql_fetch_row($cursor4)){ 
        $DEPT_ID=$row4[0]; 
      } 
      if(in_array($hr_dept_name, $neitui_dept_arr)){  
        $DEPT_ID="0"; 
      }         
      /****查询byname有没有重复的**/ 
      $query5="select * from user where BYNAME='$hr_gonghao' limit 1"; 
      $cursor5=exequery(TD::conn(),$query5); 
      $num5=mysql_num_rows($cursor5);      
      //$num5=1;//测试失败       
      if($num5==1){ 
        $new_flag=-1;  
      } 
      /******/ 
      if($new_flag==1){ //允许新增用户 
          $has_user_id_str = ''; 
          $queryn = 'SELECT UID,USER_ID FROM user'; 
          $cursorn = exequery(TD::conn(), $queryn); 
          while ($rown = mysql_fetch_array($cursorn)) { 
            $has_user_id_str .= $rown['USER_ID'] . ','; 
          } 
          $USER_ID = get_user_id($has_user_id_str); 
          $BYNAME=$hr_gonghao; //登录名为工号 
          $BYNAME = trim($BYNAME); 
          $USER_NAME=$hr_name; 
          $USER_NAME = trim($USER_NAME); 
          $BYNAME = trim($BYNAME); 
          $UID=add_user_new($ARRAY); 
            if($UID!=""){  
              $USER_ID=$UID; 
              $query3 = "insert into USER_EXT(UID,USER_ID,USE_POP3,EMAIL_CAPACITY,FOLDER_CAPACITY,WEBMAIL_CAPACITY,WEBMAIL_NUM,DUTY_TYPE) values('$UID','$USER_ID','0','500','500','0','0','1')";              
              exequery(TD::conn(),$query3);                                           
          }  
      }  
    }     
  }  
}

以上所述是小编给大家介绍的通达OA 使用Ajax和工作流插件实现根据人力资源系统数据增加OA账号(图文详解),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

更多精彩内容其他人还在看

AJAX 客户端响应速度提高分析

AJAX的出现极大的改变了Web应用客户端的操作模式,它使的用户可以在全心工作时不必频繁的忍受那令人厌恶的页面刷新。
收藏 0 赞 0 分享

揭开AJAX神秘的面纱(AJAX个人学习笔记)第1/5页

写这个学习笔记,只是记载一下自己的学习经过和体会,把一些学习重点记录下来,以备今后的巩固复习及应用,很多知识点没有详细介绍,所以并不完全适用于初学者,如果你是初学者,最好选择一本AJAX学习的书籍,然后与这篇学习笔记对照学习,效果会更好。
收藏 0 赞 0 分享

Ajax Control Toolkit 34个服务器端控件第1/2页

Ajax Control Toolkit 34个服务器端控件,想要学习ajax的朋友可以参考下。
收藏 0 赞 0 分享

Ajax 核心框架函数及例子

最近学习js,肯定会学到ajax中的东西,所以,看到比较好的ajax函数,免不得要贴出来,供大家参考。这个函数摘录自john resig的书中。
收藏 0 赞 0 分享

AJAX 进度条实现代码

AJAX 进度条实现代码,基于java后来,大家可以学习下。
收藏 0 赞 0 分享

一款经典的ajax登录页面 后台asp.net

众所周知,用服务器控件做页面的登录窗体时很简单的,但是页面的多次回传让我们感觉到头痛,一直刷新页面的感觉非常之不好,其实用ajax的局部刷新功能可以完全解决这个问题,制作出来的页面有很好的交互性,而且是局部刷新,节省网络资源。
收藏 0 赞 0 分享

ajax 调用后台方法大家可以讨论下

我曾使用过的三种调用后台的代码,需要的朋友可以参考下,如果发现更好的可以留言。
收藏 0 赞 0 分享

5款Ajax 文件上传控件

如果你的网站含有文件上传功能,那可以使用本文介绍的5款Ajax文件上传控件,提升用户体验。要知道,上传文件总是个痛苦的过程,要消除不太现实,但至少如果你为减少用户的痛苦努力了,那用户也会喜欢你的网站的。
收藏 0 赞 0 分享

AJAX集天气\IP\多国语言翻译MP3(可同步LRC歌词显示)\万年历查询通

AJAX集天气\IP\多国语言翻译MP3(可同步LRC歌词显示)\万年历查询通
收藏 0 赞 0 分享

AJAX 缓存问题的两种解决方法(IE)

ajax 清除缓存的两种方法
收藏 0 赞 0 分享
查看更多