public ActionResult Submitted(int Id, string returl) { CustomDetail pd = new CustomDetailService(_unitOfWork).Find(Id); if (ModelState.IsValid) { ActivityLog al = new ActivityLog() { ActivityType = (int)ActivityTypeContants.Submitted, CreatedBy = User.Identity.Name, CreatedDate = DateTime.Now, DocId = pd.CustomDetailId, Narration = "Packing no" + pd.DocNo + " submitted.", DocTypeId = new DocumentTypeService(_unitOfWork).FindByName(TransactionDocCategoryConstants.Packing).DocumentTypeId, }; _ActivityLogService.Create(al); if (pd.Status == (int)StatusConstants.Modified) { pd.Status = (int)StatusConstants.ModificationSubmitted; } else { pd.Status = (int)StatusConstants.Submitted; } _CustomDetailService.Update(pd); _unitOfWork.Save(); //SendEmail_PODrafted(Id); if (returl == "PTS") { return(RedirectToAction("PendingToSubmit")); } else { return(RedirectToAction("Index")); } } return(View()); }
public ActionResult Delete(ReasonViewModel vm) { if (ModelState.IsValid) { var DispatchWaybillHeader = _DispatchWaybillHeaderService.GetDispatchWaybillHeader(vm.id); ActivityLog al = new ActivityLog() { ActivityType = (int)ActivityTypeContants.Deleted, CreatedBy = User.Identity.Name, CreatedDate = DateTime.Now, DocId = DispatchWaybillHeader.DispatchWaybillHeaderId, UserRemark = vm.Reason, Narration = "Sale Order is deleted with DocNo:" + DispatchWaybillHeader.DocNo, DocTypeId = new DocumentTypeService(_unitOfWork).FindByName(TransactionDocCategoryConstants.Packing).DocumentTypeId, UploadDate = DateTime.Now, }; _ActivityLogService.Create(al); var dispatchwaybillline = new DispatchWaybillLineService(_unitOfWork).GetDispatchWaybillLineForHeaderId(vm.id); foreach (var item in dispatchwaybillline) { new DispatchWaybillLineService(_unitOfWork).Delete(item.DispatchWaybillLineId); } new DispatchWaybillHeaderService(_unitOfWork).Delete(vm.id); try { _unitOfWork.Save(); } catch (Exception ex) { string message = _exception.HandleException(ex); ModelState.AddModelError("", message); return(PartialView("_Reason", vm)); } return(Json(new { success = true })); } return(PartialView("_Reason", vm)); }
public ActionResult CompleteSaleOrderCancelLine(SaleOrderCancelMasterDetailModel vm) { int SaleOrderCancelHeaderId = 0; if (ModelState.IsValid) { foreach (var item in vm.SaleOrderCancelViewModels) { decimal balqty = (from p in db.ViewSaleOrderBalanceForCancellation where p.SaleOrderLineId == item.SaleOrderLineId select p.BalanceQty).FirstOrDefault(); if (balqty < item.Qty) { return(View(vm).Danger("Qty Exceeding Bal Qty")); } if (item.Qty > 0) { SaleOrderCancelLine line = new SaleOrderCancelLine(); line.SaleOrderCancelHeaderId = item.SaleOrderCancelHeaderId; line.SaleOrderLineId = item.SaleOrderLineId ?? 0; line.Qty = item.Qty; line.CreatedDate = DateTime.Now; line.ModifiedDate = DateTime.Now; line.CreatedBy = User.Identity.Name; line.ModifiedBy = User.Identity.Name; line.Remark = item.LineRemark; _SaleOrderCancelLineService.Create(line); } SaleOrderCancelHeaderId = item.SaleOrderCancelHeaderId; } //_unitOfWork.Save(); SaleOrderCancelHeader header = new SaleOrderCancelHeaderService(_unitOfWork).Find(SaleOrderCancelHeaderId); if (header.Status != (int)StatusConstants.Drafted && header.Status != (int)StatusConstants.Import) { header.Status = (int)StatusConstants.Submitted; header.ModifiedBy = User.Identity.Name; header.ModifiedDate = DateTime.Now; } //Activity Log ActivityLog al = new ActivityLog() { ActivityType = (int)StatusConstants.Submitted, DocId = header.SaleOrderCancelHeaderId, UserRemark = header.Remark, Narration = "Sale Order Cancel Submitted with Cancel no:" + header.DocNo, CreatedDate = DateTime.Now, CreatedBy = User.Identity.Name, DocTypeId = header.DocTypeId, }; new SaleOrderCancelHeaderService(_unitOfWork).Update(header); _ActivityLogService.Create(al); _unitOfWork.Save(); return(RedirectToActionPermanent("Index", "SaleOrderCancelHeader")); } return(View(vm)); }
public IHttpActionResult ImportMultiChoices(ListQuestionMultiChoiceVM questions) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } try { string pattern = $"{questions.Course}-LO{{{{Order}}}}-Q"; foreach (var quest in questions.Questions) { string code = questions.Course; LearningOutcome learningOutcome; if (quest.LearningOutcomes == null || quest.LearningOutcomes.Count == 0) { learningOutcome = _learingOutcomeService.Find(_ => _.MainObjective.CourseCode == code && _.MainObjective.Order == 0, _ => _.MainObjective); quest.LearningOutcomes = new List <int> { learningOutcome.Id }; } else { learningOutcome = _learingOutcomeService.Find(_ => _.MainObjective.CourseCode == code && _.Order == quest.LearningOutcomes[0]); } IList <QuestionObjective> questionObjectives = new List <QuestionObjective>(); foreach (var lo in quest.LearningOutcomes) { foreach (var c in quest.Chapters) { questionObjectives.Add(new QuestionObjective { QuestionCode = quest.Code, LearningOutcomeId = lo, ChapterId = c }); } } code = pattern.Replace("{{Order}}", $"{learningOutcome.Order}"); code += _questionService.Search(_ => _.Code.Contains(code)).Count() + 1; Question question = ModelBuilder.CreateQuestion(quest); question.Code = code; question.CourseCode = questions.Course; question.IsExamQuestion = true; question.ImporterCode = "test_khanhkt"; question.QuestionObjectives = questionObjectives; question.Options = ModelBuilder.CreateOptions(quest.Options, question.Mark); if (!_questionService.Create(question)) { string data = JsonConvert.SerializeObject(quest); _activitylogService.Create(new ActivityLog { CreatedDate = DateTimeOffset.Now, Message = data }); ModelState.AddModelError (string.Empty, $"'{data}' Failed To Import"); } } if (ModelState.Count > 0) { return(BadRequest(ModelState)); } return(Ok()); } catch (Exception ex) { _loggingService.Write(ex); return(InternalServerError(ex)); } }