public async Task <IActionResult> Post([FromBody] Nominal value)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            value.Code = await _sequenceRepository.GetCode("Nominal");

            await _nominalRepository.InsertAsync(value);

            return(Created($"nominal/{value.NominalId}", value));
        }
        public async Task <IActionResult> Post([FromBody] AccountType value)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            if (value.Code == null)
            {
                value.Code = await _sequenceRepository.GetCode("AccountType");
            }

            await _accounttypeRepository.InsertAsync(value);

            return(Created($"accounttype/{value.AccountTypeId}", value));
        }
Exemple #3
0
        public async Task <IActionResult> Post([FromBody] Transit value)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            value.Code = await _sequenceRepository.GetCode("Transit");

            await _transitRepository.InsertAsync(value);

            return(Created($"transit/{value.TransitId}", value));
        }
        public async Task <IActionResult> Post([FromBody] Employee value)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            value.Code = await _sequenceRepository.GetCode("Employee");

            await _employeeRepository.InsertAsync(value);

            return(Created($"employee/{value.EmployeeId}", value));
        }
        public async Task <IActionResult> Post([FromBody] Location value)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            value.Code = await _sequenceRepository.GetCode("Location");

            await _locationRepository.InsertAsync(value);

            return(Created($"location/{value.LocationId}", value));
        }
        public async Task <IActionResult> CancelOrder([FromRoute] int code)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var value = _orderRepository.GetAll().Where(c => c.OrderId == code).FirstOrDefault();

            if (value == null)
            {
                return(BadRequest($"Order id {code} is not valid"));
            }
            var tran = _transactionRepository.Query().Where(i => i.TransactionId == value.TransactionId).FirstOrDefault();

            if (tran == null)
            {
                return(BadRequest("Transaction For order doesn't exist"));
            }
            var transit = _transitRepository.Query().Where(i => i.Method.ToLower() == value.Method.ToLower()).FirstOrDefault();

            if (transit == null)
            {
                return(BadRequest("There is no Tansit Nominal for Payment Method"));
            }
            value.Status = "Cancel";

            var tCode = await _sequenceRepository.GetCode("Transaction");

            var tell = new Transaction()
            {
                TransCode = tCode, Amount = value.Total, Method = value.Method,
                Source    = "Cancel", Type = "Credit", NominalId = tran.NominalId, TellerId = tran.TellerId,
                Reference = $"Cancel {tran.Reference}", UserId = value.UserId, Date = value.Date
            };

            var trans = new Transaction()
            {
                TransCode = tCode, Amount = value.Total, Method = value.Method,
                Source    = "Cancel", Type = "Debit", NominalId = transit.NominalId, TellerId = tran.TellerId,
                Reference = $"Cancel {tran.Reference}", UserId = value.UserId, Date = value.Date
            };

            await _transactionRepository.InsertAsync(tell);

            await _transactionRepository.InsertAsync(trans);

            await _orderRepository.UpdateAsync(value);

            return(Ok(value));
        }
        public async Task <IActionResult> Post([FromBody] Account value)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var type = await _accounttypeRepository.GetAsync(value.AccountTypeId);

            if (type == null)
            {
                return(BadRequest(new { Message = "Select a Valid Account Type" }));
            }
            value.Number = await _sequenceRepository.GetCode(type.SequenceId);

            await _accountRepository.InsertAsync(value);

            return(Created($"account/{value.AccountId}", value));
        }