public void DeleteUsedGoodTransaction(UsedGoodTransactionViewModel usedGoodTransaction)
        {
            UsedGoodTransaction selectedUsedGoodTransaction = _usedGoodTransactionRepository.GetById <int>(usedGoodTransaction.Id);

            _usedGoodTransactionRepository.Delete(selectedUsedGoodTransaction);
            _unitOfWork.SaveChanges();
        }
Exemple #2
0
        public void UpdateUsedGoodTransaction(UsedGoodTransactionViewModel usedGoodTransaction, int userID)
        {
            DateTime            serverTime           = DateTime.Now;
            Reference           updateTypeNew        = _referenceRepository.GetById(usedGoodTransaction.TypeReferenceId);
            UsedGoodTransaction manualTransactionOld = _usedGoodTransactionRepository.GetById(usedGoodTransaction.Id);
            UsedGood            usedGoodUpdated      = _usedGoodRepository.GetById(usedGoodTransaction.UsedGoodId);

            if (manualTransactionOld != null && updateTypeNew != null && usedGoodUpdated != null)
            {
                Reference updateTypeOld = _referenceRepository.GetById(manualTransactionOld.TypeReferenceId);

                if (updateTypeOld.Code == (DbConstant.REF_USEDGOOD_TRANSACTION_MANUAL_TYPE_PLUS))
                {
                    usedGoodUpdated.Stock -= manualTransactionOld.Qty;
                }
                else if (updateTypeOld.Code == DbConstant.REF_USEDGOOD_TRANSACTION_MANUAL_TYPE_MINUS)
                {
                    usedGoodUpdated.Stock += manualTransactionOld.Qty;
                }
                else if (updateTypeOld.Code == DbConstant.REF_USEDGOOD_TRANSACTION_TYPE_RECYCLE)
                {
                    usedGoodUpdated.Stock += manualTransactionOld.Qty;
                }
                else if (updateTypeOld.Code == DbConstant.REF_USEDGOOD_TRANSACTION_TYPE_SOLD)
                {
                    usedGoodUpdated.Stock += manualTransactionOld.Qty;
                }


                if (updateTypeNew.Code == DbConstant.REF_SPAREPART_TRANSACTION_MANUAL_TYPE_PLUS)
                {
                    usedGoodUpdated.Stock += usedGoodTransaction.Qty;
                }
                else if (updateTypeNew.Code == DbConstant.REF_SPAREPART_TRANSACTION_MANUAL_TYPE_MINUS)
                {
                    usedGoodUpdated.Stock -= usedGoodTransaction.Qty;
                }
                else if (updateTypeNew.Code == DbConstant.REF_USEDGOOD_TRANSACTION_TYPE_RECYCLE)
                {
                    usedGoodUpdated.Stock -= usedGoodTransaction.Qty;
                }
                else if (updateTypeNew.Code == DbConstant.REF_USEDGOOD_TRANSACTION_TYPE_SOLD)
                {
                    usedGoodUpdated.Stock -= usedGoodTransaction.Qty;
                }

                manualTransactionOld.TypeReferenceId = usedGoodTransaction.TypeReferenceId;
                manualTransactionOld.UsedGoodId      = usedGoodTransaction.UsedGoodId;
                manualTransactionOld.Qty             = usedGoodTransaction.Qty;
                manualTransactionOld.ItemPrice       = usedGoodTransaction.ItemPrice;
                manualTransactionOld.TotalPrice      = manualTransactionOld.Qty * manualTransactionOld.ItemPrice;
                manualTransactionOld.ModifyDate      = serverTime;
                manualTransactionOld.ModifyUserId    = userID;

                _usedGoodTransactionRepository.Update(manualTransactionOld);
                _usedGoodRepository.Update(usedGoodUpdated);
                _unitOfWork.SaveChanges();
            }
        }
Exemple #3
0
        public void InsertUsedGoodTransaction(UsedGoodTransactionViewModel usedGoodTransaction, int userID)
        {
            DateTime serverTime = DateTime.Now;

            usedGoodTransaction.CreateDate      = serverTime;
            usedGoodTransaction.CreateUserId    = userID;
            usedGoodTransaction.ModifyDate      = serverTime;
            usedGoodTransaction.ModifyUserId    = userID;
            usedGoodTransaction.TransactionDate = serverTime;
            usedGoodTransaction.TotalPrice      = usedGoodTransaction.Qty * usedGoodTransaction.ItemPrice;
            UsedGoodTransaction entity = new UsedGoodTransaction();

            Map(usedGoodTransaction, entity);
            _usedGoodTransactionRepository.Add(entity);
            Reference updateType      = _referenceRepository.GetById(usedGoodTransaction.TypeReferenceId);
            UsedGood  usedGoodUpdated = _usedGoodRepository.GetById(usedGoodTransaction.UsedGoodId);

            if (updateType != null && usedGoodUpdated != null)
            {
                if (updateType.Code == DbConstant.REF_USEDGOOD_TRANSACTION_MANUAL_TYPE_PLUS)
                {
                    usedGoodUpdated.Stock += usedGoodTransaction.Qty;
                }
                else if (updateType.Code == DbConstant.REF_USEDGOOD_TRANSACTION_MANUAL_TYPE_MINUS)
                {
                    usedGoodUpdated.Stock -= usedGoodTransaction.Qty;
                }
                else if (updateType.Code == DbConstant.REF_USEDGOOD_TRANSACTION_TYPE_RECYCLE)
                {
                    usedGoodUpdated.Stock -= usedGoodTransaction.Qty;
                }
                else if (updateType.Code == DbConstant.REF_USEDGOOD_TRANSACTION_TYPE_SOLD)
                {
                    usedGoodUpdated.Stock -= usedGoodTransaction.Qty;
                }
            }
            _usedGoodRepository.Update(usedGoodUpdated);
            _unitOfWork.SaveChanges();
        }