using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using CY.BLL.EC;
using CY.Model;
using CY.Infrastructure.Common;
using CY.BLL.Integrity;
using CY.BLL;
namespace CY.WebForm.Pages.business
{
//吴辉
//买家评价
public partial class EvaluationBuyer : BasePage
{
EC_OrderBasicBLL bll_EC_OrderBasicBLL = null;
Integrity_EvaluationRecordsBLL bll_Integrity_EvaluationRecordsBLL = null;
Integrity_IntegrityCardBLL bll_Integrity_IntegrityCardBLL = null;
Integrity_CreditLevelRuleBLL bll_Integrity_CreditLevelRuleBLL = null;
public string EvaLevel = "0";
//初始化
public EvaluationBuyer()
{
bll_EC_OrderBasicBLL = new EC_OrderBasicBLL();
bll_Integrity_EvaluationRecordsBLL = new Integrity_EvaluationRecordsBLL();
bll_Integrity_IntegrityCardBLL = new Integrity_IntegrityCardBLL();
bll_Integrity_CreditLevelRuleBLL = new Integrity_CreditLevelRuleBLL();
}
//页面加载
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
InitData();
}
}
//绑定数据
public void InitData()
{
string orderIdStr = Request["orderid"];
if (string.IsNullOrEmpty(orderIdStr))
{
CY.WebForm.BasePage.JavaScript.MessageBox("未传递参数!", this);
return;
}
int? orderId = orderIdStr.ToInt32();
if (!orderId.HasValue)
{
CY.WebForm.BasePage.JavaScript.MessageBox("未传递参数!", this);
return;
}
Integrity_EvaluationRecords m_Integrity_EvaluationRecords = bll_Integrity_EvaluationRecordsBLL.GetModelByOrderId(orderId);
if (m_Integrity_EvaluationRecords == null || m_Integrity_EvaluationRecords.EffectiveDate == null)
{
}
if (m_Integrity_EvaluationRecords != null && m_Integrity_EvaluationRecords.MemberId != CurrentUser.MemberId)
{
CY.WebForm.BasePage.JavaScript.MessageBox("不能评论不属于自己的订单", this);
return;
}
else if (m_Integrity_EvaluationRecords != null)
{
if (m_Integrity_EvaluationRecords.SellerEvaluation.HasValue)
{
string SellerEvaLevel = "好评";
switch (m_Integrity_EvaluationRecords.SellerEvaluation)
{
case 1:
SellerEvaLevel = "好评";
break;
case 0:
SellerEvaLevel = "中评";
break;
case -1:
SellerEvaLevel = "差评";
break;
default:
break;
}
this.spanSellerEvaLevel.InnerHtml = SellerEvaLevel;
this.spanEvaContent.InnerHtml = m_Integrity_EvaluationRecords.SellerComment;
}
else
{
this.trAlreadyEva1.Style.Add("display", "none");
this.trAlreadyEva2.Style.Add("display", "none");
}
if (m_Integrity_EvaluationRecords.BuyerCommentDate <= DateTime.Now.AddDays(-7))
{
this.trbtn.Style.Add("display", "none");
this.tdContent.InnerHtml = m_Integrity_EvaluationRecords.BuyerComment.ToString2();
}
else
{
this.txtContent.InnerText = m_Integrity_EvaluationRecords.BuyerComment.ToString2();
}
EvaLevel = m_Integrity_EvaluationRecords.BuyerEvaluation.ToString2();
if (string.IsNullOrEmpty(EvaLevel))
{
EvaLevel = "0";
}
}
EC_OrderBasic m_EC_OrderBasic = bll_EC_OrderBasicBLL.SelectModelById(orderId.Value);
if (m_EC_OrderBasic == null || m_EC_OrderBasic.BuyerId != CurrentUser.MemberId)
{
CY.WebForm.BasePage.JavaScript.MessageBox("不能评论不属于自己的订单", this);
return;
}
else
{
this.spanOrderId.InnerText = m_EC_OrderBasic.SellerOrderId.ToString2();
this.spanSellerName.InnerText = m_EC_OrderBasic.SellerName.ToString2();
this.spanOrderName.InnerText = m_EC_OrderBasic.DocumentName.ToString2();
}
}
//提交事件
protected void btn_Submit_form(object sender, EventArgs e)
{
string orderIdStr = Request["orderid"];
if (string.IsNullOrEmpty(orderIdStr))
{
CY.WebForm.BasePage.JavaScript.MessageBox("未传递参数!", this);
return;
}
int? orderId = orderIdStr.ToInt32();
if (!orderId.HasValue)
{
CY.WebForm.BasePage.JavaScript.MessageBox("未传递参数!", this);
return;
}
Integrity_EvaluationRecords m_Integrity_EvaluationRecords = bll_Integrity_EvaluationRecordsBLL.GetModelByOrderId(orderId);
if (m_Integrity_EvaluationRecords != null && m_Integrity_EvaluationRecords.MemberId != CurrentUser.MemberId)
{
CY.WebForm.BasePage.JavaScript.MessageBox("不能评论不属于自己的订单", this);
return;
}
EC_OrderBasic m_EC_OrderBasic = bll_EC_OrderBasicBLL.SelectModelById(orderId.Value);
if (m_EC_OrderBasic == null || m_EC_OrderBasic.BuyerId != CurrentUser.MemberId)
{
CY.WebForm.BasePage.JavaScript.MessageBox("不能评论不属于自己的订单", this);
return;
}
bool IsEdit=false;
bool IsAreadyEvalution = false;
if (m_Integrity_EvaluationRecords == null || m_Integrity_EvaluationRecords.Keyid == null)
{
m_Integrity_EvaluationRecords = new Integrity_EvaluationRecords();
IsEdit = false;
}
else
{
IsEdit = true;
if (m_Integrity_EvaluationRecords.ScoringSeller != null && m_Integrity_EvaluationRecords.BuyerEvaluation != null)
{
IsAreadyEvalution = true;
}
}
int? EvaLevelBuyer = Request["EvaLevel"].ToInt32();
if (EvaLevelBuyer != 1 && EvaLevelBuyer != 0 && EvaLevelBuyer != -1)
{
CY.WebForm.BasePage.JavaScript.MessageBox("评价失败", this);
return;
}
else
{
int OldNum = 0;
int? SellerScore = 0;
if (IsAreadyEvalution)
{
OldNum = m_Integrity_EvaluationRecords.BuyerEvaluation ?? 0;
SellerScore = (EvaLevelBuyer - (m_Integrity_EvaluationRecords.BuyerEvaluation ?? 0)) ?? 0;
}
else
{
SellerScore = EvaLevelBuyer;
}
m_Integrity_EvaluationRecords.LastUpdateTime = DateTime.Now;
m_Integrity_EvaluationRecords.Operate = CurrentUser.ShortName;
m_Integrity_EvaluationRecords.ScoringSeller = EvaLevelBuyer;
m_Integrity_EvaluationRecords.BuyerComment = this.txtContent.Value.ToString2();
m_Integrity_EvaluationRecords.BuyerCommentDate = DateTime.Now;
m_Integrity_EvaluationRecords.BuyerEvaluation = EvaLevelBuyer;
string ReasonTXT = "";
Integrity_IntegrityCard m_Integrity_IntegrityCard_Seller = bll_Integrity_IntegrityCardBLL.SelectListByMemberIdAndRuleType(m_EC_OrderBasic.SellerId, true);
Integrity_CreditLevelRule m_Integrity_CreditLevelRule_Seller = bll_Integrity_CreditLevelRuleBLL.GetModel(m_Integrity_IntegrityCard_Seller.RuleId);
Integrity_CreditLevelRule m_Integrity_CreditLevelRule_Seller_UP = bll_Integrity_CreditLevelRuleBLL.SelectModelByUpId(m_Integrity_IntegrityCard_Seller.RuleId);
Integrity_CreditLevelRule m_Integrity_CreditLevelRule_Seller_DOWN = bll_Integrity_CreditLevelRuleBLL.GetModel(m_Integrity_CreditLevelRule_Seller.NextLevelRule.ToInt32());
m_Integrity_IntegrityCard_Seller.Credit += SellerScore;
if (SellerScore < 0)
{
if (m_Integrity_CreditLevelRule_Seller_UP != null && m_Integrity_IntegrityCard_Seller.Credit < m_Integrity_CreditLevelRule_Seller_UP.MaxCredit)
{
m_Integrity_IntegrityCard_Seller.CreditLevel = m_Integrity_CreditLevelRule_Seller_UP.LevelName;
m_Integrity_IntegrityCard_Seller.LevelIcon = m_Integrity_CreditLevelRule_Seller_UP.LevelIcon;
m_Integrity_IntegrityCard_Seller.RuleId = m_Integrity_CreditLevelRule_Seller_UP.RuleId;
}
}
else
{
if (m_Integrity_CreditLevelRule_Seller_DOWN != null && m_Integrity_IntegrityCard_Seller.Credit > m_Integrity_CreditLevelRule_Seller.MaxCredit)
{
m_Integrity_IntegrityCard_Seller.CreditLevel = m_Integrity_CreditLevelRule_Seller_DOWN.LevelName;
m_Integrity_IntegrityCard_Seller.LevelIcon = m_Integrity_CreditLevelRule_Seller_DOWN.LevelIcon;
m_Integrity_IntegrityCard_Seller.RuleId = m_Integrity_CreditLevelRule_Seller_DOWN.RuleId;
}
}
Integrity_CreditGrowRecord m_Integrity_CreditGrowRecord_Seller = new Integrity_CreditGrowRecord();
m_Integrity_CreditGrowRecord_Seller.Fraction = SellerScore;
m_Integrity_CreditGrowRecord_Seller.IntegrityCardId = m_Integrity_IntegrityCard_Seller.Keyid;
m_Integrity_CreditGrowRecord_Seller.LastUpdateTime = DateTime.Now;
m_Integrity_CreditGrowRecord_Seller.Operator = CurrentUser.ShortName;
m_Integrity_CreditGrowRecord_Seller.Remark = "";
if (IsAreadyEvalution)
{
if (EvaLevelBuyer == 1)
{
if (OldNum == 0)
{
m_Integrity_IntegrityCard_Seller.GoodEvaluation += 1;
m_Integrity_IntegrityCard_Seller.MediumEvaluation -= 1;
ReasonTXT = "订单:" + m_EC_OrderBasic.SellerOrderId + "修改中评为好评";
}
else if (OldNum == -1)
{
m_Integrity_IntegrityCard_Seller.GoodEvaluation += 1;
m_Integrity_IntegrityCard_Seller.BadEvaluation -= 1;
ReasonTXT = "订单:" + m_EC_OrderBasic.SellerOrderId + "修改差评为好评";
}
}
else if (EvaLevelBuyer == 0)
{
if (OldNum == 1)
{
m_Integrity_IntegrityCard_Seller.MediumEvaluation += 1;
m_Integrity_IntegrityCard_Seller.GoodEvaluation -= 1;
ReasonTXT = "订单:" + m_EC_OrderBasic.SellerOrderId + "修改好评为中评";
}
else if (OldNum == -1)
{
m_Integrity_IntegrityCard_Seller.MediumEvaluation += 1;
m_Integrity_IntegrityCard_Seller.BadEvaluation -= 1;
ReasonTXT = "订单:" + m_EC_OrderBasic.SellerOrderId + "修改差评为中评";
}
}
else if (EvaLevelBuyer == -1)
{
if (OldNum == 1)
{
m_Integrity_IntegrityCard_Seller.BadEvaluation += 1;
m_Integrity_IntegrityCard_Seller.GoodEvaluation -= 1;
ReasonTXT = "订单:" + m_EC_OrderBasic.SellerOrderId + "修改好评为差评";
}
else if (OldNum == 0)
{
m_Integrity_IntegrityCard_Seller.BadEvaluation += 1;
m_Integrity_IntegrityCard_Seller.MediumEvaluation -= 1;
ReasonTXT = "订单:" + m_EC_OrderBasic.SellerOrderId + "修改中评为差评";
}
}
}
else
{
if (EvaLevelBuyer == 1)
{
m_Integrity_IntegrityCard_Seller.GoodEvaluation += 1;
ReasonTXT = "订单好评:" + m_EC_OrderBasic.SellerOrderId + "";
}
else if (EvaLevelBuyer == 0)
{
m_Integrity_IntegrityCard_Seller.MediumEvaluation += 1;
ReasonTXT = "订单中评:" + m_EC_OrderBasic.SellerOrderId + "";
}
else if (OldNum == -1)
{
m_Integrity_IntegrityCard_Seller.BadEvaluation += 1;
ReasonTXT = "订单差评:" + m_EC_OrderBasic.SellerOrderId + "";
}
}
m_Integrity_CreditGrowRecord_Seller.Reason = ReasonTXT;
m_Integrity_EvaluationRecords.MemberId = CurrentUser.MemberId;
m_Integrity_EvaluationRecords.OrderId = orderId;
m_Integrity_EvaluationRecords.Remark = "|b:" + EvaLevelBuyer;
m_Integrity_EvaluationRecords.SellerId = m_EC_OrderBasic.SellerId;
if (bll_Integrity_IntegrityCardBLL.FirmEndOrderEva(m_Integrity_EvaluationRecords, m_Integrity_IntegrityCard_Seller, m_Integrity_CreditGrowRecord_Seller))
{
InitData();
JavaScript.MessageBox("评价成功", this);
JavaScript.RefreshDIVOpener(this);
}
else
JavaScript.MessageBox("操作失败", this);
}
}
}
}