tangxu
2024-10-08 54d6c9937e34066e357c3212477914ecef1370b6
Merge branch 'master' of http://47.103.154.90:83/r/IStation/shys/ChEqCalc.V1.3
已修改4个文件
已添加3个文件
194 ■■■■■ 文件已修改
DAL/IStation.DAL.Project/历史调度方案/HistoryAnaPrjFileHelper.cs 136 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Controllers/ZyPrjController.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/IStation.ChEr.WebApi.csproj.user 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Logs/Debug/20240911.txt 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Logs/Error/20240911.txt 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Logs/Info/20240911.txt 补丁 | 查看 | 原始文档 | blame | 历史
WebApi/Properties/PublishProfiles/FolderProfile.pubxml.user 50 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/IStation.DAL.Project/ÀúÊ·µ÷¶È·½°¸/HistoryAnaPrjFileHelper.cs
@@ -1,5 +1,4 @@

using System;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
@@ -14,7 +13,6 @@
        {
            if (prj == null || prj.BlockTimes == null || prj.BlockTimes.Count == 0 || request == null) return false;
            //插入到数据库
            var dal = new IStation.DAL.AnaProject();
            var old_prjs = dal.GetAllByCreateDay(DateTime.Now.Date);
@@ -24,20 +22,17 @@
            }
            else
            {
                prj.Name = string.Format("P-{0}-{1}", DateTime.Now.Date.ToString("yyyyMMdd"), (old_prjs.Count+1).ToString("000"));
                prj.Name = string.Format("P-{0}-{1}", DateTime.Now.Date.ToString("yyyyMMdd"), (old_prjs.Count + 1).ToString("000"));
            }
            dal.Insert(prj, request);
            return WriteXmlFile(settting,  request , prj);
            return WriteXmlFile(settting, request, prj);
        }
        //保存
        //保存
        public static bool SavePrj(CalcModel.AnaSetting settting, IStation.CalcModel.AnaRequestBase requestBase, IStation.CalcModel.AnaPrj prj)
        {
            if (prj == null || prj.BlockTimes == null || prj.BlockTimes.Count == 0) return false;
            //插入到数据库
            var dal = new IStation.DAL.AnaProject();
@@ -47,6 +42,7 @@
        }
        #region XML读写
        //
        private static bool WriteXmlFile(CalcModel.AnaSetting settting, IStation.CalcModel.AnaRequestBase requestBase, IStation.CalcModel.AnaPrj prj)
        {
@@ -81,9 +77,6 @@
            //toTalTick.InnerText = "10";
            //rootNode.AppendChild(toTalTick); //注意这里是 root.AppendChild
            #region ç‰ˆæœ¬ä¿¡æ¯
            XmlNode nodeVersionInfo = rootNode.SelectSingleNode("VersionInfo");
@@ -103,9 +96,8 @@
                if (nodeVersionInfo.InnerText != "V1")
                    nodeVersionInfo.InnerText = "V1";
            }
            #endregion
            #endregion ç‰ˆæœ¬ä¿¡æ¯
            var nodeProject = xmlDoc.CreateElement("ProjectInfo");
            rootNode.AppendChild(nodeProject);
@@ -113,7 +105,6 @@
            var nodeID = xmlDoc.CreateElement("ID");
            nodeID.InnerText = prj.ID;
            nodeProject.AppendChild(nodeID);
            var nodeStartTime = xmlDoc.CreateElement("StartTime");
            nodeStartTime.InnerText = prj.StartTime.ToString();
@@ -127,11 +118,9 @@
            nodeName.InnerText = prj.Name;
            nodeProject.AppendChild(nodeName);
            var nodeWaterLevelInfo = xmlDoc.CreateElement("WaterLevelInfo");
            nodeWaterLevelInfo.InnerText = prj.WaterLevelInfo;
            nodeProject.AppendChild(nodeWaterLevelInfo);
            var nodeSumPower = xmlDoc.CreateElement("SumPower");
            nodeSumPower.InnerText = prj.SumPower.ToString();
@@ -149,12 +138,6 @@
            nodeCalcSpaceMinute.InnerText = prj.CalcSpaceMinute.ToString();
            nodeProject.AppendChild(nodeCalcSpaceMinute);
            if (prj.EndTimeOpenPumpStatus != null)
            {
                var node_LastTime_OpenPumpCount = xmlDoc.CreateElement("LastTime_OpenPumpCount");
@@ -167,7 +150,6 @@
                    node_LastTime_OpenPumpIndex.InnerText = string.Join(",", prj.EndTimeOpenPumpStatus);
                    nodeProject.AppendChild(node_LastTime_OpenPumpIndex);
                }
            }
            else
            {//表示全部关机
@@ -176,10 +158,8 @@
                nodeProject.AppendChild(node_LastTime_OpenPumpCount);
            }
            #region BlockTimes
            #region BlockTimes
            var nodeBlockTimes = xmlDoc.CreateElement("BlockTimes");
            nodeProject.AppendChild(nodeBlockTimes);
@@ -208,7 +188,6 @@
                node_EndTimeIndex.InnerText = bt.EndTimeIndex.ToString();
                nodeBlockTime.AppendChild(node_EndTimeIndex);
                XmlNode node_ReservoirStartHeight = xmlDoc.CreateElement("ReservoirStartHeight");
                node_ReservoirStartHeight.InnerText = bt.ReservoirStartHeight.ToString();
                nodeBlockTime.AppendChild(node_ReservoirStartHeight);
@@ -216,7 +195,6 @@
                XmlNode node_ReservoirEndHeight = xmlDoc.CreateElement("ReservoirEndHeight");
                node_ReservoirEndHeight.InnerText = bt.ReservoirEndHeight.ToString();
                nodeBlockTime.AppendChild(node_ReservoirEndHeight);
                if (bt.OpenPumpIndexs != null)
                {
@@ -243,7 +221,8 @@
                if (bt.PointTimes != null)
                {
                    #region PointTimes
                    #region PointTimes
                    var nodePointTimes = xmlDoc.CreateElement("PointTimes");
                    nodeBlockTime.AppendChild(nodePointTimes);
@@ -299,20 +278,16 @@
                        XmlNode node_ReservoirDropFlowTotal = xmlDoc.CreateElement("ReservoirDropFlowTotal");
                        node_ReservoirDropFlowTotal.InnerText = pt.ReservoirDropFlowTotal.ToString();
                        nodePointTime.AppendChild(node_ReservoirDropFlowTotal);
                    }
                    #endregion
                    #endregion PointTimes
                }
            }
            #endregion
            #endregion BlockTimes
            #region PumpSwitchs
            #region PumpSwitchs
            var nodePumpSwitchs = xmlDoc.CreateElement("PumpSwitchs");
            nodeProject.AppendChild(nodePumpSwitchs);
@@ -338,9 +313,7 @@
                nodePumpSwitch.AppendChild(node_SwitchType);
            }
            #endregion
            #endregion PumpSwitchs
            #region setting
@@ -375,7 +348,6 @@
                //XmlNode node_MaxPumpSwitchCountL = xmlDoc.CreateElement("MaxPumpSwitchCountL");
                //node_MaxPumpSwitchCountL.InnerText = settting.MaxPumpSwitchCountL.ToString();
                //nodeSettting.AppendChild(node_MaxPumpSwitchCountL);
                XmlNode node_SwitchPumpMinuteSpace = xmlDoc.CreateElement("SwitchPumpMinuteSpace");
                node_SwitchPumpMinuteSpace.InnerText = settting.SwitchPumpMinuteSpace.ToString();
@@ -417,7 +389,6 @@
                    }
                }
                XmlNode node_SwitchPumpIgnoreTimes = xmlDoc.CreateElement("SwitchPumpIgnoreTimes");
                node_SwitchPumpIgnoreTimes.InnerText = string.Join("###", stringBuilder不许换泵时间);
                nodeSettting.AppendChild(node_SwitchPumpIgnoreTimes);
@@ -425,7 +396,6 @@
                XmlNode node_OptSortType = xmlDoc.CreateElement("OptSortType");
                node_OptSortType.InnerText = settting.OptSortType.ToString();
                nodeSettting.AppendChild(node_OptSortType);
                List<string> stringBuilder开泵时间 = new List<string>();
                if (settting.OpenPumpTimes != null && settting.OpenPumpTimes.Count > 0)
@@ -442,7 +412,6 @@
                    }
                }
                XmlNode node_OpenPumpTimes = xmlDoc.CreateElement("OpenPumpTimes");
                node_OpenPumpTimes.InnerText = string.Join("###", stringBuilder开泵时间);
                nodeSettting.AppendChild(node_OpenPumpTimes);
@@ -455,15 +424,10 @@
                node_RiverWaterLevelBase.InnerText = settting.RiverWaterLevelBase.ToString();
                nodeSettting.AppendChild(node_RiverWaterLevelBase);
                nodeProject.AppendChild(nodeSettting);
            }
            #endregion
            #endregion setting
            if (requestBase != null)
            {
@@ -499,13 +463,10 @@
                node_StartWaterBoxLevel.InnerText = requestBase.StartReservoirLevel.ToString();
                nodeAnaRequest.AppendChild(node_StartWaterBoxLevel);
                XmlNode node_TotalFlowIn = xmlDoc.CreateElement("TotalFlowIn");
                if (requestBase.TotalFlowIn != null)
                    node_TotalFlowIn.InnerText = requestBase.TotalFlowIn.ToString();
                nodeAnaRequest.AppendChild(node_TotalFlowIn);
                XmlNode node_MaxReservoirLevel = xmlDoc.CreateElement("MaxReservoirLevel");
                node_MaxReservoirLevel.InnerText = requestBase.MaxReservoirLevel == null ? "" : requestBase.MaxReservoirLevel.ToString();
@@ -519,24 +480,18 @@
                node_ReservoirDropFlow.InnerText = requestBase.PerHourFlowOut == null ? "" : string.Join(",", requestBase.PerHourFlowOut);
                nodeAnaRequest.AppendChild(node_ReservoirDropFlow);
                //XmlNode node_MaxReservoirLevel = xmlDoc.CreateElement("MaxReservoirLevel");
                //node_MaxReservoirLevel.InnerText = requestBase.MaxReservoirLevel == null ? "" :  requestBase.MaxReservoirLevel.ToString();
                //nodeAnaRequest.AppendChild(node_MaxReservoirLevel);
                nodeProject.AppendChild(nodeAnaRequest);
            }
            xmlDoc.Save(filePath);
            return true;
        }
        //
        private static CalcModel.AnaPrj ToPrjFromXmlDoc(System.Xml.XmlElement rootNode, out IStation.CalcModel.AnaRequestBase requestBase)
        {
@@ -545,22 +500,22 @@
            if (nodeProjectInfo == null)
                return null;
            CalcModel.AnaPrj prj = new CalcModel.AnaPrj();
            var nodeID = nodeProjectInfo.SelectSingleNode("ID");
            if (nodeID == null)
                return null;
            prj.ID = nodeID.InnerText;
            var nodeName = nodeProjectInfo.SelectSingleNode("Name");
            if (nodeName == null)
                return null;
            prj.Name = nodeName.InnerText;
            var nodeStartTime = nodeProjectInfo.SelectSingleNode("StartTime");
            if (nodeStartTime == null)
                return null;
            prj.StartTime = Convert.ToDateTime(nodeStartTime.InnerText);
            var nodeEndTime = nodeProjectInfo.SelectSingleNode("EndTime");
            if (nodeEndTime == null)
@@ -577,27 +532,23 @@
                return null;
            prj.SumFlow = Convert.ToDouble(nodeSumFlow.InnerText);
            var nodeSumPower = nodeProjectInfo.SelectSingleNode("SumPower");
            if (nodeSumPower == null)
                return null;
            prj.SumPower = Convert.ToDouble(nodeSumPower.InnerText);
            var nodeSumMoney = nodeProjectInfo.SelectSingleNode("SumMoney");
            if (nodeSumMoney == null)
                return null;
            prj.SumMoney = Convert.ToDouble(nodeSumMoney.InnerText);
            var nodeCalcSpaceMinute = nodeProjectInfo.SelectSingleNode("CalcSpaceMinute");
            if (nodeCalcSpaceMinute == null)
                return null;
            prj.CalcSpaceMinute = Convert.ToInt32(nodeCalcSpaceMinute.InnerText);
            #region BlockTimes
            var nodeBlockTimes = nodeProjectInfo.SelectSingleNode("BlockTimes");
            if (nodeBlockTimes == null)
                return null;
@@ -626,7 +577,6 @@
                    }
                }
                if (nodeBlockTime.SelectSingleNode("OpenPumpCount") != null)
                {
                    abt.OpenPumpCount = int.Parse(nodeBlockTime.SelectSingleNode("OpenPumpCount").InnerText);
@@ -639,8 +589,6 @@
                {
                    abt.ReservoirStartHeight = double.Parse(nodeBlockTime.SelectSingleNode("ReservoirStartHeight").InnerText);
                }
                abt.SumFlow = double.Parse(nodeBlockTime.SelectSingleNode("SumFlow").InnerText);
                abt.SumPower = double.Parse(nodeBlockTime.SelectSingleNode("SumPower").InnerText);
@@ -672,13 +620,12 @@
                    abt.PointTimes.Add(pt);
                }
                #endregion
                #endregion PointTimes
                prj.BlockTimes.Add(abt);
            }
            #endregion
            #endregion BlockTimes
            #region PumpSwitchs
@@ -698,7 +645,7 @@
                prj.PumpSwitchs.Add(ps);
            }
            #endregion
            #endregion PumpSwitchs
            var nodeAnaRequest = nodeProjectInfo.SelectSingleNode("AnaRequest");
            if (nodeAnaRequest != null)
@@ -713,10 +660,8 @@
                        requestBase.CalcOptType = CalcModel.eCalcOptType.电费;
                }
                requestBase.StartTime = prj.StartTime;
                requestBase.EndTime = prj.EndTime;
                var nodeIsKnownStartOpenPump = nodeAnaRequest.SelectSingleNode("IsKnownStartOpenPump");
                if (nodeIsKnownStartOpenPump != null && !string.IsNullOrEmpty(nodeIsKnownStartOpenPump.InnerText))
@@ -734,8 +679,6 @@
                        }
                    }
                }
                var nodeTotalFlowIn = nodeAnaRequest.SelectSingleNode("TotalFlowIn");
                if (nodeTotalFlowIn != null && !string.IsNullOrEmpty(nodeTotalFlowIn.InnerText))
@@ -761,7 +704,6 @@
                    requestBase.MaxReservoirLevelTime = nodeMaxMaxReservoirLevelTime.InnerText;
                }
                var nodeReservoirDropFlow = nodeAnaRequest.SelectSingleNode("SpaceFlowOut");
                if (nodeReservoirDropFlow != null && !string.IsNullOrEmpty(nodeReservoirDropFlow.InnerText))
                {
@@ -770,15 +712,14 @@
                    foreach (var s in sss)
                    {
                        requestBase.PerHourFlowOut.Add(Convert.ToDouble(s));
                    }
                    }
                }
            }
            return prj;
        }
        #endregion
        #endregion XML读写
        /// <summary>
        /// æŒ‰å¤©æ•°(小时不匹配)
@@ -792,9 +733,7 @@
            var dsList = new DAL.AnaProject().GetByCreateDay(day);
            if (dsList == null || dsList.Count() == 0) { return null; }
           // IStation.LogHelper.Info(string.Format("GetByCreateDay {0}    Count: {1}   ", dsList.Count));
            // IStation.LogHelper.Info(string.Format("GetByCreateDay {0}    Count: {1}   ", dsList.Count));
            var root_folder = System.IO.Path.Combine(IStation.DataFolderHelper.GetRootPath(), "History");
            if (!System.IO.Directory.Exists(root_folder))
@@ -828,7 +767,6 @@
            }
            return null;
        }
        /// <summary>
        /// æŒ‰å¤©æ•°(小时不匹配)
@@ -852,7 +790,7 @@
                return null;
            }
            dsList.Reverse();
            foreach(var mprj in dsList)
            foreach (var mprj in dsList)
            {
                var file_name = string.Format("{0}_{1}.xml", day.ToString("yyyy-MM-dd"), mprj.PrjID);
                string filePath = System.IO.Path.Combine(month_folder, file_name);
@@ -865,7 +803,7 @@
                        return null;
                    return ToPrjFromXmlDoc(rootNode, out requestBase);
                }
                }
            }
            return null;
        }
@@ -920,8 +858,7 @@
        {
            requestBase = null;
            var dsList = new DAL.AnaProject().GetByEndTimeH相同(endTime);
            if(dsList == null || dsList.Count() == 0) { return null; }
            if (dsList == null || dsList.Count() == 0) { return null; }
            var root_folder = System.IO.Path.Combine(IStation.DataFolderHelper.GetRootPath(), "History");
            if (!System.IO.Directory.Exists(root_folder))
@@ -933,7 +870,7 @@
            foreach (var mprj in dsList)
            {
                var month_folder = System.IO.Path.Combine(root_folder, endTime.AddDays(-1).ToString("yyyy-MM"));
                if ( System.IO.Directory.Exists(month_folder))
                if (System.IO.Directory.Exists(month_folder))
                {
                    var file_name = string.Format("{0}_{1}.xml", endTime.AddDays(-1).ToString("yyyy-MM-dd"), mprj.PrjID);
                    string filePath = System.IO.Path.Combine(month_folder, file_name);
@@ -950,7 +887,7 @@
                }
                month_folder = System.IO.Path.Combine(root_folder, endTime.AddDays(-2).ToString("yyyy-MM"));
                if ( System.IO.Directory.Exists(month_folder))
                if (System.IO.Directory.Exists(month_folder))
                {
                    var file_name = string.Format("{0}_{1}.xml", endTime.AddDays(-2).ToString("yyyy-MM-dd"), mprj.PrjID);
                    var filePath = System.IO.Path.Combine(month_folder, file_name);
@@ -965,11 +902,10 @@
                        return ToPrjFromXmlDoc(rootNode, out requestBase);
                    }
                }
            }
            return null;
        }
        /// <summary>
        /// å°æ—¶åŒ¹é…
        /// </summary>
@@ -982,7 +918,6 @@
            var dsList = new DAL.AnaProject().GetByEndTimeH大于(endTime);
            if (dsList == null || dsList.Count() == 0) { return null; }
            var root_folder = System.IO.Path.Combine(IStation.DataFolderHelper.GetRootPath(), "History");
            if (!System.IO.Directory.Exists(root_folder))
            {
@@ -1025,8 +960,6 @@
                        return ToPrjFromXmlDoc(rootNode, out requestBase);
                    }
                }
            }
            return null;
        }
@@ -1051,7 +984,6 @@
            //}
            //System.IO.File.Delete(filePath);
            return true;
        }
@@ -1120,4 +1052,4 @@
            return files;
        }
    }
}
}
WebApi/Controllers/ZyPrjController.cs
@@ -675,6 +675,11 @@
                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "最少切泵时间 è®¾ç½®è¿‡é•¿" };
            }
            model_setting.MinSwitchTimeMinute = dto.MinSwitchTimeMinute;
            if (dto.SwitchPumpMinuteSpace < 2 || dto.SwitchPumpMinuteSpace > 30)
            {
                return new IStation.Dto.ApiResult() { Code = ApiResultCode.Error, Message = "切换泵时间间隔 è®¾ç½®ä¸åˆç†" };
            }
            model_setting.SwitchPumpMinuteSpace = dto.SwitchPumpMinuteSpace;
            if (dto.MaxPumpSwitchCount < 1)
            {
WebApi/IStation.ChEr.WebApi.csproj.user
@@ -9,7 +9,7 @@
    <IISExpressWindowsAuthentication />
    <IISExpressUseClassicPipelineMode />
    <UseGlobalApplicationHostFile />
    <ProjectView>ShowAllFiles</ProjectView>
    <ProjectView>ProjectFiles</ProjectView>
    <NameOfLastUsedPublishProfile>D:\WorkData\IStation\ChEqCalc.V1.3\WebApi\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
    <ActiveDebugTarget />
  </PropertyGroup>
WebApi/Logs/Debug/20240911.txt
WebApi/Logs/Error/20240911.txt
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1 @@
2024-09-11 11:20:58,730|配置读取失败,路径:D:\WorkData\IStation\ChEqCalc.V1.3\WebApi\Data\ana_settings.json|
WebApi/Logs/Info/20240911.txt
WebApi/Properties/PublishProfiles/FolderProfile.pubxml.user
@@ -5,7 +5,7 @@
<Project>
  <PropertyGroup>
    <_PublishTargetUrl>D:\WorkData\IStation\ChEqCalc.V1.3\WebApi\bin\app.publish\</_PublishTargetUrl>
    <History>True|2024-08-14T02:18:45.7227462Z||;True|2024-08-14T09:52:06.8611902+08:00||;True|2024-08-02T19:04:12.2446801+08:00||;True|2024-07-24T10:24:40.0144852+08:00||;True|2024-07-24T10:20:59.9022005+08:00||;True|2024-07-09T13:15:49.8828357+08:00||;True|2024-07-09T13:10:26.0051847+08:00||;True|2024-07-03T13:16:09.3448505+08:00||;True|2024-06-17T20:21:42.5898298+08:00||;True|2024-06-13T10:29:57.3049924+08:00||;True|2024-05-29T22:55:40.8917081+08:00||;True|2024-05-29T22:53:51.8888824+08:00||;True|2024-05-29T21:24:14.2935182+08:00||;True|2024-05-29T21:15:26.4176230+08:00||;True|2024-05-29T20:21:23.2652363+08:00||;True|2024-05-20T22:19:25.6819845+08:00||;True|2024-05-20T22:17:16.3228686+08:00||;True|2024-05-20T22:09:43.8419388+08:00||;True|2024-05-20T20:47:30.7123496+08:00||;False|2024-05-20T20:46:44.8172532+08:00||;True|2024-05-17T09:19:12.0003732+08:00||;True|2024-05-13T16:34:26.1798389+08:00||;True|2024-05-13T15:25:51.2634210+08:00||;True|2024-05-13T15:06:06.6614778+08:00||;True|2024-05-13T14:05:16.2224051+08:00||;True|2024-04-12T11:21:29.5845897+08:00||;True|2024-04-12T11:05:57.4077528+08:00||;True|2024-04-12T09:48:11.6556767+08:00||;True|2024-04-07T14:56:11.5899311+08:00||;True|2024-03-13T13:43:30.5799100+08:00||;True|2024-03-13T13:36:27.8330849+08:00||;True|2024-03-13T13:28:52.4054628+08:00||;True|2024-03-13T13:09:48.3039075+08:00||;True|2024-03-13T13:06:59.6509464+08:00||;True|2024-03-13T12:56:44.3509382+08:00||;True|2024-03-13T12:43:04.0436634+08:00||;False|2024-03-13T12:42:49.1037427+08:00||;False|2024-03-13T12:42:25.1444775+08:00||;True|2024-03-13T12:34:29.4082591+08:00||;True|2024-03-13T12:32:39.1414007+08:00||;True|2024-03-13T12:27:13.0387359+08:00||;True|2024-03-13T12:24:15.2859267+08:00||;</History>
    <History>True|2024-09-05T02:18:53.0434478Z||;True|2024-08-14T22:45:35.9591782+08:00||;True|2024-08-14T10:18:45.7227462+08:00||;True|2024-08-14T09:52:06.8611902+08:00||;True|2024-08-02T19:04:12.2446801+08:00||;True|2024-07-24T10:24:40.0144852+08:00||;True|2024-07-24T10:20:59.9022005+08:00||;True|2024-07-09T13:15:49.8828357+08:00||;True|2024-07-09T13:10:26.0051847+08:00||;True|2024-07-03T13:16:09.3448505+08:00||;True|2024-06-17T20:21:42.5898298+08:00||;True|2024-06-13T10:29:57.3049924+08:00||;True|2024-05-29T22:55:40.8917081+08:00||;True|2024-05-29T22:53:51.8888824+08:00||;True|2024-05-29T21:24:14.2935182+08:00||;True|2024-05-29T21:15:26.4176230+08:00||;True|2024-05-29T20:21:23.2652363+08:00||;True|2024-05-20T22:19:25.6819845+08:00||;True|2024-05-20T22:17:16.3228686+08:00||;True|2024-05-20T22:09:43.8419388+08:00||;True|2024-05-20T20:47:30.7123496+08:00||;False|2024-05-20T20:46:44.8172532+08:00||;True|2024-05-17T09:19:12.0003732+08:00||;True|2024-05-13T16:34:26.1798389+08:00||;True|2024-05-13T15:25:51.2634210+08:00||;True|2024-05-13T15:06:06.6614778+08:00||;True|2024-05-13T14:05:16.2224051+08:00||;True|2024-04-12T11:21:29.5845897+08:00||;True|2024-04-12T11:05:57.4077528+08:00||;True|2024-04-12T09:48:11.6556767+08:00||;True|2024-04-07T14:56:11.5899311+08:00||;True|2024-03-13T13:43:30.5799100+08:00||;True|2024-03-13T13:36:27.8330849+08:00||;True|2024-03-13T13:28:52.4054628+08:00||;True|2024-03-13T13:09:48.3039075+08:00||;True|2024-03-13T13:06:59.6509464+08:00||;True|2024-03-13T12:56:44.3509382+08:00||;True|2024-03-13T12:43:04.0436634+08:00||;False|2024-03-13T12:42:49.1037427+08:00||;False|2024-03-13T12:42:25.1444775+08:00||;True|2024-03-13T12:34:29.4082591+08:00||;True|2024-03-13T12:32:39.1414007+08:00||;True|2024-03-13T12:27:13.0387359+08:00||;True|2024-03-13T12:24:15.2859267+08:00||;</History>
    <LastFailureDetails />
  </PropertyGroup>
  <ItemGroup>
@@ -106,10 +106,10 @@
      <publishTime>08/05/2024 11:34:36</publishTime>
    </File>
    <File Include="bin/IStation.Calc.Core.dll">
      <publishTime>08/14/2024 10:18:43</publishTime>
      <publishTime>09/05/2024 10:18:49</publishTime>
    </File>
    <File Include="bin/IStation.Calc.Core.pdb">
      <publishTime>08/14/2024 10:18:43</publishTime>
      <publishTime>09/05/2024 10:18:49</publishTime>
    </File>
    <File Include="bin/IStation.Calc.ErQu.dll">
      <publishTime>03/13/2024 12:32:32</publishTime>
@@ -118,10 +118,10 @@
      <publishTime>03/13/2024 12:32:32</publishTime>
    </File>
    <File Include="bin/IStation.Calc.Model.dll">
      <publishTime>08/14/2024 10:18:42</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.Calc.Model.pdb">
      <publishTime>08/14/2024 10:18:42</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.Core.dll">
      <publishTime>08/05/2024 11:34:36</publishTime>
@@ -130,19 +130,19 @@
      <publishTime>08/05/2024 11:34:36</publishTime>
    </File>
    <File Include="bin/IStation.DAL.Paras.dll">
      <publishTime>08/14/2024 10:18:42</publishTime>
      <publishTime>09/05/2024 10:18:49</publishTime>
    </File>
    <File Include="bin/IStation.DAL.Paras.pdb">
      <publishTime>08/14/2024 10:18:42</publishTime>
      <publishTime>09/05/2024 10:18:49</publishTime>
    </File>
    <File Include="bin/IStation.DAL.Project.dll">
      <publishTime>08/14/2024 10:18:42</publishTime>
      <publishTime>09/05/2024 10:18:49</publishTime>
    </File>
    <File Include="bin/IStation.DAL.Project.dll.config">
      <publishTime>07/25/2024 11:43:38</publishTime>
    </File>
    <File Include="bin/IStation.DAL.Project.pdb">
      <publishTime>08/14/2024 10:18:42</publishTime>
      <publishTime>09/05/2024 10:18:49</publishTime>
    </File>
    <File Include="bin/IStation.Entity.Basic.dll">
      <publishTime>08/05/2024 11:41:15</publishTime>
@@ -157,10 +157,10 @@
      <publishTime>08/05/2024 11:34:36</publishTime>
    </File>
    <File Include="bin/IStation.Log.dll">
      <publishTime>08/14/2024 10:18:41</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.Log.pdb">
      <publishTime>08/14/2024 10:18:41</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.MemoryCache.dll">
      <publishTime>08/05/2024 11:34:36</publishTime>
@@ -169,10 +169,10 @@
      <publishTime>08/05/2024 11:34:36</publishTime>
    </File>
    <File Include="bin/IStation.Model.Basic.dll">
      <publishTime>08/14/2024 10:18:42</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.Model.Basic.pdb">
      <publishTime>08/14/2024 10:18:42</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.Model.Config.dll">
      <publishTime>03/13/2024 12:32:32</publishTime>
@@ -181,16 +181,16 @@
      <publishTime>03/13/2024 12:32:32</publishTime>
    </File>
    <File Include="bin/IStation.Model.Core.dll">
      <publishTime>08/14/2024 10:18:41</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.Model.Core.pdb">
      <publishTime>08/14/2024 10:18:41</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.Model.Curve.dll">
      <publishTime>08/14/2024 10:18:42</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.Model.Curve.pdb">
      <publishTime>08/14/2024 10:18:42</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.Model.Monitor.dll">
      <publishTime>08/05/2024 11:34:36</publishTime>
@@ -199,16 +199,16 @@
      <publishTime>08/05/2024 11:34:36</publishTime>
    </File>
    <File Include="bin/IStation.Newtonsoft.dll">
      <publishTime>08/14/2024 10:18:40</publishTime>
      <publishTime>09/05/2024 10:18:47</publishTime>
    </File>
    <File Include="bin/IStation.Newtonsoft.pdb">
      <publishTime>08/14/2024 10:18:40</publishTime>
      <publishTime>09/05/2024 10:18:47</publishTime>
    </File>
    <File Include="bin/IStation.Settings.dll">
      <publishTime>08/14/2024 10:18:40</publishTime>
      <publishTime>09/05/2024 10:18:47</publishTime>
    </File>
    <File Include="bin/IStation.Settings.pdb">
      <publishTime>08/14/2024 10:18:40</publishTime>
      <publishTime>09/05/2024 10:18:47</publishTime>
    </File>
    <File Include="bin/IStation.SnowflakeId.dll">
      <publishTime>08/05/2024 11:34:36</publishTime>
@@ -223,16 +223,16 @@
      <publishTime>08/05/2024 11:34:36</publishTime>
    </File>
    <File Include="bin/IStation.Untity.dll">
      <publishTime>08/14/2024 10:18:41</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.Untity.pdb">
      <publishTime>08/14/2024 10:18:41</publishTime>
      <publishTime>09/05/2024 10:18:48</publishTime>
    </File>
    <File Include="bin/IStation.WebApi.dll">
      <publishTime>08/14/2024 10:18:44</publishTime>
      <publishTime>09/05/2024 10:18:50</publishTime>
    </File>
    <File Include="bin/IStation.WebApi.pdb">
      <publishTime>08/14/2024 10:18:44</publishTime>
      <publishTime>09/05/2024 10:18:50</publishTime>
    </File>
    <File Include="bin/log4net.dll">
      <publishTime>03/25/2024 09:57:26</publishTime>