Пример #1
0
        /// <summary>
        /// 河道水情数据查询
        /// </summary>
        /// <param name="fromTime"></param>
        /// <param name="toTime"></param>
        /// <param name="stationIds"></param>
        /// <returns></returns>
        public static QueryResult ListHourWater_Standard(DateTime fromTime, DateTime toTime, string stationId)
        {
            //查询为空
            if (stationId == null)
            {
                return(new QueryResult());
            }
            //创建数据库对象
            using (RWDB rw = new RWDB())
            {
                QueryResult result = new QueryResult();
                //获取数据
                IQueryable <ST_RIVER_R> riverRecord = ListHourRiver_Standard(rw, fromTime, toTime, stationId);
                IQueryable <ST_RSVR_R>  rsvrRecord  = ListHourReservoir_Standard(rw, fromTime, toTime, stationId);
                if (riverRecord.Count() != 0)
                {
                    //是河道水情站
                    List <ST_RIVER_R> singleStationRecord = new List <ST_RIVER_R>();
                    singleStationRecord = riverRecord.Where(r => r.STCD.Equals(stationId)).OrderByDescending(r => r.TM).ToList();
                    Station    station = StationService.GetStationById(stationId);
                    TimeRecord record  = new TimeRecord {
                        stationId = station.stationId, stationName = station.stationName, stationType = station.stationType
                    };
                    foreach (var r in singleStationRecord)
                    {
                        TimeRiver tr = new TimeRiver(r.TM, r.Z, r.Q);
                        record.trivers.Add(tr);
                    }

                    result.records.Add(record);
                }
                else if (rsvrRecord.Count() != 0)
                {
                    //是水库水情站
                    //是河道水情站
                    List <ST_RSVR_R> singleStationRecord = new List <ST_RSVR_R>();
                    singleStationRecord = rsvrRecord.Where(r => r.STCD.Equals(stationId)).OrderByDescending(r => r.TM).ToList();
                    Station    station = StationService.GetStationById(stationId);
                    TimeRecord record  = new TimeRecord {
                        stationId = station.stationId, stationName = station.stationName, stationType = station.stationType
                    };
                    foreach (var r in singleStationRecord)
                    {
                        TimeReservoir tr = new TimeReservoir(r.TM, r.RZ, r.W);
                        record.treserviors.Add(tr);
                    }

                    result.records.Add(record);
                }
                else
                {
                    //两个表都没有这个站点的数据
                }

                return(result);
            }
        }
Пример #2
0
 public string TestregularMonths(string currMonth)
 {
     return(TimeRiver.regularMonths(currMonth));
 }
Пример #3
0
 public void TestmissedClasses(ComplexTest <object[], int> test)
 {
     Assert.AreEqual(test.ExpectedResult, TimeRiver.missedClasses((int)test.Input[0], (int[])test.Input[1], (string[])test.Input[2]));
 }
Пример #4
0
 public int Testholiday(int x, string weekDay, string month, int yearNumber)
 {
     return(TimeRiver.holiday(x, weekDay, month, yearNumber));
 }
Пример #5
0
 public int[] TestvideoPart(string part, string total)
 {
     return(TimeRiver.videoPart(part, total));
 }
Пример #6
0
 public int TestdayOfWeek(string birthdayDate)
 {
     return(TimeRiver.dayOfWeek(birthdayDate));
 }
Пример #7
0
 public string TestcuriousClock(string someTime, string leavingTime)
 {
     return(TimeRiver.curiousClock(someTime, leavingTime));
 }
Пример #8
0
 public int TestnewYearCelebrations(string takeOffTime, int[] minutes)
 {
     return(TimeRiver.newYearCelebrations(takeOffTime, minutes));
 }
Пример #9
0
        /// <summary>
        /// 原始库单站水情数据查询
        /// </summary>
        /// <param name="fromTime"></param>
        /// <param name="toTime"></param>
        /// <param name="stationIds"></param>
        /// <returns></returns>
        public static QueryResult ListHourWater(DateTime fromTime, DateTime toTime, string id)
        {
            //查询为空
            if (id == null)
            {
                return(new QueryResult());
            }
            //传递得参数
            Dictionary <string, object> param = new Dictionary <string, object>();
            //TODO添加datatime转string timeStart timeEnd

            //查询条件
            Dictionary <string, string> paramInner = new Dictionary <string, string>();

            paramInner["stationid"] = id;
            paramInner["strttime"]  = fromTime.ToString();
            paramInner["endtime"]   = toTime.ToString();
            //返回结果
            QueryResult        result    = new QueryResult();
            List <WaterDbData> waterList = new List <WaterDbData>();
            //string suffix = "/subcenter/getSubcenter";
            //string suffix = System.Configuration.ConfigurationManager.AppSettings["InterfaceAddr"];
            string url = suffix + "/water/getWaterBS";
            //string url = "http://127.0.0.1:8088/water/getWaterBS";

            string jsonStr = HttpHelper.SerializeDictionaryToJsonString(paramInner);

            param["water"] = jsonStr;
            try
            {
                string resultJson = HttpHelper.Post(url, param);
                //warningInfoList = (List<CEntityWarningInfo>)HttpHelper.JsonToObject(resultJson, new List<CEntityWarningInfo>());
                waterList = (List <WaterDbData>)HttpHelper.JsonDeserialize <List <WaterDbData> >(resultJson, new List <WaterDbData>());
            }
            catch (Exception e)
            {
                Debug.WriteLine("查询水位信息失败");
                throw e;
            }
            //处理数据
            Station    station = StationService.GetStationByRawId(id);
            TimeRecord record  = new TimeRecord {
                stationId = station.id, stationName = station.stationName, stationType = station.stationType
            };
            List <TimeRiver> trivers = new List <TimeRiver>();

            foreach (WaterDbData water in waterList)
            {
                TimeRiver timeRiver = new TimeRiver(water.datatime, water.waterstage, water.waterflow);
                timeRiver.time       = water.datatime;
                timeRiver.waterStage = water.waterstage;
                timeRiver.waterFlow  = water.waterflow;
                trivers.Add(timeRiver);
            }
            record.trivers = trivers;
            record.trivers = record.trivers.OrderByDescending(r => r.time).ToList();
            result.records.Add(record);
            return(result);

            ////获取数据
            ////List<WaterDbData> waterRecord = ListRawHourWater(fromTime, toTime, id);
            //QueryResult result = new QueryResult();

            //Station station = StationService.GetStationByRawId(id);
            //TimeRecord record = new TimeRecord { stationId = station.id, stationName = station.stationName, stationType = station.stationType };

            //List<TimeRiver> twaters = new List<TimeRiver>();

            //LNRRDB ln = new LNRRDB();
            //List<string> tableNameList = TableNameHelper.getTableName("water", fromTime, toTime);

            //#region 循环获取所有数据 辣鸡代码 是gm写的
            //foreach (string tableName in tableNameList)
            //{

            //    switch (tableName)
            //    {
            //        case "water20188A":
            //            var waterrecords20188A = from water in ln.water20188A where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20188A = dataTransfer(waterrecords20188A);
            //            twaters.AddRange(waters20188A);
            //            break;
            //        case "water20188B":
            //            var waterrecords20188B = from water in ln.water20188B where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20188B = dataTransfer(waterrecords20188B);
            //            twaters.AddRange(waters20188B);
            //            break;
            //        case "water20189A":
            //            var waterrecords20189A = from water in ln.water20189A where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20189A = dataTransfer(waterrecords20189A);
            //            twaters.AddRange(waters20189A);
            //            break;
            //        case "water20189B":
            //            var waterrecords20189B = from water in ln.water20189B where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20189B = dataTransfer(waterrecords20189B);
            //            twaters.AddRange(waters20189B);
            //            break;
            //        case "water201810A":
            //            var waterrecords201810A = from water in ln.water201810A where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters201810A = dataTransfer(waterrecords201810A);
            //            twaters.AddRange(waters201810A);
            //            break;
            //        case "water201810B":
            //            var waterrecords201810B = from water in ln.water201810B where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters201810B = dataTransfer(waterrecords201810B);
            //            twaters.AddRange(waters201810B);
            //            break;
            //        case "water201811A":
            //            var waterrecords201811A = from water in ln.water201811A where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters201811A = dataTransfer(waterrecords201811A);
            //            twaters.AddRange(waters201811A);
            //            break;
            //        case "water201811B":
            //            var waterrecords201811B = from water in ln.water201811B where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters201811B = dataTransfer(waterrecords201811B);
            //            twaters.AddRange(waters201811B);
            //            break;
            //        case "water201812A":
            //            var waterrecords201812A = from water in ln.water201812A where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters201812A = dataTransfer(waterrecords201812A);
            //            twaters.AddRange(waters201812A);
            //            break;
            //        case "water201812B":
            //            var waterrecords201812B = from water in ln.water201812B where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters201812B = dataTransfer(waterrecords201812B);
            //            twaters.AddRange(waters201812B);
            //            break;

            //        case "water20191A":
            //            var waterrecords20191A = from water in ln.water20191A where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20191A = dataTransfer(waterrecords20191A);
            //            twaters.AddRange(waters20191A);
            //            break;
            //        case "water20191B":
            //            var waterrecords20191B = from water in ln.water20191B where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20191B = dataTransfer(waterrecords20191B);
            //            twaters.AddRange(waters20191B);
            //            break;

            //        case "water20192A":
            //            var waterrecords20192A = from water in ln.water20192A where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20192A = dataTransfer(waterrecords20192A);
            //            twaters.AddRange(waters20192A);
            //            break;
            //        case "water20192B":
            //            var waterrecords20192B = from water in ln.water20192B where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20192B = dataTransfer(waterrecords20192B);
            //            twaters.AddRange(waters20192B);
            //            break;

            //        case "water20193A":
            //            var waterrecords20193A = from water in ln.water20193A where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20193A = dataTransfer(waterrecords20193A);
            //            twaters.AddRange(waters20193A);
            //            break;
            //        case "water20193B":
            //            var waterrecords20193B = from water in ln.water20193B where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20193B = dataTransfer(waterrecords20193B);
            //            twaters.AddRange(waters20193B);
            //            break;

            //        case "water20194A":
            //            var waterrecords20194A = from water in ln.water20194A where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20194A = dataTransfer(waterrecords20194A);
            //            twaters.AddRange(waters20194A);
            //            break;
            //        case "water20194B":
            //            var waterrecords20194B = from water in ln.water20194B where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20194B = dataTransfer(waterrecords20194B);
            //            twaters.AddRange(waters20194B);
            //            break;

            //        case "water20195A":
            //            var waterrecords20195A = from water in ln.water20195A where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20195A = dataTransfer(waterrecords20195A);
            //            twaters.AddRange(waters20195A);
            //            break;
            //        case "water20195B":
            //            var waterrecords20195B = from water in ln.water20195B where id == water.stationid && water.datatime <= toTime && water.datatime >= fromTime select water;
            //            List<TimeRiver> waters20195B = dataTransfer(waterrecords20195B);
            //            twaters.AddRange(waters20195B);
            //            break;
            //        default:
            //            break;
            //    }
            //}
            //record.trivers = twaters;
            //#endregion

            ////List<Models.WaterDbData> singleStationRecord = new List<WaterDbData>();
            ////singleStationRecord = waterRecord.Where(r => r.stationid.Equals(id)).OrderByDescending(r => r.datatime).ToList();
            //////数据处理
            ////Station station = StationService.GetStationByRawId(id);
            ////TimeRecord record = new TimeRecord { stationId = station.id, stationName = station.stationName, stationType = station.stationType };
            ////foreach (var r in singleStationRecord)
            ////{
            ////    TimeRiver tr = new TimeRiver(r.datatime, r.waterstage, r.waterflow);
            ////    record.trivers.Add(tr);
            ////}
            //record.trivers = record.trivers.OrderByDescending(r => r.time).ToList();
            //result.records.Add(record);
            //return result;
        }