Exemple #1
0
        public MvcPurchaseModel GetPurchasae(int Id)
        {
            HttpResponseMessage res             = GlobalVeriables.WebApiClient.GetAsync("APIPurchase/" + Id.ToString()).Result;
            MvcPurchaseModel    perchacaseModel = res.Content.ReadAsAsync <MvcPurchaseModel>().Result;

            return(perchacaseModel);
        }
Exemple #2
0
        public JsonResult UpdateOrderStaus(int PurchaseId, string Status)
        {
            OrderStatusTable orderstatusModel = new OrderStatusTable();

            try
            {
                HttpResponseMessage res          = GlobalVeriables.WebApiClient.GetAsync("APIPurchase/" + PurchaseId.ToString()).Result;
                MvcPurchaseModel    puchasemodel = res.Content.ReadAsAsync <MvcPurchaseModel>().Result;
                puchasemodel.Status = Status;

                if (puchasemodel == null)
                {
                    return(new JsonResult {
                        Data = new { Status = "Fail", Message = "No record Found" }
                    });
                }

                HttpResponseMessage response = GlobalVeriables.WebApiClient.PutAsJsonAsync("APIPurchase/" + PurchaseId, puchasemodel).Result;

                if (response.StatusCode == System.Net.HttpStatusCode.OK)
                {
                    GlobalVeriables.WebApiClient.DefaultRequestHeaders.Clear();

                    if (puchasemodel != null)
                    {
                        orderstatusModel.PurchaseOrderId = puchasemodel.PurchaseOrderID;
                        orderstatusModel.Status          = Status;
                        orderstatusModel.CreatedDate     = DateTime.Now;
                        orderstatusModel.CompanyId       = Convert.ToInt32(Session["CompayID"]);
                        orderstatusModel.UserId          = 1;
                        orderstatusModel.Type            = "Purchase";
                        HttpResponseMessage response2 = GlobalVeriables.WebApiClient.PostAsJsonAsync("InsertOrderStatus", orderstatusModel).Result;

                        if (response2.StatusCode == System.Net.HttpStatusCode.OK)
                        {
                            return(new JsonResult {
                                Data = new { Status = "Success", Message = "Change status to" + Status }
                            });
                        }
                        else
                        {
                            return(new JsonResult {
                                Data = new { Status = "Fail", Message = "fail to change try again" }
                            });
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                return(new JsonResult {
                    Data = new { Status = "Fail", ex.Message }
                });
            }

            return(Json("", JsonRequestBehavior.AllowGet));
        }
Exemple #3
0
        public ActionResult AddPending(PendingModel pendingModel)
        {
            try
            {
                HttpResponseMessage res          = GlobalVeriables.WebApiClient.GetAsync("APIPurchase/" + pendingModel.Purchase_QuataionId.ToString()).Result;
                MvcPurchaseModel    puchasemodel = res.Content.ReadAsAsync <MvcPurchaseModel>().Result;
                puchasemodel.Status = pendingModel.Status;

                if (puchasemodel == null)
                {
                    return(new JsonResult {
                        Data = new { Status = "Fail", Message = "No record Found" }
                    });
                }
                HttpResponseMessage response = GlobalVeriables.WebApiClient.PutAsJsonAsync("APIPurchase/" + pendingModel.Purchase_QuataionId, puchasemodel).Result;

                if (response.StatusCode == System.Net.HttpStatusCode.OK)
                {
                    PendingTable pending = new PendingTable();
                    pending.Purchase_QuataionId = pendingModel.Purchase_QuataionId;
                    pending.FromDate            = pendingModel.FromDate;
                    pending.ToDate      = pendingModel.ToDate;
                    pending.Description = pendingModel.Description;
                    pending.Status      = pendingModel.Status;
                    HttpResponseMessage postPendintTableResponse = GlobalVeriables.WebApiClient.PostAsJsonAsync("Addpending", pending).Result;

                    if (postPendintTableResponse.StatusCode == System.Net.HttpStatusCode.OK)
                    {
                        return(new JsonResult {
                            Data = new { Status = "Success", Message = "Status is change successfully to pending" }
                        });
                    }
                }
                else
                {
                    return(new JsonResult {
                        Data = new { Status = "Fail", Message = "Fail to update status in purchase" }
                    });
                }
            }
            catch (Exception ex)
            {
                return(new JsonResult {
                    Data = new { Status = "Fail", Message = ex.Message }
                });
            }

            return(Json("", JsonRequestBehavior.AllowGet));
        }
Exemple #4
0
        public IHttpActionResult GetQutationCount()
        {
            MvcPurchaseModel purchase = new MvcPurchaseModel();

            int puchaseId = db.PurchaseOrderTables.ToList().Count() + 1;

            purchase.PurchaseID = puchaseId.ToString();

            if (puchaseId == 0)
            {
                return(Ok(purchase));
            }
            else
            {
                return(Ok(purchase));
            }
        }
        public IHttpActionResult GetPurchaseTable(int id)
        {
            MvcPurchaseModel puchaseorder = new MvcPurchaseModel();

            try
            {
                var ob = db.PurchaseOrderTables.Find(id);
                puchaseorder.PurchaseID        = ob.PurchaseID;
                puchaseorder.PurchaseOrderID   = ob.PurchaseOrderID;
                puchaseorder.PurchaseRefNumber = ob.PurchaseRefNumber;
                puchaseorder.PurchaseDate      = ob.PurchaseDate;
                puchaseorder.PurchaseDueDate   = ob.PurchaseDueDate;
                puchaseorder.PurchaseSubTotal  = ob.PurchaseSubTotal;
                puchaseorder.Vat6  = ob.Vat6;
                puchaseorder.Vat21 = ob.Vat21;
                puchaseorder.PurchaseDiscountAmount = ob.PurchaseDiscountAmount;
                puchaseorder.PurchaseTotoalAmount   = ob.PurchaseTotoalAmount;
                puchaseorder.PurchaseVenderNote     = ob.PurchaseVenderNote;
                puchaseorder.Status     = ob.Status;
                puchaseorder.UserId     = ob.UserId;
                puchaseorder.CompanyId  = ob.CompanyId;
                puchaseorder.VenderId   = ob.VenderId;
                puchaseorder.Type       = ob.Type;
                puchaseorder.PurchaseID = ob.PurchaseID;

                if (puchaseorder == null)
                {
                    return(NotFound());
                }

                return(Ok(puchaseorder));
            }
            catch (Exception)
            {
                return(NotFound());
            }
        }
Exemple #6
0
        public JsonResult Proceeds(int Id, string Status)
        {
            MvcPurchaseModel            PurchaseModel        = new MvcPurchaseModel();
            List <MvcPurchaseViewModel> _PurcchaseDetailList = new List <MvcPurchaseViewModel>();

            InvoiceTable    InvoiceTable    = new InvoiceTable();
            MVCInvoiceModel mvcInvoiceModel = new MVCInvoiceModel();

            PurchaseOrderTable purchasemodel = new PurchaseOrderTable();

            try
            {
                PurchaseModel        = GetPurchasae(Id);
                _PurcchaseDetailList = GetPurchaseDetail(Id);
                if (PurchaseModel != null)
                {
                    BillTable billtable = new BillTable();

                    billtable.CompanyId      = PurchaseModel.CompanyId;
                    billtable.UserId         = Convert.ToInt32(Session["LoginUserID"]);
                    billtable.Bill_ID        = PurchaseModel.PurchaseID.ToString();
                    billtable.PurchaseId     = PurchaseModel.PurchaseOrderID;
                    billtable.VenderId       = PurchaseModel.VenderId;
                    billtable.RefNumber      = PurchaseModel.PurchaseRefNumber;
                    billtable.BillDate       = Convert.ToDateTime(PurchaseModel.PurchaseDate);
                    billtable.BillDueDate    = Convert.ToDateTime(PurchaseModel.PurchaseDueDate);
                    billtable.SubTotal       = PurchaseModel.PurchaseSubTotal;
                    billtable.DiscountAmount = PurchaseModel.PurchaseTotoalAmount;
                    billtable.TotalAmount    = PurchaseModel.PurchaseTotoalAmount;
                    billtable.CustomerNote   = PurchaseModel.PurchaseVenderNote;
                    billtable.TotalVat6      = PurchaseModel.Vat6;
                    billtable.TotalVat21     = PurchaseModel.Vat21;
                    billtable.Status         = "accepted";
                    billtable.Type           = StatusEnum.Goods.ToString();
                    // bill Api
                    HttpResponseMessage response      = GlobalVeriables.WebApiClient.PostAsJsonAsync("AddBill", billtable).Result;
                    BillTable           billviewmodel = response.Content.ReadAsAsync <BillTable>().Result;


                    if (response.StatusCode == System.Net.HttpStatusCode.OK)
                    {
                        if (_PurcchaseDetailList != null)
                        {
                            foreach (var item in _PurcchaseDetailList)
                            {
                                BillDetailTable billdetailtable = new BillDetailTable();

                                billdetailtable.BillID      = billviewmodel.BilID;
                                billdetailtable.ItemId      = item.PurchaseItemId;
                                billdetailtable.Description = item.PurchaseDescription;
                                billdetailtable.Quantity    = item.PurchaseQuantity;
                                billdetailtable.Rate        = item.PurchaseItemRate;
                                billdetailtable.Total       = item.PurchaseTotal;
                                billdetailtable.Type        = item.Type;
                                billdetailtable.RowSubTotal = Convert.ToDouble(item.RowSubTotal);
                                billdetailtable.Vat         = item.PurchaseVatPercentage;
                                billdetailtable.ServiceDate = item.ServiceDate;
                                // APIBill
                                HttpResponseMessage responsses = GlobalVeriables.WebApiClient.PostAsJsonAsync("AddBillDetail", billdetailtable).Result;

                                if (responsses.StatusCode != System.Net.HttpStatusCode.OK)
                                {
                                    return(new JsonResult {
                                        Data = new { Status = "Fail", Message = "Fail to Proceed" }
                                    });
                                }
                            }

                            if (UpdateQuatationStation(Id))
                            {
                                return(new JsonResult {
                                    Data = new { Status = "Success", Message = "Proceed successfullly" }
                                });
                            }
                        }
                    }
                }
            }

            catch (Exception)
            {
                throw;
            }

            return(new JsonResult {
                Data = new { Status = "Success", Message = "Proceed successfullly" }
            });
        }
Exemple #7
0
        public JsonResult GetPendingItem(int PurchaseId)
        {
            int Contectid, CompanyID = 0;
            MvcPurchaseViewModel purchaseviewModel = new MvcPurchaseViewModel();

            try
            {
                var idd = Session["ClientId"];
                var cdd = Session["CompayID"];
                if (Session["ClientId"] != null && Session["CompayID"] != null)
                {
                    Contectid = Convert.ToInt32(Session["ClientId"]);
                    CompanyID = Convert.ToInt32(Session["CompayID"]);
                }
                else
                {
                    //  return RedirectToAction("Index", "Login");
                }

                GlobalVeriables.WebApiClient.DefaultRequestHeaders.Remove("CompayID");
                GlobalVeriables.WebApiClient.DefaultRequestHeaders.Add("CompayID", cdd.ToString());

                HttpResponseMessage response     = GlobalVeriables.WebApiClient.GetAsync("ApiConatacts/" + idd.ToString()).Result;
                MVCContactModel     contectmodel = response.Content.ReadAsAsync <MVCContactModel>().Result;

                HttpResponseMessage responseCompany = GlobalVeriables.WebApiClient.GetAsync("APIComapny/" + cdd.ToString()).Result;
                MVCCompanyInfoModel companyModel    = responseCompany.Content.ReadAsAsync <MVCCompanyInfoModel>().Result;

                ViewBag.Contentdata = contectmodel;
                ViewBag.Companydata = companyModel;
                DateTime InvoiceDate = new DateTime();
                InvoiceDate = DateTime.Now;
                purchaseviewModel.PurchaseDate    = InvoiceDate;
                purchaseviewModel.PurchaseDueDate = InvoiceDate.AddDays(+15);

                HttpResponseMessage res = GlobalVeriables.WebApiClient.GetAsync("APIPurchase/" + PurchaseId.ToString()).Result;
                MvcPurchaseModel    ob  = res.Content.ReadAsAsync <MvcPurchaseModel>().Result;

                purchaseviewModel.PurchaseOrderID             = ob.PurchaseOrderID;
                purchaseviewModel.Purchase_ID                 = ob.PurchaseID;
                purchaseviewModel.PurchaseDate                = Convert.ToDateTime(ob.PurchaseDate);
                purchaseviewModel.PurchaseDueDate             = (DateTime)ob.PurchaseDueDate;
                purchaseviewModel.PurchaseRefNumber           = ob.PurchaseRefNumber;
                purchaseviewModel.PurchaseSubTotal            = ob.PurchaseSubTotal;
                purchaseviewModel.PurchaseDiscountPercenteage = ob.PurchaseDiscountPercenteage;
                purchaseviewModel.PurchaseDiscountAmount      = ob.PurchaseDiscountAmount;
                purchaseviewModel.PurchaseVatPercentage       = ob.PurchaseVatPercentage;
                purchaseviewModel.PurchaseTotoalAmount        = ob.PurchaseTotoalAmount;
                purchaseviewModel.PurchaseVenderNote          = ob.PurchaseVenderNote;
                purchaseviewModel.Status    = ob.Status;
                purchaseviewModel.Vat21     = (int)ob.Vat21;
                purchaseviewModel.Vat6      = (int)ob.Vat6;
                purchaseviewModel.CompanyId = ob.CompanyId;
                purchaseviewModel.UserId    = ob.UserId;

                HttpResponseMessage         responseQutationDetailsList = GlobalVeriables.WebApiClient.GetAsync("APIPurchaseDetail/" + PurchaseId.ToString()).Result;
                List <MvcPurchaseViewModel> QutationModelDetailsList    = responseQutationDetailsList.Content.ReadAsAsync <List <MvcPurchaseViewModel> >().Result;
                ViewBag.Contentdata         = contectmodel;
                ViewBag.Companydata         = companyModel;
                ViewBag.PurchaseDatailsList = QutationModelDetailsList;

                return(new JsonResult {
                    Data = new { PurchaseData = QutationModelDetailsList, ContectDetail = contectmodel, CompanyDta = companyModel, purchase = ob }
                });
            }
            catch (Exception ex)
            {
                return(Json("", JsonRequestBehavior.AllowGet));
            }

            return(Json("", JsonRequestBehavior.AllowGet));
        }
        public IHttpActionResult PostPurchase([FromBody] MvcPurchaseViewModel PurchaseViewModel)
        {
            using (DBEntities entities = new DBEntities())
            {
                using (DbContextTransaction transaction = entities.Database.BeginTransaction(System.Data.IsolationLevel.ReadCommitted))
                {
                    try
                    {
                        PurchaseOrderTable _PTable = new PurchaseOrderTable();

                        _PTable.CompanyId              = PurchaseViewModel.CompanyId;
                        _PTable.UserId                 = PurchaseViewModel.UserId;
                        _PTable.PurchaseID             = PurchaseViewModel.PurchaseId.ToString();
                        _PTable.VenderId               = PurchaseViewModel.VenderId;
                        _PTable.PurchaseRefNumber      = PurchaseViewModel.PurchaseRefNumber;
                        _PTable.PurchaseDate           = Convert.ToDateTime(PurchaseViewModel.PurchaseDate);
                        _PTable.PurchaseDueDate        = PurchaseViewModel.PurchaseDueDate;
                        _PTable.PurchaseSubTotal       = PurchaseViewModel.PurchaseSubTotal;
                        _PTable.PurchaseDiscountAmount = PurchaseViewModel.PurchaseDiscountAmount;
                        _PTable.PurchaseTotoalAmount   = PurchaseViewModel.PurchaseTotoalAmount;
                        _PTable.PurchaseVenderNote     = PurchaseViewModel.PurchaseVenderNote;
                        _PTable.Vat6   = PurchaseViewModel.Vat6;
                        _PTable.Vat21  = PurchaseViewModel.Vat21;
                        _PTable.Status = "open";
                        _PTable.Type   = StatusEnum.Goods.ToString();

                        _PTable = entities.PurchaseOrderTables.Add(_PTable);
                        entities.SaveChanges();

                        if (PurchaseViewModel.PurchaseOrderList != null)
                        {
                            foreach (PurchaseOrderDetailsTable item in PurchaseViewModel.PurchaseOrderList)
                            {
                                PurchaseOrderDetailsTable purchadeDetail = new PurchaseOrderDetailsTable();
                                purchadeDetail.PurchaseOrderDetailsId = item.PurchaseOrderDetailsId;
                                purchadeDetail.PurchaseItemId         = item.PurchaseItemId;
                                purchadeDetail.PurchaseDescription    = item.PurchaseDescription;
                                purchadeDetail.PurchaseQuantity       = item.PurchaseQuantity;
                                purchadeDetail.PurchaseItemRate       = item.PurchaseItemRate;
                                purchadeDetail.PurchaseTotal          = item.PurchaseTotal;
                                purchadeDetail.Type                  = item.Type;
                                purchadeDetail.RowSubTotal           = item.RowSubTotal;
                                purchadeDetail.PurchaseVatPercentage = item.PurchaseVatPercentage;
                                purchadeDetail.PurchaseId            = _PTable.PurchaseOrderID;
                                purchadeDetail.ServiceDate           = item.ServiceDate;
                                entities.PurchaseOrderDetailsTables.Add(purchadeDetail);
                                entities.SaveChanges();
                            }
                        }

                        AccountTransictionTable Account = new AccountTransictionTable();
                        Account.TransictionDate       = DateTime.Now;
                        Account.TransictionNumber     = base64Guid;
                        Account.TransictionType       = "Purchase";
                        Account.CreationTime          = DateTime.Now.TimeOfDay;
                        Account.AddedBy               = 1;
                        Account.FK_CompanyId          = PurchaseViewModel.CompanyId;
                        Account.FKPaymentTerm         = 1;
                        Account.TransictionRefrenceId = _PTable.PurchaseOrderID.ToString();
                        //Accounts payable  Transaction
                        int Accountpayble = AccountIdByName("Accounts payable", (int)PurchaseViewModel.CompanyId);

                        if (Accountpayble != 0)
                        {
                            Account.Dr           = 0.00;
                            Account.Cr           = PurchaseViewModel.PurchaseTotoalAmount;
                            Account.FK_AccountID = Accountpayble;
                            entities.AccountTransictionTables.Add(Account);
                            entities.SaveChanges();
                        }
                        // Cost Of Goods Transaction
                        int CostOfGood = AccountIdByName("Cost Of Goods", (int)PurchaseViewModel.CompanyId);
                        if (CostOfGood != 0)
                        {
                            Account.Cr           = 0.00;
                            Account.Dr           = PurchaseViewModel.PurchaseSubTotal;
                            Account.FK_AccountID = CostOfGood;
                            entities.AccountTransictionTables.Add(Account);
                            entities.SaveChanges();
                        }

                        // Input VAT Trnsaction
                        int VatAccountId = AccountIdByName("Input VAT", (int)PurchaseViewModel.CompanyId);

                        if (VatAccountId != 0)
                        {
                            Account.Cr           = 0.00;
                            Account.Dr           = PurchaseViewModel.Vat21 + PurchaseViewModel.Vat6;
                            Account.FK_AccountID = VatAccountId;
                            entities.AccountTransictionTables.Add(Account);
                            int Id = entities.SaveChanges();
                        }

                        MvcPurchaseModel pModel = new MvcPurchaseModel();
                        pModel.PurchaseOrderID = _PTable.PurchaseOrderID;
                        transaction.Commit();
                        return(Ok(pModel));
                    }
                    catch (Exception)
                    {
                        transaction.Rollback();
                        return(BadRequest());
                    }
                }
            }
        }