public override bool TakeAction() { HXSCEntities hxsc = new HXSCEntities(); if (hxsc.UserInfo.FirstOrDefault(o => o.Userid == Userid) == null) { return(SetError("用户不存在!")); } OrderH orderH = hxsc.OrderH.FirstOrDefault(o => o.OrderhId == orderid); if (orderH == null) { return(SetError("订单不存在!")); } if (orderH.Start == 0) { SetError("未付款订单不能退货!"); } var orderDlist = (from od in hxsc.OrderD where od.Orderhid == orderid select od).ToList(); foreach (var item in Contenttxt) { if (orderDlist.Find(o => o.Itemid == item.Itemid) == null) { return(SetError("订单图书不存在")); } } ReturnedH returnedH = new ReturnedH() { Amt = Contenttxt.Sum(o => o.Amt), Orderid = orderid, Source = key, State = 0, Userid = Userid, CreateTime = DateTime.Now, }; hxsc.ReturnedH.AddObject(returnedH); hxsc.SaveChanges(); foreach (var item in Contenttxt) { ReturnedD returnedD = new ReturnedD() { Amt = item.Amt, Createtime = DateTime.Now, Itemid = item.Itemid, Returnedid = returnedH.ReturnedId, Serial = "", State = 0 }; hxsc.ReturnedD.AddObject(returnedD); } hxsc.SaveChanges(); return(true); }
private bool GetMath(ReturnedH o) { if (!string.IsNullOrEmpty(Userid) && createtime == DateTime.MinValue) { return(o.Userid == Userid); } else if (string.IsNullOrEmpty(Userid) && createtime != DateTime.MinValue) { return(o.CreateTime > createtime); } else if (!string.IsNullOrEmpty(Userid) && createtime != DateTime.MinValue) { return(o.CreateTime > createtime && o.Userid == Userid); } return(true); }
public override bool TakeAction() { HXSCEntities hxsc = new HXSCEntities(); ReturnedH ReturnedH = hxsc.ReturnedH.FirstOrDefault(o => o.ReturnedId == returnedid); if (ReturnedH == null) { return(SetError("退货单不存在!")); } if (ReturnedH.State != 0) { return(SetError("已经退货!")); } OrderH orderH = hxsc.OrderH.FirstOrDefault(o => o.OrderhId == ReturnedH.Orderid); if (orderH == null) { return(SetError("订单不存在!")); } if (orderH.Start == 0) { return(SetError("未付款订单不能退货!")); } var returnedD = (from o in hxsc.ReturnedD where o.Returnedid == returnedid select o).ToList(); ReturnedH.State = state; foreach (var item in returnedD) { item.State = state; OrderD orderD = hxsc.OrderD.FirstOrDefault(o => o.Itemid == item.Itemid); if (orderD != null) { orderD.Start = 3; } } hxsc.SaveChanges(); return(true); }