private Int32 SaveRecord() { ProductUnitsMatrix clsUnitMatrix = new ProductUnitsMatrix(); ProductUnitsMatrixDetails clsDetails = new ProductUnitsMatrixDetails(); clsDetails.ProductID = Convert.ToInt64(lblProductID.Text); clsDetails.BaseUnitID = Convert.ToInt32(lblBaseUnitID.Text); clsDetails.BaseUnitValue = Convert.ToDecimal(txtBaseUnitValue.Text); clsDetails.BottomUnitID = Convert.ToInt32(cboBottomUnit.SelectedItem.Value); clsDetails.BottomUnitValue = Convert.ToDecimal(txtBottomUnitValue.Text); int id = clsUnitMatrix.Insert(clsDetails); ProductPackageDetails clsProductPackageDetails = new ProductPackageDetails(); ProductPackage clsProductPackage = new ProductPackage(clsUnitMatrix.Connection, clsUnitMatrix.Transaction); clsProductPackageDetails = clsProductPackage.DetailsByProductIDAndUnitID(Convert.ToInt64(lblProductID.Text), Convert.ToInt32(cboBottomUnit.SelectedItem.Value)); if (clsProductPackageDetails.PackageID == 0) { Products clsProduct = new Products(clsUnitMatrix.Connection, clsUnitMatrix.Transaction); ProductDetails clsProductDetails = clsProduct.Details(Convert.ToInt64(lblProductID.Text)); Terminal clsTerminal = new Terminal(clsUnitMatrix.Connection, clsUnitMatrix.Transaction); TerminalDetails clsTerminalDetails = clsTerminal.Details(Int32.Parse(Session["BranchID"].ToString()), Session["TerminalNo"].ToString()); clsProductPackageDetails.ProductID = Convert.ToInt64(lblProductID.Text); clsProductPackageDetails.UnitID = Convert.ToInt32(cboBottomUnit.SelectedItem.Value); clsProductPackageDetails.Price = clsProductDetails.Price * Convert.ToDecimal(txtBaseUnitValue.Text); clsProductPackageDetails.WSPrice = clsProductDetails.WSPrice * Convert.ToDecimal(txtBaseUnitValue.Text); clsProductPackageDetails.PurchasePrice = clsProductDetails.PurchasePrice * Convert.ToDecimal(txtBaseUnitValue.Text); clsProductPackageDetails.Quantity = 1; clsProductPackageDetails.VAT = clsTerminalDetails.VAT; clsProductPackageDetails.EVAT = clsTerminalDetails.EVAT; clsProductPackageDetails.LocalTax = clsTerminalDetails.LocalTax; if (!string.IsNullOrEmpty(clsProductDetails.BarCode1)) clsProductPackageDetails.BarCode1 = clsProductDetails.BarCode1 + clsProductPackageDetails.UnitID.ToString() + clsProductPackageDetails.Quantity.ToString(); if (!string.IsNullOrEmpty(clsProductDetails.BarCode2)) clsProductPackageDetails.BarCode2 = clsProductDetails.BarCode2 + clsProductPackageDetails.UnitID.ToString() + clsProductPackageDetails.Quantity.ToString(); if (!string.IsNullOrEmpty(clsProductDetails.BarCode3)) clsProductPackageDetails.BarCode3 = clsProductDetails.BarCode3 + clsProductPackageDetails.UnitID.ToString() + clsProductPackageDetails.Quantity.ToString(); clsProductPackage.Insert(clsProductPackageDetails); } clsUnitMatrix.CommitAndDispose(); return id; }
/// <summary> /// Aug 1, 2011 : Lemu /// Include clsProduct.AddQuantity /// </summary> /// <param name="Details"></param> /// <returns></returns> public Int64 InsertBaseVariation(ProductBaseVariationsMatrixDetails Details) { try { ProductBaseVariationsMatrix clsProductBaseVariationsMatrix = new ProductBaseVariationsMatrix(base.Connection, base.Transaction); clsProductBaseVariationsMatrix.Insert(Details); string SQL = "SELECT LAST_INSERT_ID();"; MySqlCommand cmd = new MySqlCommand(); cmd.CommandType = System.Data.CommandType.Text; cmd.CommandText = SQL; string strDataTableName = "tbl" + this.GetType().FullName.Split(new Char[] { '.' })[this.GetType().FullName.Split(new Char[] { '.' }).Length - 1]; System.Data.DataTable dt = new System.Data.DataTable(strDataTableName); base.MySqlDataAdapterFill(cmd, dt); Int64 iID = Int64.Parse(dt.Rows[0][0].ToString()); // 23May2013 Add n the product package ProductPackageDetails clsProductPackageDetails = new ProductPackageDetails(); clsProductPackageDetails.ProductID = Details.ProductID; clsProductPackageDetails.MatrixID = iID; clsProductPackageDetails.BarCode1 = Details.BarCode1; clsProductPackageDetails.BarCode2 = Details.BarCode2; clsProductPackageDetails.BarCode3 = Details.BarCode3; clsProductPackageDetails.UnitID = Details.UnitID; clsProductPackageDetails.Price = Details.Price; clsProductPackageDetails.WSPrice = Details.WSPrice; clsProductPackageDetails.PurchasePrice = Details.PurchasePrice; clsProductPackageDetails.Quantity = 1; clsProductPackageDetails.VAT = Details.VAT; clsProductPackageDetails.EVAT = Details.EVAT; clsProductPackageDetails.LocalTax = Details.LocalTax; ProductPackage clsProductPackage = new ProductPackage(base.Connection, base.Transaction); clsProductPackage.Insert(clsProductPackageDetails); /************************ * 23May2013 Remove handling of inventory here * Inventory should be added in the addquantity / subtractquantity * MatrixPackageDetails clsMatrixPackageDetails = new MatrixPackageDetails(); clsMatrixPackageDetails.MatrixID = iID; clsMatrixPackageDetails.UnitID = Details.UnitID; clsMatrixPackageDetails.Price = Details.Price; clsMatrixPackageDetails.WSPrice = Details.WSPrice; clsMatrixPackageDetails.PurchasePrice = Details.PurchasePrice; clsMatrixPackageDetails.Quantity = 1; clsMatrixPackageDetails.VAT = Details.VAT; clsMatrixPackageDetails.EVAT = Details.EVAT; clsMatrixPackageDetails.LocalTax = Details.LocalTax; MatrixPackage clsMatrixPackage = new MatrixPackage(base.Connection, base.Transaction); clsMatrixPackage.Insert(clsMatrixPackageDetails); // Oct 28, 2011 : Lemu // Added to cater branch inventory SQL = "CALL procProductBranchInventoryInsert(@lngProductID);"; cmd.Parameters.Clear(); cmd.CommandText = SQL; cmd.Parameters.AddWithValue("@lngProductID", Details.ProductID); base.ExecuteNonQuery(cmd); // Oct 28, 2011 : change to procSyncProductVariationFromQuantityPerItem(lngProductID, intBranchID); // ProductUnit clsProductUnit = new ProductUnit(base.Connection, base.Transaction); // decimal Quantity = clsProductUnit.GetBaseUnitValue(Details.ProductID, Details.UnitID, Details.Quantity); // Product clsProduct = new Product(base.Connection, base.Transaction); // clsProduct.AddQuantity(Constants.BRANCH_ID_MAIN, Details.ProductID, iID, Details.Quantity, Product.getPRODUCT_INVENTORY_MOVEMENT_VALUE(PRODUCT_INVENTORY_MOVEMENT.ADD_PRODUCT_VARIATION_CREATION), DateTime.Now, "SYS-ADDVAR" + DateTime.Now.ToString("yyyyMMddHHmmss"), Details.CreatedBy); SQL = "CALL procSyncProductVariationFromQuantityPerItemAllBranch(@lngProductID);"; cmd.Parameters.Clear(); cmd.CommandText = SQL; cmd.Parameters.AddWithValue("@lngProductID", Details.ProductID); base.ExecuteNonQuery(cmd); // Added August 2, 2009 to monitor if product still has/have variations Products clsProduct = new Products(base.Connection, base.Transaction); clsProduct.UpdateVariationCount(Details.ProductID); *************************/ return iID; } catch (Exception ex) { throw base.ThrowException(ex); } }
private bool SaveRecord() { ProductPackageDetails clsDetails = new ProductPackageDetails(); clsDetails.ProductID = Convert.ToInt64(lblProductID.Text); clsDetails.UnitID = Convert.ToInt32(cboUnit.SelectedItem.Value); clsDetails.Price = Convert.ToDecimal(txtProductPrice.Text); clsDetails.Price1 = Convert.ToDecimal(txtPrice1.Text); clsDetails.Price2 = Convert.ToDecimal(txtPrice2.Text); clsDetails.Price3 = Convert.ToDecimal(txtPrice3.Text); clsDetails.Price4 = Convert.ToDecimal(txtPrice4.Text); clsDetails.Price5 = Convert.ToDecimal(txtPrice5.Text); clsDetails.WSPrice = Convert.ToDecimal(txtWSPrice.Text); clsDetails.PurchasePrice = Convert.ToDecimal(txtPurchasePrice.Text); clsDetails.Quantity = Convert.ToDecimal(txtQuantity.Text); clsDetails.VAT = Convert.ToDecimal(txtVAT.Text); clsDetails.EVAT = Convert.ToDecimal(txtEVAT.Text); clsDetails.LocalTax = Convert.ToDecimal(txtLocalTax.Text); clsDetails.BarCode1 = txtBarCode1.Text; clsDetails.BarCode2 = txtBarCode2.Text; clsDetails.BarCode3 = txtBarCode3.Text; ProductPackage clsProductPackage = new ProductPackage(); clsProductPackage.Insert(clsDetails); clsProductPackage.CommitAndDispose(); return true; }
public Int64 Insert(ProductDetails Details) { try { if (IsExist(Details.ProductID, Details.BarCode, Details.BarCode2, Details.BarCode3)) { throw new EntryPointNotFoundException("This product already exist, please check the barcode."); } string SQL = "INSERT INTO tblProducts (" + "ProductCode, " + "ProductDesc, " + "ProductSubGroupID, " + "BaseUnitID, " + "DateCreated, " + "PercentageCommision, " + "IncludeInSubtotalDiscount, " + "MinThreshold, " + "MaxThreshold, " + "SupplierID, " + "IsItemSold, " + "WillPrintProductComposition"+ ") VALUES (" + "@ProductCode, " + "@ProductDesc, " + "@ProductSubGroupID, " + "@BaseUnitID, " + "@DateCreated," + "@PercentageCommision, " + "@IncludeInSubtotalDiscount, " + "@MinThreshold, " + "@MaxThreshold, " + "@SupplierID, " + "@IsItemSold, " + "@WillPrintProductComposition);"; MySqlCommand cmd = new MySqlCommand(); cmd.CommandType = System.Data.CommandType.Text; cmd.CommandText = SQL; MySqlParameter prmProductCode = new MySqlParameter("@ProductCode",MySqlDbType.String); prmProductCode.Value = Details.ProductCode; cmd.Parameters.Add(prmProductCode); MySqlParameter prmProductDesc = new MySqlParameter("@ProductDesc",MySqlDbType.String); prmProductDesc.Value = Details.ProductDesc; cmd.Parameters.Add(prmProductDesc); MySqlParameter prmProductSubGroupID = new MySqlParameter("@ProductSubGroupID",MySqlDbType.Int64); prmProductSubGroupID.Value = Details.ProductSubGroupID; cmd.Parameters.Add(prmProductSubGroupID); MySqlParameter prmBaseUnitID = new MySqlParameter("@BaseUnitID",MySqlDbType.String); prmBaseUnitID.Value = Details.BaseUnitID; cmd.Parameters.Add(prmBaseUnitID); MySqlParameter prmDateCreated = new MySqlParameter("@DateCreated",MySqlDbType.DateTime); prmDateCreated.Value = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); cmd.Parameters.Add(prmDateCreated); MySqlParameter prmPercentageCommision = new MySqlParameter("@PercentageCommision",MySqlDbType.Decimal); prmPercentageCommision.Value = Details.PercentageCommision; cmd.Parameters.Add(prmPercentageCommision); MySqlParameter prmIncludeInSubtotalDiscount = new MySqlParameter("@IncludeInSubtotalDiscount",MySqlDbType.Int16); prmIncludeInSubtotalDiscount.Value = Details.IncludeInSubtotalDiscount; cmd.Parameters.Add(prmIncludeInSubtotalDiscount); MySqlParameter prmMinThreshold = new MySqlParameter("@MinThreshold",MySqlDbType.Decimal); prmMinThreshold.Value = Details.MinThreshold; cmd.Parameters.Add(prmMinThreshold); MySqlParameter prmMaxThreshold = new MySqlParameter("@MaxThreshold",MySqlDbType.Decimal); prmMaxThreshold.Value = Details.MaxThreshold; cmd.Parameters.Add(prmMaxThreshold); MySqlParameter prmSupplierID = new MySqlParameter("@SupplierID",MySqlDbType.Int64); prmSupplierID.Value = Details.SupplierID; cmd.Parameters.Add(prmSupplierID); MySqlParameter prmIsItemSold = new MySqlParameter("@IsItemSold",MySqlDbType.Int16); prmIsItemSold.Value = Convert.ToInt16(Details.IsItemSold); cmd.Parameters.Add(prmIsItemSold); MySqlParameter prmWillPrintProductComposition = new MySqlParameter("@WillPrintProductComposition",MySqlDbType.Int16); prmWillPrintProductComposition.Value = Convert.ToInt16(Details.WillPrintProductComposition); cmd.Parameters.Add(prmWillPrintProductComposition); base.ExecuteNonQuery(cmd); SQL = "SELECT LAST_INSERT_ID();"; cmd.Parameters.Clear(); cmd.CommandText = SQL; System.Data.DataTable dt = new System.Data.DataTable("LAST_INSERT_ID"); base.MySqlDataAdapterFill(cmd, dt); Int64 iID = 0; foreach (System.Data.DataRow dr in dt.Rows) { iID = Int64.Parse(dr[0].ToString()); } ProductPackageDetails clsProductPackageDetails = new ProductPackageDetails(); clsProductPackageDetails.ProductID = iID; clsProductPackageDetails.BarCode1 = Details.BarCode; clsProductPackageDetails.BarCode2 = Details.BarCode2; clsProductPackageDetails.BarCode3 = Details.BarCode3; clsProductPackageDetails.UnitID = Details.BaseUnitID; clsProductPackageDetails.Price = Details.Price; clsProductPackageDetails.Price1 = Details.Price1; clsProductPackageDetails.Price2 = Details.Price2; clsProductPackageDetails.Price3 = Details.Price3; clsProductPackageDetails.Price4 = Details.Price4; clsProductPackageDetails.Price5 = Details.Price5; clsProductPackageDetails.WSPrice = Details.WSPrice; clsProductPackageDetails.PurchasePrice = Details.PurchasePrice; clsProductPackageDetails.Quantity = 1; clsProductPackageDetails.VAT = Details.VAT; clsProductPackageDetails.EVAT = Details.EVAT; clsProductPackageDetails.LocalTax = Details.LocalTax; ProductPackage clsProductPackage = new ProductPackage(base.Connection, base.Transaction); clsProductPackage.Insert(clsProductPackageDetails); // Oct 28, 2011 : Lemu // Added to cater branch inventory //BranchInventory clsBranchInventory = new BranchInventory(base.Connection, base.Transaction); //clsBranchInventory.CreateToAllBranches(iID); //base.ExecuteNonQuery(cmd); return iID; } catch (Exception ex) { throw base.ThrowException(ex); } }