Example #1
0
 function copy_parts($target_id, $id)
 {
     $part = Part::find_by_id($id);
     // 复制零件节点
     $item['num'] = str_replace('*', '', $part->num) . '-' . rand(0, 100) . '*';
     $item['name'] = $part->name;
     $item['graphic_num'] = $part->graphic_num;
     $item['count'] = 0;
     //$part->count;
     $item['planned_completion_date'] = '';
     //date('Y-m-d');
     $item['feeding_price'] = 0;
     $item['production_date'] = '';
     //date('Y-m-d');	// 零件的投产日期
     $item['stuff'] = $part->stuff;
     $item['roughcast'] = $part->roughcast;
     $item['remark'] = $part->remark;
     $item['production_id'] = $target_id;
     $item['user_id'] = $_SESSION['user_id'];
     $_part = Part::create($item);
     // 复制该零件包含的所有工序
     $procs = $part->processes;
     if (!empty($procs)) {
         foreach ($procs as $proc) {
             // 取值
             $item = array();
             $item['priority'] = $proc->priority;
             $item['name'] = $proc->name;
             $item['content'] = $proc->content;
             $item['part_id'] = $_part->id;
             $item['takt_time'] = '';
             $item['preparation_time'] = '';
             $item['price'] = '';
             $item['production_date'] = '';
             //date('Y-m-d');
             $item['planned_completion_date'] = '';
             //date('Y-m-d');
             $item['remark'] = '';
             $item['is_done'] = 0;
             $item['count'] = 0;
             //$_part->count;
             $item['count_done'] = 0;
             $item['user_id'] = $_SESSION['user_id'];
             // 保存节点
             $_proc = Process::create($item);
             $_proc->save();
         }
     }
     // 创建Part节点
     $node = array('id' => $_part->id, 'name' => $_part->num . ' ' . $_part->name . ' (' . count($procs) . ')', 'font' => array('color' => $_part->is_done ? 'green' : 'black'), 'isParent' => count($procs) == 0 ? false : true, 'type' => 'part', 'icon' => get_path('/webroot/css/img/diy/3.png', true));
     echo json_encode($node);
 }