Пример #1
0
bool CWizApi::uploadDocument(const WIZDOCUMENTDATAEX& data)
{
    Q_ASSERT(data.nObjectPart != 0);

    int nParts = data.nObjectPart;
    bool bInfo = (nParts & WIZKM_XMKRPC_DOCUMENT_PART_INFO) ? true : false;
    bool bParam = (nParts & WIZKM_XMKRPC_DOCUMENT_PART_PARAM) ? true : false;
    bool bData = (nParts & WIZKM_XMKRPC_DOCUMENT_PART_DATA) ? true : false;

    m_currentDocument = data;

    m_db->GetDocumentTags(m_currentDocument.strGUID, m_currentDocument.arrayTagGUID);
    m_db->GetDocumentParams(m_currentDocument.strGUID, m_currentDocument.arrayParam);

    if (bData) {
        if (!m_db->LoadDocumentData(m_currentDocument.strGUID, m_currentDocument.arrayData)) {
            QString info = data.strTitle;
            Q_EMIT processErrorLog(tr("could not load document data: ") + info);

            //skip
            onUploadDocument(data);
            return false;
        }

        WIZOBJECTDATA obj;
        obj.strObjectGUID = m_currentDocument.strGUID;
        obj.strDisplayName = m_currentDocument.strTitle;
        obj.eObjectType = wizobjectDocument;
        obj.arrayData = m_currentDocument.arrayData;

        return uploadObjectData(obj);
    } else {
        return callDocumentPostData(m_currentDocument);
    }
}
Пример #2
0
bool CWizApi::uploadDocument(const WIZDOCUMENTDATAEX& data)
{
    m_currentDocument = data;

    int nParts = m_currentDocument.nObjectPart;
    Q_ASSERT(0 != nParts);
    bool bData = (nParts & WIZKM_XMKRPC_DOCUMENT_PART_DATA) ? true : false;

    if (bData) {
        if (!m_db.LoadDocumentData(m_currentDocument.strGUID, m_currentDocument.arrayData)) {
            //skip this document
            QString info = data.strTitle;
            Q_EMIT processErrorLog(tr("could not load document data: ") + info);
            onUploadDocument(data);   //skip
            return false;
        }

        WIZOBJECTDATA obj;
        obj.strObjectGUID = m_currentDocument.strGUID;
        obj.strDisplayName = m_currentDocument.strTitle;
        obj.eObjectType = wizobjectDocument;
        obj.arrayData = m_currentDocument.arrayData;

        return uploadObjectData(obj);
    } else {
        return callDocumentPostData(m_currentDocument);
    }
}
Пример #3
0
void CWizKbSync::onQueryDocumentInfo(const WIZDOCUMENTDATABASE& data)
{
    int nParts = calDocumentParts(data, m_currentUploadDocument);
    if (0 == nParts) {
        onUploadDocument(m_currentUploadDocument);
    } else {
        m_currentUploadDocument.nObjectPart = nParts;
        uploadDocument(m_currentUploadDocument);
    }
}
Пример #4
0
void CWizApi::onDocumentPostData(const WIZDOCUMENTDATAEX& data)
{
    //Q_ASSERT(data.strGUID == m_currentDocument.strGUID);
    onUploadDocument(m_currentDocument);
}