Viewing file: processSendDoc.php (69.47 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
SearchMaxDocGroup();
if($method=="addsend"){
$flagCommit = true;
$checkflagCommit= true;
$oC->BeginTrans();
$DocIDParent=GetParentDoc($DocID);
//echo "DocIDParent=".$DocIDParent." ";
//---select after sendtops
if($showsendtops=="Y"){
$oDoc5->SearchByKey($DocID);
$oDoc5->GetRecord();
$oDoc5->Edit();
$oDoc5->sendToPs="Y";
$oDoc5->Save();
}
//---main document
$oDoc2->SearchByKey($DocID);
$oDoc2->GetRecord();
$oRs4->SearchByDrsIDRegisterDoc($DrsID);
$oRs4->GetRecord();
$timesend=getNowDateTh()." ".date('H:i:s');
$checkupdate=0;
$checkupdate2=0;
$checkupdate3=0;
//-----------------send to Dept----------------------------------
//----send All deptId----------------------------------------------------------------
if($checkAll=="1"){ //send All deptId
if($maindept!=1){
$oDPt->SearchByKey($DlcdeptId);
$oDPt->GetRecord();
//---send to deptParentId------------------------
if($oDPt->deptParentId==0){
$oDPt2->RSmenuByDeptParent2($oDPt->deptParentId);
while($oDPt2->GetRecord()){
if($oDPt2->deptId!=$DlcdeptId){
$pssend=ShowSendtoPs2($oDPt2->deptId);
if($pssend!=''){
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$pssend;
//echo "pssend=".$pssend." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$pssend;
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//$DocTypeNo=ShowRunningDoc($oDoc->RsID,$oDoc->DtID,$oDP2->deptId);
$oDoc->DocTypeNo=$oDoc->DocTypeNo;
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->endDoc=$oDoc->endDoc;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
//echo "-----".$checkflagCommit." ";
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$pssend;
$oRs2->DsID="0";
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
} //not send to my deptId
///-----------my child
//-----send to child deptId
if($oDPt2->deptId==$DlcdeptId){
$oDPt4->RSmenuByDeptParent2($oDPt2->deptId);
while($oDPt4->GetRecord()){
$pssend=ShowSendtoPs2($oDPt4->deptId);
if($pssend!=''){
//echo "send to child deptId =".$oDPt4->deptName." pssend=".$pssend." ";
//--------------add documents
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$pssend;
//echo "pssend=".$pssend." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$pssend;
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
//echo "-----".$checkflagCommit." ";
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$pssend;
$oRs2->DsID="0";
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
}
}
///-----------end my child
}
}else{
//---send to not deptParentId = 0------------------------
//------send to parent dept----------------------
$oDPt2->SearchByKey($oDPt->deptParentId);
$oDPt2->GetRecord();
$pssend=ShowSendtoPs2($oDPt2->deptId);
if($pssend!=''){
//echo "send to parent dept=".$oDPt2->deptName." pssend=".$pssend." ";
/////////////////////
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$pssend;
//echo "pssend=".$pssend." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$pssend;
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//$DocTypeNo=ShowRunningDoc($oDoc->RsID,$oDoc->DtID,$oDP2->deptId);
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
//echo "-----".$checkflagCommit." ";
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$pssend;
$oRs2->DsID="0";
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
//------send to balance dept----------------------
$oDPt3->RSmenuByDeptParent2($oDPt2->deptId);
while($oDPt3->GetRecord()){
if($oDPt3->deptId!=$DlcdeptId){
$pssend=ShowSendtoPs2($oDPt3->deptId);
if($pssend!=''){
//echo "send to balance dept=".$oDPt3->deptName." pssend=".$pssend." ";
/////////////////////
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$pssend;
//echo "pssend=".$pssend." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$pssend;
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//$DocTypeNo=ShowRunningDoc($oDoc->RsID,$oDoc->DtID,$oDP2->deptId);
$oDoc->DocTypeNo=$oDoc->DocTypeNo;
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
//echo "-----".$checkflagCommit." ";
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$pssend;
$oRs2->DsID="0";
$oRs2->personId=$oRs2->personId;
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
}
//------send to child dept----------------------
if($oDPt3->deptId==$oDPt->deptId){
$oDPt4->RSmenuByDeptParent2($oDPt3->deptId);
while($oDPt4->GetRecord()){
$pssend=ShowSendtoPs2($oDPt4->deptId);
if($pssend!=''){
// echo "send to child dept=".$oDPt4->deptName." pssend=".$pssend." ";
/////////////////////
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$pssend;
//echo "pssend=".$pssend." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$pssend;
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//$DocTypeNo=ShowRunningDoc($oDoc->RsID,$oDoc->DtID,$oDP2->deptId);
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
//echo "-----".$checkflagCommit." ";
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$pssend;
$oRs2->DsID="0";
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
}
}
}
}
}else{ //--maindept=1
$oDPt2->RSDeptByMaxdeptDate2();
while($oDPt2->GetRecord()){
if($deptPs[$oDPt2->deptId]!=""){
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$deptPs[$oDPt2->deptId];
//echo "DlcID=".$oDoc->DlcID." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$deptPssend[$oDPt2->deptId];
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$deptPs[$oDPt2->deptId];
$oRs2->DsID="0";
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
} //loop dept
}
}else{
//----not send All deptId----------------------------------------------------------------
//--case not maindept
if($maindept!=1){
$oDPt->SearchByKey($DlcdeptId);
$oDPt->GetRecord();
//---send to deptParentId=0------------------------
if($oDPt->deptParentId==0){
$oDPt2->RSmenuByDeptParent2($oDPt->deptParentId);
while($oDPt2->GetRecord()){
if($deptPs[$oDPt2->deptId]!=""){
//echo "send to deptParentId=0 =".$oDPt2->deptName." pssend=".$deptPs[$oDPt2->deptId]." ";
//--------------add documents
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$deptPs[$oDPt2->deptId];
//echo "DlcID=".$oDoc->DlcID." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$deptPssend[$oDPt2->deptId];
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$deptPs[$oDPt2->deptId];
$oRs2->DsID="0";
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
///-----------my child
//-----send to child deptId
//------send to child dept----------------------
if($oDPt2->deptId==$oDPt->deptId){
$oDPt4->RSmenuByDeptParent2($oDPt2->deptId);
while($oDPt4->GetRecord()){
$pssend=ShowSendtoPs2($oDPt4->deptId);
if($deptPs[$oDPt4->deptId]!=""){
//echo "send to deptParentId=0 =".$oDPt2->deptName." pssend=".$deptPs[$oDPt2->deptId]." ";
//--------------add documents
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$deptPs[$oDPt4->deptId];
//echo "DlcID=".$oDoc->DlcID." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$deptPssend[$oDPt4->deptId];
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//$DocTypeNo=ShowRunningDoc($oDoc->RsID,$oDoc->DtID,$oDP2->deptId);
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->endDoc=$oDoc->endDoc;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$deptPs[$oDPt4->deptId];
$oRs2->DsID="0";
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
}
}
}
}else{
//---send to not deptParentId = 0------------------------
//------send to parent dept----------------------
$oDPt2->SearchByKey($oDPt->deptParentId);
$oDPt2->GetRecord();
if($deptPs[$oDPt2->deptId]!=""){
//echo "send to parent dept =".$oDPt2->deptName." pssend=".$deptPs[$oDPt2->deptId]." ";
//--------------add documents
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$deptPs[$oDPt2->deptId];
//echo "DlcID=".$oDoc->DlcID." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$deptPssend[$oDPt2->deptId];
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//$DocTypeNo=ShowRunningDoc($oDoc->RsID,$oDoc->DtID,$oDP2->deptId);
$oDoc->DocTypeNo=$oDoc->DocTypeNo;
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->endDoc=$oDoc->endDoc;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
$oDoc->DocMainPost=$oDoc->DocMainPost;
$oDoc->DocGetPost=$oDoc->DocGetPost;
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$deptPs[$oDPt2->deptId];
$oRs2->DsID="0";
$oRs2->personId=$oRs2->personId;
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
//------send to balance dept----------------------
$oDPt3->RSmenuByDeptParent2($oDPt2->deptId);
while($oDPt3->GetRecord()){
if($deptPs[$oDPt3->deptId]!=""){
//echo "send to balance dept =".$oDPt3->deptName." pssend=".$deptPs[$oDPt3->deptId]." ";
//--------------add documents
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$deptPs[$oDPt3->deptId];
//echo "DlcID=".$oDoc->DlcID." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$deptPssend[$oDPt3->deptId];
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//$DocTypeNo=ShowRunningDoc($oDoc->RsID,$oDoc->DtID,$oDP2->deptId);
$oDoc->DocTypeNo=$oDoc->DocTypeNo;
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->endDoc=$oDoc->endDoc;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
$oDoc->DocMainPost=$oDoc->DocMainPost;
$oDoc->DocGetPost=$oDoc->DocGetPost;
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->DocDateGetPost=$oDoc->DocDateGetPost;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$deptPs[$oDPt3->deptId];
$oRs2->DsID="0";
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
//-----send to child deptId
if($oDPt3->deptId==$oDPt->deptId){
$oDPt4->RSmenuByDeptParent2($oDPt3->deptId);
while($oDPt4->GetRecord()){
if($deptPs[$oDPt4->deptId]!=""){
//echo "send to child deptId =".$oDPt4->deptName." pssend=".$deptPs[$oDPt4->deptId]." ";
//--------------add documents
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$deptPs[$oDPt4->deptId];
//echo "DlcID=".$oDoc->DlcID." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$deptPssend[$oDPt4->deptId];
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//$DocTypeNo=ShowRunningDoc($oDoc->RsID,$oDoc->DtID,$oDP2->deptId);
$oDoc->DocTypeNo=$oDoc->DocTypeNo;
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$deptPs[$oDPt4->deptId];
$oRs2->DsID="0";
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
}
}
}
}
}else{ //---case main dept
$oDPt2->RSDeptByMaxdeptDate2();
while($oDPt2->GetRecord()){
if($deptPs[$oDPt2->deptId]!=""){
$oDoc->AddNew();
$oDoc->DocID=$oDoc->GetNextCode();
$oDoc->DocPID=$DocIDParent;
//echo "DocPID=".$oDoc->DocPID." ";
$oDoc->DlcID=$deptPs[$oDPt2->deptId];
//echo "DlcID=".$oDoc->DlcID." ";
$oDoc->PtID=$PtID;
//echo "PtID=".$oDoc->PtID." ";
$oDoc->DtID=$oDoc2->DtID;
$oDoc->DslID=$oDoc2->DslID;
$oDoc->DclID=$oDoc2->DclID;
$oDoc->DsID="0";
$oDoc->RsID="3"; //sendin
$oDoc->DocDateCreate=$timesend;
$DocDateCreate=$oDoc->DocDateCreate;
$oDoc->DocUserCreate=$deptPssend[$oDPt2->deptId];
//echo "DocUserCreate=".$oDoc->DocUserCreate." ";
//$DocTypeNo=ShowRunningDoc($oDoc->RsID,$oDoc->DtID,$oDP2->deptId);
$oDoc->DocTypeNo=$oDoc->DocTypeNo;
//echo "DocTypeNo=".$DocTypeNo." ";
$oDoc->DocDate=$oDoc2->DocDate;
$oDoc->DocNo=$oDoc2->DocNo;
$oDoc->DocSubject=$oDoc2->DocSubject;
$oDoc->DocFrom=$oDoc2->DocFrom;
$oDoc->DocTo=$oDoc2->DocTo;
$oDoc->DocShortDesc=$oDoc2->DocShortDesc;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$oDoc->DocSpeedLevelDueDate; }
$oDoc->DocSpeedLevelDueDate=$speedDate;
//echo "speedDate=".$speedDate." ";
$oDoc->DocStart=$oDoc2->DocStart;
$oDoc->DocFinish=$oDoc2->DocFinish;
$oDoc->DocGroup=$oDoc2->DocGroup;
$oDoc->DocRef=$oDoc2->DocRef;
$oDoc->DocCircular=$oDoc2->DocCircular;
$oDoc->DocfCir=$oDoc2->DocfCir;
$oDoc->DocOther=$oDoc2->DocOther;
$oDoc->CertificatePs=$oDoc2->CertificatePs;
$oDoc->fDelete=$oDoc2->fDelete;
$oDoc->endDoc=$oDoc->endDoc;
$oDoc->sendToPs=$oDoc2->sendToPs;
$oDoc->AnID=$AnID;
$oDoc->DocRefAns=$oDoc2->DocRefAns;
$oDoc->DocRefAnsID=$oDoc2->DocRefAnsID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oDoc->DocstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oDoc->DocendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oDoc->DocstartDatePost=$oDoc2->DocstartDatePost;
$oDoc->DocendDatePost=$oDoc2->DocendDatePost;
}
if($DocShowIn=="1" && $DocShowOut=="2"){
$addDocShowInOut="3";
}else{
if($DocShowIn=="1"){
$addDocShowInOut=$DocShowIn;
}else if($DocShowIn=="2"){
$addDocShowInOut=$DocShowIn;
}
}
$oDoc->DocShowInOut=$addDocShowInOut;
$oDoc->useMainDocNo=$oDoc2->useMainDocNo;
$oDoc->DocforSign=$oDoc2->DocforSign;
$checkflagCommit = $oDoc->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
//echo "end ";
$checkupdate++;
$oRs2->AddNew();
$oRs2->DrsID=$oRs2->GetNextCode();
//echo "DrsID=".$oRs2->DrsID." ";
$oRs2->DocID=$oDoc->DocID;
$oRs2->DlcID=$deptPs[$oDPt2->deptId];
$oRs2->DsID="0";
$oRs2->personId=$oRs2->personId;
$oRs2->PtID=$PtID;
//echo "PtID2=".$oRs2->PtID." ";
$oRs2->DrsDocTypeNo=$oRs2->DrsDocTypeNo;
$oRs2->DrsReceiveDate=$timesend;
$oDlc->SearchByKey($oDoc->DlcID); $oDlc->GetRecord();
$oRs2->DrsReceivePersonId='';
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs2->DrsDocDueDate=$speedDate;
//echo "speedDate2=".$speedDate." ";
$oRs2->DrsDlcIDCreate=$DlcIDlogin;
$oRs2->DrsPsIDCreate=$personId;
$oRs2->DrsPropose=$DrsSend;
$oRs2->DrsSign="";
$oRs2->DrsFromDrsID=$oRs4->DrsID;
$oRs2->DocGroup=$DocGroup;
$oRs2->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs2->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs2->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs2->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs2->DrsendDatePost=$oRs4->DrsendDatePost;
}
$checkflagCommit = $oRs2->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
}
} //loop dept
} //end case check main dept
} //end
//-----------------send to person in dept----------------------------------
$oPS2->SearchByDeptId($deptId);
while($oPS2->GetRecord()){
if($checkAllPs=="1"){ //send All ps in deptId
$oRs1->AddNew();
$oRs1->DrsID=$oRs1->GetNextCode();
$oRs1->DocID=$DocID;
$oRs1->DlcID="0";
$oRs1->DsID=0;
$oRs1->personId=$oPS2->personId;
//echo "send All ps=".$oRs1->personId." ";
$oRs1->PtID=$PtID;
$oRs1->DrsDocTypeNo=$oRs4->DrsDocTypeNo;
$oRs1->DrsReceiveDate=$timesend;
$oRs1->DrsReceivePersonId=$oPS2->personId;
if($checkDocSpeedDate=="Y"){ $speedDate=splitDateForm($DocSpeedLevelDueDate,"/"); }else{ $speedDate=$DrsDocDueDate; }
$oRs1->DrsDocDueDate=$speedDate;
$oRs1->DrsDlcIDCreate=$DlcIDlogin;
$oRs1->DrsPsIDCreate=$personId;
$oRs1->DrsPropose=$DrsSend;
$oRs1->DrsSign=$oRs1->DrsSign;
$oRs1->DrsFromDrsID=$oRs4->DrsID;
$oRs1->DocGroup=$DocGroup;
if($mainPsselect==$oPS2->personId && ($PtID!=1 && $PtID!=2 && $PtID!=6)){ $DrsMainPs="Y"; }else{ $DrsMainPs=""; }
$oRs1->DrsMainPs=$DrsMainPs;
//echo "DrsMainPs=".$DrsMainPs." ";
$oRs1->AnID=$AnID;
if($firstpost=="1" && ($AnID!="" && $AnID!="0")){
$oRs1->DrsstartDatePost=splitDateForm($DrsstartDatePost,"/");
$oRs1->DrsendDatePost=splitDateForm($DrsendDatePost,"/");
}else{
$oRs1->DrsstartDatePost=$oRs4->DrsstartDatePost;
$oRs1->DrsendDatePost=$oRs4->DrsendDatePost;
}
$DrsReadDoc=GetDrsReadDoc($DocID);
$oRs1->DrsReadDoc=$DrsReadDoc;
$checkflagCommit = $oRs1->Save();
if(!$checkflagCommit){ $flagCommit=$checkflagCommit; }
$checkupdate2++;
}else{
if($Ps[$oPS2->personId]!="" bool(false)
|