本次小飛魚開發的程式主要解決某下屬公司在人力系統中增加帳號不能馬上審批完畢的問題,可以通過這個流程審批後由外掛程式在後台判斷自動增加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帳號(圖文詳解),希望對大家有所協助,如果大家有任何疑問請給我留言,小編會及時回複大家的。在此也非常感謝大家對雲棲社區網站的支援!