/// <summary> /// Save the SubProduct /// </summary> /// <param name="subProduct"></param> public void SaveSubProduct(SubProductVO subProduct) { if (subProduct.SubProductId == 0) { //Insert New Record SubProduct newSubProduct = new SubProduct(); newSubProduct.Version = subProduct.Version; //newSubProduct.ID = subProduct.SubProductId; newSubProduct.ProductID = subProduct.ProductId; newSubProduct.CreationDate = DateTime.Now; newSubProduct.CreatedBy = subProduct.CreatedByUserId; mdbDataContext.SubProducts.InsertOnSubmit(newSubProduct); mdbDataContext.SubmitChanges(); } else { //Update Existing Record SubProduct selectedSubProduct = mdbDataContext.SubProducts.SingleOrDefault(c => c.ID == subProduct.SubProductId); selectedSubProduct.ProductID = subProduct.ProductId; selectedSubProduct.Version = subProduct.Version; selectedSubProduct.LastUpdatedDate = DateTime.Now; selectedSubProduct.LastUpdatedBy = subProduct.LastUpdatedByUserId; mdbDataContext.SubmitChanges(); } }
/// <summary> /// Save the sub product /// </summary> /// <param name="model">The SubProduct model</param> public ActionResult SubProductSave(MODEL.SubProduct model) { try { if (ModelState.IsValid) { //Get user id int?userId = Session.GetUserId(); SubProductService subProductService = new SubProductService(); //SubProductVO subProductVO = new SubProductVO(model, userId); SubProductVO subProductVO = model.Transpose(userId); subProductService.SaveSubProduct(subProductVO); return(new HttpStatusCodeResult(200)); } else { throw new ApplicationException(String.Format(Constants.CANNOT_SAVE, Constants.SUBPRODUCT)); } } catch (ApplicationException e) { return(new HttpStatusCodeAndErrorResult(500, e.Message)); } }
/// <summary> /// Constructor /// </summary> /// <param name="subProduct">The SubProductVO</param> public SubProduct(SubProductVO subProduct) { ID = subProduct.SubProductId; ProductId = subProduct.ProductId; ProductName = subProduct.ProductName; Version = subProduct.Version; Activity = subProduct.Activity; }
/// <summary> /// Get SubproductDetails by Id /// </summary> /// <param name="subProductId">subProductId</param> /// <returns>SubproductDetails</returns> public SubProductVO GetSubProductById(int subProductId = 0) { SubProduct subProduct = mdbDataContext.SubProducts.SingleOrDefault(c => c.ID == subProductId); SubProductVO subProductVO = null; if (subProduct != null) { subProductVO = new SubProductVO(subProduct); } return(subProductVO); }
/// <summary> /// Gets the Subproduct by Name /// </summary> /// <param name="subProductName">subProductName</param> /// <returns></returns> public SubProductVO GetSubProductByName(string subProductName, int?productId) { SubProduct subProduct = mdbDataContext.SubProducts.Where(pro => pro.Version.Equals(subProductName) && pro.ProductID == productId && pro.IsDeleted == false).SingleOrDefault(); SubProductVO selectedSubProduct = null; if (subProduct != null) { selectedSubProduct = new SubProductVO(subProduct); } return(selectedSubProduct); }
/// <summary> /// Transpose Model object to Value Object /// </summary> /// <param name="userId">user Id</param> /// <returns>Value object</returns> public SubProductVO Transpose(int?userId) { SubProductVO subProductVO = new SubProductVO(); subProductVO.SubProductId = this.ID; subProductVO.ProductId = this.ProductId; subProductVO.Version = this.Version; subProductVO.Activity = this.Activity; subProductVO.ProductName = this.ProductName; subProductVO.CreatedByUserId = userId; subProductVO.LastUpdatedByUserId = userId; return(subProductVO); }
/// <summary> /// Save Sub Product /// </summary> /// <param name="subProductVO"></param> public void SaveSubProduct(SubProductVO subProductVO) { if (!string.IsNullOrEmpty(subProductVO.Version)) { SubProductVO subProductExist = subProdutDAL.GetSubProductByName(subProductVO.Version, subProductVO.ProductId); if (subProductExist != null && subProductVO.SubProductId != subProductExist.SubProductId) { throw new ApplicationException(Constants.SUBPRODUCT_ALREADY_EXIST); } else { subProdutDAL.SaveSubProduct(subProductVO); } } }
/// <summary> /// Edit subproduct details /// </summary> /// <param name="id">SubProduct Id</param> /// <returns>The SubProduct Details view</returns> public ActionResult SubProductEdit(int id) { MODEL.SubProduct subProduct = null; try { SubProductService subProductService = new SubProductService(); //Get sub product details SubProductVO subProductVO = subProductService.GetSubProductById(id); if (subProductVO == null) { ModelState.AddModelError("", String.Format(Constants.ITEM_NOT_FOUND, Constants.SUBPRODUCT)); } else { subProduct = new MODEL.SubProduct(subProductVO); } } catch (Exception e) { ModelState.AddModelError("", e.Message); } return(PartialView("SubProductDetails", subProduct)); }