Example #1
0
 function get_parts_group($start_date, $end_date, $use_dep = '')
 {
     $results = array();
     // 总的累加和
     $results['sum'] = array('work_hours' => 0, 'work_prices' => 0);
     $parts = Part::find('all', array('conditions' => array(' DATE(`return_date`) >= ? AND DATE(`return_date`) <= ? ', $start_date, $end_date)));
     foreach ($parts as $part) {
         // 按领用部门筛选
         if ($use_dep) {
             if ($part->production->use_dep != $use_dep) {
                 continue;
             }
         }
         $sum = get_total_work_hours_and_prices($part->processes);
         $results[$part->production->use_dep]['parts'][] = array('id' => $part->id, 'num' => $part->num, 'name' => $part->name, 'count' => $part->count, 'count_done' => $part->count_done, 'work_hours' => $sum['part_work_hours'], 'work_prices' => $sum['part_work_prices']);
         // 累加
         if (!isset($results[$part->production->use_dep]['sum'])) {
             $results[$part->production->use_dep]['sum'] = array('work_hours' => 0, 'work_prices' => 0);
         }
         // 分组累加
         $results[$part->production->use_dep]['sum']['work_hours'] += $sum['part_work_hours'];
         $results[$part->production->use_dep]['sum']['work_prices'] += $sum['part_work_prices'];
         // 累加所有分组的每一条记录的工时和金额
         $results['sum']['work_hours'] += $sum['part_work_hours'];
         $results['sum']['work_prices'] += $sum['part_work_prices'];
         //debug( $results[$part->production->use_dep]['sum'] );
     }
     return $results;
 }
Example #2
0
 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'));
 }