Exemplo n.º 1
0
        public HttpResponseMessage GetPiont(string model, string userid, string cityID, string year, string where, string screenflied, string DName)
        {
            string returntxt = "";

            try
            {
                string getjson = rule.GetJson(strLocalpath);
                JArray jsonObj = JArray.Parse(getjson);
                userid = userid == "" ? "" : userid;
                string citysql = "";
                JArray js      = new JArray();
                js.Add("[{stcode:0, label: '全部',children:[]}]");
                DataTable dt1      = rule.getdt("select fldAutoID,fldObject,fldName,fldUserID,fldPointContent from tblEQI_Point_Group where fldObject='" + model + "' and fldUserID=" + userid);
                string    resposne = JsonHelper.SerializeObject(dt1);
                string    json     = "[{stcode:0, label: '全部',children:[";
                for (int i = 0; i < jsonObj.Count; i++)
                {
                    string typemodel = jsonObj[i]["type"].ToString();
                    if (typemodel == model)
                    {
                        if (cityID == "2")
                        {
                            citysql = "select distinct fldSTCode,fldSTName from " + jsonObj[i]["table"] + " where fldYear=" + year;
                        }
                        else
                        {
                            RuletblFW_RegCity city     = new RuletblFW_RegCity();
                            string            citycode = city.ByPK(int.Parse(cityID)).fldSTCode.ToString().Substring(0, 4);
                            citysql = "select distinct fldSTCode,fldSTName from " + jsonObj[i]["table"] + " where fldYear=" + year + " and fldSTCode like '%" + citycode + "%'";
                        }
                        DataTable dt = rule.getdt(citysql);
                        for (int j = 0; j < dt.Rows.Count; j++)
                        {
                            if (j == dt.Rows.Count - 1)
                            {
                                json += "{stcode:'" + dt.Rows[j]["fldSTCode"].ToString() + "'" + ",label:'" + dt.Rows[j]["fldSTName"].ToString() +
                                        "',children:" + GetTwoLevel(dt.Rows[j]["fldSTCode"].ToString(), jsonObj[i]["table"].ToString(),
                                                                    jsonObj[i]["twofield"].ToString(), jsonObj[i]["level"].ToString(),
                                                                    year, jsonObj[i]["threefield"].ToString(), jsonObj[i]["istranslate"].ToString(),
                                                                    jsonObj[i]["rerurnpiont"].ToString(), where, screenflied, DName, jsonObj[i]["pionttype"].ToString()) + "}]}]";
                            }
                            else
                            {
                                json += "{stcode:'" + dt.Rows[j]["fldSTCode"].ToString() + "'" + ",label:'" + dt.Rows[j]["fldSTName"].ToString() +
                                        "',children:" + GetTwoLevel(dt.Rows[j]["fldSTCode"].ToString(), jsonObj[i]["table"].ToString(),
                                                                    jsonObj[i]["twofield"].ToString(), jsonObj[i]["level"].ToString(),
                                                                    year, jsonObj[i]["threefield"].ToString(), jsonObj[i]["istranslate"].ToString(),
                                                                    jsonObj[i]["rerurnpiont"].ToString(), where, screenflied, DName, jsonObj[i]["pionttype"].ToString()) + "},";
                            }
                        }
                    }
                }
                returntxt = rule.JsonStr("ok", "", json + "|" + resposne);
            }
            catch (Exception e)
            {
                returntxt = rule.JsonStr("ok", e.Message, "");
            }
            return(new HttpResponseMessage {
                Content = new StringContent(returntxt, System.Text.Encoding.UTF8, "application/json")
            });
        }
Exemplo n.º 2
0
        public HttpResponseMessage GetPiont_V2(Info info)
        {
            string returntxt = "";

            try
            {
                string getjson = rule.GetJson(GetPointMetaDataPath);

                List <JsonEntity> jsonObj = JsonConvert.DeserializeObject <List <JsonEntity> >(getjson);

                var query = (from x in jsonObj
                             where x.type == info.type
                             select x).FirstOrDefault();

                if (info.Levels != null)
                {
                    foreach (var item in info.Levels)
                    {
                        var query2 = (from x in query.Levels
                                      where x.ID == item.ID
                                      select x).FirstOrDefault();
                        if (query2 != null)
                        {
                            if (item.where.Contains("-1"))
                            {
                                var query4 = (from x in query.Levels
                                              where x.ID == item.ID
                                              select x).FirstOrDefault();

                                Level temp = new Level();
                                temp = query4;

                                query.Levels.Remove(query4);

                                temp.Source      = item.Source;
                                temp.value       = item.value;
                                temp.pointformat = item.pointformat;


                                query.Levels.Add(temp);
                            }
                            else
                            {
                                query.Levels.Remove(query2);


                                query.Levels.Add(item);
                            }



                            int id     = int.Parse(item.ID) + 1;
                            var query3 = (from x in query.Levels
                                          where x.ID == id.ToString()
                                          select x).FirstOrDefault();
                            if (query3 != null)
                            {
                                query3.where = item.Source.Split(',')[0];
                                Level temp = new Level();
                                temp = query3;

                                query.Levels.Remove(query3);

                                query.Levels.Add(temp);
                            }
                        }
                    }
                }



                string citysql = null;
                if (info.cityID == "2")
                {
                    if (info.type == "eqiw_sts_cq")
                    {
                        citysql = "select * from " + query.PointTableName + " where YEAR(fldDate)  in (" + info.year + ") order by fldTaskName";
                    }
                    else
                    {
                        citysql = "select * from " + query.PointTableName + " where fldYear in (" + info.year + ") order by fldSTCode";
                    }
                }
                else
                {
                    if (info.type == "eqiw_sts_cq")
                    {
                        RuletblFW_RegCity city      = new RuletblFW_RegCity();
                        string            fldSTName = city.ByPK(int.Parse(info.cityID)).fldSTName;
                        citysql = "select * from " + query.PointTableName + " where YEAR(fldDate)  in (" + info.year + ") and fldSTName like '%" + fldSTName + "%'" + " order by fldTaskName";
                    }
                    else
                    {
                        RuletblFW_RegCity city     = new RuletblFW_RegCity();
                        string            citycode = city.ByPK(int.Parse(info.cityID)).fldSTCode.ToString().Substring(0, 4);
                        citysql = "select * from " + query.PointTableName + " where fldYear in (" + info.year + ") and fldSTCode like '%" + citycode + "%'" + " order by fldSTCode";
                    }
                }


                DataTable dtSource = rule.SqlQueryForDataTatable("EntityContext", citysql);


                List <Return> result = new List <Return>();


                Return result1 = new Return();
                result1.stcode = "-1";
                result1.label  = "全部";
                result1.point  = "-1";

                List <Return> result2 = new List <Return>();
                DataTable     dt1     = null;
                // 查询一级条件
                var Level1 = (from x in query.Levels
                              where x.ID == "1"
                              select x).FirstOrDefault();
                // 获取一级数据,并赋值
                List <Return> tempList = GetList(dtSource, Level1, null, out dt1);
                result1.children = tempList;


                if (result1.children != null)
                {
                    foreach (var item1 in result1.children)
                    {
                        DataTable dt2    = null;
                        Level     Level2 = null;
                        // 查询二级条件
                        Level2 = (from x in query.Levels
                                  where x.ID == "2"
                                  select x).FirstOrDefault();


                        if (Level2 != null)
                        {
                            tempList       = GetList(dt1, Level2, item1, out dt2);
                            item1.children = tempList;


                            if (item1.children != null)
                            {
                                foreach (var item2 in item1.children)
                                {
                                    DataTable dt3    = null;
                                    Level     Level3 = null;
                                    // 查询三级条件
                                    Level3 = (from x in query.Levels
                                              where x.ID == "3"
                                              select x).FirstOrDefault();

                                    if (Level3 != null)
                                    {
                                        tempList       = GetList(dt2, Level3, item2, out dt3);
                                        item2.children = tempList;

                                        if (item2.children != null)
                                        {
                                            foreach (var item3 in item2.children)
                                            {
                                                DataTable dt4    = null;
                                                Level     Level4 = null;
                                                // 查询四级条件
                                                Level4 = (from x in query.Levels
                                                          where x.ID == "4"
                                                          select x).FirstOrDefault();

                                                if (Level4 != null)
                                                {
                                                    tempList       = GetList(dt3, Level4, item3, out dt4);
                                                    item3.children = tempList;
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }


                DataTable dt = rule.getdt("select fldAutoID,fldObject,fldName,fldUserID,fldPointContent from tblEQI_Point_Group where fldObject='" + info.type + "' and fldUserID=" + info.userID);

                result.Add(result1);



                List <object> output = new List <object>();
                output.Add(result);
                output.Add(dt);

                returntxt = rule.JsonStr("ok", "", output);
            }
            catch (Exception e)
            {
                returntxt = rule.JsonStr("no", e.Message, "");
            }
            return(new HttpResponseMessage {
                Content = new StringContent(returntxt, System.Text.Encoding.UTF8, "application/json")
            });
        }