public IHttpActionResult ReceivedExpectedReceipt(ExpectedReceiptBindingModel ExpectedReceipt)
        {
            var result = _expectedReceiptService.ReceivedExpectedReceipt(ExpectedReceipt);

            if (result == false)
            {
                Log.Info($"{typeof(ExpectedReceiptController).FullName}||{UserEnvironment}||Update record not successful, Reference Number is duplicate.");
                return(Content(HttpStatusCode.Forbidden, "Reference Number is Duplicate"));
            }
            else
            {
                Log.Info($"{typeof(ExpectedReceiptController).FullName}||{UserEnvironment}||Update record successful.");
                return(Content(HttpStatusCode.OK, "ExpectedReceipt updated successfully"));
            }
        }
Example #2
0
        public bool Update(ExpectedReceiptBindingModel obj)
        {
            Warehouse warehouse = _warehouseRepository.GetByWarehouseCode(obj.WarehouseCode);

            ExpectedReceipt expectedReceipt = new ExpectedReceipt
            {
                Id = (int)obj.Id,
                ExpectedReceiptDate = (DateTime)obj.ExpectedReceiptDate,
                GoodsReceivedNumber = obj.GoodsReceivedNumber,
                Received            = obj.Received,
                Comments            = obj.Comments,
                Address             = obj.Address,
                CustomerId          = (int)obj.CustomerId,
                CustomerClientId    = obj.CustomerClientId,
                Supplier            = obj.Supplier,
                HaulierId           = obj.HaulierId,
                StatusId            = obj.StatusId,
                Haulier             = obj.Haulier,
                WarehouseId         = warehouse.Id,
                ReceivedBy          = obj.ReceivedBy,
                ReceivedDate        = obj.ReceivedDate,
                Planned             = obj.Planned,
                ReferenceNumber     = obj.ReferenceNumber,
                CreatedBy           = obj.CreatedBy,
                DateCreated         = obj.DateCreated,
                UpdatedBy           = obj.UpdatedBy,
                DateUpdated         = obj.DateUpdated,
                IsActive            = obj.IsActive,
                IsProcessing        = obj.IsProcessing,
                AutoReferenceNumber = obj.AutoReferenceNumber
            };

            if (IsDuplicate(expectedReceipt.ReferenceNumber, expectedReceipt.Id, expectedReceipt.CustomerId) == false)
            {
                return(_expectedReceiptRepository.Update(expectedReceipt));
            }
            else
            {
                return(false);
            }
        }
Example #3
0
        public bool ReceivedExpectedReceipt(ExpectedReceiptBindingModel obj)
        {
            var expectedReceipt = _expectedReceiptRepository.GetById(obj.Id ?? 0);

            if (expectedReceipt != null)
            {
                expectedReceipt.ReceivedDate = DateTime.Now;
                expectedReceipt.Received     = true;
                expectedReceipt.UpdatedBy    = obj.UpdatedBy;
                expectedReceipt.StatusId     = 1;
                expectedReceipt.ReceivedBy   = obj.ReceivedBy;
                expectedReceipt.UpdatedBy    = obj.UpdatedBy;
                expectedReceipt.IsProcessing = true;
                _expectedReceiptRepository.Update(expectedReceipt);
                return(true);
            }
            else
            {
                return(false);
            }
        }
        public IHttpActionResult Add(ExpectedReceiptBindingModel obj)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            long retId;

            //if(obj.Planned == false) obj.GoodsReceivedNumber = String.Format("GRN-{0:0000000000}", (Int32)(DateTime.UtcNow.Subtract(new DateTime(2018, 9, 13))).TotalSeconds);
            try
            {
                retId = _expectedReceiptService.Add(obj);
                if (retId == 0)
                {
                    Log.Info($"{typeof(ExpectedReceiptController).FullName}||{UserEnvironment}||Add record not successful, Reference Number is duplicate.");
                    return(Content(HttpStatusCode.Forbidden, "Reference Number is Duplicate"));
                }
                else
                {
                    Log.Info($"{typeof(ExpectedReceiptController).FullName}||{UserEnvironment}||Add record successful.");

                    var    response = this.Request.CreateResponse(HttpStatusCode.Created);
                    string test     = JsonConvert.SerializeObject(new
                    {
                        id      = retId,
                        grn     = _expectedReceiptService.GetById(retId).GoodsReceivedNumber,
                        message = "Expected Receipt added"
                    });
                    response.Content = new StringContent(test, Encoding.UTF8, "appliation/json");
                    return(ResponseMessage(response));
                }
            }
            catch (Exception ex)
            {
                return(Content(HttpStatusCode.BadRequest, ex.Message));
            }
        }
Example #5
0
        public long Add(ExpectedReceiptBindingModel bindingModel)
        {
            var warehouse = _warehouseRepository.GetByWarehouseCode(bindingModel.WarehouseCode);
            var haulier   = _haulierService.GetByHaulierCode(bindingModel.HaulierCode);
            Func <ExpectedReceipt, bool> res = x => x.CustomerId == bindingModel.CustomerId;
            var  count = _expectedReceiptRepository.GetList(res).Count();
            long?haulierId;
            var  grn = String.Format("GRN-{0:0000000000}", count + 1);
            var  arn = String.Format("ARN-{0:0000000000}", count + 1);

            if (bindingModel.HaulierId != null)
            {
                haulierId = bindingModel.HaulierId;
            }
            else
            {
                haulierId = haulier?.Id ?? null;
            }
            ExpectedReceipt expectedReceipt = new ExpectedReceipt
            {
                //Id = (int) bindingModel.Id,
                ExpectedReceiptDate = bindingModel.ExpectedReceiptDate,
                GoodsReceivedNumber = grn,
                AutoReferenceNumber = arn,
                Received            = bindingModel.Received,
                Comments            = bindingModel.Comments,
                Address             = bindingModel.Address,
                CustomerClientId    = bindingModel.CustomerClientId,
                Supplier            = bindingModel.Supplier,
                HaulierId           = haulierId,
                StatusId            = bindingModel.StatusId,
                CustomerId          = (int)bindingModel.CustomerId,
                WarehouseId         = warehouse.Id,
                ReceivedBy          = bindingModel.ReceivedBy,
                ReceivedDate        = bindingModel.ReceivedDate,
                Planned             = bindingModel.Planned,
                ReferenceNumber     = bindingModel.ReferenceNumber,
                CreatedBy           = bindingModel.CreatedBy,
                UpdatedBy           = bindingModel.UpdatedBy
            };

            if (IsDuplicate(expectedReceipt.ReferenceNumber, expectedReceipt.Id, expectedReceipt.CustomerId) == false)
            {
                return(_expectedReceiptRepository.Add(expectedReceipt));
            }
            else
            {
                Expression <Func <ExpectedReceipt, bool> > expectedRes = x => x.ReferenceNumber == expectedReceipt.ReferenceNumber && x.CustomerId == expectedReceipt.CustomerId && x.IsActive == false;
                var model = _expectedReceiptRepository.Get(expectedRes);

                if (model != null)
                {
                    expectedReceipt.Id       = model.Id;
                    expectedReceipt.IsActive = true;

                    _expectedReceiptRepository.Detach(model);

                    _expectedReceiptRepository.Update(expectedReceipt);
                    return(haulier.Id);
                }
                else
                {
                    return(0);
                }
            }

            //return _expectedReceiptRepository.Add(expectedReceipt);
        }