Beispiel #1
0
        private bool checkAvaiableStockForMateril(float desiredamount)
        {
            bool passTransaction = false;

            try
            {
                float        amountInShoppingCart = 0;
                int          materialID           = int.Parse(lst_MATERIAL.SelectedItem.Value);
                int          companyID            = int.Parse(lst_company.SelectedItem.Value);
                ShoppingCart shoppingCart         = (ShoppingCart)Session[SessionKeys.shoppingCart];
                bool         foundItem            = shoppingCart.items.Exists(x => x.Material_id == materialID);

                if (foundItem)
                {
                    ShoppingLineItemBean foundItemInShoppingCart = shoppingCart.items.Single(x => x.Material_id == materialID);
                    amountInShoppingCart = foundItemInShoppingCart.qnty;
                }
                MaterialCardBean foundMaterialCardBean = new MaterialCardBean().getMaterialsCardByID(materialID, companyID);
                float            remiaingAmount        = foundMaterialCardBean.CURRENT_QNTY - (desiredamount + amountInShoppingCart);
                if (remiaingAmount > 0)
                {
                    passTransaction = true;
                }
            }
            catch (Exception ex)
            {
                MyLog.Error(ex);
            }
            return(passTransaction);
        }
Beispiel #2
0
        private bool createMaterialMovement()
        {
            bool dbOP = false;

            try
            {
                if (int.Parse(lst_movmenet.SelectedValue) == MaterialMovementTypeKeys.INITIAL_BALANCE)
                {
                    MaterialCardBean initbalanace = new MaterialCardBean();
                    initbalanace.COMP_ID      = int.Parse(lst_company.SelectedValue);
                    initbalanace.FISCAL_YEAR  = new FiscalBean().getIDForYear(DateTime.Now.Year);
                    initbalanace.inventory_id = int.Parse(lst_inventory.SelectedValue);
                    initbalanace.MATERIAL_ID  = int.Parse(lst_material.SelectedValue);
                    initbalanace.INITIAL_QNTY = int.Parse(txt_qty.Text);
                    initbalanace.CURRENT_QNTY = int.Parse(txt_qty.Text);
                    initbalanace.INITIAL_QNTY = int.Parse(txt_qty.Text);
                    dbOP = new MaterialCardBean().createMaterialCard(initbalanace);
                }
            }
            catch (Exception ex)
            {
                myLog.Error(ex);
            }
            return(dbOP);
        }
Beispiel #3
0
 protected void btn_checkStock_Click(object sender, EventArgs e)
 {
     try
     {
         int materialID = int.Parse(lst_MATERIAL.SelectedItem.Value);
         int companyID  = int.Parse(lst_company.SelectedItem.Value);
         MaterialCardBean foundMaterialCardBean = new MaterialCardBean().getMaterialsCardByID(materialID, companyID);
         string           message = "يوجد من الصنف " + foundMaterialCardBean.MATERIAL_name + "  الكمية : " + foundMaterialCardBean.CURRENT_QNTY;
         new AlertScript().displayAlert(this, message);
     }
     catch (Exception ex)
     {
     }
 }
Beispiel #4
0
        protected void btnsaveBill_clicked(object sender, EventArgs e)
        {
            try
            {
                UserProfile currentUserProfile = (UserProfile)Session[SessionKeys.userProfile];
                string      currentTime        = DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day;

                ShoppingCart shoppingCart = (ShoppingCart)Session[SessionKeys.shoppingCart];
                shoppingCart.shoppingGregDate = currentTime;
                shoppingCart.company          = new CompanyBeans().getCompanyByID(int.Parse(lst_company.SelectedValue));
                shoppingCart.customer         = new CustomerBean().getCustomerByID(int.Parse(lst_customer.SelectedValue));

                string sql = " insert into pos.tsoh (COMP_ID,CUSTOMER,FISCAL,F_PERIOD,HEADER_TXT,REFERNCE,CREATED_BY,DLVR_MTHD) values " +
                             " (@COMP_ID,@CUSTOMER,@FISCAL,@F_PERIOD,@HEADER_TXT,@REFERNCE,@CREATED_BY,@DLVR_MTHD)";
                string COMP_ID      = lst_company.SelectedValue;
                string CUSTOMER     = lst_customer.SelectedValue;
                int    FISCALYearID = new FiscalBean().getIDForYear(DateTime.Now.Year);
                int    F_PERIOD     = new FiscalPeriodBean().getIDForCurrentfiscalPeriod();
                string HEADER_TXT   = txt_header.Text;
                string REFERNCE     = txt_refernce.Text;
                string CREATED_BY   = currentUserProfile.ID;
                string DLVR_MTHD    = lst_delivery_method.SelectedValue;
                Dictionary <string, string> parameters = new Dictionary <string, string>();
                parameters.Add("@COMP_ID", COMP_ID);
                parameters.Add("@CUSTOMER", CUSTOMER);
                parameters.Add("@FISCAL", FISCALYearID + "");
                parameters.Add("@F_PERIOD", F_PERIOD + "");
                parameters.Add("@HEADER_TXT", HEADER_TXT);
                parameters.Add("@REFERNCE", REFERNCE);
                parameters.Add("@CREATED_BY", CREATED_BY);
                parameters.Add("@DLVR_MTHD", DLVR_MTHD);
                int db_status = new ConnectionManager().insertDeleteUpdate(sql, parameters);
                if (db_status == 1)
                {
                    sql        = "select max(ID)  from pos.tsoh where COMP_ID =@COMP_ID and F_PERIOD = @F_PERIOD and FISCAL=@FISCAL and CREATED_BY=@CREATED_BY";
                    parameters = new Dictionary <string, string>();
                    parameters.Add("@COMP_ID", COMP_ID);
                    parameters.Add("@FISCAL", FISCALYearID + "");
                    parameters.Add("@F_PERIOD", F_PERIOD + "");
                    parameters.Add("@CREATED_BY", CREATED_BY);
                    DataTable result  = new ConnectionManager().select(sql, parameters);
                    int       orderID = int.Parse(result.Rows[0][0].ToString());
                    shoppingCart.orderID = orderID;
                    // start insert line items for order
                    for (int i = 0; i < shoppingCart.items.Count; i++)
                    {
                        ShoppingLineItemBean lineItem = shoppingCart.items[i];
                        sql = "insert into pos.tdod (SOH_ID,LINE_NO,MATERIAL,QTY,DESCR,DISCOUNT) values " +
                              " (@SOH_ID,@LINE_NO,@MATERIAL,@QTY,@DESCR,@DISCOUNT)";
                        parameters = new Dictionary <string, string>();
                        parameters.Add("@SOH_ID", orderID + "");
                        parameters.Add("@LINE_NO", (i + 1) + "");
                        parameters.Add("@MATERIAL", lineItem.Material_id + "");
                        parameters.Add("@QTY", lineItem.qnty + "");
                        parameters.Add("@DESCR", "");
                        parameters.Add("@DISCOUNT", lineItem.deduction + "");
                        db_status = new ConnectionManager().insertDeleteUpdate(sql, parameters);
                    }

                    // start update table of movment
                    for (int i = 0; i < shoppingCart.items.Count; i++)
                    {
                        ShoppingLineItemBean lineItem = shoppingCart.items[i];
                        sql = " insert into pos.tmatr_mov (comp_id,fisc_priod,mov_typ,material,qnty,descr,createdBy) values " +
                              " (@comp_id,@fisc_priod,@mov_typ,@material,@qnty,@descr,@createdBy)";
                        parameters = new Dictionary <string, string>();
                        parameters.Add("@comp_id", COMP_ID);
                        parameters.Add("@fisc_priod", F_PERIOD + "");
                        parameters.Add("@mov_typ", +MaterialMovementTypeKeys.ORDER + "");
                        parameters.Add("@qnty", lineItem.qnty + "");
                        parameters.Add("@material", lineItem.Material_id + "");
                        parameters.Add("@descr", "");
                        parameters.Add("@createdBy", CREATED_BY);
                        db_status = new ConnectionManager().insertDeleteUpdate(sql, parameters);
                    }


                    // start update inventory for each material
                    for (int i = 0; i < shoppingCart.items.Count; i++)
                    {
                        parameters = new Dictionary <string, string>();
                        ShoppingLineItemBean lineItem          = shoppingCart.items[i];
                        MaterialCardBean     foundMaterialCard = new MaterialCardBean().getMaterialsCardByID(lineItem.Material_id, int.Parse(COMP_ID));
                        //if(foundMaterialCard.ID == 0)
                        //{
                        //    // insert record for item
                        //sql =  " insert into pos.tmatr_mov (FISCAL_YEAR,COMP_ID,inventory_id,MATERIAL_ID,INITIAL_QNTY,CURRENT_QNTY,lastupdate) values "+
                        //     " (@FISCAL_YEAR,@COMP_ID,@inventory_id,@MATERIAL_ID,@INITIAL_QNTY,@CURRENT_QNTY,@lastupdate)";
                        //    parameters.Add("@FISCAL_YEAR",FISCALYearID+"");
                        //    parameters.Add("@COMP_ID",COMP_ID);
                        //    parameters.Add("@inventory_id",lst_storage.SelectedValue);
                        //    parameters.Add("@MATERIAL_ID",lineItem.Material_id+"");
                        //    parameters.Add("@INITIAL_QNTY","0");
                        //    parameters.Add("@CURRENT_QNTY",lineItem.qnty+"");
                        //    parameters.Add("@lastupdate",currentTime);
                        //}
                        //else
                        //{
                        sql = "UPDATE pos.tmaterial_card SET " +
                              " FISCAL_YEAR = @FISCAL_YEAR," +
                              " COMP_ID = @COMP_ID," +
                              " inventory_id = @inventory_id," +
                              " MATERIAL_ID = @MATERIAL_ID," +
                              " CURRENT_QNTY =  @CURRENT_QNTY ," +
                              " lastupdate = @lastupdate" +
                              " where id=@id ";
                        parameters.Add("@id", foundMaterialCard.ID + "");
                        parameters.Add("@COMP_ID", COMP_ID);
                        parameters.Add("@FISCAL_YEAR", FISCALYearID + "");
                        parameters.Add("@inventory_id", lst_storage.SelectedValue);
                        parameters.Add("@CURRENT_QNTY", (foundMaterialCard.CURRENT_QNTY - lineItem.qnty) + "");
                        parameters.Add("@MATERIAL_ID", lineItem.Material_id + "");
                        parameters.Add("@lastupdate", currentTime);
                        // }
                        db_status = new ConnectionManager().insertDeleteUpdate(sql, parameters);
                    }
                    new AlertScript().displayAlert(this, "تم تسجيل الفاتورة بنجاح");
                    Response.Redirect("~/pgs/invoices/displayInvoice.aspx");
                }
                else
                {
                    new AlertScript().displayAlert(this, "فشلت العملية");
                }
            }
            catch (Exception ex)
            {
                MyLog.Error(ex);
                new AlertScript().displayAlert(this, "فشلت العملية");
            }
        }