本次小飛魚(yú)開(kāi)發(fā)的程序主要解決某下屬公司在人力系統(tǒng)中增加賬號(hào)不能馬上審批完畢的問(wèn)題,可以通過(guò)這個(gè)流程審批后由插件在后臺(tái)判斷自動(dòng)增加OA賬號(hào),增加機(jī)制與hr與OA系統(tǒng)同步相同。
只進(jìn)行增加操作,沒(méi)有修改、刪除的操作。原有已經(jīng)進(jìn)行了兩個(gè)系統(tǒng)的數(shù)據(jù)自動(dòng)同步開(kāi)發(fā),因此這次的開(kāi)發(fā)屬于一個(gè)補(bǔ)充的內(nèi)容,僅在此提供一個(gè)應(yīng)用的思路和開(kāi)發(fā)過(guò)程的探討。
前端發(fā)起人申請(qǐng)時(shí)填寫hr系統(tǒng)中已經(jīng)分配的工號(hào),即可對(duì)應(yīng)查詢出其他相關(guān)數(shù)據(jù)。為了避免查出數(shù)據(jù)后對(duì)工號(hào)修改,增加一個(gè)確認(rèn)工號(hào)輸入框。其他信息由Ajax自動(dòng)獲取為只讀形式。這樣通過(guò)從另外的系統(tǒng)獲取數(shù)據(jù)方式可以避免完全人為輸入數(shù)據(jù)造成錯(cuò)誤。
![](/d/20211017/f530cddb6c35c9272d13bb238ce5e09b.gif)
通過(guò)流程審批完畢后,流轉(zhuǎn)到OA管理員哪里,管理員在進(jìn)行下一步轉(zhuǎn)交時(shí)即在后臺(tái)創(chuàng)建賬號(hào),如果沒(méi)有錯(cuò)誤則會(huì)提示創(chuàng)建成功,如果有錯(cuò)誤也會(huì)進(jìn)行提示。
![](/d/20211017/b26b4a32468514e70aa15e5ddd2aa5de.gif)
hr系統(tǒng)為宏景的人力系統(tǒng),數(shù)據(jù)庫(kù)為SQL Server2008,因此本開(kāi)發(fā)中還需要連接sqlserver的數(shù)據(jù)庫(kù)。
系統(tǒng)的主要代碼:
$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有沒(méi)有重復(fù)的**/
$query5="select * from user where BYNAME='$hr_gonghao' limit 1";
$cursor5=exequery(TD::conn(),$query5);
$num5=mysql_num_rows($cursor5);
//$num5=1;//測(cè)試失敗
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; //登錄名為工號(hào)
$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);
}
}
}
}
}
以上所述是小編給大家介紹的通達(dá)OA 使用Ajax和工作流插件實(shí)現(xiàn)根據(jù)人力資源系統(tǒng)數(shù)據(jù)增加OA賬號(hào)(圖文詳解),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
您可能感興趣的文章:- 通達(dá)OA公共代碼 php常用檢測(cè)函數(shù)