Esempio n. 1
0
        private int GeIndextNode(string dataType, int parentid)
        {
            int               nodeid     = 0;
            string            nodeName   = dataType + "s";
            string            query      = $" where INDEXID = {parentid}";
            IndexAccess       idxAccess  = new IndexAccess();
            List <IndexModel> idxResults = idxAccess.SelectIndexesByQuery(query, databaseConnectionString);

            if (idxResults.Count == 1)
            {
                string indexNode    = idxResults[0].TextIndexNode;
                int    indexLevel   = idxResults[0].IndexLevel + 1;
                string strProcedure = $"EXEC spGetNumberOfDescendants '{indexNode}', {indexLevel}";
                query = "";
                DataTable idx = _dbConn.GetDataTable(strProcedure, query);
                if (idx.Rows.Count == 1)
                {
                    string condition = $"DATANAME={nodeName}";
                    var    rows      = indexTable.Select(condition);
                    if (rows.Length > 0)
                    {
                        nodeid = Convert.ToInt32(rows[0]["INDEXID"]);
                    }
                }
                if (nodeid == 0)
                {
                    nodeid = _dbConn.InsertIndex(parentid, nodeName, nodeName, "", "", 0.0, 0.0);
                }
            }
            return(nodeid);
        }
Esempio n. 2
0
        private IndexRootJson GetIndexRootData()
        {
            IndexRootJson     rootJson   = new IndexRootJson();
            string            idxQuery   = $" where INDEXNODE = '/'";
            IndexAccess       idxAccess  = new IndexAccess();
            List <IndexModel> idxResults = idxAccess.SelectIndexesByQuery(idxQuery, databaseConnectionString);

            if (idxResults.Count > 0)
            {
                string jsonStringObject = idxResults[0].JsonDataObject;
                rootJson = JsonConvert.DeserializeObject <IndexRootJson>(jsonStringObject);
            }
            return(rootJson);
        }
Esempio n. 3
0
        private void UpdateAction(PredictionResult result, string qcStr)
        {
            string            idxQuery   = $" where INDEXID = {result.IndexId}";
            IndexAccess       idxAccess  = new IndexAccess();
            List <IndexModel> idxResults = idxAccess.SelectIndexesByQuery(idxQuery, databaseConnectionString);

            if (idxResults.Count == 1)
            {
                string condition = $"INDEXID={result.IndexId}";
                var    rows      = indexTable.Select(condition);
                rows[0]["JSONDATAOBJECT"] = result.DataObject;
                rows[0]["QC_STRING"]      = qcStr;
                indexTable.AcceptChanges();

                if (syncPredictions)
                {
                    string  jsonDataObject = result.DataObject;
                    JObject dataObject     = JObject.Parse(jsonDataObject);
                    dataObject["ROW_CHANGED_BY"] = Environment.UserName;
                    jsonDataObject = dataObject.ToString();
                    jsonDataObject = Helpers.Common.SetJsonDataObjectDate(jsonDataObject, "ROW_CHANGED_DATE");
                    string dataType = idxResults[0].DataType;
                    try
                    {
                        _dbConn.UpdateDataObject(jsonDataObject, dataType);
                    }
                    catch (Exception ex)
                    {
                        string error = ex.ToString();
                        //logger.LogWarning($"Error updating data object");
                        throw;
                    }
                }
            }
            else
            {
                //logger.LogWarning("Cannot find data key during update");
            }
        }