啊鑫
2024-07-11 afbf8700d137710713db61955879d0f5acb73738
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
#region
 
using System;
using System.Data;
using CSFrameworkV5.Common;
using CSFrameworkV5.Core;
using CSFrameworkV5.Interfaces;
using CSFrameworkV5.Models;
using CSFrameworkV5.WCFContract;
 
#endregion
 
namespace CSFrameworkV5.WebRef.CommonService
{
    public class WCF_OperateLog : WCF_Base<ICommonService>, IBridge_Log
    {
        public void ClearAll()
        {
            Excute(client =>
            {
                var loginTicket =
                    WebServiceSecurity.EncryptLoginer(Loginer.CurrentUser);
                client.Log_ClearAll(loginTicket);
            });
        }
 
        public void ClearLog(DateTime beginDate, DateTime endDate)
        {
            Excute(client =>
            {
                var loginTicket =
                    WebServiceSecurity.EncryptLoginer(Loginer.CurrentUser);
                client.Log_ClearLog(loginTicket, beginDate, endDate);
            });
        }
 
        public void ClearLog(string user, DateTime beginDate, DateTime endDate)
        {
            Excute(client =>
            {
                var loginTicket =
                    WebServiceSecurity.EncryptLoginer(Loginer.CurrentUser);
                client.Log_ClearLogByUser(loginTicket, user, beginDate,
                    endDate);
            });
        }
 
        public int DeleteLoginLog(string isids)
        {
            return Excute(client =>
            {
                var loginTicket =
                    WebServiceSecurity.EncryptLoginer(Loginer.CurrentUser);
                return client.Log_DeleteLoginLog(loginTicket, isids);
            });
        }
 
        public int DeleteOperateLog(string isids)
        {
            return Excute(client =>
            {
                var loginTicket =
                    WebServiceSecurity.EncryptLoginer(Loginer.CurrentUser);
                return client.Log_DeleteOperateLog(loginTicket, isids);
            });
        }
 
        public DataSet GetDynamicReport(string[] years)
        {
            return Excute(client =>
            {
                var loginTicket =
                    WebServiceSecurity.EncryptLoginer(Loginer.CurrentUser);
                return client.Log_GetDynamicReport(loginTicket, years);
            });
        }
 
        public DataTable QueryLoginLog(string loginType, string loginUser,
            string loginIP, string loginMAC,
            DateTime LoginD1, DateTime LoginD2)
        {
            return Excute(client =>
            {
                var loginTicket =
                    WebServiceSecurity.EncryptLoginer(Loginer.CurrentUser);
                var bs = client.Log_QueryLoginLog(loginTicket, loginType,
                    loginUser, loginIP, loginMAC, LoginD1,
                    LoginD2);
                return ZipTools.DecompressionDataSet(bs).Tables[0];
            });
        }
 
        public DataTable QueryOperateLog(string Content, DateTime Date1,
            DateTime Date2, string OperateType,
            string User)
        {
            return Excute(client =>
            {
                var loginTicket =
                    WebServiceSecurity.EncryptLoginer(Loginer.CurrentUser);
                var bs = client.Log_QueryOperateLog(loginTicket, Content, Date1,
                    Date2, OperateType, User);
                return ZipTools.DecompressionDataSet(bs).Tables[0];
            });
        }
 
        public void WriteLog(object content)
        {
            try
            {
                Excute(client =>
                {
                    var validationTicket = WebServiceSecurity.GetLoginTicket();
 
                    if (content is string)
                        client.Log_WriteLogString(validationTicket,
                            ConvertEx.ToString(content));
 
                    if (content is sys_LogOperation)
                        client.Log_WriteLogObject(validationTicket,
                            content as sys_LogOperation);
                });
            }
            catch (Exception ex)
            {
                //特殊处理:当通信通道出错时会抛出异常并试图写入系统日志,因此调用此方法会再次抛出异常
                //若出现异常,不写日志,不做任何处理
            }
        }
    }
}