<?php
namespace model\import;

use \model;
use \model\alioss;
use model\pro\pro;
use model\pro\cate;

class uploudProCateFile extends model
{
     public function uploadCheck($filecount, $reqfilename, $reqfilesize, $uploadID, $extname, $category, $item, $params)
    {
        return true;
    }

    public function uploadOssGet($fileid, $zipFilename, $dir, $filebase, $extname, $category, $item, $params)
    {
        $cateId = $params['cateId'];
        if(empty($cateId)) {
			throw new \Exception ( '品类ID缺失' );
		}
        // 初始化OSS客户端
        $oss = new alioss();
        // 上传到OSS
        $fullObjectName = $dir.'/'.$filebase.'.'.$extname;
        $localPath  = \mvc::$cfg['dir']['files'].'/'.$dir.'/'.$filebase.'.'.$extname;
        $uploadSuccess = $oss->putObjectWithVersioning($fullObjectName, $localPath);

        if (!$uploadSuccess) {
            return exitJson(-1, '上传到OSS失败');
        }
        if(!$uploadSuccess['success']) {
            return exitJson(-1, 'OSS返回错误' . json_encode($uploadSuccess));
        }
        // 更新表files记录，设置isOss=1和ossPath
        $this->db->update('files',['file_isoss'=>1,'file_oss_path'=>$fullObjectName,'file_oss_verid'=>$uploadSuccess['versionId']],['fileid'=>$fileid]);
        //把本地原始图片删掉
        @unlink($localPath);
        // 保存到pro_cate_file表
        $proCate = new cate();
        $proCate->saveCateFile($cateId,$fileid,$extname);
    }

    // 普通文件上传
    public function uploadGet($fileid, $zipFilename, $dir, $filebase, $extname, $category, $item, $params)
    {
        $cateId = $params['cateId'];
        if(empty($cateId)) {
			throw new \Exception ( '品类ID缺失' );
		}
        // 保存到pro_cate_file表
        $proCate = new cate();
        $proCate->saveCateFile($cateId,$fileid,$extname);
    }
}