Ejemplo n.º 1
0
 static string ToJson(XmlChange change)
 {
     return(JsonConvert.SerializeObject(
                change,
                Formatting.Indented,
                new StringEnumConverter(),
                new ToStringJsonConverter <XmlNodePath>()));
 }
        public bool Save(OrderReqExtend items)
        {
            XmlChange xml       = new XmlChange();
            var       order     = new OrderReqExtend();
            var       detail    = new OrderReqDetailExtend();
            bool      isUpdated = true;

            try
            {
                //delete Order
                OrderReq ordertoDelete = context.OrderReqs.FirstOrDefault(a => a.Code == items.Code);
                context.Entry(ordertoDelete).State = EntityState.Deleted;
                context.SaveChanges();


                //delete OrderDetail
                List <OrderReqDetail> listOrderDetailToDelete = context.OrderReqDetails.Where(a => a.OrderReqCode == items.Code).ToList();
                context.OrderReqDetails.RemoveRange(listOrderDetailToDelete);
                context.SaveChanges();

                //Update status OrderReqDetailProduct
                var detailforUpdate = context.OrderReqDetailProducts.Where(a => a.OrderReqCode == items.Code && a.Status == 0).ToList();
                detailforUpdate.ForEach(a =>
                {
                    a.Status = 1;
                });
                context.SaveChanges();

                bool resultCreatexml = xml.Create(items.Code); //Crea XML

                //if (result)
                //{
                //    var detailforUpdate = context.OrderReqDetailProducts.Where(a=> a.OrderReqCode == items.Code && a.Status == 0).ToList();
                //    detailforUpdate.ForEach(a =>
                //    {
                //        a.Status = 1;
                //    });


                //    foreach (OrderReqDetailProduct row in detailforUpdate)
                //    {
                //        row.Status = 1;
                //        context.Entry(row).State = EntityState.Modified;
                //        context.SaveChanges();
                //    }

                //   // context.SaveChanges();

                //    bool resultCreatexml = xml.Create(items.Code); //Crea XML
                //}
            }
            catch (Exception)
            {
                isUpdated = false;
                throw;
            }
            return(isUpdated);
        }