Ejemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="pp"></param>
        /// <param name="SerialNo"></param>
        /// <param name="name"></param>
        /// <param name="dwtype"></param>
        /// <param name="startM"></param>
        /// <param name="length"></param>
        /// <param name="dt"></param>
        /// <param name="AvgProgress"></param>
        /// <param name="dkcode"></param>
        public CRailwayDWProj(CRailwayProject pp, string SerialNo, string name, string dwtype, double startM, double length, DateTime dt, double AvgProgress, string dkcode = "DK")
        {
            mParentProj = pp;
            mDWName     = name;
            mDWType     = dwtype;
            mSerialNo   = SerialNo;

            mMileage_Start = startM;
            mDKCode_Start  = dkcode;

            mLength = length;

            mUpdateTime  = dt;
            mAvgProgress = AvgProgress;

            mIsValid = mParentProj.mScene.mMiddleLines.getPosbAndLengthByDKCode(dkcode, mMileage_Start,
                                                                                out mLongitude_Mid, out mLatitude_Mid, out mAltitude_Mid, out mHeading_Mid, out mGlobalLength);
        }
Ejemplo n.º 2
0
        //public int mType1;
        //public int mType2;
        /// <summary>
        ///
        /// </summary>
        /// <param name="pp"></param>
        /// <param name="SerialNo"></param>
        /// <param name="name"></param>
        /// <param name="startM"></param>
        /// <param name="length"></param>
        /// <param name="dt"></param>
        /// <param name="AvgProgress"></param>
        /// <param name="dkcode"></param>
        public CRailwayDWProj(CRailwayProject pp, int pid, string SerialNo, int dwid, string name, double startM, double length, DateTime dt, bool isFinish, string dkcode)
        {
            mParentProj = pp;
            mParentID   = pid;
            mDWID       = dwid;
            mDWName     = name;
            mSerialNo   = SerialNo;

            mMileage_Start = startM;
            mDKCode_Start  = dkcode;

            mLength = length;

            mFinishTime = dt;
            //mAvgProgress = AvgProgress;
            mIsDone = isFinish;

            mIsValid = CRailwayLineList.getGPSbyDKCode(dkcode, mMileage_Start,
                                                       out mLongitude_Mid, out mLatitude_Mid, out mAltitude_Mid, out mHeading_Mid);
            mIsOnMainPath = mParentProj.mScene.mMainPath.getPathMileageByDKCode(dkcode, mMileage_Start, out mMainMileage, out mdistanceToMainPath);
        }
Ejemplo n.º 3
0
        public List <String> mBeamName = new List <string>(); // 梁的名字
        //public List<double> mBeamLength = new List<double>();

        public CRailwayPier(CRailwayProject pp, int pid, string SerialNo, int dwid, string name, double startM, double endM, DateTime dt, bool isFinish, string dkcode)
            : base(pp, pid, SerialNo, dwid, name, startM, endM, dt, isFinish, dkcode)
        {
            //string sqlstr = @"select * from (SELECT   AutoID, Project_B_DW_ID, PropertyID, Value " +
            //                       "FROM ProjectPropertyConfigInfo)a, " +
            //                       "(SELECT AutoID, Property, Unit, UpdateTime, CrtUSrID " +
            //                       "FROM      ProjectPropertyInfo)b where a.PropertyID = b.AutoID and a.Project_B_DW_ID=" + dwid;
            //System.Data.DataTable dtt = CServerWrapper.execSqlQuery(sqlstr);
            //DatabaseWrapper.PrintDataTable(dtt);

            string[] ss = name.Split('#');
            try
            {
                DWName = ss[0];
            }
            catch (Exception e)
            {
                Console.WriteLine(name + ":桥墩名称解析错误:");
            }
            //getPierType(dwtype);
        }
Ejemplo n.º 4
0
        private void initProjectsFromServer()
        {
            #region init Items

            //DataSet ds = null;
            System.Data.DataTable dt = null;

            string ProjectSQL = @"SELECT ProjectID, ProjectName, ProfessionalName, ProfessionalCategoryCode, ShorName,Mileage_Start,Mileage_Mid, Mileage_End, 
                  MileagePrefix , SerialNo, UpdateTime, Direction , avgProgress, ParentID from vw_ProjectInfo where ProfessionalCategoryCode like '-1-42-26-%' OR
    ProfessionalCategoryCode like '-1-42-27-%' OR ProfessionalCategoryCode like '-1-42-28-%' order by ProjectID asc;";
            //string[] professionalCateCode = { "-1-42-26-", "-1-42-28-", "-1-42-27-" }; // 桥梁,路基,涵洞

            string   projectName, professionalName, ProfessionalCategoryCode, ShorName;
            int      projID, parentID;
            double   Mileage_Start, Mileage_End, Mileage_Mid;
            string   dkCode, SerialNo;
            DateTime UpdateTime;
            double   Direction, avgProgress;


            CRailwayProject sItem = null;

            try
            {
//                if (isTunnel)
//                    ProjectSQL = @"SELECT ProjectID, ProjectName, ProfessionalName, ProfessionalCategoryCode, ShorName,Mileage_Start,Mileage_Mid, Mileage_End,
//                    Mileage_Start_Des,Mileage_Mid_Des, Mileage_End_Des, ProjectLenth, SerialNo, UpdateTime, Direction , avgProgress, ParentID from vw_ProjectInfo where ProfessionalCategoryCode like '";
//                else
//                    ProjectSQL = @"SELECT ProjectID, ProjectName, ProfessionalName, ProfessionalCategoryCode, ShorName,Mileage_Start,Mileage_Mid, Mileage_End,
//                    Mileage_Start_Des,Mileage_Mid_Des, Mileage_End_Des, ProjectLenth, SerialNo, UpdateTime, Direction , avgProgress, ParentID from vw_ProjectInfo where ParentID=0 AND ProfessionalCategoryCode like '";
//                //ProjectSQL += CServerWrapper.findProjectCode(projCode) + @"%' order by ProjectID asc;";
//                ProjectSQL += projCode + @"%' order by ProjectID asc;";
                dt = CServerWrapper.execSqlQuery(ProjectSQL);

                //int count = dt.Rows.Count;


                foreach (DataRow dataReader in dt.Rows)
                {
                    projID                   = (int)dataReader["ProjectID"];
                    Mileage_Start            = Convert.ToDouble(dataReader["Mileage_Start"]);
                    Mileage_Mid              = Convert.ToDouble(dataReader["Mileage_Mid"]);
                    Mileage_End              = Convert.ToDouble(dataReader["Mileage_End"]);
                    avgProgress              = Convert.ToDouble(dataReader["avgProgress"]);
                    Direction                = Convert.ToDouble(dataReader["Direction"]);
                    projectName              = (string)dataReader["ProjectName"];
                    professionalName         = (string)dataReader["ProfessionalName"];
                    ProfessionalCategoryCode = (string)dataReader["ProfessionalCategoryCode"];
                    ShorName                 = (string)dataReader["ShorName"];
                    dkCode                   = (string)dataReader["MileagePrefix"];
                    SerialNo                 = (string)dataReader["SerialNo"];
                    UpdateTime               = (DateTime)dataReader["UpdateTime"]; // (DateTime)dataReader["UpdateTime"];
                    parentID                 = (int)dataReader["ProjectID"];
                    if (ProfessionalCategoryCode.StartsWith("-1-42-26-"))          // 桥梁
                    {
                        if (ProfessionalCategoryCode.StartsWith("-1-42-26-81-"))   // 连续梁
                        {
                            sItem = new CContBeam(this, SerialNo, projID, professionalName, projectName, ShorName, dkCode,
                                                  Mileage_Start, Mileage_Mid, Mileage_End, UpdateTime, avgProgress, Direction, @"桥梁.png");
                            mContBeamList.Add((CContBeam)sItem);
                            if (sItem.GlobalMileage > 0)
                            {
                                mTotalSpotList.Add(sItem);
                            }
                        }
                        else
                        {
                            sItem = new CRailwayBridge(this, SerialNo, projID, professionalName, projectName, ShorName, dkCode,
                                                       Mileage_Start, Mileage_Mid, Mileage_End, UpdateTime, avgProgress, Direction, @"桥梁.png");
                            mBridgeList.Add((CRailwayBridge)sItem);
                        }
                    }
                    else if (ProfessionalCategoryCode.StartsWith("-1-42-27-"))     // 隧道,涵洞
                    {
                        sItem = new CRailwayTunnel(this, SerialNo, projID, professionalName, projectName, ShorName, dkCode,
                                                   Mileage_Start, Mileage_Mid, Mileage_End, UpdateTime, avgProgress, Direction, @"涵洞.png");
                        mTunnelList.Add((CRailwayTunnel)sItem);
                        if (sItem.GlobalMileage > 0)
                        {
                            mTotalSpotList.Add(sItem);
                        }
                    }
                    else if (ProfessionalCategoryCode.StartsWith("-1-42-28-"))     // 路基
                    {
                        sItem = new CRailwayRoad(this, SerialNo, projID, professionalName, projectName, ShorName, dkCode,
                                                 Mileage_Start, Mileage_Mid, Mileage_End, UpdateTime, avgProgress, Direction, @"路基.png");
                        mRoadList.Add((CRailwayRoad)sItem);
                        if (sItem.GlobalMileage > 0)
                        {
                            mTotalSpotList.Add(sItem);
                        }
                    }

                    ///没有车站表,暂时以站场路基计算,车站方向暂时位于铁路同一侧
                    //if (ProfessionalCategoryCode.StartsWith("-1-42-28-84-")) //-1-43-84-
                    //if (ProfessionalCategoryCode.StartsWith(CServerWrapper.findProjectCode("giscode_station")))
                    //{
                    //    int ix = projectName.IndexOf('站');
                    ////Console.WriteLine(projectName);
                    //    if (ix >= 0)
                    //    {
                    //        projectName = projectName.Substring(0, ix + 1);
                    //        Direction = 90;
                    //    }
                    //    sItem = new CRailwayProject(this, SerialNo, projID, professionalName, projectName, ShorName,
                    //        Mileage_Start, Mileage_Mid, Mileage_End, Mileage_Start_Des, Mileage_Mid_Des, Mileage_End_Des, UpdateTime, avgProgress, Direction, fileName, projLength);
                    //    mProjectList.Add(sItem);
                    //    //mOtherList.Add(sItem);
                    //    projList.Add(sItem);

                    //}
                    //else if (ProfessionalCategoryCode.StartsWith("-1-42-26-"))
                    //{
                    //    sItem = new CRailwayProject(this, SerialNo, projID, professionalName, projectName, ShorName,
                    //        Mileage_Start, Mileage_Mid, Mileage_End, Mileage_Start_Des, Mileage_Mid_Des, Mileage_End_Des, UpdateTime, avgProgress, Direction, @"桥梁.png", projLength);
                    //    mProjectList.Add(sItem);
                    //    mBridgeList.Add(sItem);

                    //}
                    //else if (ProfessionalCategoryCode.StartsWith("-1-42-28-"))
                    //{
                    //    sItem = new CRailwayProject(this, SerialNo, projID, professionalName, projectName, ShorName,
                    //        Mileage_Start, Mileage_Mid, Mileage_End, Mileage_Start_Des, Mileage_Mid_Des, Mileage_End_Des, UpdateTime, avgProgress, Direction, @"路基.png", projLength);
                    //    mProjectList.Add(sItem);
                    //    mRoadList.Add(sItem);

                    //}
                    //else if (ProfessionalCategoryCode.StartsWith("-1-42-31-")) // && projectName.EndsWith("站") // 梁厂
                    //{
                    //    sItem = new CRailwayProject(this, SerialNo, projID, professionalName, projectName, ShorName,
                    //        Mileage_Start, Mileage_Mid, Mileage_End, Mileage_Start_Des, Mileage_Mid_Des, Mileage_End_Des, UpdateTime, avgProgress, Direction, @"路基.png", projLength);
                    //    mOtherList.Add(sItem);
                    //    //mStationList.Add(sItem);
                    //}
                    //else if (ProfessionalCategoryCode.StartsWith("-1-42-27-") || ProfessionalCategoryCode.StartsWith("-1-42-74-"))
                    //{
                    //    sItem = new CRailwayProject(this, SerialNo, projID, professionalName, projectName, ShorName,
                    //        Mileage_Start, Mileage_Mid, Mileage_End, Mileage_Start_Des, Mileage_Mid_Des, Mileage_End_Des, UpdateTime, avgProgress, Direction, @"涵洞.png", projLength);
                    //    mProjectList.Add(sItem);
                    //    mTunnelList.Add(sItem);

                    //}
                }
                //System.Console.WriteLine("readok");
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message.ToString());
            }

            #endregion
        }
Ejemplo n.º 5
0
 public CRailwayBeam(CRailwayProject pp, int pid, string SerialNo, int dwid, string name, double startM, double endM, DateTime dt, bool isFinish, string dkcode)
     : base(pp, pid, SerialNo, dwid, name, startM, endM, dt, isFinish, dkcode = "DK")
 {
 }
Ejemplo n.º 6
0
 public CRailwayBeam(CRailwayProject pp, string SerialNo, string name, string dwtype, double startM, double endM, DateTime dt, double AvgProgress, string dkcode)
     : base(pp, SerialNo, name, dwtype, startM, endM, dt, AvgProgress, dkcode = "DK")
 {
 }