public ActionResult GeneralStat(string condition, string statResult, string statMode, string countType, string sumType)
        {
            Dictionary <string, string> conditionDic = JsonConvert.DeserializeObject <Dictionary <string, string> >(condition);
            List <string> statResultList             = JsonConvert.DeserializeObject <List <string> >(statResult);
            List <string> subTypes = JsonConvert.DeserializeObject <List <string> >(sumType);

            if (!string.IsNullOrEmpty(countType))
            {
                countType = JsonConvert.DeserializeObject <string>(countType);
            }
            List <string> subtype     = new List <string>();
            List <string> subtypebase = new List <string>();

            if (subTypes != null)
            {
                foreach (string type in subTypes)
                {
                    if (type == "chengshiyangbenliang" || type == "peieshuliang")
                    {
                        subtypebase.Add(type);
                    }
                    else
                    {
                        subtype.Add(type);
                    }
                }
            }

            List <CustomerColumnDto> lst     = new List <CustomerColumnDto>();
            MasterService            service = new MasterService();

            if (statMode == "DistinctCount")
            {
                lst = service.CustomerSearchDistinctCount(conditionDic, statResultList, statMode, countType);
            }
            else
            {
                lst = service.CustomerSearch(conditionDic, statResultList, statMode, subtype, subtypebase);
            }

            return(Json(lst));
        }