username@email.com
2022-01-21 b18a7c8e54b51a5caa400e55cb8cc428c0301a0c
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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CY.IDAL;
using CY.Model;
using AbstractFactory;
using CY.IBaseDAL;
using CY.Infrastructure.DESEncrypt;
using CY.Infrastructure.Query;
namespace CY.BLL
{
    /// <summary>
    /// 会员账户的业务逻辑类
    /// </summary>
    public class Pay_PaymentAccountBLL
    {
        IPay_PaymentAccountDAL _IPay_PaymentAccountDal = null;
        IPay_AccountedRecordDAL _IPay_AccountedRecordDal = null;
        IPay_IncExpRecordDAL _IPay_IncExpRecordDal = null;
 
        /// <summary>
        /// 初始化构造
        /// </summary>
        public Pay_PaymentAccountBLL()
        {
            //获取Pay_PaymentAccount DAL实现
            _IPay_PaymentAccountDal = Factory.GetDALByInterfaceName(DALInterface.IPay_PaymentAccountDAL) as IPay_PaymentAccountDAL;
            _IPay_AccountedRecordDal = Factory.GetDALByInterfaceName(DALInterface.IPay_AccountedRecordDAL) as IPay_AccountedRecordDAL;
            _IPay_IncExpRecordDal = Factory.GetDALByInterfaceName(DALInterface.IPay_IncExpRecordDAL) as IPay_IncExpRecordDAL;
        }
 
        /// <summary>
        /// 修改会员账户
        /// </summary>
        /// <param name="rType"></param>
        /// <returns></returns>
        public bool UpdateModel(CY.Model.Pay_PaymentAccount rType)
        {
            try
            {
                _IPay_PaymentAccountDal.UpdateModel(rType);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return true;
        }
 
        /// <summary>
        /// 获取会员账户
        /// </summary>
        /// <param name="Keyid">会员id</param>
        /// <returns></returns>
        public Pay_PaymentAccount GetModel(Guid MemberId)
        {
            Pay_PaymentAccount result = null;
            try
            {
                result = _IPay_PaymentAccountDal.SelectModleByMemberId(MemberId) as Pay_PaymentAccount;//执行查询
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return result;//返回结果
        }
 
        /// <summary>
        /// 充值
        /// </summary>
        /// <param name="m_Pay_PaymentAccount"></param>
        /// <param name="m_Pay_Request"></param>
        /// <returns></returns>
        public bool RechargeSucces(Pay_PaymentAccount m_Pay_PaymentAccount, CY.Model.Pay.Pay_Request m_Pay_Request, Pay_AccountedRecord m_Pay_AccountedRecord)
        {
            return _IPay_PaymentAccountDal.RechargeSucces(m_Pay_PaymentAccount, m_Pay_Request, m_Pay_AccountedRecord);
        }
 
        /// <summary>
        /// 线下充值
        /// </summary>
        /// <param name="m_Pay_PaymentAccount"></param>
        /// <param name="m_Pay_Request"></param>
        /// <returns></returns>
        public bool RechargeSuccesUnLine(Pay_PaymentAccount m_Pay_PaymentAccount, CY.Model.Pay.Pay_Request m_Pay_Request)
        {
            return _IPay_PaymentAccountDal.RechargeSuccesUnLine(m_Pay_PaymentAccount, m_Pay_Request);
        }
 
        /// <summary>
        /// 提现转账
        /// </summary>
        /// <param name="m_Pay_PaymentAccount"></param>
        /// <param name="m_Pay_Request"></param>
        /// <returns></returns>
        public bool Cashucces(Pay_PaymentAccount m_Pay_PaymentAccount, CY.Model.Pay.Pay_Request m_Pay_Request, Pay_PromotionRecord m_Pay_PromotionRecord)
        {
            return _IPay_PaymentAccountDal.CashSucces(m_Pay_PaymentAccount, m_Pay_Request, m_Pay_PromotionRecord);
        }
 
        /// <summary>
        /// 归并用户缓冲金额并查看账户信息 
        /// </summary>
        /// <param name="menberId">会员编号</param>
        /// <returns></returns>
        public Pay_PaymentAccount MergeBufferMoneyByMemberId(Guid menberId)
        {
            return _IPay_PaymentAccountDal.MergeBufferMoneyByMemberId(menberId);
        }
 
        /// <summary>
        /// 比对密码
        /// </summary>
        /// <param name="submitRule">提交的规则</param>
        /// <param name="submitPwd">提交的密码</param>
        /// <param name="rightPwd">正确的加密密码</param>
        /// <returns></returns>
        public static bool EqualsPwd(string submitRule, string submitPwd, string rightPwd)
        {
            if (string.IsNullOrEmpty(submitRule) || string.IsNullOrEmpty(submitPwd) || string.IsNullOrEmpty(rightPwd)) { return false; } else { }
 
            string pwd = DecodingSubmitPwd(submitRule, submitPwd);//解码提交的密码
            return !string.IsNullOrEmpty(pwd) && rightPwd.Equals(DESEncrypt.Encrypt(pwd));//不为空时加密进行比较并返回比较结果
 
        }
 
        /// <summary>
        /// 比对密码
        /// </summary>
        /// <param name="submitPwd">提交的密码</param>
        /// <param name="rightPwd">正确的加密密码</param>
        /// <returns></returns>
        public static bool EqualsPwd(string submitPwd, string rightPwd)
        {
            if (string.IsNullOrEmpty(submitPwd) || string.IsNullOrEmpty(rightPwd))
            {
                return false;
            }
 
            return !string.IsNullOrEmpty(submitPwd) && rightPwd.Equals(DESEncrypt.Encrypt(submitPwd));//不为空时加密进行比较并返回比较结果
 
        }
 
        /// <summary>
        /// 解码客户端提交密码
        /// </summary>
        /// <param name="submitRule">客户端编码规则</param>
        /// <param name="submitPwd">客户端提交编码密码</param>
        /// <returns></returns>
        private static string DecodingSubmitPwd(string submitRule, string submitPwd)
        {
            submitPwd = submitPwd.Replace(" ", "");
            string[] location = submitRule.Substring(1).Split('.');
            int i = location.Length;
            int? tempIndex = null;
            while (--i > -1)
            {
                tempIndex = CY.Infrastructure.Common.MyConvert.ConvertToInt32(location[i]);
                if (!tempIndex.HasValue)
                    return "";
                else
                    submitPwd = submitPwd.Remove(tempIndex.Value, 1);
            }
            return submitPwd;
        }
 
        /// <summary>
        /// 给会员增加积分或现金(推广信息)
        /// <para>36 买家会员注册费</para> 
        /// <para>393 个人网店注册费</para> 
        /// <para>89 印刷厂商注册费</para> 
        /// <para>391 登录</para> 
        /// <para>38 发布印刷需求</para> 
        /// <para>292 发布需求信息</para> 
        /// <para>86 账户充值</para> 
        /// <para>87 印刷订单</para> 
        /// <para>88 纸张订单</para> 
        /// <para>90 杂志广告费</para> 
        /// <para>392 网站广告费</para> 
        /// <para>91 管理软件费</para> 
        /// <para>92 办公家具订单</para> 
        ///<para> 93 办公电脑设备订单</para> 
        /// <para>94 办公文具订单</para> 
        /// <para>95 其他商城订单</para> 
        /// <para>96 发布求职简历</para> 
        /// <para>290 发布秒杀业务</para> 
        /// <para>291 发布特价信息</para> 
        /// </summary>
        /// <param name="Member_id">使用人会员编号</param>
        /// <param name="SourceTypeId">推广来源类型编号</param>
        /// <param name="Money"></param>
        /// <returns></returns>
        public bool SendPoOrMoToMember(Guid Member_id, int? SourceTypeId, decimal? Money)
        {
            return _IPay_PaymentAccountDal.SendPoOrMoToMember(Member_id, SourceTypeId, Money);
        }
 
        /// <summary>
        /// 根据类型和金额获取积分
        /// <para>36 注册</para> 
        /// <para>38 发布印刷需求</para> 
        /// <para>292 发布需求信息</para> 
        /// <para>86 账户充值</para> 
        /// <para>87 印刷订单</para> 
        /// <para>88 纸张订单</para> 
        /// <para>89 印刷厂商注册费</para> 
        /// <para>90 杂志广告费</para> 
        /// <para>91 管理软件费</para> 
        /// <para>92 办公家具订单</para> 
        ///<para> 93 办公电脑设备订单</para> 
        /// <para>94 办公文具订单</para> 
        /// <para>95 其他商城订单</para> 
        /// <para>96 发布求职简历</para> 
        /// <para>290 发布秒杀业务</para> 
        /// <para>291 发布特价信息</para> 
        /// </summary>
        /// <param name="SourceTypeId"></param>
        /// <param name="Money"></param>
        /// <returns></returns>
        public int? GetScoreBySourceTypeId(int? SourceTypeId, decimal? Money)
        {
            return _IPay_PaymentAccountDal.GetScoreBySourceTypeId(SourceTypeId,Money);
        }
 
        /// <summary>
        /// 获取上周积分排名
        /// </summary>
        /// <param name="rows">条数</param>
        /// <returns></returns>
        public IEnumerable<Pay_PaymentAccount> SelectModleByRows(int? rows)
        {
            return _IPay_PaymentAccountDal.SelectModleByRows(rows);
        }
 
        /// <summary>
        /// 支付公共接口
        /// </summary>
        /// <param name="m_Pay_Request">支付申请</param>
        /// <returns></returns>
        public bool Pay(CY.Model.Pay.Pay_Request m_Pay_Request)
        {
            return _IPay_PaymentAccountDal.Pay(m_Pay_Request);
        }
 
        
    }
}