username@email.com
2025-05-14 99ddfbcecf0fa2881eb3a91028257eef87dab6de
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
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 Integrity_IntegrityCardBLL
    {
        IIntegrity_IntegrityCardDAL _IIntegrity_IntegrityCardDal = null;
        IIntegrity_CreditLevelRuleDAL dal_IIntegrity_CreditLevelRuleDAL = null;
        IIntegrity_CreditGrowRecordDAL dal_IIntegrity_CreditGrowRecordDAL = null;
 
        /// <summary>
        /// 初始化构造
        /// </summary>
        public Integrity_IntegrityCardBLL()
        {
            //获取Integrity_IntegrityCard DAL实现
            _IIntegrity_IntegrityCardDal = Factory.GetDALByInterfaceName(DALInterface.IIntegrity_IntegrityCardDAL) as IIntegrity_IntegrityCardDAL;
            dal_IIntegrity_CreditLevelRuleDAL = Factory.GetDALByInterfaceName(DALInterface.IIntegrity_CreditLevelRuleDAL) as IIntegrity_CreditLevelRuleDAL;
            dal_IIntegrity_CreditGrowRecordDAL = Factory.GetDALByInterfaceName(DALInterface.IIntegrity_CreditGrowRecordDAL) as IIntegrity_CreditGrowRecordDAL;
        }
 
        /// <summary>
        /// 新增诚信名片
        /// </summary>
        /// <param name="rType"></param>
        /// <returns></returns>
        public bool InsertModel(CY.Model.Integrity_IntegrityCard rType)
        {
            try
            {
                _IIntegrity_IntegrityCardDal.InserModel(rType);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return true;
        }
 
        /// <summary>
        /// 修改诚信名片
        /// </summary>
        /// <param name="rType"></param>
        /// <returns></returns>
        public bool UpdateModel(CY.Model.Integrity_IntegrityCard rType)
        {
            try
            {
                _IIntegrity_IntegrityCardDal.UpdateModel(rType);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return true;
        }
 
        /// <summary>
        /// 删除诚信名片
        /// </summary>
        /// <param name="rType"></param>
        /// <returns></returns>
        public bool DeleteModel(CY.Model.Integrity_IntegrityCard rType)
        {
            try
            {
                _IIntegrity_IntegrityCardDal.DeleteModel(rType);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return true;
        }
 
        /// <summary>
        /// 根据会员编号以及类型获取诚信名片
        /// </summary>
        /// <param name="MemberId">会员编号</param>
        /// <param name="RuleType">类型</param>
        /// <returns></returns>
        public Integrity_IntegrityCard SelectListByMemberIdAndRuleType(Guid MemberId, bool RuleType)
        {
            Integrity_IntegrityCard result = null;
            try
            {
                result = _IIntegrity_IntegrityCardDal.SelectListByMemberIdAndRuleType(MemberId, RuleType);//执行查询
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return result;//返回结果
        }
 
        /// <summary>
        /// 根据会员编号以及类型以及评论类型更新诚信名片
        /// </summary>
        /// <param name="MemberId">会员编号</param>
        /// <param name="RuleType">类型</param>
        /// <param name="Type">评论类型</param>
        /// <returns></returns>
        public bool UpdateMyIntegrityCard(Guid MemberId, bool RuleType, string Type)
        {
            bool result = false;
            try
            {
                Integrity_IntegrityCard m_Integrity_IntegrityCard = SelectListByMemberIdAndRuleType(MemberId, RuleType);
 
                if (m_Integrity_IntegrityCard == null || m_Integrity_IntegrityCard.Keyid <= 0 || m_Integrity_IntegrityCard.Keyid == null)
                {
                    return false;
                }
 
                Integrity_CreditLevelRule m_Integrity_CreditLevelRule_now = new Integrity_CreditLevelRule();
                m_Integrity_CreditLevelRule_now = dal_IIntegrity_CreditLevelRuleDAL.SelectModelByRuleId(m_Integrity_IntegrityCard.RuleId);
 
                switch (Type)
                {
                    case "好评":
                        m_Integrity_IntegrityCard.GoodEvaluation += 1;
                        m_Integrity_IntegrityCard.Credit += 1;
                        break;
                    case "中评":
                        m_Integrity_IntegrityCard.MediumEvaluation += 1;
                        m_Integrity_IntegrityCard.Credit += 0;
                        break;
                    case "差评":
                        m_Integrity_IntegrityCard.BadEvaluation += 1;
                        m_Integrity_IntegrityCard.Credit -= 1;
                        break;
                    default:
                        break;
                }
                if (m_Integrity_IntegrityCard.Credit >= m_Integrity_CreditLevelRule_now.MaxCredit)
                {
                    Integrity_CreditLevelRule m_Integrity_CreditLevelRule_next = new Integrity_CreditLevelRule();
                    if (m_Integrity_CreditLevelRule_now != null && !string.IsNullOrEmpty(m_Integrity_CreditLevelRule_now.NextLevelRule))
                    {
                        m_Integrity_CreditLevelRule_next = dal_IIntegrity_CreditLevelRuleDAL.SelectModelByRuleId(Convert.ToInt32(m_Integrity_CreditLevelRule_now.NextLevelRule));
                        if (m_Integrity_CreditLevelRule_next != null && m_Integrity_CreditLevelRule_next.RuleId > 0)
                        {
                            m_Integrity_IntegrityCard.RuleId = m_Integrity_CreditLevelRule_next.RuleId;
                            m_Integrity_IntegrityCard.LevelIcon = m_Integrity_CreditLevelRule_next.LevelIcon;
                            m_Integrity_IntegrityCard.CreditLevel = m_Integrity_CreditLevelRule_next.LevelName;
                        }
                    }
                }
 
                m_Integrity_IntegrityCard.LastUpdateTime = DateTime.Now;
                result = UpdateModel(m_Integrity_IntegrityCard);
 
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return result;
        }
 
        /// <summary>
        /// 根据编号分页查询
        /// </summary>
        /// <param name="pagination"></param>
        /// <param name="Keyid"></param>
        /// <returns></returns>
        public IEnumerable<Model.Integrity_CreditGrowRecord> SelecIntegrityCreditGrowRecordPage(Infrastructure.Query.Pagination pagination, int? Keyid)
        {
            try
            {
                return dal_IIntegrity_CreditGrowRecordDAL.SelectModelPage(pagination,Keyid);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
 
        /// <summary>
        /// 给诚信名片增加诚信
        /// </summary>
        /// <param name="Keyid"></param>
        /// <param name="Credit"></param>
        /// <param name="reason"></param>
        /// <param name="Operator"></param>
        /// <returns></returns>
        public bool GetNowCardByKeyidAndCredit(int? Keyid, int? Credit, string reason, string Operator)
        {
            return _IIntegrity_IntegrityCardDal.GetNowCardByKeyidAndCredit(Keyid, Credit, reason, Operator);
        }
 
        /// <summary>
        /// 厂商评价并结束评价
        /// </summary>
        /// <param name="m_Integrity_EvaluationRecords"></param>
        /// <param name="m_Integrity_IntegrityCard_Buyer"></param>
        /// <param name="m_Integrity_CreditGrowRecord_Buyer"></param>
        /// <param name="m_Integrity_IntegrityCard_Seller"></param>
        /// <param name="m_Integrity_CreditGrowRecord_Seller"></param>
        /// <returns></returns>
        public bool FirmEndOrderEva(Integrity_EvaluationRecords m_Integrity_EvaluationRecords,  Integrity_IntegrityCard m_Integrity_IntegrityCard_Seller, Integrity_CreditGrowRecord m_Integrity_CreditGrowRecord_Seller)
        {
            return _IIntegrity_IntegrityCardDal.FirmEndOrderEva(m_Integrity_EvaluationRecords, m_Integrity_IntegrityCard_Seller, m_Integrity_CreditGrowRecord_Seller);
        }
 
        /// <summary>
        /// 根据会员编号以及类型获取诚信名片图片
        /// </summary>
        /// <param name="MemberId">会员编号</param>
        /// <param name="RuleType">类型(卖家true/买家false)</param>
        /// <returns></returns>
        public string GetLevelImgByMemberIdAndRuleType(Guid MemberId, bool RuleType)
        {
            return _IIntegrity_IntegrityCardDal.GetLevelImgByMemberIdAndRuleType(MemberId,RuleType);
        }
    }
}