xj qian
2024-06-25 58c129e8f21f79396a822eaeadd78edf281b52a0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#pragma once
 
#include "kbase.hpp"
#include "kxml.hpp"
namespace Hxsoft{ namespace XFrame
{
    class   IXAServer
    {
    public:
        //读取开发的对象,pObject should in( 'xpage','entity','sheet','workflow','worknode','xquery','xaction'
        static int GetDevObject(LPCTSTR pStrServer,LPCTSTR pObject,LPCTSTR pObjGuid, KXMLDOMDocument&xml);
        static int GetDevObject(ITrans * pTrans,LPCTSTR pObject,LPCTSTR pObjGuid, KXMLDOMDocument&xml);
        int GetDevObject(LPCTSTR pObject,LPCTSTR pObjGuid, KXMLDOMDocument &xml);
    
    public:
        //执行服务命令
        static LPTSTR ProcessCmd(LPCTSTR pStrServer,LPCTSTR pStrCmd,LPCTSTR pExtStr, bool needlogin=false);
        static int ProcessCmd(LPCTSTR pStrServer,LPCTSTR pStrCmd,LPCTSTR pExtStr,BYTE * &pData,int &len);
        static int ProcessCmd(ITrans * pTrans,LPCTSTR pStrCmd,LPCTSTR pExtStr,BYTE * &pData,int &len);
        int ProcessCmd(LPCTSTR pStrCmd,LPCTSTR pExtStr,BYTE * &pData,int &len);
        int ProcessCmd(LPCTSTR pStrServer,LPCTSTR pStrCmd,LPCTSTR pExtStr,BYTE * &pData,int &len, HWND hWnd);
        //执行服务命令并装载到xml对象中
        static int FetchXml(LPCTSTR pStrServer,LPCTSTR pStrCmd,LPCTSTR pExtStr,KXMLDOMDocument &xml);
        static int FetchXml(ITrans * pTrans,LPCTSTR pStrCmd,LPCTSTR pExtStr,KXMLDOMDocument &xml);
        int FetchXml(LPCTSTR pStrCmd,LPCTSTR pExtStr,KXMLDOMDocument &xml);
    
    public:
        //执行服务命令并装载到xml对象中
        static int LoadUrl(LPCTSTR pStrServer,LPCTSTR pUrl,LPCTSTR pExtStr,BYTE * &pData,int &len,bool bCache=true);
        static int LoadUrl(ITrans * pTrans,LPCTSTR pUrl,LPCTSTR pExtStr,BYTE * &pData,int &len,bool bCache=true);
        int LoadUrl(LPCTSTR pUrl,LPCTSTR pExtStr,BYTE * &pData,int &len,bool bCache=true);
        //执行服务命令并装载到xml对象中
        static int LoadUrl(LPCTSTR pStrServer,LPCTSTR pUrl,LPCTSTR pExtStr,KXMLDOMDocument &xml);
        static int LoadUrl(ITrans * pTrans,LPCTSTR pUrl,LPCTSTR pExtStr,KXMLDOMDocument &xml);
        int LoadUrl(LPCTSTR pUrl,LPCTSTR pExtStr,KXMLDOMDocument &xml);
        //读取XPage
        static int LoadXPage(LPCTSTR pStrServer,LPCTSTR pStrUrl,KXMLDOMDocument &xml);
        static int LoadXPage(ITrans * pTrans,LPCTSTR pStrUrl,KXMLDOMDocument &xml);
        int LoadXPage(LPCTSTR pStrUrl,KXMLDOMDocument &xml);
    
    public:
        //执行XQuery命令
        static int ExecXQuery(LPCTSTR pStrServer,LPCTSTR pObjGuid,LPCTSTR pArgs,BYTE * &pData,int &len);
        static int ExecXQuery(LPCTSTR pStrServer,LPCTSTR pObjGuid,LPCTSTR pArgs,KXMLDOMDocument &xml);
        static int ExecXAction(LPCTSTR pStrServer,LPCTSTR pObjGuid,LPCTSTR pArgs,BYTE * &pData,int &len);
        static int ExecXAction(LPCTSTR pStrServer,LPCTSTR pObjGuid,LPCTSTR pArgs,KXMLDOMDocument &xml);
 
        static int ExecXQuery(LPCTSTR pStrServer,LPCTSTR pObjGuid,LPCTSTR pArgs,int &val);
        static int ExecXAction(LPCTSTR pStrServer,LPCTSTR pObjGuid,LPCTSTR pArgs);
 
        static int ExecXQuery(ITrans * pTrans,LPCTSTR pObjGuid,LPCTSTR pArgs,BYTE * &pData,int &len);
        static int ExecXQuery(ITrans * pTrans,LPCTSTR pObjGuid,LPCTSTR pArgs,KXMLDOMDocument &xml);
        static int ExecXAction(ITrans * pTrans,LPCTSTR pObjGuid,LPCTSTR pArgs,BYTE * &pData,int &len);
        static int ExecXAction(ITrans * pTrans,LPCTSTR pObjGuid,LPCTSTR pArgs,KXMLDOMDocument &xml);
 
        int ExecXQuery(LPCTSTR pObjGuid,LPCTSTR pArgs,BYTE * &pData,int &len);
        int ExecXQuery(LPCTSTR pObjGuid,LPCTSTR pArgs,KXMLDOMDocument &xml);
        int ExecXAction(LPCTSTR pObjGuid,LPCTSTR pArgs,BYTE * &pData,int &len);
        int ExecXAction(LPCTSTR pObjGuid,LPCTSTR pArgs,KXMLDOMDocument &xml);
 
        static LPCTSTR ExecArgs(LPCTSTR pArgs);
    public:
        //重新连接
        static int ReConnect(LPCTSTR pStrServer);
        static int ReConnect(ITrans * pTrans);
        int ReConnect();
    public:
        //得到用户
        static LPCTSTR GetUserNo();
        static LPCTSTR GetVersion();
        static LPWSTR GetComputerNameEx();
        static LPWSTR GetAppPath();
        static int SetUID(LPWSTR uid);
        static LPWSTR GetUID();
        static LPWSTR GetMacAddress();
        static LPWSTR GetIpAddress();
        static LPWSTR GetConnectId();
        static int SetLoginLog(LPCTSTR pStrServer,LPWSTR pStatus);        
        static void SetDataToClip(LPCTSTR DataStr);
 
    public:
        //设置交易对象
        ITrans * m_pTrans;
        int SetTrans(ITrans *);
        ITrans * GetTrans();
 
        static int UploadEx(LPTSTR pUri,LPTSTR pName,HWND m_hWnd,LPTSTR pSource=NULL,BOOL bCompress=false);
        static int Upload(LPTSTR pUri,LPTSTR pName,HWND m_hWnd,LPTSTR pSource=NULL,BOOL bCompress=false);
        static int Upload(LPTSTR pUri,LPTSTR pName,LPTSTR pPath,HWND m_hWnd,LPTSTR pSource=NULL,BOOL bCompress=false);
 
        static int FileCopy(LPTSTR pUri,LPTSTR pName,LPTSTR pUri1,LPTSTR pName1);
        static LPTSTR UploadFile(LPTSTR pUri,LPTSTR pName,HWND m_hWnd,LPTSTR pSource,BOOL bCompress);
        static int __DeleteFile(LPTSTR pName);
        static int __CreateDirectory(LPTSTR pName);
        static int DownLoadFile(LPCTSTR pStrServer,LPCTSTR pUrl,LPCTSTR pExt,LPTSTR pName=NULL);
 
        static int UploadData(LPTSTR pUri,LPTSTR pName,LPTSTR pData);
    };
}}