private bool AddMaterialDetail(List <ImportMaterialDetail> importMaterialDetail, ImportMaterial import, IUnitOfWork uow) { if (importMaterialDetail == null) { return(false); } ImportMaterialDetailValidate importDetail = new ImportMaterialDetailValidate(); Dictionary <string, List <ErrorData> > lstResult = new Dictionary <string, List <ErrorData> >(); foreach (var item in importMaterialDetail) { var result = importDetail.CheckValidate(item); if (result != null) { lstResult.Add(item.Material.MaterialName, result); } } if (lstResult.Any()) { var listerror = lstResult.FirstOrDefault(); return(false); // PopupMessage.Instance.LoadMessage(listerror.Value); } try { var quatity = 0; foreach (var item in importMaterialDetail) { item.ImportId = import.ImportId; quatity++; import.Total += item.Thanhtien; uow.ImportMaterialDetailRepository.Insert(item); } import.Quantity = quatity; } catch (Exception ex) { labelNotify1.SetText(UI.createfailed, ToolBoxCS.LabelNotify.EnumStatus.Failed); return(false); } return(true); }
private bool UpdateMaterialDetailImport(List <ImportMaterialDetail> importMaterialDetail, ImportMaterial import, IUnitOfWork uow) { if (importMaterialDetail == null) { return(false); } ImportMaterialDetailValidate importDetail = new ImportMaterialDetailValidate(); Dictionary <string, List <ErrorData> > lstResult = new Dictionary <string, List <ErrorData> >(); foreach (var item in importMaterialDetail) { var result = importDetail.CheckValidateUpdate(item, uow); if (result.Count > 0) { lstResult.Add(item.Material.MaterialName, result); } } if (lstResult.Count > 0) { var listerror = lstResult.FirstOrDefault(); if (_PopupMessage == null) { _PopupMessage = new PopupMessage(); } _PopupMessage.LoadMessage(listerror.Value); } try { foreach (var item in importMaterialDetail) { uow.ImportMaterialDetailRepository.Edit(item); } } catch (Exception) { labelNotify1.SetText(UI.updatefailed, ToolBoxCS.LabelNotify.EnumStatus.Failed); return(false); } return(true); }
private bool DeleteDetailImport(List <ImportMaterialDetail> importMaterialDetail, ImportMaterial import, IUnitOfWork uow) { if (importMaterialDetail == null) { return(false); } ImportMaterialDetailValidate importDetail = new ImportMaterialDetailValidate(); try { foreach (var item in importMaterialDetail) { uow.ImportMaterialDetailRepository.Delete(item); } } catch (Exception) { labelNotify1.SetText(UI.updatefailed, ToolBoxCS.LabelNotify.EnumStatus.Failed); return(false); } return(true); }