Beispiel #1
0
        public void ThrowExceptionIfExist(ClosedReceiptViewModel model)
        {
            ConditionFilter <ClosedReceipt, long> condition = new ConditionFilter <ClosedReceipt, long>()
            {
                Query = (entity => entity.DocumentId == model.DocumentId &&
                         entity.ReceiptNumber == model.ReceiptNumber)
            };
            var existEntity = this._closedReceiptRepository.Get(condition).FirstOrDefault();

            if (existEntity != null)
            {
                throw new ItemAlreadyExistException((int)ErrorCodeEnum.ThisReceiptNumberClosed);
            }
        }
Beispiel #2
0
        public ClosedReceiptViewModel Add(ClosedReceiptViewModel model)
        {
            this.ThrowExceptionIfExist(model);

            Document document         = this._documentRepository.Get(model.DocumentId);
            int      maxReceiptNumber = document.FirstNumber + (document.CountReceipts - 1);

            if (model.ReceiptNumber > maxReceiptNumber || model.ReceiptNumber < document.FirstNumber)
            {
                throw new GeneralException((int)ErrorCodeEnum.ThisReceiptNumberOutOfRange);
            }

            var entity = model.ToEntity();

            entity = this._closedReceiptRepository.Add(entity);
            this._unitOfWork.Commit();
            return(entity.ToModel());
        }
Beispiel #3
0
 public void Delete(ClosedReceiptViewModel model)
 {
     throw new NotImplementedException();
 }
Beispiel #4
0
 public ClosedReceiptViewModel Update(ClosedReceiptViewModel model)
 {
     throw new NotImplementedException();
 }