public bool EditRegionalRequestDetail(RegionalRequestDetail regionalRequestDetail) { _unitOfWork.RegionalRequestDetailRepository.Edit(regionalRequestDetail); CalculateAllocation(regionalRequestDetail); _unitOfWork.Save(); return(true); }
public bool AddCommodityFdp(RegionalRequestDetail requestDetail) { if (AddRegionalRequestDetailWithBeneficiary(requestDetail)) { var detail = _unitOfWork.RegionalRequestDetailRepository.FindBy(m => m.RegionalRequestID == requestDetail.RegionalRequestID).First(); var commodityDetail = _unitOfWork.RequestDetailCommodityRepository.FindBy(m => m.RegionalRequestDetailID == detail.RegionalRequestDetailID); if (commodityDetail != null) { foreach (var requestDetailCommodity in commodityDetail) { requestDetail.RequestDetailCommodities.Add(new RequestDetailCommodity { CommodityID = requestDetailCommodity.CommodityID, Amount = requestDetail.Beneficiaries * GetCommodityRation(requestDetail.RegionalRequestID, requestDetailCommodity.CommodityID) }); } } _unitOfWork.Save(); return(true); } return(false); }
public bool DeleteRegionalRequestDetail(RegionalRequestDetail regionalRequestDetail) { if (regionalRequestDetail == null) { return(false); } _unitOfWork.RegionalRequestDetailRepository.Delete(regionalRequestDetail); _unitOfWork.Save(); return(true); }
private bool CalculateAllocation(RegionalRequestDetail requestDetail) { foreach (var requestCommodity in requestDetail.RequestDetailCommodities) { var rationAmount = GetCommodityRation(requestDetail.RegionalRequestID, requestCommodity.CommodityID); var target = _unitOfWork.RequestDetailCommodityRepository.FindById(requestCommodity.RequestCommodityID); //decimal ration = 0; //ration = GetRationDependingOnPreference(rationAmount); target.Amount = requestDetail.Beneficiaries * rationAmount; } return(true); }
public bool AddRegionalRequestDetailWithBeneficiary(RegionalRequestDetail regionalRequestDetail) { var oldRequestDetail = _unitOfWork.RegionalRequestDetailRepository.FindBy(m => m.RegionalRequestID == regionalRequestDetail.RegionalRequestID && m.Fdpid == regionalRequestDetail.Fdpid); if (oldRequestDetail.Count > 0) { return(false); } _unitOfWork.RegionalRequestDetailRepository.Add(regionalRequestDetail); _unitOfWork.Save(); return(true); }
public bool AddRegionalRequestDetail(RegionalRequestDetail regionalRequestDetail) { _unitOfWork.RegionalRequestDetailRepository.Add(regionalRequestDetail); _unitOfWork.Save(); return(true); }