public NameViewModel(Name Name, Action <Name> NameChangedCallback)
 {
     this.Name = Name;
     RawName   = (Name != null) ? Name.NameRaw : "";
     this.NameChangedCallback = NameChangedCallback;
     NewName = new UVMCommand(p => {
         //Don't do that!
         //NameGroup g = new NameGroup() { PrimeName = RawName};
         Name n = new Name()
         {
             NameRaw = RawName
         };
         //db.NameGroups.Add(g);
         db.Names.Add(n);
         db.SaveChanges();
         this.Name = n;
         RequestUpdate(DBTypes.Name);
     }, p => this.RawName != null || this.RawName != "");
     NewNameGroup = new UVMCommand(p => {
         NameGroup g = new NameGroup()
         {
             PrimeName = NameGroupFilter == "" ? this.Name.NameRaw : NameGroupFilter
         };
         db.NameGroups.Add(g);
         db.SaveChanges();
         this.Name.NameGroup = g;
         RequestUpdate(DBTypes.NameGroup);
         NameGroupFilter = NameGroupFilter;
     }, p => this.Name != null);
     if (Name != null)
     {
         selectedNameGroup = Name.NameGroup;
     }
     NameGroupFilter = "";
 }
示例#2
0
        public List <TF.RunSafty.Model.InterfaceModel.NameGroup> GetOrderInTrainGroups(string strTrainTypeName, string strTrainNumber)
        {
            string strWhere = " 1=1 ";

            if (!string.IsNullOrEmpty(strTrainTypeName))
            {
                strWhere += string.Format(" and strTrainTypeName='{0}' ", strTrainTypeName);
            }
            if (!string.IsNullOrEmpty(strTrainNumber))
            {
                strWhere += string.Format(" and strTrainNumber='{0}' ", strTrainNumber);
            }
            string sqlText = "";

            sqlText = string.Format(@"select *,
                (select max(dtInRoomTime) from TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber1) as InRoomTime1,
                (select max(dtInRoomTime) from TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber2) as InRoomTime2, 
                (select max(dtInRoomTime) from TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber3) as InRoomTime3, 
                (select max(dtInRoomTime) from TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber4) as InRoomTime4 
              from VIEW_Nameplate_Group  where 1=1 and strGroupGUID in 
( select strGroupGUID from TAB_Nameplate_TrainmanJiaolu_OrderInTrain where strTrainGUID in (select strTrainGUID from TAB_Nameplate_TrainmanJiaolu_Train where {0})
) order by groupState,(case when year(dtLastArriveTime)=1899  then 1 else 0 end ),dtLastArriveTime ", strWhere);
            DataTable dtGroups = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, sqlText).Tables[0];
            List <TF.RunSafty.Model.InterfaceModel.NameGroup> result = new List <Model.InterfaceModel.NameGroup>();

            for (int k = 0; k < dtGroups.Rows.Count; k++)
            {
                NameGroup group = new NameGroup();
                result.Add(group);
                DataRowToGroup(dtGroups.Rows[k], group);
            }
            return(result);
        }
示例#3
0
 public int CompareTo(GroupData other)
 {
     if (Object.ReferenceEquals(other, null))
     {
         return(1);
     }
     return(NameGroup.CompareTo(other.NameGroup));
 }
示例#4
0
        protected NameGroup GenerateUnifiedNameGroup(IEnumerable <NameGroup> nameGroups, string category, string groupName, string nameFormat)
        {
            NameGroup group = new NameGroup();

            group.Name           = $"{category} - {groupName}";
            group.ExplicitValues = nameGroups
                                   .SelectMany(x => x.Values)
                                   .Distinct()
                                   .Select(y => string.Format(nameFormat, y))
                                   .ToList();

            return(group);
        }
示例#5
0
        private void EvalRoom()
        {
            if (GetTopXChars(5) == Check)
            {
                IsReal = true;
            }

            int shift = Digit % 26;
            //char[] charArr = ConcatenatedCharsOfNames();
            //int size = NameGroup.Count();
            //string[] decryptedGroup = new string[size] { };
            List <string> decryptedWords = new List <string>();

            for (int i = 0; i < NameGroup.Count(); i++)
            {
                char[] wordChArr = NameGroup[i].ToCharArray();
                string newStr    = "";
                foreach (char ch in wordChArr)
                {
                    var newChar = ch;
                    //var newChar = (char) ch >> shift;
                    for (int j = 1; j <= shift; j++)
                    {
                        newChar++;
                    }
                    int rest = (int)(newChar - 'z');
                    if (rest > 0)
                    {
                        //newChar = (char)'a' >> rest;
                        newChar = 'a';
                        for (int k = 1; k < rest; k++)
                        {
                            newChar++;
                        }
                    }
                    newStr += newChar;
                }
                decryptedWords.Add(newStr);
            }

            foreach (var word in decryptedWords)
            {
                DecryptedName += (" " + word);
            }

            DecryptedName = DecryptedName.TrimStart(' ');
        }
示例#6
0
        protected List <NameGroup> CleanGenericNames(IEnumerable <NameGroup> genericNameGroups, params IEnumerable <NameGroup>[] specificNameGroupLists)
        {
            ConcurrentBag <NameGroup> cleanGenericNameGroups = new ConcurrentBag <NameGroup>();

            Parallel.ForEach(genericNameGroups, genericNameGroup =>
            {
                NameGroup cleanGenericNameGroup      = new NameGroup();
                cleanGenericNameGroup.Name           = genericNameGroup.Name;
                cleanGenericNameGroup.ExplicitValues = genericNameGroup.Values.Where(genericName =>
                                                                                     specificNameGroupLists.All(specificNameGroups => specificNameGroups.All(specificNameGroup =>
                                                                                                                                                             specificNameGroup.Values.All(specificName => !DoNamesMatch(specificName, genericName))))).ToList();

                cleanGenericNameGroups.Add(cleanGenericNameGroup);
            });

            return(cleanGenericNameGroups.ToList());
        }
示例#7
0
        public void DataRowToGroup(DataRow Row, NameGroup Group)
        {
            Group.groupID = Row["strGroupGUID"].ToString();
            DateTime arriveTime;

            if (DateTime.TryParse(Row["dtLastArriveTime"].ToString(), out arriveTime))
            {
                Group.arriveTime = arriveTime.ToString("yyyy-MM-dd HH:mm:ss");
            }
            //正常
            Group.groupState = 2;
            if (Row["GroupState"].ToString() != "")
            {
                //计划中
                Group.groupState = 3;
                if (Row["GroupState"].ToString() == "7")
                {
                    //已出勤
                    Group.groupState = 6;
                }
            }

            DateTime lastInRoomTime1, lastInRoomTime2, lastInRoomTime3, lastInRoomTime4;

            if (DateTime.TryParse(Row["InRoomTime1"].ToString(), out lastInRoomTime1))
            {
                Group.lastInRoomTime1 = lastInRoomTime1.ToString("yyyy-MM-dd HH:mm:ss");
            }
            if (DateTime.TryParse(Row["InRoomTime2"].ToString(), out lastInRoomTime2))
            {
                Group.lastInRoomTime2 = lastInRoomTime2.ToString("yyyy-MM-dd HH:mm:ss");
            }
            if (DateTime.TryParse(Row["InRoomTime3"].ToString(), out lastInRoomTime3))
            {
                Group.lastInRoomTime3 = lastInRoomTime3.ToString("yyyy-MM-dd HH:mm:ss");
            }
            if (DateTime.TryParse(Row["InRoomTime4"].ToString(), out lastInRoomTime4))
            {
                Group.lastInRoomTime4 = lastInRoomTime4.ToString("yyyy-MM-dd HH:mm:ss");
            }
            Group.station.stationID = Row["strStationGUID"].ToString();;

            Group.trainman1.trainmanID = Row["strTrainmanGUID1"].ToString();
            if (Group.trainman1.trainmanID != "")
            {
                Group.trainman1.trainmanName   = Row["strTrainmanName1"].ToString();
                Group.trainman1.trainmanNumber = Row["strTrainmanNumber1"].ToString();
                if (Row["nPost1"] != null && !string.IsNullOrEmpty(Row["nPost1"].ToString()))
                {
                    Group.trainman1.postID = Int32.Parse(Row["nPost1"].ToString());
                }
                Group.trainman1.telNumber     = Row["strTelNumber1"].ToString();
                Group.trainman1.trainmanState = 0;
                if (Row["nTrainmanState1"].ToString() != "")
                {
                    Group.trainman1.trainmanState = Int32.Parse(Row["nTrainmanState1"].ToString());
                }
            }

            Group.trainman2.trainmanID = Row["strTrainmanGUID2"].ToString();
            if (Group.trainman2.trainmanID != "")
            {
                Group.trainman2.trainmanName   = Row["strTrainmanName2"].ToString();
                Group.trainman2.trainmanNumber = Row["strTrainmanNumber2"].ToString();
                if (Row["nPost2"] != null && !string.IsNullOrEmpty(Row["nPost2"].ToString()))
                {
                    Group.trainman2.postID = Int32.Parse(Row["nPost2"].ToString());
                }
                Group.trainman2.telNumber     = Row["strTelNumber2"].ToString();
                Group.trainman2.trainmanState = 0;
                if (Row["nTrainmanState2"].ToString() != "")
                {
                    Group.trainman2.trainmanState = Int32.Parse(Row["nTrainmanState2"].ToString());
                }
            }
            Group.trainman3.trainmanID = Row["strTrainmanGUID3"].ToString();
            if (Group.trainman3.trainmanID != "")
            {
                Group.trainman3.trainmanName   = Row["strTrainmanName3"].ToString();
                Group.trainman3.trainmanNumber = Row["strTrainmanNumber3"].ToString();
                if (Row["nPost3"] != null && !string.IsNullOrEmpty(Row["nPost3"].ToString()))
                {
                    Group.trainman3.postID = Int32.Parse(Row["nPost3"].ToString());
                }
                Group.trainman3.telNumber     = Row["strTelNumber3"].ToString();
                Group.trainman3.trainmanState = 0;
                if (Row["nTrainmanState3"].ToString() != "")
                {
                    Group.trainman3.trainmanState = Int32.Parse(Row["nTrainmanState3"].ToString());
                }
            }

            Group.trainman4.trainmanID = Row["strTrainmanGUID4"].ToString();
            if (Group.trainman4.trainmanID != "")
            {
                Group.trainman4.trainmanName   = Row["strTrainmanName4"].ToString();
                Group.trainman4.trainmanNumber = Row["strTrainmanNumber4"].ToString();
                if (Row["nPost4"] != null && !string.IsNullOrEmpty(Row["nPost4"].ToString()))
                {
                    Group.trainman4.postID = Int32.Parse(Row["nPost4"].ToString());
                }
                Group.trainman4.telNumber     = Row["strTelNumber4"].ToString();
                Group.trainman4.trainmanState = 0;
                if (Row["nTrainmanState4"].ToString() != "")
                {
                    Group.trainman4.trainmanState = Int32.Parse(Row["nTrainmanState4"].ToString());
                }
            }
        }
示例#8
0
        private List <PlansOfClient> GetPlans(List <TF.RunSafty.Model.VIEW_Plan_Trainman> vPlans)
        {
            List <PlansOfClient> plans = new List <PlansOfClient>();

            TF.RunSafty.Model.InterfaceModel.TrainPlan     tPlan   = null;
            TF.RunSafty.Model.InterfaceModel.PlansOfClient pClient = null;
            if (vPlans != null)
            {
                foreach (VIEW_Plan_Trainman plan in vPlans)
                {
                    tPlan                = new TF.RunSafty.Model.InterfaceModel.TrainPlan();
                    tPlan.dragTypeID     = plan.nDragType.ToString();
                    tPlan.dragTypeName   = plan.nDragTypeName;
                    tPlan.endStationID   = plan.strEndStation;
                    tPlan.endStationName = plan.strEndStationName;
                    tPlan.kehuoID        = plan.nKehuoID.ToString();
                    tPlan.kehuoName      = plan.strKehuoName;
                    tPlan.placeName      = plan.strPlaceName;
                    tPlan.planStateID    = plan.nPlanState.ToString();
                    tPlan.planStateName  = plan.strStateName;

                    tPlan.planTypeID   = plan.nPlanType.ToString();
                    tPlan.planTypeName = plan.strPlanTypeName;

                    tPlan.remarkTypeID   = plan.nRemarkType.ToString();
                    tPlan.remarkTypeName = plan.strRemarkTypeName;

                    tPlan.startStationID   = plan.strStartStation;
                    tPlan.startStationName = plan.strStartStationName;
                    if (plan.dtStartTime.HasValue)
                    {
                        tPlan.startTime = plan.dtStartTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    tPlan.trainmanTypeID   = plan.nTrainmanTypeID.ToString();
                    tPlan.trainmanTypeName = plan.strTrainmanTypeName;
                    tPlan.trainNo          = plan.strTrainNo;
                    tPlan.trainNumber      = plan.strTrainNumber;
                    tPlan.trainTypeName    = plan.strTrainTypeName;
                    tPlan.planID           = plan.strTrainPlanGUID;
                    tPlan.placeID          = plan.strPlaceID;

                    tPlan.strWaiQinClientGUID   = plan.strWaiQinClientGUID;
                    tPlan.strWaiQinClientNumber = plan.strWaiQinClientNumber;
                    tPlan.strWaiQinClientName   = plan.strWaiQinClientName;

                    NameGroup group = new NameGroup();
                    group.groupID                  = plan.strGroupGUID;
                    group.trainman1                = new Trainman();
                    group.trainman1.trainmanID     = plan.strTrainmanGUID1;
                    group.trainman1.trainmanName   = plan.strTrainmanName1;
                    group.trainman1.trainmanNumber = plan.strTrainmanNumber1;

                    group.trainman2                = new Trainman();
                    group.trainman2.trainmanID     = plan.strTrainmanGUID2;
                    group.trainman2.trainmanName   = plan.strTrainmanName2;
                    group.trainman2.trainmanNumber = plan.strTrainmanNumber2;

                    group.trainman3                = new Trainman();
                    group.trainman3.trainmanID     = plan.strTrainmanGUID3;
                    group.trainman3.trainmanName   = plan.strTrainmanName3;
                    group.trainman3.trainmanNumber = plan.strTrainmanNumber3;

                    group.trainman4                = new Trainman();
                    group.trainman4.trainmanID     = plan.strTrainmanGUID4;
                    group.trainman4.trainmanName   = plan.strTrainmanName4;
                    group.trainman4.trainmanNumber = plan.strTrainmanNumber4;


                    if (plan.dtArriveTime.HasValue)
                    {
                        group.arriveTime = plan.dtArriveTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    group.groupID         = plan.strGroupGUID;
                    group.place           = new ChuqinPlace();
                    group.place.placeID   = plan.strPlaceID;
                    group.place.placeName = plan.strPlaceName;
                    group.station         = new Station();
                    group.trainPlanID     = plan.strTrainPlanGUID;
                    pClient           = new PlansOfClient();
                    pClient.trainPlan = tPlan;
                    pClient.group     = group;

                    plans.Add(pClient);
                }
            }
            return(plans);
        }
示例#9
0
文件: Lesson.cs 项目: Alberty7/Dipper
    public new int CompareTo(object obj)
    {
        switch (obj)
        {
        case Lesson other:
            return(LessonName.CompareTo(other.LessonName) + Teacher.CompareTo(other.Teacher) + StartLesson.CompareTo(other.StartLesson) + FinishLesson.CompareTo(other.FinishLesson) + NameGroup.CompareTo(other.NameGroup) + NumberGroup.CompareTo(other.NumberGroup));

        default:
            throw new Exception("Несравнимые объекты");
        }
    }
示例#10
0
 public override int GetHashCode()
 {
     return(NameGroup.GetHashCode());
 }
示例#11
0
        /// <summary>
        /// 分页获取数据列表
        /// </summary>
        //public DataSet GetList(int PageSize,int PageIndex,string strWhere)
        //{
        //return dal.GetList(PageSize,PageIndex,strWhere);
        //}

        #endregion  BasicMethod
        #region  ExtensionMethod
        //GetPlans函数实际上不应该出现在这个类中,有空的话建议移出去
        /// <summary>
        ///
        /// </summary>
        /// <param name="vPlans"></param>
        /// <returns></returns>
        private List <PlansOfClient> GetPlans(List <TF.RunSafty.Model.VIEW_Plan_Trainman> vPlans)
        {
            List <PlansOfClient> plans = new List <PlansOfClient>();

            TF.RunSafty.Model.InterfaceModel.TrainPlan     tPlan   = null;
            TF.RunSafty.Model.InterfaceModel.PlansOfClient pClient = null;
            if (vPlans != null)
            {
                foreach (TF.RunSafty.Model.VIEW_Plan_Trainman plan in vPlans)
                {
                    tPlan = new TF.RunSafty.Model.InterfaceModel.TrainPlan();
                    if (plan.dtCreateTime.HasValue)
                    {
                        tPlan.createTime = plan.dtCreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    tPlan.createSiteGUID = plan.strCreateSiteGUID;
                    tPlan.createSiteName = plan.strCreateSiteName;
                    tPlan.createUserGUID = plan.strCreateUserGUID;
                    tPlan.createUserName = plan.strCreateUserName;
                    if (plan.nDragType.HasValue)
                    {
                        tPlan.dragTypeID = plan.nDragType.ToString();
                    }
                    tPlan.endStationID          = plan.strEndStation;
                    tPlan.endStationName        = plan.strEndStationName;
                    tPlan.trainJiaoluName       = plan.strTrainJiaoluName;
                    tPlan.trainJiaoluGUID       = plan.strTrainJiaoluGUID;
                    tPlan.kehuoID               = plan.nKehuoID.ToString();
                    tPlan.kehuoName             = plan.strKehuoName;
                    tPlan.mainPlanGUID          = plan.strMainPlanGUID;
                    tPlan.placeID               = plan.strPlaceID;
                    tPlan.placeName             = plan.strPlaceName;
                    tPlan.planID                = plan.strTrainPlanGUID;
                    tPlan.planStateID           = plan.nPlanState.ToString();
                    tPlan.planStateName         = plan.strPlanStateName;
                    tPlan.planTypeID            = plan.nPlanType.ToString();
                    tPlan.planTypeName          = plan.strPlanTypeName;
                    tPlan.remarkTypeID          = plan.nRemarkType.ToString();
                    tPlan.remarkTypeName        = plan.strRemarkTypeName;
                    tPlan.strRemark             = plan.strRemark;
                    tPlan.startStationID        = plan.strStartStation;
                    tPlan.startStationName      = plan.strStartStationName;
                    tPlan.dragTypeName          = plan.nDragTypeName;
                    tPlan.planID                = plan.strTrainPlanGUID;
                    tPlan.strWaiQinClientGUID   = plan.strWaiQinClientGUID;
                    tPlan.strWaiQinClientNumber = plan.strWaiQinClientNumber;
                    tPlan.strWaiQinClientName   = plan.strWaiQinClientName;


                    if (plan.dtStartTime.HasValue)
                    {
                        tPlan.startTime = plan.dtStartTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    if (plan.dtSendTime.HasValue)
                    {
                        tPlan.sendPlanTime = plan.dtSendTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    if (plan.dtRecvTime.HasValue)
                    {
                        tPlan.recvPlanTime = plan.dtRecvTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    if (plan.dtCreateTime.HasValue)
                    {
                        tPlan.createTime = plan.dtCreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    if (plan.dtChuQinTime.HasValue)
                    {
                        tPlan.kaiCheTime = plan.dtChuQinTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    else
                    {
                        //tPlan.kaiCheTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    if (plan.dtFirstStartTime.HasValue)
                    {
                        tPlan.firstStartTime = plan.dtFirstStartTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    if (plan.dtRealStartTime.HasValue)
                    {
                        tPlan.realStartTime = plan.dtRealStartTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    if (plan.dtBeginWorkTime.HasValue)
                    {
                        tPlan.beginWorkTime = plan.dtBeginWorkTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    rests rest = new rests();



                    if (plan.dtArriveTime.HasValue)
                    {
                        tPlan.dtArriveTime = plan.dtArriveTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                        rest.dtArriveTime  = plan.dtArriveTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    if (plan.dtCallTime.HasValue)
                    {
                        tPlan.dtCallTime = plan.dtCallTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                        rest.dtCallTime  = plan.dtCallTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    if (plan.nNeedRest.HasValue)
                    {
                        tPlan.nNeedRest = plan.nNeedRest.Value;
                        rest.nNeedRest  = plan.nNeedRest.ToString();
                    }
                    tPlan.trainmanTypeID   = plan.nTrainmanTypeID.ToString();
                    tPlan.trainNo          = plan.strTrainNo;
                    tPlan.trainNumber      = plan.strTrainNumber;
                    tPlan.trainTypeName    = plan.strTrainTypeName;
                    tPlan.trainmanTypeName = plan.strTrainmanTypeName;
                    NameGroup group = new NameGroup();
                    group.groupID                  = plan.strGroupGUID;
                    group.trainman1                = new Trainman();
                    group.trainman1.trainmanID     = plan.strTrainmanGUID1;
                    group.trainman1.trainmanName   = plan.strTrainmanName1;
                    group.trainman1.trainmanNumber = plan.strTrainmanNumber1;
                    group.trainman1.callWorkState  = plan.nMsgState1.Value;
                    group.trainman1.callWorkID     = plan.strMsgID1;
                    group.trainman1.telNumber      = plan.strMobileNumber1;

                    group.trainman2                = new Trainman();
                    group.trainman2.trainmanID     = plan.strTrainmanGUID2;
                    group.trainman2.trainmanName   = plan.strTrainmanName2;
                    group.trainman2.trainmanNumber = plan.strTrainmanNumber2;
                    group.trainman2.callWorkState  = plan.nMsgState2.Value;
                    group.trainman2.callWorkID     = plan.strMsgID2;
                    group.trainman2.telNumber      = plan.strMobileNumber2;

                    group.trainman3                = new Trainman();
                    group.trainman3.trainmanID     = plan.strTrainmanGUID3;
                    group.trainman3.trainmanName   = plan.strTrainmanName3;
                    group.trainman3.trainmanNumber = plan.strTrainmanNumber3;
                    group.trainman3.callWorkState  = plan.nMsgState3.Value;
                    group.trainman3.callWorkID     = plan.strMsgID3;
                    group.trainman3.telNumber      = plan.strMobileNumber3;

                    group.trainman4                = new Trainman();
                    group.trainman4.trainmanID     = plan.strTrainmanGUID4;
                    group.trainman4.trainmanName   = plan.strTrainmanName4;
                    group.trainman4.trainmanNumber = plan.strTrainmanNumber4;
                    group.trainman4.callWorkState  = plan.nMsgState4.Value;
                    group.trainman4.callWorkID     = plan.strMsgID4;
                    group.trainman4.telNumber      = plan.strMobileNumber4;

                    if (plan.dtArriveTime.HasValue)
                    {
                        group.arriveTime = plan.dtArriveTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
                    }
                    group.groupID         = plan.strGroupGUID;
                    group.place           = new ChuqinPlace();
                    group.place.placeID   = plan.strPlaceID;
                    group.place.placeName = plan.strPlaceName;
                    group.station         = new Station();
                    group.trainPlanID     = plan.strTrainPlanGUID;
                    pClient           = new PlansOfClient();
                    pClient.trainPlan = tPlan;
                    pClient.group     = group;
                    pClient.rest      = rest;

                    plans.Add(pClient);
                }
            }
            return(plans);
        }
示例#12
0
        /// <summary>
        /// 获取指定交路下指定出勤点的轮乘机组列表
        /// </summary>
        /// <param name="TrainmanJiaolu">人员交路ID</param>
        /// <param name="PlaceID">出勤点ID</param>
        ///<param name="TrainmanGUID">乘务员GUID列表</param>
        /// <returns></returns>
        public List <TF.RunSafty.Model.InterfaceModel.NameGroup> GetGroups(string TrainmanJiaolu, List <string> PlaceIDs, string TrainmanGUID)
        {
            System.Data.SqlClient.SqlParameter[] sqlParamsJiaolu =
            {
                new System.Data.SqlClient.SqlParameter("Trainmanjiaolu", TrainmanJiaolu)
            };

            string sqlText    = @"select nJiaoluType from tab_base_trainmanJiaolu where strTrainmanJiaoluGUID = @TrainmanJiaolu";
            object obj        = SqlHelper.ExecuteScalar(SqlHelper.ConnString, CommandType.Text, sqlText, sqlParamsJiaolu);
            int    jiaoluType = Convert.ToInt32(obj);

            sqlText = @"select *,
                (select max(dtInRoomTime) from TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber1) as InRoomTime1,
                (select max(dtInRoomTime) from TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber2) as InRoomTime2, 
                (select max(dtInRoomTime) from TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber3) as InRoomTime3, 
                (select max(dtInRoomTime) from TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber4) as InRoomTime4 
              from VIEW_Nameplate_Group  where 1=1 ";

            if (TrainmanGUID != "")
            {
                sqlText += @"  and (strTrainmanGUID1 = @TrainmanID or strTrainmanGUID2 = @TrainmanID or
                    strTrainmanGUID3 =  @TrainmanID or strTrainmanGUID4 = @TrainmanID) ";
            }

            if (TrainmanJiaolu != "")
            {
                sqlText += " and strTrainmanJiaoluGUID = @Trainmanjiaolu";
            }
            string placewhere = "";

            switch (jiaoluType)
            {
            //named
            case 2:
            {
                sqlText += " order by groupState,(case when year(dtLastArriveTime)=1899  then 1 else 0 end ),dtLastArriveTime,strTrainmanName1,strTrainmanName2";
            }
            break;

            //order
            case 3:
            {
                if (PlaceIDs.Count > 0)
                {
                    for (int i = 0; i < PlaceIDs.Count; i++)
                    {
                        if (placewhere == "")
                        {
                            placewhere = PlaceIDs[i];
                        }
                        else
                        {
                            placewhere += "," + PlaceIDs[i];
                        }
                    }
                    sqlText += " and strPlaceID in (@Place)";
                }
                sqlText += " order by groupState,(case when year(dtLastArriveTime)=1899  then 1 else 0 end ),dtLastArriveTime,strTrainmanName1,strTrainmanName2";
            }
            break;

            //together
            case 4:
            {
                sqlText += " order by groupState,(case when year(dtLastArriveTime)=1899  then 1 else 0 end ),dtLastArriveTime,strTrainmanName1,strTrainmanName2";
            }
            break;
            }
            System.Data.SqlClient.SqlParameter[] sqlParams =
            {
                new System.Data.SqlClient.SqlParameter("TrainmanID",     TrainmanGUID),
                new System.Data.SqlClient.SqlParameter("Trainmanjiaolu", TrainmanJiaolu),
                new System.Data.SqlClient.SqlParameter("Place",          placewhere)
            };

            DataTable dtGroups = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, sqlText, sqlParams).Tables[0];
            List <TF.RunSafty.Model.InterfaceModel.NameGroup> result = new List <Model.InterfaceModel.NameGroup>();

            for (int k = 0; k < dtGroups.Rows.Count; k++)
            {
                NameGroup group = new NameGroup();
                result.Add(group);
                DataRowToGroup(dtGroups.Rows[k], group);
            }
            return(result);
        }
示例#13
0
        //从数据行中读取数据到NameGroup中
        public static void GroupFromDB(NameGroup group, DataRow dr)
        {
            group.groupID = dr["strGroupGUID"].ToString();

            group.trainman1.trainmanID     = dr["strTrainmanGUID1"].ToString();
            group.trainman1.trainmanName   = dr["strTrainmanName1"].ToString();
            group.trainman1.trainmanNumber = dr["strTrainmanNumber1"].ToString();
            group.trainman1.telNumber      = dr["strTelNumber1"].ToString();
            if (!TF.RunSafty.Utils.Parse.TFParse.DBToInt(dr["nTrainmanState"], ref group.trainman1.trainmanState))
            {
                group.trainman1.trainmanState = 7; //tsNil;
            }
            if (!TF.RunSafty.Utils.Parse.TFParse.DBToInt(dr["nPostID1"], ref group.trainman1.trainmanState))
            {
                group.trainman1.postID = 0;
            }



            group.trainman2.trainmanID     = dr["strTrainmanGUID2"].ToString();
            group.trainman2.trainmanName   = dr["strTrainmanName2"].ToString();
            group.trainman2.trainmanNumber = dr["strTrainmanNumber2"].ToString();
            group.trainman2.telNumber      = dr["strTelNumber2"].ToString();

            if (!TF.RunSafty.Utils.Parse.TFParse.DBToInt(dr["nTrainmanState1"], ref group.trainman2.trainmanState))
            {
                group.trainman2.trainmanState = 7; //tsNil;
            }
            if (!TF.RunSafty.Utils.Parse.TFParse.DBToInt(dr["nPostID2"], ref group.trainman2.postID))
            {
                group.trainman2.postID = 0;
            }



            group.trainman3.trainmanID     = dr["strTrainmanGUID3"].ToString();
            group.trainman3.trainmanName   = dr["strTrainmanName3"].ToString();
            group.trainman3.trainmanNumber = dr["strTrainmanNumber3"].ToString();
            group.trainman3.telNumber      = dr["strTelNumber3"].ToString();
            if (!TF.RunSafty.Utils.Parse.TFParse.DBToInt(dr["nTrainmanState2"], ref group.trainman3.trainmanState))
            {
                group.trainman3.trainmanState = 7; //tsNil;
            }
            if (!TF.RunSafty.Utils.Parse.TFParse.DBToInt(dr["nPostID3"], ref group.trainman3.postID))
            {
                group.trainman3.postID = 0;
            }


            group.trainman4.trainmanID     = dr["strTrainmanGUID4"].ToString();
            group.trainman4.trainmanName   = dr["strTrainmanName4"].ToString();
            group.trainman4.trainmanNumber = dr["strTrainmanNumber4"].ToString();
            group.trainman4.telNumber      = dr["strTelNumber4"].ToString();
            if (!TF.RunSafty.Utils.Parse.TFParse.DBToInt(dr["nTrainmanState3"], ref group.trainman4.trainmanState))
            {
                group.trainman4.trainmanState = 7; //tsNil;
            }
            if (!TF.RunSafty.Utils.Parse.TFParse.DBToInt(dr["nPostID4"], ref group.trainman4.postID))
            {
                group.trainman4.postID = 0;
            }


            group.LastEndworkTime1 = CheckFieldAndConvert_Time(dr, "dtLastEndworkTime1");
            group.LastEndworkTime2 = CheckFieldAndConvert_Time(dr, "dtLastEndworkTime2");
            group.LastEndworkTime3 = CheckFieldAndConvert_Time(dr, "dtLastEndworkTime3");
            group.LastEndworkTime4 = CheckFieldAndConvert_Time(dr, "dtLastEndworkTime4");



            //group.arriveTime = dr["dtLastArriveTime"].ToString();
            //group.groupState = 2;//tsNormal;
            //if ((dr["GroupState"] != null) && (DBNull.Value.Equals(dr["GroupState"]) == false))
            //{
            //    group.groupState = 3;//tsPlaning;
            //    //psBeginWork
            //    if (dr["GroupState"].ToString() == "7")

            //        group.groupState = 6;// tsRuning;

            //}
        }