using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using CY.Infrastructure.Common; using CY.Model.Inquiry; using CY.Model; using CY.BLL.EC; namespace CY.WebForm.Pages.business { public partial class DemandOrderCreate : BasePage { private EC_QuoteDemandBLL _eC_QuoteDemandBLL = null;//报价需求业务逻辑操作对象 private bool _isReturnResultCode = false; private EC_QuoteDemand CurrentQuoteDemand = null; /// /// 初始化 /// public DemandOrderCreate() { _eC_QuoteDemandBLL = new EC_QuoteDemandBLL(); } protected void Page_Load(object sender, EventArgs e) { try { switch (Request["Target"]) { case "SaveInfo": break; default://一般情况不处理 btnSave.ServerClick += new EventHandler(btnSave_ServerClick); CurrentQuoteDemand = LoadModelById(); LoadQuote(); if (IsPostBack || IsCallback) return; else { } return; } } catch (Exception ex) { PAGEHandleException(ex); if (!_isReturnResultCode) return; else ; Response.Clear(); Response.Write("-1"); } Response.End(); } /// /// 保存按钮点击事件 /// /// /// void btnSave_ServerClick(object sender, EventArgs e) { int? quoteId = MyConvert.ConvertToInt32(Request["quoteId"]); EC_OrderBasic orderBasic = null; if (quoteId.HasValue && !string.IsNullOrEmpty(CurrentQuoteDemand.PrintParameter().PrintParameter)) try { InquiryCommonModel inquiryCommonModel = SerializationHelper.DeSerialize(typeof(InquiryCommonModel), CurrentQuoteDemand.PrintParameter().PrintParameter) as InquiryCommonModel; EC_DemandQuoteBLL eC_DemandQuoteBLL = new EC_DemandQuoteBLL(); EC_DemandQuote eC_DemandQuote = eC_DemandQuoteBLL.SelectModelById(quoteId.Value); //需求订单 类型编号为-2 orderBasic = CY.WebForm.Pages.common.PayAbout.NewOrder(CurrentUser.MemberId, "",CurrentUser.Name, eC_DemandQuote.QuoterId, eC_DemandQuote.Quoter.Name, CurrentUser.ShortName, eC_DemandQuote.QuoterPrice.Value, inquiryCommonModel, -2); } catch (Exception ex) { PAGEHandleException(ex); } else ; if (null != orderBasic) { Response.Clear(); Request.RequestContext.RouteData.DataTokens.Remove("jmodel");//清除掉原本要输出的实体信息 Request.RequestContext.RouteData.DataTokens.Add("ResultInfo", CY.WebForm.Pages.common.PayAbout.FormarResultInfo(orderBasic)); Server.Transfer("/Pages/front/OrderWinShower.aspx", false); return; } CY.WebForm.MainPage.JavaScript.MessageBox("操作失败!", this); } /// /// 根据编号加载数据 /// /// private EC_QuoteDemand LoadModelById() { // DealMvc.Common.Net.DealString.ChangeSQL(Request["ParamName"]) int? id = MyConvert.ConvertToInt32(Request["id"]); _isReturnResultCode = !string.IsNullOrEmpty(Request["IsFrontRequest"]) && "frontTrue".Equals(Request["IsFrontRequest"]); EC_QuoteDemand eC_QuoteDemand = null; if (id.HasValue) eC_QuoteDemand = _eC_QuoteDemandBLL.SelectModleById(id.Value); else { eC_QuoteDemand = new EC_QuoteDemand(); } string jmodel = null == eC_QuoteDemand ? "" : JsonHelper.GetJsonStringByObject(eC_QuoteDemand); InquiryCommonModel _inquiryCommonModel = null; if (!string.IsNullOrEmpty(eC_QuoteDemand.PrintParameter().PrintParameter)) _inquiryCommonModel = SerializationHelper.DeSerialize(typeof(InquiryCommonModel), eC_QuoteDemand.PrintParameter().PrintParameter) as InquiryCommonModel; else ; if (!_isReturnResultCode) { rptInquiryCommon.DataSource = new List() { _inquiryCommonModel }; rptInquiryCommon.DataBind(); } //若是外部获取数据则输出jsonString if (_isReturnResultCode) { Response.Write(jmodel); } else Request.RequestContext.RouteData.DataTokens.Add("jmodel", jmodel); return eC_QuoteDemand; } /// /// 加载报价及订单编号 /// /// private static bool LoadQuote() { HttpRequest Request = HttpContext.Current.Request; int? quoteId = MyConvert.ConvertToInt32(Request["quoteId"]); if (!quoteId.HasValue) return false; EC_DemandQuoteBLL eC_DemandQuoteBLL = new EC_DemandQuoteBLL(); EC_DemandQuote eC_DemandQuote = eC_DemandQuoteBLL.SelectModelById(quoteId.Value); EC_OrderBasicBLL eC_OrderBasicBLL = new BLL.EC.EC_OrderBasicBLL(); string sellerOrderId = eC_OrderBasicBLL.LoadOrderIdBySellerId(eC_DemandQuote.QuoterId); Request.RequestContext.RouteData.DataTokens.Add("quote", string.Format("{0}SellerName:'{2}',OrderSumPrice:{3},SellerOrderId:'{4}'{1}", "{", "}", eC_DemandQuote.Quoter.Name, eC_DemandQuote.QuoterPrice.Value.ToString("F2"), sellerOrderId)); return true; } } }