/// <summary> /// Insert new evaluation. /// </summary> /// <param name="model">The evaluation information value.</param> public ResultViewModel Save(EvaluationRequestViewModel model) { var result = new ResultViewModel(); using (TransactionScope scope = new TransactionScope()) { var evaluation = _mapper.Map <EvaluationRequestViewModel, Data.Pocos.Evaluation>(model); evaluation.DocNo = this.GetDocNo(); evaluation.EvaPercentageId = this.GetEvaluationPercentage(); evaluation.Status = ConstantValue.EvaWaiting; evaluation.Category = string.Join(",", model.Categorys); evaluation.CreateBy = _token.EmpNo; evaluation.CreateDate = DateTime.Now; _unitOfWork.GetRepository <Data.Pocos.Evaluation>().Add(evaluation); _unitOfWork.Complete(); _evaluationAssign.SaveList(evaluation.Id, model.EvaluatorPurchasing, this.GetEvaluatorGroup(model.EvaluatorList, model.EvaluatorGroup.HasValue ? model.EvaluatorGroup.Value : 0)); _vendorFilter.UpdateStatus(model.PeriodItemId.Value, model.ComCode, model.PurchasingOrg, model.WeightingKey, model.VendorNo); this.SetEvaluationTemplateFlagUsing(evaluation.EvaluationTemplateId.Value); if (model.ImageList != null && model.ImageList.Count > 0) { UtilityService.SaveImages(model.ImageList, evaluation.Id, ConstantValue.EvaluationProcessCode); } _unitOfWork.Complete(scope); } _unitOfWork.GetRepository <EvaluationTemplate>().ReCache(); return(result); }
/// <summary> /// Validate model data logic. /// </summary> /// <param name="model">The evaluation information value.</param> /// <returns></returns> public ResultViewModel ValidateData(EvaluationRequestViewModel model) { var result = new ResultViewModel(); if (model.EvaluatorGroup == 0 && model.EvaluatorList == null) { result = UtilityService.InitialResultError(MessageValue.EvaluatorEmpty, (int)System.Net.HttpStatusCode.BadRequest); } return(result); }
public IActionResult Save([FromBody] EvaluationRequestViewModel model) { IActionResult response; var result = _evaluation.ValidateData(model); if (result.IsError) { response = BadRequest(result); } else { response = Ok(_evaluation.Save(model)); } return(response); }