Beispiel #1
0
        public bool createTransaction(Disbursement_M disbl, item newitem,int userid)
        {
            bool ans = false;
            //Save In transaction
            transaction t = new transaction();
            t.TransDate = DateTime.Now;
            t.TransItemID = disbl.ItemID;
            t.TransItemQuant = disbl.RequiredQuant;
            t.TransItemBalance = newitem.ItemQuant ?? default (int);
            t.TransReason = "Retrived For Department " + disbl.DepID;
            t.TransactionType = "out";
            t.TranUserID = userid;
            t.TransCode = "RTR";
            try
            {
                se.transactions.Add(t);
                se.SaveChanges();
                ans = true;
            }
            catch
            {
                ans = false;

            }
            return ans;
        }
Beispiel #2
0
        public bool saveDisblist(Disbursement_M disbl,int userid)
        {
            bool ans = false;
            List<requisitiondetail> rdlist = new List<requisitiondetail>();
            //requisitiondetail rd =new requisitiondetail();
            disbursementdetail disbdet = new disbursementdetail();
            disbursement disb = new disbursement();
            checkdate = DateTime.Today;
            string status = "Ready";

            //checking whether the disb-list already exists

            var q = from d in se.disbursements
                    where d.DisbDepID == disbl.DepID &&
                    d.DisbStatus == status
                    select d;
            disb = q.FirstOrDefault();

            //if disb-list already exits

            if (disb != null)
            {
                item newitem = new item();
                newitem = se.items.Find(disbl.ItemID);

                disbursementdetail ddetail = new disbursementdetail();
                var a = from dd in se.disbursementdetails
                        where dd.DisbID == disb.DisbID &&
                        dd.DisbItemID == disbl.ItemID
                        select dd;
                ddetail = a.FirstOrDefault();
                if (ddetail != null)
                {
                    //if (disbl.RequiredQuant >= ddetail.DisbItemQuantReq)
                    //{
                    //    ddetail.DisbItemQuantReq = ddetail.DisbItemQuantReq + disbl.RequiredQuant;
                    //    ddetail.DisbItemQuantDelivered = ddetail.DisbItemQuantDelivered + disbl.QuantinHand;

                    //}
                    //else
                    //{

                    //    ddetail.DisbItemQuantDelivered = ddetail.DisbItemQuantDelivered + disbl.QuantinHand;
                    //}
                    if (ddetail.DisbItemQuantReq == ddetail.DisbItemQuantDelivered)
                    {
                        ddetail.DisbItemQuantReq = ddetail.DisbItemQuantReq + disbl.RequiredQuant;
                        ddetail.DisbItemQuantDelivered = ddetail.DisbItemQuantDelivered + disbl.QuantinHand;
                    }
                    else if(ddetail.DisbItemQuantReq>ddetail.DisbItemQuantDelivered)
                    {
                        if (ddetail.DisbItemQuantReq > (ddetail.DisbItemQuantDelivered + disbl.QuantinHand))
                        {
                            int toadd = (disbl.RequiredQuant - (ddetail.DisbItemQuantReq - ddetail.DisbItemQuantDelivered)) ?? default(int);
                            ddetail.DisbItemQuantReq = ddetail.DisbItemQuantReq + toadd;
                            ddetail.DisbItemQuantDelivered = ddetail.DisbItemQuantDelivered + disbl.QuantinHand;

                        }
                        else
                        {
                            ddetail.DisbItemQuantDelivered = ddetail.DisbItemQuantDelivered + disbl.QuantinHand;
                        }
                    }

                    try
                    {
                        se.SaveChanges();
                        newitem.ItemQuant = newitem.ItemQuant -disbl.QuantinHand;

                        createTransaction(disbl, newitem,userid);

                        CheckForOutStanding(disbl);
                        ans = true;
                    }
                    catch (Exception ex)
                    {
                        ans = false;

                    }
                    //check for outstanding request

                }
                else
                {
                    disbursementdetail newdd = new disbursementdetail();
                    newdd.DisbID = disb.DisbID;
                    newdd.DisbItemID = disbl.ItemID;
                    newdd.DisbItemQuantDelivered = disbl.QuantinHand;
                    newdd.DisbItemQuantReq = disbl.RequiredQuant;
                    try
                    {
                        se.disbursementdetails.Add(newdd);
                        se.SaveChanges();
                        newitem.ItemQuant = newitem.ItemQuant -  disbl.QuantinHand;

                        //saving transaction
                        createTransaction(disbl, newitem,userid);

                        CheckForOutStanding(disbl);
                        ans = true;
                    }
                    catch (Exception ex)
                    {
                        ans = false;

                    }

                }
                return ans;

            }
            else
            {
                // creating a new disbursement
                ans = createDisbursement(disbl,userid);

            }
            return ans;
        }
Beispiel #3
0
        public bool createDisbursement(Disbursement_M disbl,int userid)
        {
            bool ans = false;
            List<requisitiondetail> rdlist = new List<requisitiondetail>();
            //requisitiondetail rd =new requisitiondetail();
            disbursementdetail disbdet = new disbursementdetail();
            disbursement disb = new disbursement();
            item newitem = new item();

            //
            newitem = se.items.Find(disbl.ItemID);

            //creating a new disbursement
            disbursement disb1 = new disbursement();
            disb1.DisbDepID = disbl.DepID;
            disb1.DisbStatus = "Ready";
            disb1.DisbReceiveDate = null;
            disb1.DisbCreateDate = DateTime.Today;
            se.disbursements.Add(disb1);
            se.SaveChanges();

            //creating a Disbursement details

            disbdet.DisbID = disb1.DisbID;
            disbdet.DisbItemID = disbl.ItemID;
            disbdet.DisbItemQuantDelivered = disbl.QuantinHand;
            disbdet.DisbItemQuantReq = disbl.RequiredQuant;

            try
            {
                se.disbursementdetails.Add(disbdet);
                se.SaveChanges();

                newitem.ItemQuant = newitem.ItemQuant - disbl.QuantinHand;
                se.SaveChanges();

                createTransaction(disbl, newitem, userid);

                ans = true;
            }
            catch (DbEntityValidationException dbEx)
            {
                foreach (var validationErrors in dbEx.EntityValidationErrors)
                {
                    foreach (var validationError in validationErrors.ValidationErrors)
                    {
                        Trace.TraceInformation("Property: {0} Error: {1}", validationError.PropertyName, validationError.ErrorMessage);
                    }
                }
            }

            if (ans == true)
            {
                CheckForOutStanding(disbl);
                ans = true;
            }
            return ans;
        }
Beispiel #4
0
        public bool UpdatePurchaseOrderDetailStatusApprove(int poid)
        {
            purchaseorder p = new purchaseorder();
            List<purchaseorderdetail> pd = new List<purchaseorderdetail>();
            item itm = new item();
            try
            {
                p = cntx.purchaseorders.Find(poid);
                p.PORecieveDate = DateTime.Now;

                pd = (from f in cntx.purchaseorderdetails where f.POID==poid select f).ToList();
                foreach (purchaseorderdetail dd in pd)
                {
                    int poQty = dd.POItemQuant;
                    dd.POStatus = "approved";
                    //increase item quantity
                    itm = (from it in cntx.items where it.ItemID == dd.POItemID select it).FirstOrDefault();
                    int itmQty = int.Parse(itm.ItemQuant.ToString());
                    int total = poQty + itmQty;
                    itm.ItemQuant = total;
                    //increase item quantity

                    //Include Tranaction Table
                    transaction tnew = new transaction();
                    tnew.TransItemID = itm.ItemID;
                    tnew.TransDate = DateTime.Now;
                    tnew.TransItemBalance = total;
                    tnew.TransItemQuant = poQty;
                    tnew.TransReason = "Recieved Purchase Order from Supplier";
                    tnew.TransactionType = "in";
                    tnew.TranUserID = Convert.ToInt32(System.Web.HttpContext.Current.Session["userid"]);
                    tnew.TransCode = "Purchase";
                    cntx.transactions.Add(tnew);

                }
                cntx.SaveChanges();
                return true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #5
0
        public bool UpdateInventoryList(int itemID, string itemdesp, int itemReO, int itemReOQ, string uom, string BNo)
        {
            // se = new stationeryEntities();
            bool ans = false;
            bool test;
            bin bin = new bin();
            bin replacebin = new bin();
            item it = new item();
            //it.ItemDescription = itemdesp;
            //it.ItemQuant = quant;
            //it.ItemReOrderLvl = itemReO;
            //it.ItemReOrderQuant = itemReOQ;
            //it.ItemUOM = uom;
            //it.bin = bin;
            //category ca = Getcategory(cname);
            //ca.CategoryName = cname;

            //var p = from upitem in se.items
            //        join upca in se.categories on upitem.ItemCatID equals upca.CategoryID
            //        join upBin in se.bins on it.ItemBinID equals upBin.BinID
            //        // where it.ItemDescription==itemdesp || it.ItemReOrderLvl==itemReO ||it.ItemReOrderQuant==itemReOQ ||it.ItemUOM==uom ||bin.BinNumber==BNo
            //        where it.ItemID==itemID
            //        select new { upitem.ItemDescription, upitem.ItemReOrderLvl, upitem.ItemReOrderQuant, upitem.ItemUOM, upBin.BinNumber };

            var q = from upitem in se.items
                    where upitem.ItemID == itemID
                    select upitem;
            it = q.FirstOrDefault();

            bin = GetBin(it.ItemBinID);
            test = checknewbin(BNo);
            if (test == true)
            {
                if (bin.BinNumber != BNo)
                {
                    var m = from b in se.bins
                            where b.BinNumber == BNo
                            select b;
                    try
                    {
                        replacebin = m.First();
                        it.bin = replacebin;
                    }
                    catch (Exception ex)
                    {
                        return ans;

                    }

                }
            }
            it.ItemDescription = itemdesp;
            it.ItemReOrderLvl = itemReO;
            it.ItemReOrderQuant = itemReOQ;
            it.ItemUOM = uom;
            try
            {

                se.SaveChanges();
                ans = true;

            }
            catch (Exception ex)
            {
                ans = false;

            }
            return ans;
        }
Beispiel #6
0
        public bool addItems(int itemCatID, string itemdesp, int quant, int itemReO, int itemReOQ, string uom, string BNom, int Supplier1ID, int Supplier2ID, int Supplier3ID, int SPrice1, int SPrice2, int SPrice3)
        {
            itemsupplier its1 = new itemsupplier();
            itemsupplier its2 = new itemsupplier();
            itemsupplier its3 = new itemsupplier();
            supplier s1 = new supplier();
            supplier s2 = new supplier();
            supplier s3 = new supplier();

            s1 = se.suppliers.Find(Supplier1ID);
            s2 = se.suppliers.Find(Supplier2ID);
            s3 = se.suppliers.Find(Supplier3ID);

            bin newbin = new bin();

            var q = from b in se.bins
                    where b.BinNumber == BNom
                    select b;
            newbin = q.FirstOrDefault();
            bool ans = false;
            item Item = new item();
            Item.ItemCatID = itemCatID;
            Item.ItemDescription = itemdesp;
            Item.ItemQuant = quant;
            Item.ItemReOrderLvl = itemReO;
            Item.ItemReOrderQuant = itemReOQ;
            Item.ItemUOM = uom;
            Item.bin = newbin;
            try
            {
                se.items.Add(Item);
                se.SaveChanges();
            }
            catch (Exception)
            {

                //dos something
            }

            //adding for Supplier1

            its1.item = Item;
            its1.Price = SPrice1;
            its1.supplier = s1;
            its1.SupplierRank = 1;
            se.itemsuppliers.Add(its1);

            //adding for Supplier2

            its2.item = Item;
            its2.Price = SPrice2;
            its2.supplier = s2;
            its2.SupplierRank = 2;
            se.itemsuppliers.Add(its2);

            //adding for Supplier3

            its3.item = Item;
            its3.Price = SPrice3;
            its3.supplier = s3;
            its3.SupplierRank = 3;
            se.itemsuppliers.Add(its3);
            try
            {
                se.SaveChanges();
                ans = true;

            }
            catch (Exception ex)
            {
                ans = false;

            }

            //Adding to Transsaction Tables

            transaction it = new transaction();
            it.TransactionType = "in";
            it.TransCode = "NEWITEM"; //yet to decide
            it.TransDate = DateTime.Today;
            it.TransItemBalance = Item.ItemQuant ?? default(int);
            it.TransItemQuant = Item.ItemQuant ?? default(int);
            it.TransReason = "Added new Item: " + Item.ItemDescription;
            it.TranUserID = Convert.ToInt32(System.Web.HttpContext.Current.Session["userid"]);
            it.TransItemID = Item.ItemID;
            se.transactions.Add(it);

            se.SaveChanges();
            return ans;
        }
Beispiel #7
0
 public item GetItemCatID(int itemid)
 {
     item item = new item();
     item = se.items.Where(i => i.ItemID.Equals(itemid)).FirstOrDefault<item>();
     return item;
 }