public CreateEditProductViewModel(ProductOperationType type, Guid categoryId)
 {
     EnableTextBoxesDependingOnOperationType(type);
     Type          = type;
     CategoryId    = categoryId;
     ProductStatus = ProductStatus.OnSale;
 }
 public CreateEditProductViewModel(ProductOperationType type, Product product)
 {
     EnableTextBoxesDependingOnOperationType(type);
     Type          = type;
     Id            = product.Id;
     Name          = product.Name;
     PriceInUAH    = product.PriceInUAH;
     ProductStatus = product.ProductStatus;
     CategoryId    = product.CategoryId;
 }
        //Update Stock
        private bool StockOperation(DataTable transfarData, ProductOperationType operationType, DBQueres DataWriter,DatabaseRead DataReder,MysqlRowCounter TableRowCounter)
        {
            try
            {
                DataRow tranfarDataRow=transfarData.Rows[0];
                if (operationType.Equals(ProductOperationType.Purchase))
                {                                                                                                                                                                                                                                                                                                                                                                                                                                                      //Column :0 Petunia_Date
                    DataWriter(string.Format("INSERT INTO {0} VALUES ('{1}','{2}','{3}','{4}',{5},{6},'{7}',{8},{9},0,{10}+{9},0)", thisDataSet.ThisTables[23][0], tranfarDataRow[0],tranfarDataRow[8], tranfarDataRow[1], tranfarDataRow[2], tranfarDataRow[3], tranfarDataRow[4], tranfarDataRow[5], tranfarDataRow[6],tranfarDataRow[7], LastRowVaue(thisDataSet.ThisColumn[8][0].ToString(), thisDataSet.ThisTables[23][0].ToString(), new DatabaseRead(DataReder), new MysqlRowCounter(TableRowCounter))));//Column :1 Description
                    return DataWriter(string.Format("UPDATE {0} SET {1}={1}+{2}, {3}={3}+{4},{5}={3}/{1} WHERE {6}='{7}'", thisDataSet.ThisTables[22][0], thisDataSet.ThisColumn[2][0], tranfarDataRow[3], thisDataSet.ThisColumn[3][0].ToString(), tranfarDataRow[4], thisDataSet.ThisColumn[4][0].ToString(), thisDataSet.ThisColumn[10][0].ToString(),tranfarDataRow[8]));                                                                                                          //Column :2 Particulars
                }                                                                                                                                                                                                                                                                                                                                                                                                                                                      //Column :3 Quantity
                else if (operationType.Equals(ProductOperationType.Sales))                                                                                                                                                                                                                                                                                                                                                                                             //Column :4 Rate//Amount
                {                                                                                                                                                                                                                                                                                                                                                                                                                                                      //Column :5 AVERAGE_RATE
                    DataWriter(string.Format("INSERT INTO {0} VALUES ('{1}','{2}','{3}','{4}',{5},{6},{7},{8},0,{9},{10}-{9},0)", thisDataSet.ThisTables[23][0], tranfarDataRow[0], tranfarDataRow[8], tranfarDataRow[1], tranfarDataRow[2], tranfarDataRow[3], tranfarDataRow[4], "0.00", tranfarDataRow[6], tranfarDataRow[7], LastRowVaue(thisDataSet.ThisColumn[8][0].ToString(), thisDataSet.ThisTables[23][0].ToString(), new DatabaseRead(DataReder), new MysqlRowCounter(TableRowCounter))));//Column :6 INVOICE_NUMBER
                    return DataWriter(string.Format("UPDATE {0} SET {1}={1}-{2}, {3}={3}-{4},{5}={3}/{1} WHERE {6}='{7}'", thisDataSet.ThisTables[22][0], thisDataSet.ThisColumn[2][0], tranfarDataRow[3], thisDataSet.ThisColumn[3][0].ToString(), tranfarDataRow[4], thisDataSet.ThisColumn[4][0].ToString(), thisDataSet.ThisColumn[10][0].ToString(), tranfarDataRow[8]));                                                                                       //Column :7 Debt_Tk or Credit_tk
                }                                                                                                                                                                                                                                                                                                                                                                                                                                                    //Column :8 Product_ID
                else
                {
                    return false;
                }
            }
            catch
            {

                return false;
            }
        }