private void sequenceNumber(HOTransaction transactionApi)
        {
            SequenceNumberLog log = new SequenceNumberLog();

            log.StoreCode          = transactionApi.storeCode;
            log.LastNumberSequence = transactionApi.sequenceNumber;
            log.LastTransId        = transactionApi.transactionId;
            log.Date            = DateTime.Now;
            log.TransactionType = "HO Transaction";
            _context.SequenceNumberLog.Add(log);
            _context.SaveChanges();
        }
        public async Task <IActionResult> PostTransaction([FromBody] HOTransaction transactionApi)
        {
            APIResponse response = new APIResponse();

            try
            {
                Store store = _context.Store.Where(c => c.Code == transactionApi.storeCode).First();
                Models.InventoryTransaction transaction = new Models.InventoryTransaction();
                transaction.TransactionId       = transactionApi.transactionId;
                transaction.StoreCode           = transactionApi.storeCode;
                transaction.Remarks             = "";
                transaction.StoreName           = store.Name;
                transaction.TransactionTypeId   = RetailEnum.HOTransaction;
                transaction.TransactionTypeName = "HOTransaction";
                transaction.WarehouseOriginal   = store.WarehouseId;
                transaction.RequestDeliveryDate = DateTime.Now;
                transaction.TransactionDate     = DateTime.Now;

                transaction.Status   = "Pending";
                transaction.StatusId = RetailEnum.doStatusPending;

                try
                {
                    transaction.EmployeeCode = transactionApi.employeeId;
                    transaction.EmployeeName = transactionApi.employeeName;
                }
                catch { }


                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }
                //log record
                LogRecord log = new LogRecord();
                log.TimeStamp = DateTime.Now;
                log.Tag       = "HO Transaction";
                log.Message   = JsonConvert.SerializeObject(transactionApi);
                _context.LogRecord.Add(log);
                _context.InventoryTransaction.Add(transaction);
                await _context.SaveChangesAsync();

                /*
                 * //save Lines
                 * for (int i = 0; i < transactionApi.hoTransactionLines.Count; i++)
                 * {
                 *  Models.InventoryTransactionLines transactionLines = new Models.InventoryTransactionLines();
                 *  transactionLines.InventoryTransactionId = transaction.Id;
                 *  transactionLines.ArticleId = transactionApi.hoTransactionLines[i].article.articleId;
                 *  transactionLines.ArticleName = transactionApi.hoTransactionLines[i].article.articleName;
                 *  transactionLines.Qty = transactionApi.hoTransactionLines[i].quantity;
                 *  _context.InventoryTransactionLines.Add(transactionLines);
                 *  await _context.SaveChangesAsync();
                 * }
                 */
                response.code    = "1";
                response.message = "Sucess Add Data";

                //   WebAPIInforController.InforAPIController inforAPIController = new WebAPIInforController.InforAPIController(_context);
                //  inforAPIController.postRequestOrder(transactionApi, transaction.Id).Wait();
                this.sequenceNumber(transactionApi);
            }

            catch (Exception ex)
            {
                response.code    = "0";
                response.message = ex.ToString();
            }
            return(Ok(response));
        }