public ResultViewModel GetAssetStockOpname(AssetOpnameTransactionViewModel obj)
        {
            ResultViewModel result = new ResultViewModel();

            result.assetOpname = new List <AssetOpnameTransactionViewModel>();
            if (obj != null)
            {
                var stockopname   = assetlocationcomponent.GetAssetLocationOpnameLatestByLocationID(obj.LocationID, obj.CreatedDate);
                var assetlocation = assetlocationcomponent.GetAssetLatestLocationByLocationID(obj.LocationID, obj.CreatedDate);
                if (stockopname != null)
                {
                    foreach (var item in assetlocation)
                    {
                        var asset = assetcomponent.GetAssetByID(item.AssetLatest.AssetID);
                        item.AssetName    = asset.Asset.Name;
                        item.AssetBarcode = asset.Asset.Code;
                        int count = stockopname.Where(p => p.AssetLatest.AssetID == item.AssetLatest.AssetID).Count();
                        if (count > 0)
                        {
                            item.isOpname = true;
                        }
                        else
                        {
                            item.isOpname = false;
                        }
                    }
                }

                result.assetlocation = assetlocation;
            }
            return(result);
        }
Пример #2
0
        public HttpResponseMessage GetAssetStockOpname(HttpRequestMessage request, [FromBody] AssetOpnameTransactionViewModel obj)
        {
            var result = opnameservice.GetAssetStockOpname(obj);
            HttpResponseMessage response = new HttpResponseMessage();

            response = request.CreateResponse(HttpStatusCode.OK, new { success = true, obj = result });
            return(response);
        }
Пример #3
0
        public HttpResponseMessage OpnameAsset(HttpRequestMessage request, [FromBody] AssetOpnameTransactionViewModel obj)
        {
            obj.CreatedDate = _dateExtension.GetDateTime();
            var result = opnameservice.OpnameAsset(obj);
            HttpResponseMessage response = new HttpResponseMessage();

            response = request.CreateResponse(HttpStatusCode.OK, new { success = true, obj = result });
            return(response);
        }
        public ResultViewModel OpnameAsset(AssetOpnameTransactionViewModel obj)
        {
            ResultViewModel result = new ResultViewModel();
            List <AssetOpnameTransaction> assetopname = new List <AssetOpnameTransaction>();
            IDbContextTransaction         transaction = _context.Database.BeginTransaction();

            if (obj != null)
            {
                var listAsset = _context.Asset.Where(p => p.Code.Any(o => obj.AssetOpname.Contains(p.Code))).ToList();
                if (listAsset != null)
                {
                    if (listAsset.Count() == obj.AssetOpname.Count())
                    {
                        foreach (var item in listAsset.ToList())
                        {
                            var asset = obj.AssetIDList.Where(p => p == item.ID).FirstOrDefault();
                            if (asset != null)
                            {
                                AssetOpnameTransaction model = new AssetOpnameTransaction();
                                model.AssetID     = item.ID;
                                model.LocationID  = obj.LocationID;
                                model.CreatedDate = obj.CreatedDate;
                                model.RecordDate  = obj.CreatedDate.Date.ToString("ddMMyyyy");
                                model.CreatedBy   = obj.CreatedBy;
                                assetopname.Add(model);
                                listAsset.Remove(item);
                            }
                        }

                        foreach (var item in assetopname)
                        {
                            _context.AssetOpnameTransaction.Add(item);
                            _context.SaveChanges();
                        }
                        transaction.Commit();
                        result.status = true;
                    }
                }
            }
            return(result);
        }