public function getlistAction() { // 请求参数 $request = $this->getRequest()->getParams(); $limit = $request['limit']; $start = $request['start']; $step = new Admin_Model_Step(); $employee = new Hra_Model_Employee(); $where = " 1=1"; foreach ($request as $k => $v) { if ($v != '') { $col = str_replace('search_', '', $k); if ($col != $k) { // 查询条件 $where .= " and " . $col . " like '%" . $v . "%'"; } } } $data = $step->getList($where, $start, $limit, null); for ($i = 0; $i < count($data); $i++) { $step_user = $data[$i]['user']; if ($step_user) { $step_user_name = $employee->getInfosByOneLine($step_user); $data[$i]['step_user_name'] = $step_user_name['cname']; } // 重新检索角色信息 if ($data[$i]['dept']) { $role = $data[$i]['dept']; $sql = "select GROUP_CONCAT(name) as step_dept_name from oa_user_role where id in ({$role})"; $db = $step->getAdapter(); $result = $db->query($sql)->fetchObject(); $data[$i]['step_dept_name'] = $result->step_dept_name; } $data[$i]['manager'] = $data[$i]['manager'] == 1 ? true : false; } $resutl = array("totalCount" => count($step->getList($where, null, null, null)), "topics" => $data); echo Zend_Json::encode($resutl); exit; }
/** * grid用 */ public function getstepAction() { // 请求参数 $request = $this->getRequest()->getParams(); $ids = $request['ids']; $step = new Admin_Model_Step(); $employee = new Hra_Model_Employee(); $where = "t1.id in ({$ids})"; $data = $step->getListByFlow($ids); for ($i = 0; $i < count($data); $i++) { $step_user = $data[$i]['user']; if ($step_user) { $step_user_name = $employee->getInfosByOneLine($step_user); $data[$i]['step_user_name'] = $step_user_name['cname']; } $step_dept = $data[$i]['dept']; if ($step_dept) { $tmp = $step->getAdapter()->query("select group_concat(name) as name from oa_user_role where id in ( " . $step_dept . ")")->fetchObject(); $step_dept_name = $tmp->name; $data[$i]['step_dept_name'] = $step_dept_name; } } echo Zend_Json::encode($data); exit; }
public function exportcsvAction() { $request = $this->getRequest()->getParams(); $whereSearch = "1=1"; foreach ($request as $k => $v) { if ($v) { if ($k == 'search_tag') { $whereSearch .= " and (ifnull(t1.code,'') like '%{$v}%' or ifnull(t1.fullname,'') like '%{$v}%' or ifnull(t1.name,'') like '%{$v}%' or ifnull(t1.description,'') like '%{$v}%' or ifnull(t1.remark,'') like '%{$v}%' or ifnull(t1.secretlevel,'') like '%{$v}%')"; } else { if ($k == 'search_type') { if ($v) { $v = json_decode($v); $v = implode(',', $v); if ($v) { $whereSearch .= " and t1.category in ({$v})"; } } } else { $col = str_replace('search_', '', $k); if ($col != $k) { // 查询条件 $whereSearch .= " and ifnull(t1." . $col . ",'') like '%" . $v . "%'"; } } } } } print chr(0xef) . chr(0xbb) . chr(0xbf); $record = new Dcc_Model_Record(); $type = new Dcc_Model_Type(); $flow = new Admin_Model_Flow(); $step = new Admin_Model_Step(); $data = $type->getTypeList($whereSearch); $data_csv = array(); $title = array('cnt' => '#', 'id' => 'ID', 'code' => '文件简号', 'name' => '中文解释', 'fullname' => '全称', 'category' => '文件类别', 'resp_dept_id' => '责任部门', 'resp_emp_id' => '责任人', 'filerequire' => '文件是否必须', 'secretlevel' => '文件密级', 'template' => '文件模板编号', 'duration' => '审核时效', 'length' => '流水号长度', 'autotype' => '自动编码方式', 'description' => '描述', 'model_id' => '新文件自定义表单', 'dev_model_id' => '新版自定义表单', 'flow_id' => '新文件审批流程', 'dev_flow_id' => '升版文件审批流程', 'remark' => '备注', 'creater' => '添加人', 'create_time' => '生效日期', 'update_time' => '取消日期'); $title = $this->object_array($title); $date = date('YmdHsi'); $filename = "type_list" . $date; $path = "../temp/" . $filename . ".csv"; $file = fopen($path, "w"); fputcsv($file, $title); array_push($data_csv, $title); $typeids = array(); $typenames = array(); $k = 0; for ($i = 0; $i < count($data); $i++) { if ($data[$i]['state'] != 1) { } else { $data[$i]['update_time'] = ""; } $data[$i]['state'] = $data[$i]['state'] == 1 ? true : false; $data[$i]['autocode'] = $data[$i]['autocode'] == 1 ? true : false; $data[$i]['modelrequire'] = $data[$i]['modelrequire'] == 1 ? true : false; $data[$i]['filerequire'] = $data[$i]['filerequire'] == 1 ? '是' : '否'; // 查询所有审核阶段 if ($data[$i]['step_ids']) { $stepRows = $step->getListByFlow($data[$i]['step_ids']); $step_name = ""; if (count($stepRows) > 0) { $first = true; foreach ($stepRows as $row) { if ($step_name) { $step_name .= "->"; } $step_name .= $row['step_name']; } } $data[$i]['step'] = $step_name; } if ($data[$i]['dev_step_ids']) { $devStepRows = $step->getListByFlow($data[$i]['dev_step_ids']); $dev_step_name = ""; if (count($devStepRows) > 0) { $first = true; foreach ($devStepRows as $row) { if ($dev_step_name) { $dev_step_name .= "->"; } $dev_step_name .= $row['step_name']; } } $data[$i]['dev_step'] = $dev_step_name; } $data[$i]['resp_emp_name'] = ""; $data[$i]['resp_dept_name'] = ""; $data[$i]['grant_dept_name'] = ""; if ($data[$i]['resp_emp_id']) { $emp = $data[$i]['resp_emp_id']; $sql = "select GROUP_CONCAT(name) as resp_emp_name from oa_employee_post where id in ({$emp})"; $db = $step->getAdapter(); $result = $db->query($sql)->fetchObject(); $data[$i]['resp_emp_name'] = $result->resp_emp_name; } if ($data[$i]['resp_dept_id']) { $dept = $data[$i]['resp_dept_id']; $sql = "select GROUP_CONCAT(name) as resp_dept_name from oa_employee_dept where id in ({$dept})"; $db = $step->getAdapter(); $result = $db->query($sql)->fetchObject(); $data[$i]['resp_dept_name'] = $result->resp_dept_name; } if ($data[$i]['grant_dept_id']) { $dept = $data[$i]['grant_dept_id']; $sql = "select GROUP_CONCAT(name) as grant_dept_name from oa_employee_dept where id in ({$dept})"; $db = $step->getAdapter(); $result = $db->query($sql)->fetchObject(); $data[$i]['grant_dept_name'] = $result->grant_dept_name; } //$data[$i]['record'] = $record->getHis($data[$i]['id'], 'materiel'); $d = $data[$i]; $k++; $info = array('cnt' => $k, 'id' => $d['id'], 'code' => $d['code'], 'name' => $d['name'], 'fullname' => $d['fullname'], 'category' => $d['category_name'], 'resp_dept_id' => $d['resp_dept_name'], 'resp_emp_id' => $d['resp_emp_name'], 'filerequire' => $d['filerequire'], 'secretlevel' => $d['secretlevel'], 'template' => $d['template'], 'duration' => $d['duration'], 'length' => $d['length'], 'autotype' => $d['auto_description'], 'description' => $d['description'], 'model_id' => $d['model_name'], 'dev_model_id' => $d['dev_model_name'], 'flow_id' => $d['flow_name'], 'dev_flow_id' => $d['dev_flow_name'], 'remark' => $d['remark'], 'creater' => $d['creater'], 'create_time' => $d['create_time'], 'update_time' => $d['update_time']); $d = $this->object_array($info); array_push($data_csv, $info); fputcsv($file, $d); } fclose($file); $this->operate("文件分类导出"); echo $filename; exit; }