Exemplo n.º 1
0
        public string Data(FormCollection collection)
        {
            string result    = "";
            string tableName = collection.Get("tableName");

            string types  = collection.Get("types[]");
            string fields = collection.Get("fields[]");

            Dictionary <string, string> fieldDic = new  Dictionary <string, string>();

            string[] typesArray  = types.Split(',');
            string[] fieldsArray = fields.Split(',');

            List <string> select     = new List <string>();
            List <string> textFields = new List <string>();


            for (int i = 0; i < fieldsArray.Length; i++)
            {
                if (fieldsArray[i] != "year")
                {
                    if (typesArray[i] == "n")
                    {
                        select.Add($"sum({fieldsArray[i]}::float) as { fieldsArray[i]}");
                    }
                    else
                    {
                        select.Add(fieldsArray[i]);
                        textFields.Add(fieldsArray[i]);
                    }
                }
            }

            string sql = $"select {string.Join(",",select.ToArray())} from {tableName} group by {string.Join(",",textFields)}";

            string dataString = "";

            try
            {
                dataString = dbhelper.GetAsJson(CommandType.Text, sql);
            }
            catch (Exception e)
            {
                dataString = "'" + e.Message + "'";
            }
            result = $"{{\"message\":\"success\",\"data\":{dataString} }}";
            return(result);
        }