protected function get_id() { $tempObj = new Model('t_temp'); $res = $tempObj->lock(true)->find(); if ($res == null) { $temp = 0; $data['v_id'] = '1'; $tempObj->add($data); } else { $condition['t_id'] = $res['t_id']; $data['v_id'] = (int) $res['v_id'] + 1; $tempObj->where($condition)->save($data); $temp = (int) $res['v_id']; } $t = (int) $temp + 1; if ($t < 10) { return '000' . $t; } elseif ($t >= 0 && $t < 100) { return '00' . $t; } elseif ($t >= 100 && $t < 1000) { return '0' . $t; } elseif ($t >= 1000) { return $t; } }