public HttpResponseMessage SaveUnJointTruckStatus(UnJointTruck unJointTruck) { if (string.IsNullOrEmpty(unJointTruck.VoucherID)) { return(Request.CreateResponse(HttpStatusCode.BadRequest, "Document number is empty!")); } try { gate.ExecuteNonQuery(@"UPDATE UnJointTruck SET [Status] = @Status ,[Stamp] = @Stamp WHERE VoucherID = @VoucherID", new object[] { unJointTruck.Status, DateTime.Now, unJointTruck.VoucherID, }); HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK); return(response); } catch (Exception e) { Loger.Error(e); return(Request.CreateResponse(HttpStatusCode.BadRequest, e.Message + e.StackTrace)); } }
/// <summary> /// 用于监测Context中的Entity是否存在,如果存在,将其Detach,防止出现问题。 /// </summary> /// <param name="entity"></param> /// <returns></returns> private Boolean RemoveHoldingEntityInContext(UnJointTruck entity) { var objContext = ((IObjectContextAdapter)_GateContext).ObjectContext; var objSet = objContext.CreateObjectSet <UnJointTruck>(); var entityKey = objContext.CreateEntityKey(objSet.EntitySet.Name, entity); Object foundEntity; var exists = objContext.TryGetObjectByKey(entityKey, out foundEntity); if (exists) { objContext.Detach(foundEntity); } return(exists); }
/// <summary> /// 保存一条非系统协同车辆信息 /// </summary> /// <param name="goods"></param> /// <returns></returns> public IHttpActionResult SaveUnJointTruck(UnJointTruck unJointTruck) { try { Console.WriteLine("SaveUnJointTruck:" + DateTime.Now.ToString()); string voucherId = string.IsNullOrEmpty(unJointTruck.VoucherID) ? "" : unJointTruck.VoucherID; if (unJointTruck.VehicleType == "19" && CheckContainerisExist(unJointTruck.OrderNO, unJointTruck.StorageNO)) { return(BadRequest(string.Format("Container with {0} - {1} already exist, that can not add!", unJointTruck.OrderNO, unJointTruck.StorageNO))); } var _UnJointTruck = _GateContext.UnJointTrucks.Find(voucherId); string result = string.Empty; if (_UnJointTruck != null) { unJointTruck.Stamp = DateTime.Now; // RemoveHoldingEntityInContext(unJointTruck); // _GateContext.Entry(unJointTruck).State = EntityState.Modified; } else { if (string.IsNullOrEmpty(unJointTruck.Status)) { unJointTruck.Status = ""; } string vouIdNew = GetUnjointTruckVoucherIDFlow(); unJointTruck.VoucherID = vouIdNew; unJointTruck.Stamp = DateTime.Now; _GateContext.UnJointTrucks.Add(unJointTruck); } _GateContext.SaveChanges(); return(Ok(unJointTruck)); } catch (Exception e) { Loger.Error(e); Console.WriteLine(e); return(BadRequest(e.Message + e.StackTrace)); } }