using System;
|
using System.Collections.Generic;
|
using System.IO;
|
using System.Linq;
|
using System.Net;
|
using System.Text;
|
using IStation.Bimface;
|
|
namespace IStation
|
{
|
public sealed partial class BimfaceClient
|
{
|
/// <summary>
|
/// 删除文件
|
/// </summary>
|
public bool DeleteFile(long FileID, eModelIdType ModelType = eModelIdType.fileId)
|
{
|
GetAccessToken();
|
var preurl = string.Empty;
|
switch (ModelType)
|
{
|
case eModelIdType.fileId: preurl = _fileDeleteUrl; break;
|
case eModelIdType.integrateId: preurl = _integrateDeleteUrl; break;
|
case eModelIdType.compareId: preurl = _compareDeleteUrl; break;
|
default: preurl = _fileDeleteUrl; break;
|
}
|
var url = string.Format("{0}?{1}={2}", preurl, ModelType.ToString(), FileID);
|
using (var httpClient = new HttpClient())
|
{
|
httpClient.DefaultRequestHeaders.Add("Method","Delete");
|
var autoHeader = new HttpHeaders().GetBasicAuthorHeader(_accesstoken);
|
httpClient.DefaultRequestHeaders.Add(autoHeader.Key, autoHeader.Value);
|
var response = httpClient.DeleteAsync(url).Result;
|
response.EnsureSuccessStatusCode();
|
var responsetext = response.Content.ReadAsStringAsync().Result;
|
var result = JsonHelper.Json2Object<Result<object>>(responsetext);
|
if (result.code != Constants.Success)
|
{
|
throw new BimfaceException(result.code);
|
}
|
if (result.data != null)
|
return false;
|
if (_viewtokenDic.ContainsKey(FileID))
|
{
|
_viewtokenDic.Remove(FileID);
|
}
|
_expiretime.RemoveViewTokenTime(FileID);
|
return true;
|
}
|
|
|
}
|
|
|
//文件删除URL
|
private const string _fileDeleteUrl = @"https://file.bimface.com/file";
|
//集成模型删除URL
|
private const string _integrateDeleteUrl = @"https://api.bimface.com/integrate";
|
//模型对比删除URL
|
private const string _compareDeleteUrl = @"https://api.bimface.com/v2/compare";
|
|
|
}
|
}
|