Beispiel #1
0
        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);
        }
Beispiel #2
0
 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);
 }
Beispiel #3
0
        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);
        }