fetch($params['file_name'].'_sdf',$sdfContents);
$sdfContents = unserialize( $sdfContents );
$o = app::get($params['app'])->model($params['mdl']);
kernel::log('model fjdisajdsk');
kernel::log('model fjdisajdsk = '.$params['mdl'].'fdsadg'.$params['app']);
$i = 0;
while( $v = array_shift( $sdfContents ) ){
kernel::log('mofdsadfa = '.$v['store']);
if(!empty($v['store'])){
$v['product'][0]['store'] = $v['store'];
}
$o->save($v);
if( ++$i == 100 ){
base_kvstore::instance($params['app'].'_'.$params['mdl'])->store($params['file_name'].'_sdf',serialize( $sdfContents ));
return 1;
break;
}
}
base_kvstore::instance($params['app'].'_'.$params['mdl'])->delete($params['file_name']);
base_kvstore::instance($params['app'].'_'.$params['mdl'])->delete($params['file_name'].'_sdf');
base_kvstore::instance($params['app'].'_'.$params['mdl'])->delete($params['file_name'].'_error');
return 0;
}
function turn_to_sdf(&$contents,&$cursor_id,$newarray,$params){
reset($contents);
$msgList = array();
$o = app::get($params['app'])->model($params['mdl']);//omr_model_orders
$oIo = kernel::servicelist('omecsv_io');
foreach( $oIo as $aIo ){
if( $aIo->io_type_name == $params['file_type'] ){
$importType = $aIo;
break;
}
}
unset($oIo);
$objFunc = 'prepared_import_csv_obj';//prepared_import_csv_obj
$rowFunc = 'prepared_import_csv_row';//prepared_import_csv_row
$i = 0;
$tmpl = array();
$tTmpl = array();
$gTitle = array();
$data = array();
$tObjContent = array();
$errorObj = false;
$doAllNum = count($contents);
echo "";
ob_flush();
flush();
$importType->prepared_import( $params['app'],$params['mdl'] );//$importType->prepared_import(ome,orders)
$doRowNum = 0;
$doFailNum = 0;
while( true ){
if( !current($contents) && is_array($data['contents']) && current( $data['contents'] )){
echo "";
ob_flush();
flush();
$saveData = $o->$objFunc( $data,$mark,$tmpl,$msg);
echo "";
if( $saveData === false ){
if( $msg['error'] ) {
$msgList['error'][] = $msg['error'];
echo '';;
}
return $msgList;
}
ob_flush();
flush();
if( $saveData )
$sdfContents[] = $saveData;
if( $mark )
eval('$data["'.implode('"]["',explode('/',$mark)).'"] = array();');
}
$curContent = array_shift( $contents );
if( !$curContent ) break;
$msg = array();
$rowData = $o->$rowFunc( $curContent,$data['title'],$tmpl,$mark,$newObjFlag,$msg );
$doRowNum ++;
echo "";
echo "";
if( $msg['error'] ) {
$msgList['error'][] = $msg['error'];
echo '';
}
if( $msg['warning'] ){
echo '';;
}
ob_flush();
flush();
if( $newObjFlag ){
$tObjContent = array();
if( $mark != 'title' ){
$msg = [];
$saveData = $o->$objFunc( $data,$mark,$tmpl,$msg);
if($msg && $msg['error'] ) {
$msgList['error'][] = $msg['error'];
echo '';
}
if($msg && $msg['warning'] ){
echo '';;
}
ob_flush();
flush();
if( $saveData === false ){
return $msgList;
}
if( $saveData )
$sdfContents[] = $saveData;
if( $mark )
eval('$data["'.implode('"]["',explode('/',$mark)).'"] = array();');
}else{
$tTmpl = $rowData;
$gTitle = $curContent;
}
if( $rowData === false ){
return $msgList;
}
}
if( $mark ){
if( $mark == 'title' )
eval('$data["'.implode('"]["',explode('/',$mark)).'"] = $rowData;');
else
eval('$data["'.implode('"]["',explode('/',$mark)).'"][] = $rowData;');
}
}
return $msgList;
}
function get_import_type($file_type){
}
}