下载Docusign Signed File,但文件数据已加密

时间:2017-09-18 09:45:53

标签: docusignapi

当我尝试下载DocuSign签名文件时,它正在下载但是 问题是该文件有一些下拉列表和文本框,在下载文件中,下拉列表和文本框显示加密数据而不是真实填充数据,还有一个问题是,在文档完成后,我收到了签名文件我的电子邮件,但所选的下拉值重叠在以下文本框上,并且签名的pdf变得不可读。 下载文件的代码就像这样

// read how many documents are in the envelope
int docCount = docsList.EnvelopeDocuments.Count;
string filePath = null;
FileStream fs = null;

// loop through the envelope's documents and download each doc
for (int i = 0; i < docCount; i++)
{
    // GetDocument() API call returns a MemoryStream
    MemoryStream docStream = (MemoryStream)envelopesApi.GetDocument(accountId, envelopeId, docsList.EnvelopeDocuments[i].DocumentId);
    // let's save the document to local file system
    filePath = Path.GetTempPath() + Path.GetRandomFileName() + ".pdf";
    fs = new FileStream(filePath, FileMode.Create);
    docStream.Seek(0, SeekOrigin.Begin);
    docStream.CopyTo(fs);
    fs.Close();
    Console.WriteLine("Envelope Document {0} has been downloaded to:  {1}", i, filePath);
}

但下载的文件看起来像加密数据 enter image description here

这是我在完成文件后通过电子邮件收到的以下文件,第一栏是下拉选择值重叠 enter image description here

这是信封请求的创建方式

EnvelopeDefinition envDef = new EnvelopeDefinition();
envDef.EmailSubject = _objLOA.Subject;
envDef.EmailBlurb = _objLOA.EmailBody;
string recipientEmail = _objLOA.ToEmail;
if(string.IsNullOrEmpty(_objLOA.RecipientName))
{
    _objLOA.RecipientName = "Animesh";
}
string recipientName = _objLOA.RecipientName;
string templateRoleName = "Customer";
string TemplateId = "xxxxxx";

// assign recipient to template role by setting name, email, and role name.  Note that the
// template role name must match the placeholder role name saved in your account template.  
TemplateRole tRole = new TemplateRole();

var dropdownItems1 = new List<ListItem>();
var dropdownItems2 = new List<ListItem>();
var dropdownItems3 = new List<ListItem>();
var dropdownItems4 = new List<ListItem>();
var dropdownItems5 = new List<ListItem>();
var dropdownItems6 = new List<ListItem>();
var dropdownItems7 = new List<ListItem>();
var dropdownItems8 = new List<ListItem>();
var dropdownItems9 = new List<ListItem>();
var dropdownItems10 = new List<ListItem>();

dropdownItems1.Add(new ListItem()
{
    Text = "Select",
    Value = "-1",
    Selected = "true"
});
dropdownItems2.Add(new ListItem()
{
    Text = "Select",
    Value = "-1",
    Selected = "true"
});
dropdownItems3.Add(new ListItem()
{
    Text = "Select",
    Value = "-1",
    Selected = "true"
});
dropdownItems4.Add(new ListItem()
{
    Text = "Select",
    Value = "-1",
    Selected = "true"
}); 
dropdownItems5.Add(new ListItem()
{
    Text = "Select",
    Value = "-1",
    Selected = "true"
});
dropdownItems6.Add(new ListItem()
{
    Text = "Select",
    Value = "-1",
    Selected = "true"
});
dropdownItems7.Add(new ListItem()
{
    Text = "Select",
    Value = "-1",
    Selected = "true"
});
dropdownItems8.Add(new ListItem()
{
    Text = "Select",
    Value = "-1",
    Selected = "true"
});
dropdownItems9.Add(new ListItem()
{
    Text = "Select",
    Value = "-1",
    Selected = "true"
});
dropdownItems10.Add(new ListItem()
{
    Text = "Select",
    Value = "-1",
    Selected = "true"
});
foreach (Utility itemUtility in _objutilityList)
{
    dropdownItems1.Add(new ListItem()
    {
        Text = itemUtility.Name,
        Value = itemUtility.Id.ToString()

    });
    dropdownItems2.Add(new ListItem()
    {
        Text = itemUtility.Name,
        Value = itemUtility.Id.ToString()

    });
    dropdownItems3.Add(new ListItem()
    {
        Text = itemUtility.Name,
        Value = itemUtility.Id.ToString()

    });
    dropdownItems4.Add(new ListItem()
    {
        Text = itemUtility.Name,
        Value = itemUtility.Id.ToString()

    });
    dropdownItems5.Add(new ListItem()
    {
        Text = itemUtility.Name,
        Value = itemUtility.Id.ToString()

    });
    dropdownItems6.Add(new ListItem()
    {
        Text = itemUtility.Name,
        Value = itemUtility.Id.ToString()

    });
    dropdownItems7.Add(new ListItem()
    {
        Text = itemUtility.Name,
        Value = itemUtility.Id.ToString()

    });
    dropdownItems8.Add(new ListItem()
    {
        Text = itemUtility.Name,
        Value = itemUtility.Id.ToString()

    });
    dropdownItems9.Add(new ListItem()
    {
        Text = itemUtility.Name,
        Value = itemUtility.Id.ToString()

    });
    dropdownItems10.Add(new ListItem()
    {
        Text = itemUtility.Name,
        Value = itemUtility.Id.ToString()

    });
}
List<Text> _listText = new List<Text>();              
int rowNumber = 1;

foreach(LOACustomerData _loaresponseitem in _objLOA.LOACustomerData)
{

    Text itemTextESI = new Text();
    Text itemTextAddress = new Text();                           
    itemTextESI.TabLabel = "txtESI" + rowNumber;
    itemTextESI.OriginalValue = _loaresponseitem.AccountNumber;
    itemTextESI.Value = _loaresponseitem.AccountNumber;

    itemTextAddress.TabLabel = "txtServiceAddress" + rowNumber;
    itemTextAddress.OriginalValue = _loaresponseitem.ServiceAddress;
    itemTextAddress.Value = _loaresponseitem.ServiceAddress;

    _listText.Add(itemTextAddress);
    _listText.Add(itemTextESI);
    if (rowNumber == 1)
    {
        ListItem item = dropdownItems1.Find(x => x.Value == _loaresponseitem.UtilityId.ToString());
        if(item!=null)
            item.Selected = "true";
    }
    else if (rowNumber == 2)
    {
        dropdownItems2.Find(x => x.Value == "-1").Selected = "false";
        dropdownItems2.Find(x => x.Value == _loaresponseitem.UtilityId.ToString()).Selected = "true";
    }
    else if (rowNumber == 3)
        dropdownItems3.Find(x => x.Value == _loaresponseitem.UtilityId.ToString()).Selected = "true";
    else if (rowNumber == 4)
        dropdownItems4.Find(x => x.Value == _loaresponseitem.UtilityId.ToString()).Selected = "true";
    else if (rowNumber == 5)
        dropdownItems5.Find(x => x.Value == _loaresponseitem.UtilityId.ToString()).Selected = "true";
    else if (rowNumber == 6)
        dropdownItems6.Find(x => x.Value == _loaresponseitem.UtilityId.ToString()).Selected = "true";
    else if (rowNumber == 7)
        dropdownItems7.Find(x => x.Value == _loaresponseitem.UtilityId.ToString()).Selected = "true";
    else if (rowNumber == 8)
        dropdownItems8.Find(x => x.Value == _loaresponseitem.UtilityId.ToString()).Selected = "true";
    else if (rowNumber == 9)
        dropdownItems9.Find(x => x.Value == _loaresponseitem.UtilityId.ToString()).Selected = "true";
    else if (rowNumber == 10)
        dropdownItems10.Find(x => x.Value == _loaresponseitem.UtilityId.ToString()).Selected = "true";

    rowNumber++;
    if (rowNumber > 10)
        break;
}




tRole.Tabs = new Tabs()
{
  TextTabs = _listText,
  ListTabs = new List<List>()
  {
    new List(){ TabLabel = "ddlUtility1", ListItems = dropdownItems1 },      
    new List(){ TabLabel = "ddlUtility2", ListItems = dropdownItems2 },
    new List(){ TabLabel = "ddlUtility3", ListItems = dropdownItems3 },
    new List(){ TabLabel = "ddlUtility4", ListItems = dropdownItems4 },
    new List(){ TabLabel = "ddlUtility5", ListItems = dropdownItems5 },
    new List(){ TabLabel = "ddlUtility6", ListItems = dropdownItems6 },
    new List(){ TabLabel = "ddlUtility7", ListItems = dropdownItems7 },
    new List(){ TabLabel = "ddlUtility8", ListItems = dropdownItems8 },
    new List(){ TabLabel = "ddlUtility9", ListItems = dropdownItems9 },
    new List(){ TabLabel = "ddlUtility10", ListItems = dropdownItems10 }
  }
};
tRole.Email = recipientEmail;
tRole.Name = recipientName;
tRole.RoleName = templateRoleName;
List<TemplateRole> rolesList = new List<TemplateRole>() { tRole };
envDef.TemplateRoles = rolesList;
envDef.TemplateId = TemplateId;
envDef.Status = "sent";
EnvelopesApi envelopesApi = new EnvelopesApi(cfi);
EnvelopeSummary envelopeSummary = envelopesApi.CreateEnvelope(accountID, envDef);

0 个答案:

没有答案