Ejemplo n.º 1
0
        private IList <ImportQVariableData> GetDataRow(DataSet ds)
        {
            DataRepository.CloseSession();

            int rowno = 0;
            IList <ImportQVariableData> rdlist = new List <ImportQVariableData>();
            double usagerate;

            _modifiedQuantifyMenus = new Dictionary <int, QuantifyMenu>();
            _listofQmenus          = null;

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                rowno++;
                if (!DatarowValueToDouble(dr[1], out usagerate))
                {
                    usagerate = 1;
                }

                ImportQVariableData rd = new ImportQVariableData(Convert.ToString(dr[0]), usagerate, Convert.ToString(dr[2]), Convert.ToString(dr[3]), rowno);
                rdlist.Add(rd);
            }

            foreach (ImportQVariableData rd in rdlist)
            {
                if (!string.IsNullOrEmpty(rd.ProductName))
                {
                    rd.Product = DataRepository.GetProductByName(rd.ProductName);
                    if (rd.Product != null)
                    {
                        if (!string.IsNullOrEmpty(rd.QuantifyMenu))
                        {
                            QuantifyMenu qm = GetQuantifyMenuByTitle(rd.QuantifyMenu);
                            if (qm != null)
                            {
                                if (qm.IsProductSelected(rd.Product.Id))
                                {
                                    rd.IsExist          = true;
                                    rd.ErrorDescription = "Already this quantification variable is existed";
                                }
                                else
                                {
                                    QuantificationMetric qmetric = new QuantificationMetric();
                                    qmetric.ClassOfTest = qm.ClassOfTest;
                                    qmetric.CollectionSupplieAppliedTo = rd.AppliedTo;
                                    qmetric.Product      = rd.Product;
                                    qmetric.QuantifyMenu = qm;
                                    qmetric.UsageRate    = rd.UsageRate;

                                    qm.QuantificationMetrics.Add(qmetric);
                                    AddModifiedQMenu(qm);
                                }
                            }
                            else
                            {
                                rd.HasError         = true;
                                rd.ErrorDescription = "Error: unable to found Quantification variable";
                            }
                        }
                        else
                        {
                            rd.HasError         = true;
                            rd.ErrorDescription = "Error: Quantify according to is empty";
                        }
                    }
                    else
                    {
                        rd.HasError         = true;;
                        rd.ErrorDescription = "Error: unable to found a Product";
                    }
                }
                else
                {
                    rd.HasError         = true;
                    rd.ErrorDescription = "Error: Product name is empty";
                }
            }

            return(rdlist);
        }
Ejemplo n.º 2
0
        private IList<ImportQVariableData> GetDataRow(DataSet ds)
        {
            DataRepository.CloseSession();

            int rowno = 0;
            IList<ImportQVariableData> rdlist = new List<ImportQVariableData>();
            double usagerate;
            _modifiedQuantifyMenus = new Dictionary<int, QuantifyMenu>();
            _listofQmenus = null;

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                rowno++;
                if (!DatarowValueToDouble(dr[1], out usagerate))
                    usagerate = 1;

                ImportQVariableData rd = new ImportQVariableData(Convert.ToString(dr[0]), usagerate, Convert.ToString(dr[2]), Convert.ToString(dr[3]), rowno);
                rdlist.Add(rd);
            }

            foreach (ImportQVariableData rd in rdlist)
            {
                if (!string.IsNullOrEmpty(rd.ProductName))
                {
                    rd.Product = DataRepository.GetProductByName(rd.ProductName);
                    if (rd.Product != null)
                    {
                        if (!string.IsNullOrEmpty(rd.QuantifyMenu))
                        {
                            QuantifyMenu qm = GetQuantifyMenuByTitle(rd.QuantifyMenu);
                            if (qm != null)
                            {
                                if (qm.IsProductSelected(rd.Product.Id))
                                {
                                    rd.IsExist = true;
                                    rd.ErrorDescription = "Already this quantification variable is existed";
                                }
                                else
                                {
                                    QuantificationMetric qmetric = new QuantificationMetric();
                                    qmetric.ClassOfTest = qm.ClassOfTest;
                                    qmetric.CollectionSupplieAppliedTo = rd.AppliedTo;
                                    qmetric.Product = rd.Product;
                                    qmetric.QuantifyMenu = qm;
                                    qmetric.UsageRate = rd.UsageRate;

                                    qm.QuantificationMetrics.Add(qmetric);
                                    AddModifiedQMenu(qm);
                                }
                            }
                            else
                            {
                                rd.HasError = true;
                                rd.ErrorDescription = "Error: unable to found Quantification variable";
                            }
                        }
                        else
                        {
                            rd.HasError = true;
                            rd.ErrorDescription = "Error: Quantify according to is empty";
                        }

                    }
                    else
                    {
                        rd.HasError = true; ;
                        rd.ErrorDescription = "Error: unable to found a Product";
                    }
                }
                else
                {
                    rd.HasError = true;
                    rd.ErrorDescription = "Error: Product name is empty";
                }
            }

            return rdlist;
        }