Example #1
0
 public ResultStatus CreateParametricData(
     InventoryTransfer inventoryTransfer,
     InventoryTransfer_Request request,
     out InventoryTransfer_Result result)
 {
     return(this.CreateParametricData(inventoryTransfer, (InventoryTransfer_Parameters)null, request, out result));
 }
        //public ActionResult Create([Bind(Include = "InventoryTransferId,TransferDateTime,InvLocationId,FinishInvLocationId,CustomerPn,PartDescription,TransferFromQty,TransferToQty,Carrier,TrackingInfo,ShipToAddress,Notes")] InventoryTransfer inventoryTransfer)
        public ActionResult Create(InventoryTransfer inventoryTransfer)
        {
            if (ModelState.IsValid)
            {
                List <FileInvDetail> fileInvDetails = new List <FileInvDetail>();
                for (int i = 0; i < Request.Files.Count; i++)
                {
                    var file = Request.Files[i];

                    if (file != null && file.ContentLength > 0)
                    {
                        var           fileName      = Path.GetFileName(file.FileName);
                        FileInvDetail fileInvDetail = new FileInvDetail()
                        {
                            FileName  = fileName,
                            Extension = Path.GetExtension(fileName),
                            Id        = Guid.NewGuid()
                        };
                        fileInvDetails.Add(fileInvDetail);

                        var path = Path.Combine(Server.MapPath("~/images/"), fileInvDetail.Id + fileInvDetail.Extension);
                        file.SaveAs(path);
                    }
                }

                inventoryTransfer.FileInvDetails = fileInvDetails;
                db.InventoryTransfers.Add(inventoryTransfer);
                db.SaveChanges();
                //return Redirect(returnUrl);
                return(RedirectToAction("Index"));
            }
            return(View());
            //return View(inventoryTransfer);
        }
Example #3
0
 public ResultStatus LoadESigDetails(
     InventoryTransfer inventoryTransfer,
     InventoryTransfer_Request request,
     out InventoryTransfer_Result result)
 {
     return(this.LoadESigDetails(inventoryTransfer, (InventoryTransfer_LoadESigDetails_Parameters)null, request, out result));
 }
Example #4
0
        //Menormalkan Quantity
        private void SetNormalQuantity(Session _currSession, InventoryTransfer _inventoryTransfer)
        {
            try
            {
                DateTime now = DateTime.Now;
                if (_inventoryTransfer != null)
                {
                    XPCollection <InventoryTransferLine> _locInventoryTransferLines = new XPCollection <InventoryTransferLine>(_currSession,
                                                                                                                               new GroupOperator(GroupOperatorType.And,
                                                                                                                                                 new BinaryOperator("InventoryTransfer", _inventoryTransfer)));

                    if (_locInventoryTransferLines != null && _locInventoryTransferLines.Count > 0)
                    {
                        foreach (InventoryTransferLine _locInventoryTransferLine in _locInventoryTransferLines)
                        {
                            if (_locInventoryTransferLine.Status == Status.Progress || _locInventoryTransferLine.Status == Status.Posted)
                            {
                                if (_locInventoryTransferLine.DQty > 0 || _locInventoryTransferLine.Qty > 0)
                                {
                                    _locInventoryTransferLine.DQty = 0;
                                    _locInventoryTransferLine.Qty  = 0;
                                    _locInventoryTransferLine.Save();
                                    _locInventoryTransferLine.Session.CommitTransaction();
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Tracing.Tracer.LogError(" BusinessObject = InventoryTransfer " + ex.ToString());
            }
        }
Example #5
0
 public ResultStatus GetActions(
     InventoryTransfer inventoryTransfer,
     InventoryTransfer_Request request,
     out InventoryTransfer_Result result)
 {
     return(this.GetActions(inventoryTransfer, (InventoryTransfer_Parameters)null, request, out result));
 }
Example #6
0
        public async Task <long> AddAsync(string tenant, InventoryTransfer model)
        {
            string connectionString = FrapidDbServer.GetConnectionString(tenant);
            string sql = @"EXECUTE inventory.post_transfer
                            @OfficeId, @UserId, @LoginId, @ValueDate, @BookDate, 
                            @ReferenceNumber, @StatementReference, 
                            @Details, @TransactionMasterId OUTPUT
                          ;";

            using (var connection = new SqlConnection(connectionString))
            {
                using (var command = new SqlCommand(sql, connection))
                {
                    command.Parameters.AddWithNullableValue("@OfficeId", model.OfficeId);
                    command.Parameters.AddWithNullableValue("@UserId", model.UserId);
                    command.Parameters.AddWithNullableValue("@LoginId", model.LoginId);
                    command.Parameters.AddWithNullableValue("@ValueDate", model.ValueDate);
                    command.Parameters.AddWithNullableValue("@BookDate", model.BookDate);
                    command.Parameters.AddWithNullableValue("@ReferenceNumber", model.ReferenceNumber);
                    command.Parameters.AddWithNullableValue("@StatementReference", model.StatementReference);

                    using (var details = this.GetDetails(model.Details))
                    {
                        command.Parameters.AddWithNullableValue("@Details", details, "inventory.transfer_type");
                    }

                    command.Parameters.Add("@TransactionMasterId", SqlDbType.BigInt).Direction = ParameterDirection.Output;

                    connection.Open();
                    await command.ExecuteNonQueryAsync().ConfigureAwait(false);

                    return(command.Parameters["@TransactionMasterId"].Value.To <long>());
                }
            }
        }
Example #7
0
        public ActionResult EditTransfer(InventoryTransfer item)
        {
            item.From = Warehouse.TryFind(item.FromId);
            item.To   = Warehouse.TryFind(item.ToId);

            if (!ModelState.IsValid)
            {
                if (Request.IsAjaxRequest())
                {
                    return(PartialView("Transfers/_MasterEditView", item));
                }

                return(View(item));
            }

            var movement = InventoryTransfer.Find(item.Id);

            movement.From             = item.From;
            movement.To               = item.To;
            movement.Store            = movement.From.Store;
            movement.Updater          = CurrentUser.Employee;
            movement.ModificationTime = DateTime.Now;
            movement.Comment          = item.Comment;

            using (var scope = new TransactionScope()) {
                movement.UpdateAndFlush();
            }

            return(PartialView("Transfers/_MasterView", movement));
        }
Example #8
0
        public static async Task <long> AddAsync(string tenant, InventoryTransfer model)
        {
            string connectionString = FrapidDbServer.GetConnectionString(tenant);
            string sql = @"SELECT * FROM inventory.post_transfer
                          (
                            @OfficeId, @UserId, @LoginId, @ValueDate, @BookDate, 
                            @ReferenceNumber, @StatementReference, 
                            ARRAY[{0}]
                          );";

            sql = string.Format(sql, GetParametersForDetails(model.Details));

            using (var connection = new NpgsqlConnection(connectionString))
            {
                using (var command = new NpgsqlCommand(sql, connection))
                {
                    command.Parameters.AddWithValue("@OfficeId", model.OfficeId);
                    command.Parameters.AddWithValue("@UserId", model.UserId);
                    command.Parameters.AddWithValue("@LoginId", model.LoginId);
                    command.Parameters.AddWithValue("@ValueDate", model.ValueDate);
                    command.Parameters.AddWithValue("@BookDate", model.BookDate);
                    command.Parameters.AddWithValue("@ReferenceNumber", model.ReferenceNumber);
                    command.Parameters.AddWithValue("@StatementReference", model.StatementReference);

                    command.Parameters.AddRange(AddParametersForDetails(model.Details).ToArray());

                    connection.Open();
                    var awaiter = await command.ExecuteScalarAsync().ConfigureAwait(false);

                    return(awaiter.To <long>());
                }
            }
        }
Example #9
0
        public ActionResult ConfirmTransfer(int id)
        {
            var item = InventoryTransfer.TryFind(id);

            if (item == null || item.IsCompleted || item.IsCancelled)
            {
                return(RedirectToAction("Transfers"));
            }

            item.Store = item.From.Store;

            try {
                item.Serial = (from x in InventoryTransfer.Queryable
                               where x.Store.Id == item.Store.Id
                               select x.Serial).Max() + 1;
            } catch {
                item.Serial = 1;
            }

            item.IsCompleted      = true;
            item.ModificationTime = DateTime.Now;

            using (var scope = new TransactionScope()) {
                item.UpdateAndFlush();

                foreach (var x in item.Details)
                {
                    InventoryHelpers.ChangeNotification(TransactionType.InventoryTransfer, item.Id,
                                                        item.ModificationTime, item.From, item.To, x.Product, -x.Quantity);
                }
            }

            return(RedirectToAction("Transfers"));
        }
Example #10
0
 public ResultStatus ProcessComputation(
     InventoryTransfer inventoryTransfer,
     InventoryTransfer_Request request,
     out InventoryTransfer_Result result)
 {
     return(this.ProcessComputation(inventoryTransfer, (InventoryTransfer_Parameters)null, request, out result));
 }
        public int Insert(InventoryTransfer inventoryTransfer)
        {
            InsertCommand.Parameters["@InventoryTransferNo"].Value = inventoryTransfer.InventoryTransferNo;
            InsertCommand.Parameters["@ItemCategoryID"].Value      = inventoryTransfer.ItemCategoryID;
            InsertCommand.Parameters["@ItemTypeID"].Value          = inventoryTransfer.ItemTypeID;
            InsertCommand.Parameters["@Description"].Value         = inventoryTransfer.Description;
            InsertCommand.Parameters["@UnitCost"].Value            = inventoryTransfer.UnitCost;
            InsertCommand.Parameters["@Qty"].Value        = inventoryTransfer.Qty;
            InsertCommand.Parameters["@UnitType"].Value   = inventoryTransfer.UnitType;
            InsertCommand.Parameters["@AmountCost"].Value = inventoryTransfer.AmountCost;
            InsertCommand.Parameters["@Status"].Value     = inventoryTransfer.Status;


            int returnValue = -1;

            try
            {
                InsertCommand.Connection.Open();
                returnValue = (int)InsertCommand.ExecuteScalar();
            }
            catch (SqlException ex)
            {
                Logger.Write(ex);
            }
            finally
            {
                InsertCommand.Connection.Close();
            }
            return(returnValue);
        }
        // GET: InventoryTransfers/Edit/5
        public ActionResult Edit(int?id)
        {
            //ViewBag.ReturnUrl = Request.UrlReferrer;
            var invtransfer = db.InventoryTransfers.SingleOrDefault(c => c.InventoryTransferId == id);

            var invLocation       = db.InvLocation.ToList();
            var finishInvLocation = db.FinishInvLocation.ToList();

            var viewModel = new InventoryTransferViewModel()
            {
                InventoryTransfer  = invtransfer,
                InvLocations       = invLocation,
                FinishInvLocations = finishInvLocation
            };

            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            //InventoryTransfer inventoryTransfer = db.InventoryTransfers.Find(id);
            InventoryTransfer inventoryTransfer = db.InventoryTransfers.Include(s => s.FileInvDetails).SingleOrDefault(x => x.InventoryTransferId == id);

            if (inventoryTransfer == null)
            {
                return(HttpNotFound());
            }
            return(View("Edit", viewModel));
            //return View(inventoryTransfer);
        }
        public int Update(InventoryTransfer inventoryTransfer)
        {
            UpdateCommand.Parameters["@ID"].Value = inventoryTransfer.ID;
            UpdateCommand.Parameters["@InventoryTransferNo"].Value = inventoryTransfer.InventoryTransferNo;
            UpdateCommand.Parameters["@ItemCategoryID"].Value      = inventoryTransfer.ItemCategoryID;
            UpdateCommand.Parameters["@ItemTypeID"].Value          = inventoryTransfer.ItemTypeID;
            UpdateCommand.Parameters["@Description"].Value         = inventoryTransfer.Description;
            UpdateCommand.Parameters["@UnitCost"].Value            = inventoryTransfer.UnitCost;
            UpdateCommand.Parameters["@Qty"].Value        = inventoryTransfer.Qty;
            UpdateCommand.Parameters["@UnitType"].Value   = inventoryTransfer.UnitType;
            UpdateCommand.Parameters["@AmountCost"].Value = inventoryTransfer.AmountCost;
            UpdateCommand.Parameters["@Status"].Value     = inventoryTransfer.Status;

            int returnValue = -1;

            try
            {
                UpdateCommand.Connection.Open();
                returnValue = UpdateCommand.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                Logger.Write(ex);
            }
            finally
            {
                UpdateCommand.Connection.Close();
            }
            return(returnValue);
        }
        public JsonResult Delete(int id)
        {
            try
            {
                InventoryTransfer inventoryTransfer = db.InventoryTransfers.Find(id);
                if (inventoryTransfer == null)
                {
                    Response.StatusCode = (int)HttpStatusCode.NotFound;
                    return(Json(new { Result = "Error" }));
                }

                //delete files from the file system

                foreach (var item in inventoryTransfer.FileInvDetails)
                {
                    String path = Path.Combine(Server.MapPath("~/images/"), item.Id + item.Extension);
                    if (System.IO.File.Exists(path))
                    {
                        System.IO.File.Delete(path);
                    }
                }

                db.InventoryTransfers.Remove(inventoryTransfer);
                db.SaveChanges();
                return(Json(new { Result = "OK" }));
            }
            catch (Exception ex)
            {
                return(Json(new { Result = "ERROR", Message = ex.Message }));
            }
        }
        //public ActionResult Edit([Bind(Include = "InventoryTransferId,TransferDateTime,InvLocationId,FinishInvLocationId,CustomerPn,PartDescription,TransferFromQty,TransferToQty,Carrier,TrackingInfo,ShipToAddress,Notes")] InventoryTransfer inventoryTransfer)
        public ActionResult Edit(InventoryTransfer inventoryTransfer)
        {
            if (ModelState.IsValid)
            {
                //New Files
                for (int i = 0; i < Request.Files.Count; i++)
                {
                    var file = Request.Files[i];

                    if (file != null && file.ContentLength > 0)
                    {
                        var           fileName      = Path.GetFileName(file.FileName);
                        FileInvDetail fileInvDetail = new FileInvDetail()
                        {
                            FileName            = fileName,
                            Extension           = Path.GetExtension(fileName),
                            Id                  = Guid.NewGuid(),
                            InventoryTransferId = inventoryTransfer.InventoryTransferId
                        };
                        var path = Path.Combine(Server.MapPath("~/images/"), fileInvDetail.Id + fileInvDetail.Extension);
                        file.SaveAs(path);

                        db.Entry(fileInvDetail).State = EntityState.Added;
                    }
                }

                db.Entry(inventoryTransfer).State = EntityState.Modified;
                db.SaveChanges();
                //return Redirect(returnUrl);
                return(RedirectToAction("Index"));
            }
            return(View());
            //return View(inventoryTransfer);
        }
        public async Task <ActionResult <InventoryTransfer> > Update([FromBody] InventoryTransfer _InventoryTransfer)
        {
            InventoryTransfer _InventoryTransferq = _InventoryTransfer;
            int a = _InventoryTransfer.InventoryTransferLines.Count();


            try
            {
                for (int i = 0; i < a; i++)
                {
                    InventoryTransferLine InventoryTransferLine = new InventoryTransferLine();
                    InventoryTransferLine = await(from c in _context.InventoryTransferLine
                                                  .Where(q => q.Id == _InventoryTransfer.InventoryTransferLines[i].Id)
                                                  select c).FirstOrDefaultAsync();
                    _context.Entry(InventoryTransferLine).CurrentValues.SetValues(_InventoryTransfer.InventoryTransferLines[i]);
                }

                _InventoryTransferq = await(from c in _context.InventoryTransfer
                                            .Where(q => q.Id == _InventoryTransfer.Id)
                                            select c
                                            ).FirstOrDefaultAsync();

                _context.Entry(_InventoryTransferq).CurrentValues.SetValues((_InventoryTransfer));

                //_context.InventoryTransfer.Update(_InventoryTransferq);
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(BadRequest($"Ocurrio un error:{ex.Message}"));
            }

            return(await Task.Run(() => Ok(_InventoryTransferq)));
        }
Example #17
0
 public InventoryTransferMethod(
     InventoryTransfer Cdo,
     InventoryTransferMethods Method,
     InventoryTransfer_Parameters Parameters)
 {
     this.Cdo           = Cdo;
     this.ServiceMethod = Method;
     this.Parameters    = Parameters;
 }
        public async Task <ActionResult <InventoryTransfer> > Update(Int64 id, InventoryTransfer _Contrato)
        {
            try
            {
                string     baseadress = config.Value.urlbase;
                HttpClient _client    = new HttpClient();
                _client.DefaultRequestHeaders.Add("Authorization", "Bearer " + HttpContext.Session.GetString("token"));

                var result = await _client.PutAsJsonAsync(baseadress + "api/InventoryTransfer/Update", _Contrato);

                string valorrespuesta = "";
                if (result.IsSuccessStatusCode)
                {
                    valorrespuesta = await(result.Content.ReadAsStringAsync());
                    _Contrato      = JsonConvert.DeserializeObject <InventoryTransfer>(valorrespuesta);
                }
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(BadRequest($"Ocurrio un error{ex.Message}"));
            }
            if (_Contrato.EstadoId == 8)
            {
                foreach (var item in _Contrato.InventoryTransferLines)
                {
                    KardexViale _KardexVialeP = new KardexViale();
                    string      baseadress    = config.Value.urlbase;
                    HttpClient  _client       = new HttpClient();
                    _client.DefaultRequestHeaders.Add("Authorization", "Bearer " + HttpContext.Session.GetString("token"));
                    var result = await _client.GetAsync(baseadress + "api/KardexViale/GetKardexByProductId/" + item.ProductId + "/" + Convert.ToInt32(HttpContext.Session.GetString("BranchId")));

                    if (result.IsSuccessStatusCode)
                    {
                        string valorrespuesta = await(result.Content.ReadAsStringAsync());
                        _KardexVialeP                    = JsonConvert.DeserializeObject <KardexViale>(valorrespuesta);
                        _KardexVialeP.QuantityOut        = item.QtyStock;
                        _KardexVialeP.QuantityEntry      = 0;
                        _KardexVialeP.SaldoAnterior      = _KardexVialeP.Total;
                        _KardexVialeP.Total              = _KardexVialeP.Total - item.QtyStock;
                        _KardexVialeP.Id                 = 0;
                        _KardexVialeP.KardexDate         = DateTime.Now;
                        _KardexVialeP.TypeOperationId    = 2;
                        _KardexVialeP.TypeOperationName  = "Salida";
                        _KardexVialeP.UsuarioCreacion    = HttpContext.Session.GetString("user");
                        _KardexVialeP.TypeOfDocumentId   = 2;
                        _KardexVialeP.TypeOfDocumentName = "Transferencia de Inventario";
                        _KardexVialeP.DocumentId         = _Contrato.Id;
                        result = await _client.PostAsJsonAsync(baseadress + "api/KardexViale/Insert", _KardexVialeP);
                    }
                }
            }
            HttpContext.Session.SetString("listadoproductos", "");
            return(Ok(_Contrato));
        }
Example #19
0
        public ActionResult CancelTransfer(int id)
        {
            var item = InventoryTransfer.Find(id);

            item.IsCancelled = true;

            using (var scope = new TransactionScope()) {
                item.UpdateAndFlush();
            }

            return(RedirectToAction("Transfers"));
        }
Example #20
0
        public ActionResult AddTransferItems(int id, string value)
        {
            var        entity         = InventoryTransfer.Find(id);
            SalesOrder sales_order    = null;
            int        sales_order_id = 0;
            int        count          = 0;

            if (entity.IsCompleted || entity.IsCancelled)
            {
                Response.StatusCode = 400;
                return(Content(Resources.ItemAlreadyCompletedOrCancelled));
            }

            if (int.TryParse(value, out sales_order_id))
            {
                sales_order = SalesOrder.TryFind(sales_order_id);
            }

            if (sales_order == null)
            {
                Response.StatusCode = 400;
                return(Content(Resources.SalesOrderNotFound));
            }

            using (var scope = new TransactionScope()) {
                foreach (var x in sales_order.Details)
                {
                    if (!x.Product.IsStockable)
                    {
                        continue;
                    }

                    var item = new InventoryTransferDetail {
                        Transfer    = entity,
                        Product     = x.Product,
                        ProductCode = x.ProductCode,
                        ProductName = x.ProductName,
                        Quantity    = x.Quantity,
                    };

                    item.Create();
                    count++;
                }
            }

            return(Json(new {
                id = id,
                value = string.Empty,
                itemsChanged = count
            }));
        }
        // GET: InventoryTransfers/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            InventoryTransfer inventoryTransfer = db.InventoryTransfers.Find(id);

            if (inventoryTransfer == null)
            {
                return(HttpNotFound());
            }
            return(View(inventoryTransfer));
        }
Example #22
0
 public ResultStatus GetEnvironment(
     InventoryTransfer cdo,
     InventoryTransfer_Request request,
     out InventoryTransfer_Result result)
 {
     result = (InventoryTransfer_Result)null;
     try
     {
         return(((IInventoryTransferService)this._Channel).GetEnvironment(this._UserProfile, cdo, request, out result));
     }
     catch (Exception ex)
     {
         return(this.OnThrowException(ex));
     }
 }
Example #23
0
        public ActionResult ConfirmLotSerialNumbers(int id)
        {
            var entity = LotSerialRequirement.Find(id);
            var qry    = from x in LotSerialTracking.Queryable
                         where x.Source == entity.Source &&
                         x.Reference == entity.Reference &&
                         x.Warehouse.Id == entity.Warehouse.Id &&
                         x.Product.Id == entity.Product.Id
                         select x;
            decimal sum = qry.Count() > 0 ? qry.Sum(x => x.Quantity) : 0;

            if (entity.Quantity != sum)
            {
                Response.StatusCode = 400;
                return(Content(Resources.ValidationFailed));
            }

            using (var scope = new TransactionScope()) {
                if (entity.Source == TransactionType.InventoryTransfer)
                {
                    var transfer = InventoryTransfer.Find(entity.Reference);

                    foreach (var serial in qry)
                    {
                        var item = new LotSerialTracking {
                            Source         = serial.Source,
                            Reference      = serial.Reference,
                            Date           = serial.Date,
                            Warehouse      = transfer.To,
                            Product        = serial.Product,
                            Quantity       = -serial.Quantity,
                            LotNumber      = serial.LotNumber,
                            ExpirationDate = serial.ExpirationDate,
                            SerialNumber   = serial.SerialNumber
                        };

                        item.Create();
                    }
                }

                entity.DeleteAndFlush();
            }

            return(Json(new {
                id = id,
                result = true
            }));
        }
        public async Task <IActionResult> GetInventoryTransferById(Int64 InventoryTransferId)
        {
            InventoryTransfer Items = new InventoryTransfer();

            try
            {
                Items = await _context.InventoryTransfer.Include(q => q.InventoryTransferLines).Where(q => q.Id == InventoryTransferId).FirstOrDefaultAsync();
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(BadRequest($"Ocurrio un error:{ex.Message}"));
            }


            return(await Task.Run(() => Ok(Items)));
        }
Example #25
0
        public ActionResult EditTransfer(int id)
        {
            var item = InventoryTransfer.Find(id);

            if (item.IsCompleted || item.IsCancelled)
            {
                return(RedirectToAction("Transfer", new {
                    id = item.Id
                }));
            }

            if (Request.IsAjaxRequest())
            {
                return(PartialView("Transfers/_MasterEditView", item));
            }
            else
            {
                return(View("Transfers/Edit", item));
            }
        }
Example #26
0
        public ResultStatus AddDataTransaction(InventoryTransfer cdo)
        {
            this.OnBeforeCall(nameof(AddDataTransaction), (DCObject)cdo, (Parameters)null, (Request)null);
            ResultStatus res;

            try
            {
                res = !this._IsTransactionOpened ? this.GetAddDataTransactionException() : this.AddMethod((Method) new InventoryTransferMethod(cdo, InventoryTransferMethods.AddDataTransaction, (InventoryTransfer_Parameters)null));
            }
            catch (Exception ex)
            {
                res = this.OnThrowException(ex);
            }
            if (res.IsSuccess)
            {
                Result result;
                this.OnAfterCall(nameof(AddDataTransaction), res, (DCObject)cdo, (Parameters)null, (Request)null, result);
            }
            return(res);
        }
Example #27
0
        public JsonResult AddTransferDetail(int movement, int product)
        {
            var p = Product.Find(product);

            var item = new InventoryTransferDetail {
                Transfer    = InventoryTransfer.Find(movement),
                Product     = p,
                ProductCode = p.Code,
                ProductName = p.Name,
                Quantity    = 1
            };

            using (var scope = new TransactionScope()) {
                item.CreateAndFlush();
            }

            return(Json(new {
                id = item.Id
            }));
        }
        public async Task <IActionResult> Delete([FromBody] InventoryTransfer _InventoryTransfer)
        {
            InventoryTransfer _InventoryTransferq = new InventoryTransfer();

            try
            {
                _InventoryTransferq = _context.InventoryTransfer
                                      .Where(x => x.Id == (Int64)_InventoryTransfer.Id)
                                      .FirstOrDefault();

                _context.InventoryTransfer.Remove(_InventoryTransferq);
                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                _logger.LogError($"Ocurrio un error: { ex.ToString() }");
                return(BadRequest($"Ocurrio un error:{ex.Message}"));
            }

            return(await Task.Run(() => Ok(_InventoryTransferq)));
        }
Example #29
0
        protected override OpResult _Store(InventoryTransfer _obj)
        {
            if (_obj == null)
            {
                return(OpResult.NotifyStoreAction(OpResult.ResultStatus.ObjectIsNull, _obj, "InventoryTransfer object cannot be created as it is null"));
            }

            if (Exists(_obj))
            {
                ExecuteNonQuery(GetQuery_UpdateQuery(_obj));
                return(OpResult.NotifyStoreAction(OpResult.ResultStatus.Updated, _obj));
            }

            ExecuteNonQuery(GetQuery_InsertQuery(_obj));
            if (_obj.InventoryTransferID == null)
            {
                _obj.InventoryTransferID = DbMgr.GetLastInsertID();
            }
            _obj.FromDb = true;
            return(OpResult.NotifyStoreAction(OpResult.ResultStatus.Created, _obj));
        }
        public void Receive(INVReceive_REQ request)
        {
            if (request == null)
            {
                return;
            }
            m_log.Info("Called");

            InventoryTransfer inventoryTransfer = new InventoryTransfer();

            try
            {
                inventoryTransfer.Receive(request);

                m_log.Info("Success");
            }
            catch (Exception ex)
            {
                m_log.Error(ex);
            }
        }
Example #31
0
        public ActionResult EditTransfer(InventoryTransfer item)
        {
            item.From = Warehouse.TryFind (item.FromId);
            item.To = Warehouse.TryFind (item.ToId);

            if (!ModelState.IsValid) {
                if (Request.IsAjaxRequest ()) {
                    return PartialView ("Transfers/_MasterEditView", item);
                }

                return View (item);
            }

            var movement = InventoryTransfer.Find (item.Id);

            movement.From = item.From;
            movement.To = item.To;
            movement.Store = movement.From.Store;
            movement.Updater = CurrentUser.Employee;
            movement.ModificationTime = DateTime.Now;
            movement.Comment = item.Comment;

            using (var scope = new TransactionScope ()) {
                movement.UpdateAndFlush ();
            }

            return PartialView ("Transfers/_MasterView", movement);
        }
Example #32
0
        public ActionResult NewTransfer(InventoryTransfer item)
        {
            if (!ModelState.IsValid) {
                return PartialView ("Transfers/_Create", item);
            }

            item.From = Warehouse.TryFind (item.FromId);
            item.To = Warehouse.TryFind (item.ToId);
            item.Store = item.From.Store;
            item.CreationTime = DateTime.Now;
            item.ModificationTime = item.CreationTime;
            item.Creator = CurrentUser.Employee;
            item.Updater = item.Creator;

            using (var scope = new TransactionScope ()) {
                item.CreateAndFlush ();
            }

            return PartialView ("Transfers/_CreateSuccesful", new InventoryTransfer { Id = item.Id });
        }