/**
* OrderEdit.aspx.cs
*
* 功 能: 订单列表
* 类 名: OrderEdit
*
* Ver 变更日期 负责人 变更内容
* ───────────────────────────────────
* V0.01 2013-5-8 13:55 吴崎均 初版
* V0.02 2013-5-8 15:47 吴崎均 实现下拉数据绑定与数据级联
* V0.03 2013-5-8 18:00 吴崎均 初步完成新增线下订单(未调试)
*
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using CY.BLL.Sys;
using CY.BLL;
using CY.Model;
using CY.Infrastructure.Common;
using CY.WebForm.Pages.common;
using CY.BLL.EC;
using CY.Model.Inquiry;
using System.Transactions;
namespace CY.WebForm.Pages.business
{
public partial class DeliverWorkBookAnPaiEdit : BasePage
{
CoreCmsPlanOrderBLL _CoreCmsPlanOrderBLL = null;
CoreCmsPlanOrderItemBLL _CoreCmsPlanOrderItemBLL = null;
OA_StaffBLL bll_OA_StaffBLL = null;
OA_CarManageBll _OA_CarManageBll = null;
CoreDeliverOrderBLL _CoreDeliverOrderBLL = null;
CoreDeliverOrderItemBLL _CoreDeliverOrderItemBLL = null;
//初始化
public DeliverWorkBookAnPaiEdit()
{
_CoreCmsPlanOrderBLL = new CoreCmsPlanOrderBLL();
bll_OA_StaffBLL = new OA_StaffBLL();
_OA_CarManageBll = new OA_CarManageBll();
_CoreDeliverOrderBLL = new CoreDeliverOrderBLL();
_CoreDeliverOrderItemBLL = new CoreDeliverOrderItemBLL();
_CoreCmsPlanOrderItemBLL = new CoreCmsPlanOrderItemBLL();
}
///
/// 页面加载事件
///
///
///
protected void Page_Load(object sender, EventArgs e)
{
try
{
switch (Request["Target"])
{
case "Chexiao":
LoadCommunication();
return;
case "ReBindClients":
Response.Write(ReLoadClients());
break;
default:
Page_Load_Default();
return;
}
}
catch (Exception ex)
{
PAGEHandleException(ex);
Response.Clear();
//Response.Write("-1");
Response.Write(ex.Message);
}
Response.End();
}
///
/// 默认执行方法
///
private void Page_Load_Default()
{
if (!IsPostBack && !IsCallback)
{
this.selCarId.DataSource = bll_OA_StaffBLL.SelectListByFirmId(CurrentUser.MemberId, false, false).Where(x => x.SM_Post == "司机");
this.selCarId.DataTextField = "Name";
this.selCarId.DataValueField = "Keyid";
this.selCarId.DataBind();
this.selCarId.Items.Insert(0, new ListItem("请选择", ""));
var orderId = Request["orderId"];
var coreDeliverOrder = _CoreDeliverOrderBLL.GetModelByKeyid(orderId);
if (coreDeliverOrder.OrderState != 0)
{
//操作成功
JavaScript.MessageBox("已经开始送货不能安排", this, true, false);
return;
}
if (coreDeliverOrder.DriverId.HasValue && coreDeliverOrder.DriverId.Value > 0)
{
var oA_Staff = bll_OA_StaffBLL.GetModelByKeyid(coreDeliverOrder.DriverId);
if (oA_Staff != null)
{
this.selCarId.Value = oA_Staff.Keyid.Value.ToString();
}
}
else
{
var oA_Staff = bll_OA_StaffBLL.SelectListByFirmId(CurrentUser.MemberId,false,false).Where(x=>x.MobieNum == coreDeliverOrder.DeliveryMoble).FirstOrDefault();
if (oA_Staff != null)
{
this.selCarId.Value = oA_Staff.Keyid.Value.ToString();
}
}
this.txtDeliverTime.Value = coreDeliverOrder.MakeTime.Value.ToString("yyyy-MM-dd HH:mm");
}
}
///
/// 保存点击事件
///
///
///
protected void btnSave_ServerClick(object sender, EventArgs e)
{
if (SaveOrder())
{
//操作成功
JavaScript.MessageBox("操作成功", this,true,true);
}
else
{
//操作失败
JavaScript.MessageBox("操作失败", this);
}
}
///
/// 加载客户联系方式
///
private void LoadCommunication()
{
if (!IsPostBack && !IsCallback)
{
var orderId = Request["orderId"];
var coreDeliverOrder = _CoreDeliverOrderBLL.GetModelByKeyid(orderId);
if (coreDeliverOrder.OrderState != 0)
{
//操作成功
JavaScript.MessageBox("已经开始送货不能撤销", this, true, false);
return;
}
coreDeliverOrder.OrderState = 5;
var oA_Staff = bll_OA_StaffBLL.GetModelByKeyid(CurrentUser.StaffId);
coreDeliverOrder.UpDataBy = string.IsNullOrEmpty(oA_Staff.MobieNum)?"": oA_Staff.MobieNum;
coreDeliverOrder.UpdataTime = DateTime.Now;
var sss = _CoreDeliverOrderBLL.UpdateModel(coreDeliverOrder);
//操作成功
JavaScript.MessageBox("撤销成功", this, true, true);
return;
}
}
///
/// 保存订单
///
private bool SaveOrder()
{
bool isWin = false;
using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required,
new TransactionOptions
{
IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted,
Timeout = TransactionManager.MaximumTimeout
}
)
)
{
try
{
var orderId = Request["orderId"];
var coreDeliverOrder = _CoreDeliverOrderBLL.GetModelByKeyid(orderId);
var oA_Staff = bll_OA_StaffBLL.GetModelByKeyid(CurrentUser.StaffId);
var shijian = this.txtDeliverTime.Value.ToDateTime2();
var datenow = DateTime.Now;
// coreDeliverOrder.id = Guid.NewGuid();
coreDeliverOrder.DriverId = this.selCarId.Value.ToInt32();
var i = 0;
var carManage = bll_OA_StaffBLL.GetModelByKeyid(this.selCarId.Value.ToInt32());
if (carManage != null)
{
coreDeliverOrder.DeliveryMoble = carManage.MobieNum;
}
// coreDeliverOrder.OrderId = keyid.ToInt32();
coreDeliverOrder.UpDataBy = string.IsNullOrEmpty(oA_Staff.MobieNum) ? "" : oA_Staff.MobieNum;
coreDeliverOrder.UpdataTime = datenow;
var coreCmsPlanOrder = _CoreCmsPlanOrderBLL.GetModelByKeyid(coreDeliverOrder.OrderId.Value);
if (coreCmsPlanOrder != null)
{
coreDeliverOrder.ContactName = coreCmsPlanOrder.shipName;
coreDeliverOrder.ContactPhone = coreCmsPlanOrder.shipMobile;
}
coreDeliverOrder.OrderState = 0;
coreDeliverOrder.MakeTime = shijian;
coreDeliverOrder.Remarke = "";
isWin = _CoreDeliverOrderBLL.UpdateModel(coreDeliverOrder);
scope.Complete();
}
catch (Exception ex)
{
PAGEHandleException(ex);
JavaScript.MessageBox("操作失败", this);
}
finally
{
// 释放资源
scope.Dispose();
}
}
return isWin;
}
///
/// 重新加载客户列表
///
///
private string ReLoadClients()
{
try
{
string res = "";
OA_CorporateClientsBLL bll_OA_CorporateClientsBLL = new OA_CorporateClientsBLL();
IList m_OA_CorporateClientsList = bll_OA_CorporateClientsBLL.SelectListByFirmId(CurrentUser.MemberId) as IList;
if (null != m_OA_CorporateClientsList)
{
m_OA_CorporateClientsList.Where(cc => CurrentUser.MemberId.Equals(cc.MemberId) && m_OA_CorporateClientsList.Remove(cc));
if (m_OA_CorporateClientsList.Count > 0)
{
foreach (var m_OA_CorporateClients in m_OA_CorporateClientsList)
{
res = res + ("");
}
}
}
return res;
}
catch (Exception ex)
{
PAGEHandleException(ex);
return "";
}
}
}
}