public HttpResponseMessage LockShopOrder(Entities.TrnShopOrder objShopOrder) { try { HttpStatusCode responseStatusCode = HttpStatusCode.OK; String responseMessage = ""; var currentUser = from d in db.MstUsers where d.UserId == User.Identity.GetUserId() select d; var userForm = from d in db.MstUserForms where d.UserId == currentUser.FirstOrDefault().Id&& d.SysForm.FormName.Equals("ShopOrderDetail") select d; var shopOrder = from d in db.TrnShopOrders where d.Id == objShopOrder.Id select d; var item = from d in db.MstArticles where d.Id == objShopOrder.ItemId select d; var unit = from d in db.MstUnits where d.Id == objShopOrder.UnitId select d; var shopOrderStatus = from d in db.MstShopOrderStatus where d.Id == objShopOrder.ShopOrderStatusId select d; var shopGroup = from d in db.MstShopGroups where d.Id == objShopOrder.ShopGroupId select d; var order = from d in db.TrnShopOrders where d.SPNumber.Equals(objShopOrder.SPNumber) && d.IsLocked == true select d; if (!userForm.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "No rights."; } else if (!userForm.FirstOrDefault().CanLock) { responseStatusCode = HttpStatusCode.BadRequest; responseMessage = "No lock rights."; } else if (!shopOrder.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "Reference not found."; } else if (shopOrder.FirstOrDefault().IsLocked) { responseStatusCode = HttpStatusCode.BadRequest; responseMessage = "Already locked."; } else if (!item.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "Item not found."; } else if (!unit.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "Unit not found."; } else if (!shopOrderStatus.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "Shop order status not found."; } else if (!shopGroup.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "Shop group not found."; } else if (order.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "Shop order number: " + objShopOrder.SPNumber + " is already exist."; } else { var lockShopOrder = shopOrder.FirstOrDefault(); lockShopOrder.SPDate = Convert.ToDateTime(objShopOrder.SPDate); lockShopOrder.SPNumber = objShopOrder.SPNumber; lockShopOrder.ItemId = item.FirstOrDefault().Id; lockShopOrder.Quantity = objShopOrder.Quantity; lockShopOrder.UnitId = unit.FirstOrDefault().Id; lockShopOrder.Amount = objShopOrder.Amount; lockShopOrder.ShopOrderStatusId = shopOrderStatus.FirstOrDefault().Id; lockShopOrder.ShopOrderStatusDate = Convert.ToDateTime(objShopOrder.ShopOrderStatusDate); lockShopOrder.ShopGroupId = shopGroup.FirstOrDefault().Id; lockShopOrder.Particulars = objShopOrder.Particulars; lockShopOrder.IsLocked = true; lockShopOrder.UpdatedById = currentUser.FirstOrDefault().Id; lockShopOrder.UpdatedDateTime = DateTime.Now; db.SubmitChanges(); } return(Request.CreateResponse(responseStatusCode, responseMessage)); } catch (Exception ex) { Debug.WriteLine(ex.Message); return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message)); } }
public HttpResponseMessage AddShopOrder(Entities.TrnShopOrder objShopOrder) { try { HttpStatusCode responseStatusCode = HttpStatusCode.OK; String responseMessage = ""; var currentUser = from d in db.MstUsers where d.UserId == User.Identity.GetUserId() select d; var userForm = from d in db.MstUserForms where d.UserId == currentUser.FirstOrDefault().Id&& d.SysForm.FormName.Equals("ShopOrderList") select d; var item = from d in db.MstArticles where d.ArticleTypeId == 1 && d.IsLocked == true select d; IQueryable <Data.MstUnit> unit = null; if (item.Any()) { unit = from d in db.MstUnits where d.Id == item.FirstOrDefault().UnitId select d; } var shopOrderStatus = from d in db.MstShopOrderStatus select d; var shopGroup = from d in db.MstShopGroups select d; if (!userForm.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "No rights."; } else if (!userForm.FirstOrDefault().CanAdd) { responseStatusCode = HttpStatusCode.BadRequest; responseMessage = "No add rights."; } else if (!item.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "Item not found."; } else if (!unit.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "Unit not found."; } else if (!shopOrderStatus.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "Shop order status not found."; } else if (!shopGroup.Any()) { responseStatusCode = HttpStatusCode.NotFound; responseMessage = "Shop group not found."; } else { Data.TrnShopOrder newShopOrder = new Data.TrnShopOrder { BranchId = currentUser.FirstOrDefault().BranchId, SPNumber = "NA", SPDate = DateTime.Today, ItemId = item.OrderByDescending(d => d.Article).FirstOrDefault().Id, Quantity = 0, UnitId = unit.FirstOrDefault().Id, Amount = 0, ShopOrderStatusId = shopOrderStatus.FirstOrDefault().Id, ShopOrderStatusDate = DateTime.Today, ShopGroupId = shopGroup.FirstOrDefault().Id, Particulars = "NA", Status = null, IsPrinted = false, IsLocked = false, CreatedById = currentUser.FirstOrDefault().Id, CreatedDateTime = DateTime.Now, UpdatedById = currentUser.FirstOrDefault().Id, UpdatedDateTime = DateTime.Now }; db.TrnShopOrders.InsertOnSubmit(newShopOrder); db.SubmitChanges(); responseMessage = newShopOrder.Id.ToString(); } return(Request.CreateResponse(responseStatusCode, responseMessage)); } catch (Exception ex) { Debug.WriteLine(ex); return(Request.CreateResponse(HttpStatusCode.InternalServerError, ex.Message)); } }