function edit($staff_id) { $app = get_app(); $staff = Staff::find_by_id($staff_id); //GET if ($app->request()->isGet()) { render_with_layout('misc.php', 'Staffs/edit.php', compact('staff')); } //POST if ($app->request()->isPost()) { $post = $app->request()->post(); // $staff->identifier = $post['identifier']; $staff->name = $post['name']; $staff->short = $post['short']; $staff->group_id = $post['group_id']; if (!$staff->is_valid()) { $app->flashNow('errors', $staff->errors); render_with_layout('misc.php', 'Staffs/add.php', compact('staff')); } else { $staff->save(); $app->flash('success', '员工信息更新成功!'); redirect('/staffs'); } } }
function edit($id) { // user_id $app = get_app(); $user = User::find_by_id($id); // GEt if ($app->request()->isGet()) { render_with_layout('misc.php', 'Users/edit.php', compact('user')); } // POST if ($app->request()->isPost()) { $post = $app->request()->post(); // $user->account = $post['account']; $user->username = $post['username']; $user->group_id = $post['group_id']; $user->role_id = $post['role_id']; // $password_1 = $post['password_1']; $password_2 = $post['password_2']; // 当满足两次输入密码相同 且 密码长度大于8位 // 才更新密码 if ($password_1 == $password_2 && strlen($password_1) >= 8) { $user->password = md5($password_1); } else { $app->flashNow('errors', array('用户密码必须不小于8位!')); render_with_layout('misc.php', 'Users/edit.php', compact('user')); exit; } if (!$user->is_valid()) { $app->flashNow('errors', $user->errrors); render_with_layout('misc.php', 'Users/edit.php', compact('user')); } else { $user->save(); $app->flash('success', '用户信息更新成功!'); redirect('/users'); } } }
function search_order_by_proc_name($start_date, $end_date) { // 按工序名称查询指定时间段内的工序 // 投产日期非空 $procs = Process::find('all', array('conditions' => array('DATE(`production_date`) > ? AND `is_done` = ? AND DATE(`planned_completion_date`) >= ? AND DATE(`planned_completion_date`) <= ?', 0, 0, $start_date, $end_date), 'order' => 'name asc')); //debug( $procs ); // 过滤急件,将工序对应的零件分类存储 $results = array(); foreach ($procs as $proc) { // 急件 if ($proc->part->production->is_urgent) { $part = $proc->part; // 创建 part if (!isset($results[$proc->name][$part->id])) { $results[$proc->name][$part->id] = array('part_num' => $part->num, 'part_name' => $part->name, 'part_count' => $part->count, 'procs' => array(array('proc_priority' => $proc->priority, 'proc_planned_completion_date' => $proc->planned_completion_date ? date('Y-m-d', strtotime($proc->planned_completion_date)) : '', 'proc_production_date' => $proc->production_date ? date('Y-m-d', strtotime($proc->production_date)) : '', 'proc_completion_date' => $proc->completion_date ? date('Y-m-d', strtotime($proc->completion_date)) : ''))); } else { // 追加 procs $results[$proc->name][$part->id]['procs'][] = array('proc_priority' => $proc->priority, 'proc_planned_completion_date' => $proc->planned_completion_date ? date('Y-m-d', strtotime($proc->planned_completion_date)) : '', 'proc_production_date' => $proc->production_date ? date('Y-m-d', strtotime($proc->production_date)) : '', 'proc_completion_date' => $proc->completion_date ? date('Y-m-d', strtotime($proc->completion_date)) : ''); } } } //debug( $results ); render_with_layout('misc.php', 'Urgent/list_group_by_proc.php', compact('results')); }
function stat_staff_unsubmitted_work($staff_id) { $staff = Staff::find_by_id($staff_id); $results = Work::get_staff_unsubmitted_works($staff); $table_title = '操作者未交验工时明细'; render_with_layout('misc.php', 'Statistics/work/stat_staff_unsubmitted_work.php', compact('results', 'table_title')); }
function auto_cal_proc_planned_completion_date($start_date, $end_date) { if (!has_perm(2, 4)) { exit; } $procs = Process::find('all', array('conditions' => array(" is_done = ? AND ( planned_completion_date is NULL OR planned_completion_date = 0 ) AND takt_time > 0 AND production_date >= ? AND production_date <= ?", 0, $start_date, $end_date))); foreach ($procs as $proc) { $cycle = cal_proc_production_cycle($proc); $proc->cycle = $cycle; $proc->planned_completion_date = cal_proc_planned_completion_date($proc->production_date, $cycle); $proc->save(); } render_with_layout('misc.php', 'Misc/auto_cal_proc_planned_completion_date.php', array('count' => count($procs))); }
function done_but_empty_return_date() { $parts = Part::find('all', array('conditions' => array(" is_done = 1 AND return_date=0 "))); $results = array(); foreach ($parts as $part) { $results[] = array('num' => $part->num, 'name' => $part->name, 'count' => $part->count, 'completion_date' => $part->completion_date ? date('Y-m-d', strtotime($part->completion_date)) : '', 'work_hours' => get_total_work_hours_and_prices($part->processes)['part_work_hours']); } render_with_layout('misc.php', 'Parts/empty_return_date.php', compact('results')); }
function render($template, $data = array()) { render_with_layout('default.php', $template, $data); }
$app->map('/lib/images/upload/file/:file_id', 'check_logged', array('\\Controller\\Images', 'upload_for_file'))->via('GET', 'POST'); // Unit 工序 $app->get('/lib/units/:parent_file_id', 'check_logged', array('\\Controller\\Units', 'index')); $app->post('/lib/units/add/:parent_file_id', 'check_logged', array('\\Controller\\Units', 'add')); $app->post('/lib/units/edit/:unit_id', 'check_logged', array('\\Controller\\Units', 'edit')); $app->get('/lib/units/del/:unit_id', 'check_logged', array('\\Controller\\Units', 'del')); $app->get('/lib/units/view/:unit_id', 'check_logged', array('\\Controller\\Units', 'view')); $app->map('/lib/images/upload/unit/:unit_id', 'check_logged', array('\\Controller\\Images', 'upload_for_unit'))->via('GET', 'POST'); // Search $app->get('/lib/search/files/name/:file_name', 'check_logged', array('\\Controller\\Files', 'search_by_name')); $app->get('/lib/search/files/grpahic_num/:grpahic_num', 'check_logged', array('\\Controller\\Files', 'search_by_graphic_num')); //$app->get('/lib/files/:file_id','check_logged',array()); $app->get('/export', function () { $parts = array(); $works = \Model\Work::find('all', array('conditions' => " DATE_FORMAT( `completion_date` , '%Y-%m-%d' ) < DATE_FORMAT( `check_date` , '%Y-%m-%d' ) ")); foreach ($works as $work) { if (!isset($parts[$work->process->part->id])) { $parts[$work->process->part->id] = array('零件名称' => $work->process->part->name, '零件编号' => $work->process->part->num, 'procs' => array()); } if (!isset($parts[$work->process->part->id]['procs'][$work->process->id])) { $parts[$work->process->part->id]['procs'][$work->process->id] = array('工序序号' => $work->process->priority, '工序名称' => get_proc_name($work->process->name), 'works' => array()); } $parts[$work->process->part->id]['procs'][$work->process->id]['works'][] = array('操作者' => $work->staff->name); } debug($parts); }); // $app->get('/proc/auto_cal_planned_completion_date_form', 'check_logged', function () { render_with_layout('misc.php', 'Misc/auto_cal_proc_planned_completion_date_form.php'); }); $app->get('/proc/auto_cal_planned_completion_date/:start_date/:end_date', 'check_logged', array('\\Controller\\Misc', 'auto_cal_proc_planned_completion_date'));