Exemplo n.º 1
0
        public async Task UpdateAndClearCache(Dictionary <string, string> auth, Enums.DataType dataType, Enums.UpdateType updateType, string jData = null)
        {
            _cache.Remove(auth["uid"] + dataType);

            switch (updateType)
            {
            case Enums.UpdateType.Add:
                await _ds.AddData(auth, dataType, jData, false);

                break;

            case Enums.UpdateType.Edit:
                await _ds.AddData(auth, dataType, jData, true);

                break;

            case Enums.UpdateType.Delete:
                await _ds.DeleteData(auth, dataType, "/" + jData);

                break;

            default:
                break;
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Deletes given data
        /// </summary>
        /// <param name="uid"></param>
        /// <param name="auth"></param>
        /// <param name="dataType"></param>
        /// <returns>something maybe</returns>
        internal async Task <string> DeleteData(Dictionary <string, string> auth, Enums.DataType dataType, string id, bool admin = false)
        {
            var url  = dataType + "/" + auth["uid"] + "/" + id;
            var data = await DataAccess.ApiGoogle("DELETE", "", url, auth, admin);

            _logger.LogInformation("{0} {1} {2}", dataType.ToString(), "DELETE", id);
            return(data.ToString());
        }
Exemplo n.º 3
0
        /// <summary>
        /// Adds data to Google
        /// </summary>
        /// <param name="uid">Google uid</param>
        /// <param name="auth">Google auth token</param>
        /// <param name="dataType">User, Task, Usertask</param>
        /// <returns></returns>
        internal async Task <string> AddData(Dictionary <string, string> auth, Enums.DataType dataType, string jData, bool update = false, bool admin = false)
        {
            var obData = JsonConvert.DeserializeObject <JObject>(jData);
            var url    = dataType + "/" + auth["uid"] + "/" + obData["Id"];

            var action = update ? "PATCH" : "PUT";

            var res = await DataAccess.ApiGoogle(action, jData, url, auth, admin);

            _logger.LogInformation("{0} {1} {2}", dataType.ToString(), action, jData);
            return(res.ToString());
        }
Exemplo n.º 4
0
        private NeuralVector SplitInputDataToInputVector(double[] inputData, Enums.DataType inputDataType)
        {
            int inputSize = inputDataType == Enums.DataType.Class ? inputData.GetLength(0) - 1 : inputData.GetLength(0);

            var vectorData = new double[inputSize];

            for (int index = 0; index < inputSize; index++)
            {
                vectorData[index] = inputData[index];
            }

            var neuralInputData = Vector <double> .Build.DenseOfArray(vectorData);

            return(inputDataType == Enums.DataType.Unclass
                ? new NeuralVector(neuralInputData)
                : new NeuralVector(neuralInputData, (int)inputData[inputData.GetLength(0) - 1]));
        }
Exemplo n.º 5
0
        /// <summary>
        /// 初始化全部列
        /// </summary>
        protected override void InitializeColumn()
        {
            string sql = @"SELECT sys.syscolumns.name, sys.systypes.name AS type
                            FROM sys.syscolumns INNER JOIN
                            sys.sysobjects ON sys.syscolumns.id = sys.sysobjects.id AND sys.sysobjects.name = @0 AND 
                            sys.sysobjects.xtype = 'U' INNER JOIN
                            sys.systypes ON sys.systypes.xusertype = sys.syscolumns.xusertype";

            SQLDBOperator dbOperator = new SQLDBOperator(this.ConnectionString);

            object[][] rows = dbOperator.GetDataRows(sql, this.TableName);

            for (int i = 0; i < rows.Length; i++)
            {
                Enums.DataType type   = Enums.GetColumnDataTypeByNameString(rows[i][1].ToString());
                DBColumn       column = new DBColumn(rows[i][0].ToString(), type);
                this.Columns.Add(column);
            }
        }
Exemplo n.º 6
0
 public DataPort(string name, string id, List <Transition> transitionList, Enums.DataType inputData, string dataTitle)
     : base(name, id, transitionList)
 {
     _data      = inputData;
     _dataTitle = dataTitle;
 }
Exemplo n.º 7
0
        /// <summary>
        /// Returns lists of data
        /// </summary>
        /// <param name="uid">Google uid</param>
        /// <param name="auth">Google atuh token</param>
        /// <param name="dataType">User, Task, Usertask</param>
        /// <returns></returns>
        internal async Task <List <JObject> > GetData(Dictionary <string, string> auth, Enums.DataType dataType, bool admin = false,
                                                      string id = null)
        {
            var list = new List <JObject>();
            var url  = dataType + "/" + auth["uid"] + id;

            var data = await DataAccess.ApiGoogle("GET", "", url, auth, admin);

            if (data != null)
            {
                if (data["Error"] != null)
                {
                    list.Add(data);
                    return(list);
                }

                if (id != null)
                {
                    list.Add(data.ToObject <JObject>());
                }
                else
                {
                    foreach (var o in data)
                    {
                        list.Add(o.Value.ToObject <JObject>());
                    }
                }
                return(list);
            }
            return(list);
        }
Exemplo n.º 8
0
        public async Task <List <JObject> > GetOrSetCachedData(Dictionary <string, string> auth, Enums.DataType dataType, string id = null)
        {
            var authed = auth["uid"] == await AuthController.Google(auth["token"]);

            if (!authed)
            {
                return(new List <JObject>()
                {
                    new JObject("Error", "Error")
                });
            }
            var data  = new List <JObject>();
            var uData = new List <JObject>();

            var isIt = _cache.TryGetValue(auth["uid"] + dataType, out data);

            if (!isIt && authed)
            {
                // Key not in cache, so get data.
                data = await _ds.GetData(auth, dataType);

                if (data.Count > 0)
                {
                    // Save data in cache if no error
                    _cache.Set(auth["uid"] + dataType, data);
                }
            }

            if (id != null && data.Count > 0)
            {
                var task = data.Find(u => u["Id"].ToString() == id);
                uData.Add(task);
                return(uData);
            }

            return(data);
        }
Exemplo n.º 9
0
 /// <summary>
 /// 初始化DBColumn对象
 /// </summary>
 /// <param name="name">列名称(要与数据库中列名对应)</param>
 /// <param name="dataType">列数据类型(枚举值)</param>
 public DBColumn(string name, Enums.DataType dataType)
 {
     this.name     = name;
     this.dataType = dataType;
 }