settable('flow_set'); } public function getmodearr($whe='') { $where = 'status=1 '.$whe.''; if($whe=='all')$where='1=1'; $arr = $this->getall($where,'`id`,`num`,`name`,`table`,`type`,`isflow`,`status`','sort'); $typea = array(); foreach($arr as $k=>$rs){ if(LANG!='zh-CN')$rs['name'] = lang($rs['name'],'mode'); $arr[$k]['name'] = ''.$rs['id'].'.'.$rs['name'].'('.$rs['num'].')'; $typea[$rs['type']][] = $arr[$k]; } $arr = array(); foreach($typea as $k1=>$srow){ foreach($srow as $k2=>$rs2)$arr[] = $rs2; } return $arr; } //判断模块是否开启存在 public function iscun($num) { $to = $this->rows("`num`='$num' and `status`=1"); return $to==1; } public function getmoderows($uid, $sww='') { $where = m('admin')->getjoinstr('receid', $uid); $arr = $this->getall("`status`=1 and `type`<>'系统' $sww $where",'`id`,`num`,`name`,`table`,`type`,`isflow`,`isscl`','`sort`'); if(LANG!='zh-CN')foreach($arr as $k=>$rs){ $arr[$k]['name'] = lang($rs['name'],'mode'); $arr[$k]['type'] = lang($rs['type'],'mode'); } return $arr; } public function getmodemyarr($uid=0, $whe='') { $where = ''; if($whe!='')$where = $whe; if($uid>0)$where = m('admin')->getjoinstr('receid', $uid); $arr = $this->getall('status=1 and isflow>0 '.$where.'','`id`,`name`,`type`','sort'); if(LANG!='zh-CN')foreach($arr as $k=>$rs){ $arr[$k]['name'] = lang($rs['name'],'mode'); $arr[$k]['type'] = lang($rs['type'],'mode'); } return $arr; } //生成列表页面 public function createlistpage($modeid, $lxss=0, $glx=0, $inrs=null) { if(is_array($modeid)){ $mors = $modeid; }else{ $mors = m('flow_set')->getone($modeid,'`id`,`table`,`names`,`num`,`name`,`isflow`,`lbztxs`'); } $num = $mors['num']; $path = ''.P.'/flow/page/rock_page_'.$num.'.php'; //分单位自己生成 if($glx==0 && getconfig('platdwnum') && COMPANYNUM){ $dbbase = str_replace('_company_'.COMPANYNUM.'','', DB_BASE); $ones = $this->db->getone(''.$dbbase.'.`[Q]flow_set`', "`num`='$num'"); if($ones)return 'ok'; } //当是一键生成时,不存在就不要生成了 if($lxss==1 && !file_exists($path))return 'none'; $flow = m('flow')->initflow($num); $chufarr= array(); if(method_exists($flow, 'flowxiangfields'))$chufarr = $flow->flowxiangfields($chufarr); $table = $mors['table']; $name = $mors['name']; $modeid = (int)$mors['id']; $isflow = (int)$mors['isflow']; $lbztxs = $mors['lbztxs']; $showzt = false; $farr[] = array('name'=>arrvalue($chufarr, 'base_name', lang('申请人')),'fields'=>'base_name'); $farr[] = array('name'=>arrvalue($chufarr, 'base_deptname', lang('申请人部门')),'fields'=>'base_deptname'); $farr[] = array('name'=>arrvalue($chufarr, 'base_sericnum', lang('单号')),'fields'=>'sericnum'); $farrs = m('flow_element')->getall("`mid`='$modeid'",'`fields`,`name`,`fieldstype`,`ispx`,`isalign`,`iszb`,`islb`,`issou`,`data`,`width`,`iseditlx`','`iszb`,`sort`'); $inpub = c('input'); $inpub->flow = $flow; $zbarr = $zbnamea = array(); if(!isempt($mors['names']))$zbnamea = explode(',', $mors['names']); foreach($farrs as $k=>$rs){ if(LANG!='zh-CN')$rs['name'] = $flow->lang($rs['name']); if($glx==1 && $rs['issou']=='1' && ($rs['fieldstype']=='select' || $rs['fieldstype']=='rockcombo')){ $rs['store'] =$inpub->getdatastore($rs['fieldstype'],$inrs,$rs['data']); } if($rs['iszb']=='0'){ $farr[] = $rs; //主表 if($rs['fields']=='status')$showzt=true; }else{ if($rs['issou']=='1'){ $xus = floatval($rs['iszb'])-1; $zbn = arrvalue($zbnamea, $xus); if($zbn)$rs['name'] = ''.$zbn.'.'.$rs['name'].''; $rs['fields'] = 'zb'.$xus.'_'.$rs['fields'].''; $zbarr[] = $rs; } } } $farr[] = array('name'=>arrvalue($chufarr, 'comidname', lang('所属单位※')),'fields'=>'comidname','islb'=>(ISMORECOM)?1:0); $jgpstr = ''; $hstart = ''; $hendts = ''; $oldcont = @file_get_contents($path); $autoquye = $this->rock->getcai($oldcont,'//[自定义区域start]','//[自定义区域end]'); //$isdaoru = m('flow_element')->rows("`mid`='$modeid' and `isdr`=1"); $drstrbtn = ''; //if($isdaoru>0){ $drstrbtn = "   "; //} //读取流程模块的条件 $whtml = '
'; $zthtml = ''; if($isflow>0)$showzt = true; if($lbztxs==1)$showzt = true; if($lbztxs==2)$showzt = false; if($showzt){ $ztarr = $flow->getstatusarr(); $zthtml = ''; } $fselarr = array(); $bear = $this->db->getrows('[Q]option',"`num` like 'columns_".$num."_%'",'`num`,`value`'); foreach($bear as $k2=>$rs2)$fselarr[$rs2['num']]=$rs2['value']; $placeholder= ''; if($isflow>0)$placeholder= '//'; if($glx==1){ return array( 'isflow' => $isflow, 'modeid' => $modeid, 'fieldsarr' => $farr, 'fieldzarr' => $zbarr, 'fieldsselarr' => $fselarr, 'chufarr' => $chufarr, 'modename' => $flow->lang($name), 'modetable'=> $this->rock->jm->encrypt($mors['table']), 'modenames' => $flow->lang($this->rock->repempt($mors['names'])), ); } $html= "".$hstart."
$zthtml
\">
$whtml ".$drstrbtn."
".$hendts.""; $str = " ".$jgpstr.""; $bstrs = ''; if(!isempt($oldcont) && contain($oldcont, $jgpstr) && contain($oldcont, $bstrs)){ $strarr = explode($jgpstr, $oldcont); $nstr = $strarr[1]; $htmlqy = $this->rock->getcai($nstr, $hstart, $hendts); $rstr = "".$hstart." ".$htmlqy." ".$hendts.""; $nstr = str_replace($rstr, '', $nstr); $nstr = str_replace($bstrs, $html.$bstrs, $nstr); $str .= "\n".$nstr; }else{ $str.= "\n".$html; } $bo = $this->rock->createtxt($path, $str); if(!$bo)$path=''; return $path; } /** * 统计 */ public function flowtotal($modeid, $fields, $type) { } public function menulist() { $arr['schedule'] = '45'; $arr['hrsalary'] = '184,98,277,276,99,278,102'; $arr['knowtraim'] = '202,199,200,201'; $arr['hrcheck'] = '274,272,273,244,275'; $arr['emailm'] = '157'; $arr['meet'] = '89,150,151,283'; $arr['kqdkjl'] = '59,92,33,58,60,234,86,88,169,170'; //打卡记录 $arr['waichu'] = '160,159'; //打卡记录 $arr['kaoqin'] = '32,61,53,54,197,55,56,152,153,240,241,243,242,36,87,260,57'; $arr['kqdw'] = '93,94'; $arr['jiaban'] = '217'; $arr['daily'] = '76,77,195,78,198,231,192,193,194,196'; $arr['project'] = '79,69,70,72,71,82'; $arr['work'] = '66,65,67,83,68,80,81'; $arr['word'] = '124,125,203'; $arr['wordxie'] = '281'; $arr['wordeil'] = '282'; $arr['knowledge'] = '134,158'; $arr['knowtiku'] = '135,136'; $arr['news'] = '288'; $arr['wenjuan'] = '321'; $arr['wupin'] = '28,247,248,30,249,253,31,251,250,319,261,323,252'; $arr['assetm'] = '137,411,412,413'; $arr['repair'] = '413'; $arr['cheliang'] = '138,143,214,144,146,215,216'; $arr['book'] = '139,141,145'; $arr['seal'] = '165,166,167'; $arr['dangan'] = '336,337,338'; $arr['gongwen'] = '204,239,289,290,232,256,258,291,292,293,306,205,257,259,294,255,233,206,304,305'; $arr['crm'] = '63,37,64,73,104,105,114,118,126,179,262,299,131,132,75,112,113,123,263,317,110,111,108,109,106,119,115,116,117,107,120,121,122,175,176,177,178,264,302,318,300,301,386,387,458,459,460'; $arr['userinfo'] = '85,101,149'; $arr['userract'] = '95'; $arr['userzheng'] = '339'; $arr['hrdemand'] = '265'; $arr['hrmanshi'] = '266'; $arr['hrpositive'] = '96'; $arr['hrredund'] = '97'; $arr['hrtransfer'] = '128'; $arr['hrtrsalary'] = '129'; $arr['reward'] = '130'; $arr['finjishou'] = '311,312,316,369,457'; $arr['finzhang'] = '308'; $arr['finkemu'] = '309'; $arr['finount'] = '310'; $arr['finscrip'] = '453,454,455'; $arr['finscrib'] = '456'; $arr['finfybx'] = '187,191'; $arr['finccbx'] = '188'; $arr['finjkd'] = '189,218'; $arr['finhkd'] = '190'; $arr['finpay'] = '229'; $arr['finkai'] = '230'; $arr['finpiao'] = '279,280'; $arr['finyisu'] = '325,326,329,327,328'; $arr['finbei'] = '330,331,335,333,332,334'; $arr['wxgzh'] = '180,181,284,285,366'; $arr['weixinqy'] = '171,172,155,173,174,370,47,48,49,50,51,52'; $arr['ding'] = '208,209,210,211,212'; $arr['gongcheng'] = '345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,373,374,375,376,377,378,379,380,381,382,383,384,385'; $arr['officidu'] = '361,362,363,364,365'; $arr['gong'] = '90,287'; $arr['jxcbase'] = '388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,417,418'; $arr['planm'] = '410,407,408,409'; $arr['collectm'] = '414,415,416'; $arr['eduxueqi'] = '419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435'; $arr['yqhealthy'] = '436,437'; $arr['wyxiaoqu'] = '438,439,440,441,442,443,444,445,446,447,448,449,450,451'; return $arr; } public function yinglist() { $arr['kaoqin'] = '29,45,28,30,24,58'; $arr['work'] = '12'; $arr['project'] = '44'; $arr['gongwen'] = '41,42,43'; $arr['emailm'] = '26'; $arr['schedule'] = '21'; $arr['daily'] = '7'; $arr['meet'] = '4'; $arr['hrsalary'] = '38'; $arr['news'] = '52'; $arr['word'] = '20'; $arr['wordxie'] = '50'; $arr['knowledge'] = '27'; $arr['knowtiku'] = '32'; $arr['knowtraim'] = '33'; $arr['crm'] = '18,17,56,19,34,35,36'; $arr['bianjian'] = '59'; $arr['gong'] = '3'; $arr['wyxiaoqu'] = '67,68,69,70'; return $arr; } }