public RestSupplierItem GetSupplier(string suppNum) { var _prozValue = Program.CfgFile.getValue_AsdDouble("SellParams", "ProzGewin", 15); var _supplierNum = DeVesConverter.ToInteger(suppNum) ?? 0; var _supplierBiz = GParams.Instance.Supplier.SupplierGet_No(_supplierNum); if (_supplierBiz == null) { return(new RestSupplierItem()); } var _supplierPositionBizList = GParams.Instance.Position.PositionsGet(_supplierBiz.SupplierNo); var _soldEuroTotal = _supplierPositionBizList.Where(p => p.SoldFor.HasValue).Sum(p => p.SoldFor ?? 0); var _ownEuroPart = _soldEuroTotal * _prozValue / 100; var _supplierEuroPart = _soldEuroTotal - _ownEuroPart; return(new RestSupplierItem() { Id = _supplierBiz.SupplierId.ToString(), Number = _supplierBiz.SupplierNo, Salutation = _supplierBiz.Salutation, LastName = _supplierBiz.LastName, FirstName = _supplierBiz.FirstName, FullName = string.Format("{0} {1} {2}", _supplierBiz.Salutation, _supplierBiz.FirstName, _supplierBiz.LastName), Phone = _supplierBiz.Phone01, ReturnedToSupplier = _supplierBiz.ReturnedToSupplier.HasValue ? _supplierBiz.ReturnedToSupplier.Value.ToString("dd.MM.yyyy HH:mm:ss") : null, PosCountTotal = _supplierPositionBizList.Length, PosCountSold = _supplierPositionBizList.Count(p => p.SoldFor.HasValue), PosCountRetu = _supplierPositionBizList.Count(p => p.ReturnedToSupplierAt.HasValue && !p.SoldFor.HasValue), PosCountNotAdd = 0, IncomeTotal = _soldEuroTotal, Delivery = _ownEuroPart, ToBePaidOut = _supplierEuroPart }); }
public ReturnToSupplierResult ReturnPositionToSupplier(string suppNum, string posNum) { var _supplierNum = DeVesConverter.ToInteger(suppNum) ?? 0; var _positionNum = DeVesConverter.ToInteger(posNum) ?? 0; var _positionBiz = GParams.Instance.Position.PositionGet(_positionNum); if (_positionBiz == null) { return(new ReturnToSupplierResult() { Succeeded = ReturnToSupplierResult.SucceededTypes.Error, Message = string.Format("Position '{0}' nicht bekannt!", _positionNum) }); } var _supplierBiz = GParams.Instance.Supplier.SupplierGet_ByID(_positionBiz.SupplierId); if (_supplierBiz == null) { return(new ReturnToSupplierResult() { Succeeded = ReturnToSupplierResult.SucceededTypes.Error, Message = string.Format("Händler von Position '{0}' nicht gefunden!", _positionNum) }); } if (_supplierBiz.SupplierNo != _supplierNum) { return(new ReturnToSupplierResult() { Succeeded = ReturnToSupplierResult.SucceededTypes.Error, Message = string.Format("Position '{0}' gehört Händler '{1}'!", _positionNum, _supplierBiz.SupplierNo) }); } if (_positionBiz.SoldFor.HasValue) { return(new ReturnToSupplierResult() { Succeeded = ReturnToSupplierResult.SucceededTypes.Error, Message = string.Format("Position '{0}' bereits verkauft!", _positionNum) }); } if (_positionBiz.ReturnedToSupplierAt.HasValue) { return(new ReturnToSupplierResult() { Succeeded = ReturnToSupplierResult.SucceededTypes.Warning, Message = string.Format("Position '{0}' bereits zurückgegeben!", _positionNum) }); } GParams.Instance.Position.SetPositionsAsReturned(new BizPosition[] { _positionBiz }); return(new ReturnToSupplierResult() { Succeeded = ReturnToSupplierResult.SucceededTypes.Succeeded, Message = string.Format("Position '{0}' zurück gebucht...", _positionNum) }); }
public BizPosition GetPosition(string posNum) { var _positionNum = DeVesConverter.ToInteger(posNum) ?? 0; return(GParams.Instance.Position.PositionGet(_positionNum)); }