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

本次小飞鱼开发的程序主要解决某下属公司在人力系统中增加账号不能马上审批完毕的问题,可以通过这个流程审批后由插件在后台判断自动增加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账号(图文详解),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 通达OA公共代码 php常用检测函数

    check_type.php(使用类型检验函数) 复制代码 代码如下: <?php /*********************/ /* */ /* Version : 5.1.0 */ /* Author : RM */ /* Comment : 071223 */ /* */ /*********************/ function is_number( $str ) { if ( substr( $str, 0, 1 ) == "-" ) { $str = subs

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

    本次小飞鱼开发的程序主要解决某下属公司在人力系统中增加账号不能马上审批完毕的问题,可以通过这个流程审批后由插件在后台判断自动增加OA账号,增加机制与hr与OA系统同步相同. 只进行增加操作,没有修改.删除的操作.原有已经进行了两个系统的数据自动同步开发,因此这次的开发属于一个补充的内容,仅在此提供一个应用的思路和开发过程的探讨. 前端发起人申请时填写hr系统中已经分配的工号,即可对应查询出其他相关数据.为了避免查出数据后对工号修改,增加一个确认工号输入框.其他信息由Ajax自动获取为只读形式.这

  • JavaScript中浅讲ajax图文详解

    1.ajax入门案例 1.1 搭建Web环境 ajax对于各位来说,应该都不陌生,正因为ajax的产生,导致前台页面和服务器之间的数据传输变得非常容易,同时还可以实现页面的局部刷新.通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新. 对于JavaWeb项目而言,ajax主要用于浏览器和服务器之间数据的传输. 如果是单单地堆砌知识点,会显得比较无聊,那么根据惯例,我先不继续介绍ajax,而是来写一个案例吧. 打开

  • Android Studio3.6.+ 插件搜索不到终极解决方案(图文详解)

    不知道什么时候Android Studio 插件和Gradle升级后,插件在线安装就搜索不到插件了,一直处于转圈圈状态,通过各种测试和摸索总结出几种解决方案.我的Android Studio已经升级到3.6.3. 一.排查他因 排除一些相关因素,这些方法排除后任然无法搜索插件再使用终极解决方案. 1. 网络检查 . 确定无法搜索到插件前,一定要确定网络状态良好,弱网状态下也是会半天搜索不出插件的.不然后面忙了大半天要哭了. 2. 取消代理 二.终极方案 如下列举的几种方法都可有效解决插件搜索不到

  • vscode配置leetcode插件并解决无法登录问题(图文详解)

    官方文档 https://github.com/LeetCode-OpenSource/vscode-leetcode/blob/master/docs/README_zh-CN.md 1.环境 window10 vscode 1.23.0+ Node.js 10+ 如果Node.js 没添加到环境变量需要手动添加,添加成功在cmd中输入node --version会显示:  2.配置 vscode安装leetcode插件: 安装完右侧会出现: 此时发现账号密码方式无法登录(本次教程都针对国际版

  • IDEA安装阿里代码规范插件的步骤图文详解

    要养成一个好的编码习惯从自己编码开始,对自己代码的合理化命名,编码不仅对自己有好处,而且别人也容易读懂你的代码. 所以下载阿里的代码规范插件来约束自己凌乱的代码. 阿里规范插件GitHub地址:https://github.com/alibaba/p3c IDEA安装该插件步骤: 1.打开IDEA,File-> Setteings->Plugins->Browse Repositories,在Browse Repositories搜索栏搜索Alibaba,然后安装 2.安装完后点击   

  • pycharm中leetcode插件使用图文详解

    1.安装插件步骤 2.点击OK确认之后,提示IDE需要重启,选择重启: 3.设置leetcode插件,用户名.密码: 4.点击右下角的leetcode: 题库就出来了,双击进入开发编辑界面: 做完题之后,可选择运行.测试.提交,查看执行情况: 到此这篇关于pycharm中leetcode插件使用图文详解的文章就介绍到这了,更多相关pycharm中leetcode插件内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

  • IDEA教程之Activiti插件图文详解

    本文作者:Spring_ZYL 文章来源:https://blog.csdn.net/gozhuyinglong 版权声明:本文版权归作者所有,转载请注明出处 一.安装Activiti插件 1.搜索插件 点击菜单[File]-->[Settings...]打开[Settings]窗口. 点击左侧[Plugins]按钮,在右侧输出"actiBPM",点击下面的[Search in repositories]链接会打开[Browse Repositories]窗口. 2.开始安装 进入[Browse

  • Ajax解决跨域之设置CORS响应头实现跨域案例详解

    1.设置CORS响应头实现跨域 跨源资源共享(CORS) 1.1 什么是CORS CORS(Cross-Origin Resource Sharing),跨域资源共享.CORS 是官方的跨域解决方 案,它的特点是不需要在客户端做任何特殊的操作,完全在服务器中进行处理,支持 get 和 post 请求.跨域资源共享标准新增了一组 HTTP 首部字段,允许服务器声明哪些 源站通过浏览器有权限访问哪些资源 1.2 CORS 怎么工作的? CORS 是通过设置一个响应头来告诉浏览器,该请求允许跨域,浏览

  • Ajax异步请求JSon数据(图文详解)

    上一篇讲了Ajax请求数据text类型,text和html都是处理比较简答的数据,而在编程过程中使用Ajax调用数据的时候,难免要进行逻辑的处理,接受的数据也变的复杂比如数组类型的数据,这时候就需要使用JSON数据类型进行处理,今天就说说,JSON数据请求过程中的一些细节: 我们友情提醒本文所需工具和原料如下: wamp或lamp环境.jquery.js.编辑器 具体方法/步骤请看下面: 1.创建基本的文件结构json_ajax.html和json_ajax.php,下载jquery.js,如图

  • Bootstrap进度条与AJAX后端数据传递结合使用实例详解

    很多时候,我们执行页面上某个URL请求的时候,需要有等待的时间.如果是直接的页面跳转,浏览器会有缓冲进度展示,但是如果是AJAX,我觉得应该自己加上进度条,等待数据全部接收到之后,进度条消失,展示页面. 在Yii框架里面使用了AJAX后,觉得前后端的数据交互变得方便多了. 下面直接贴代码啦 控制器Controller public function actionTest(){ if(isset($_POST["number"])){ $html = "success"

随机推荐