Ejemplo n.º 1
0
        /// <summary>
        /// 获取包乘机车中机组正在值乘的假话信息
        /// </summary>
        public InterfaceOutPut GetPlanOfTrain(String Data)
        {
            InterfaceOutPut output = new InterfaceOutPut();

            output.result = 1;
            try
            {
                JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                InGetPlanOfTrain     InParams             = javaScriptSerializer.Deserialize <InGetPlanOfTrain>(Data);
                OutGetPlanOfTrain    OutParams            = new OutGetPlanOfTrain();
                string         strSql    = @"Select dtStartTime,strTrainNo,strTrainJiaoluName from VIEW_Plan_Trainman where 
                         strTrainPlanGUID in (select strTrainPlanGUID from VIEW_Nameplate_TrainmanJiaolu_TogetherTrain where strTrainGUID = @strTrainGUID)";
                SqlParameter[] sqlParams = new SqlParameter[] {
                    new SqlParameter("strTrainGUID", InParams.TrainGUID)
                };
                DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, strSql, sqlParams).Tables[0];
                OutParams.Exist = 0;
                if (dt.Rows.Count > 0)
                {
                    OutParams.Exist = 1;
                    PSNameBoard.TrainPlanMinFromDB(OutParams.Plan, dt.Rows[0]);
                }
                output.data   = OutParams;
                output.result = 0;
            }
            catch (Exception ex)
            {
                output.resultStr = ex.Message;
                LogClass.log("Interface.GetPlanOfTrain:" + ex.Message);
                throw ex;
            }
            return(output);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 判断是否在计划中
        /// </summary>
        /// <param name="GroupGUID"></param>
        /// <param name="checkBrief"></param>
        /// <returns></returns>
        public static bool CheckIsInPlan(string GroupGUID, ref string checkBrief)
        {
            Group  G      = new Group();
            string strSql = "select top 1 * from VIEW_Nameplate_Group   where  strGroupGUID=@strGroupGUID";

            SqlParameter[] sqlParams = new SqlParameter[]
            {
                new SqlParameter("strGroupGUID", GroupGUID)
            };
            DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, strSql, sqlParams).Tables[0];

            if (dt.Rows.Count > 0)
            {
                PSNameBoard.GroupFromDB(G, dt.Rows[0]);
                if (G.groupState == 3)
                {
                    checkBrief = string.Format("机组已被安排了计划,不能添加");
                    return(false);
                }
                if (G.groupState == 6)
                {
                    checkBrief = string.Format("机组已出勤,不能添加");
                    return(false);
                }
                return(true);
            }
            return(true);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 获取指定车间指定人员交路未在牌人员的人员列表
        /// </summary>
        public InterfaceOutPut GetTMNotInNameGroup(String Data)
        {
            InterfaceOutPut output = new InterfaceOutPut();

            output.result = 1;
            try
            {
                JavaScriptSerializer   javaScriptSerializer = new JavaScriptSerializer();
                InGetPrepareTrainmans  InParams             = javaScriptSerializer.Deserialize <InGetPrepareTrainmans>(Data);
                OutGetPrepareTrainmans OutParams            = new OutGetPrepareTrainmans();

                string str = "";
                if (!string.IsNullOrEmpty(InParams.WorkShopGUID))
                {
                    str += " and strWorkShopGUID = @strWorkShopGUID";
                }

                if (!string.IsNullOrEmpty(InParams.TrainmanJiaoluGUID))
                {
                    str += " and strTrainmanJiaoluGUID = @strTrainmanJiaoluGUID";
                }


                string strSql = string.Format(@"SELECT *  FROM  TAB_Org_Trainman where  
                     (
                        nTrainmanState=7 or len(nTrainmanState)=0 or
                           (
                              nTrainmanState=1 and
                                (len(strTrainmanJiaoluGUID)=0 or strTrainmanJiaoluGUID not in(select strTrainmanJiaoluGUID from TAB_Base_TrainmanJiaolu))
                            )
                     ) {0}
                     order by strTrainmanNumber ", str);

                SqlParameter[] sqlParams = new SqlParameter[] {
                    new SqlParameter("strWorkShopGUID", InParams.WorkShopGUID),
                    new SqlParameter("strTrainmanJiaoluGUID", InParams.TrainmanJiaoluGUID)
                };
                DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, strSql, sqlParams).Tables[0];

                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    TrainmanNamePlate trainman = new TrainmanNamePlate();

                    PSNameBoard.TrainmanNamePlateFromDB(trainman, dt.Rows[i]);
                    OutParams.Trainmans.Add(trainman);
                }

                output.data   = OutParams;
                output.result = 0;
            }
            catch (Exception ex)
            {
                output.resultStr = ex.Message;
                LogClass.log("Interface.GetPrepareTrainmans:" + ex.Message);
                throw ex;
            }
            return(output);
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 获取指定车间的指定人员交路下的非运转人员列表
        /// </summary>
        public InterfaceOutPut GetUnRunTrainmans(String Data)
        {
            InterfaceOutPut output = new InterfaceOutPut();

            output.result = 1;
            try
            {
                JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                InGetUnRunTrainmans  InParams             = javaScriptSerializer.Deserialize <InGetUnRunTrainmans>(Data);
                OutGetUnRunTrainmans OutParams            = new OutGetUnRunTrainmans();



                string strSql = @"select leave.dBeginTime,leave.dEndTime,leave.strLeaveTypeGUID,leave.strTypeName as strLeaveTypeName,
                        leave.nStatus,* from TAB_Org_Trainman as tm left join VIEW_LeaveMgr_AskLeaveWithTypeName as leave 
                        on  tm.strTrainmanGUID = leave.strTrainManID
                        where nTrainmanState = 0 and (leave.nStatus = 1 or leave.nStatus is null) ";
                if (!string.IsNullOrEmpty(InParams.TrainmanJiaoluGUID))
                {
                    strSql += " and  strTrainmanJiaoluGUID = @strTrainmanJiaoluGUID";
                }
                if (!string.IsNullOrEmpty(InParams.WorkShopGUID))
                {
                    strSql += " and  strWorkShopGUID=@strWorkShopGUID";
                }
                strSql += " order by strLeaveTypeGUID,dBeginTime,strTrainmanNumber";
                SqlParameter[] sqlParams = new SqlParameter[] {
                    new SqlParameter("strWorkShopGUID", InParams.WorkShopGUID),
                    new SqlParameter("strTrainmanJiaoluGUID", InParams.TrainmanJiaoluGUID)
                };
                DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, strSql, sqlParams).Tables[0];

                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    TrainmanLeave leave = new TrainmanLeave();
                    leave.strLeaveTypeGUID = dt.Rows[i]["strLeaveTypeGUID"].ToString();
                    leave.strLeaveTypeName = dt.Rows[i]["strLeaveTypeName"].ToString();
                    leave.dBeginTime       = TF.RunSafty.Utils.Parse.TFParse.DBToDateTime(dt.Rows[i]["dBeginTime"], DateTime.Parse("2000-01-01")).ToString("yyyy-MM-dd HH:mm:ss");
                    leave.dEndTime         = TF.RunSafty.Utils.Parse.TFParse.DBToDateTime(dt.Rows[i]["dEndTime"], DateTime.Parse("2000-01-01")).ToString("yyyy-MM-dd HH:mm:ss");

                    PSNameBoard.TrainmanFromDB(leave.Trainman, dt.Rows[i]);
                    OutParams.Trainmans.Add(leave);
                }
                output.data   = OutParams;
                output.result = 0;
            }
            catch (Exception ex)
            {
                output.resultStr = ex.Message;
                LogClass.log("Interface.GetUnRunTrainmans:" + ex.Message);
                throw ex;
            }
            return(output);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 获取指定车间的指定人员交路下的无出勤点的人员列表
        /// </summary>
        public InterfaceOutPut GetNullPlaceGroups(String Data)
        {
            InterfaceOutPut output = new InterfaceOutPut();

            output.result = 1;
            try
            {
                JavaScriptSerializer  javaScriptSerializer = new JavaScriptSerializer();
                InGetNullPlaceGroups  InParams             = javaScriptSerializer.Deserialize <InGetNullPlaceGroups>(Data);
                OutGetNullPlaceGroups OutParams            = new OutGetNullPlaceGroups();


                string strSql = @"select * from VIEW_Nameplate_TrainmanJiaolu_Order  where strTrainmanJiaoluGUID= @strTrainmanJiaoluGUID and (strPlaceID ='' or strPlaceID is null) order by dtLastArriveTime";

                SqlParameter[] sqlParams = new SqlParameter[] {
                    new SqlParameter("strTrainmanJiaoluGUID", InParams.TrainmanJiaoluGUID)
                };
                DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, strSql, sqlParams).Tables[0];
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    TF.RunSafty.NamePlate.MD.OrderGroup ordergroup = new TF.RunSafty.NamePlate.MD.OrderGroup();
                    ordergroup.orderID          = dt.Rows[i]["strOrderGUID"].ToString();
                    ordergroup.trainmanjiaoluID = dt.Rows[i]["strTrainmanJiaoluGUID"].ToString();
                    ordergroup.order            = int.Parse(dt.Rows[i]["nOrder"].ToString());
                    ordergroup.lastArriveTime   = dt.Rows[i]["dtLastArriveTime"].ToString();
                    PSNameBoard.GroupFromDB(ordergroup.group, dt.Rows[i]);
                    OutParams.Groups.Add(ordergroup);
                }
                output.data   = OutParams;
                output.result = 0;
            }
            catch (Exception ex)
            {
                output.resultStr = ex.Message;
                LogClass.log("Interface.GetNullPlaceGroups:" + ex.Message);
                throw ex;
            }
            return(output);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// 判断是否位于其他机组内
        /// </summary>
        /// <param name="AimGroupID"></param>
        /// <param name="TMNumber"></param>
        /// <param name="checkBrief"></param>
        /// <returns></returns>
        public static bool CheckIsInOtherGroup(string AimGroupID, string TMNumber, ref string checkBrief, string strTMGUID)
        {
            //获取待加人员原来所属的机组信息
            string strSql = @"select top 1 * from VIEW_Nameplate_Group 
                     where  strTrainmanGUID1 = @strTrainmanGUID or strTrainmanGUID2=@strTrainmanGUID or strTrainmanGUID3=@strTrainmanGUID or strTrainmanGUID4=@strTrainmanGUID";

            SqlParameter[] sqlParamsOldGroup = new SqlParameter[] {
                new SqlParameter("strTrainmanGUID", strTMGUID)
            };

            DataTable dtOldGroup = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, strSql, sqlParamsOldGroup).Tables[0];

            if (dtOldGroup.Rows.Count > 0)
            {
                Group G = new Group();
                PSNameBoard.GroupFromDB(G, dtOldGroup.Rows[0]);
                if (G.groupID != AimGroupID)
                {
                    checkBrief = string.Format("该乘务员位于其他机组中,司机:[{0}]{1},副司机:[{2}]{3}", G.trainman1.trainmanNumber, G.trainman1.trainmanName, G.trainman2.trainmanNumber, G.trainman2.trainmanName);
                    return(false);
                }
            }
            return(true);
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 获取指定车间的指定人员交路下的预备人员列表
        /// </summary>
        public InterfaceOutPut GetPrepareTrainmans(String Data)
        {
            InterfaceOutPut output = new InterfaceOutPut();

            output.result = 1;
            try
            {
                JavaScriptSerializer   javaScriptSerializer = new JavaScriptSerializer();
                InGetPrepareTrainmans  InParams             = javaScriptSerializer.Deserialize <InGetPrepareTrainmans>(Data);
                OutGetPrepareTrainmans OutParams            = new OutGetPrepareTrainmans();
                string         strSql    = @"select * from VIEW_Nameplate_TrainmanJiaolu_Prepare where nTrainmanState <> 7 and strWorkShopGUID = @strWorkShopGUID and strTrainmanJiaoluGUID = @strTrainmanJiaoluGUID order by dtLastEndworkTime,strTrainmanNumber";
                SqlParameter[] sqlParams = new SqlParameter[] {
                    new SqlParameter("strWorkShopGUID", InParams.WorkShopGUID),
                    new SqlParameter("strTrainmanJiaoluGUID", InParams.TrainmanJiaoluGUID)
                };
                DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, strSql, sqlParams).Tables[0];

                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    TrainmanNamePlate trainman = new TrainmanNamePlate();

                    PSNameBoard.TrainmanNamePlateFromDB(trainman, dt.Rows[i]);
                    OutParams.Trainmans.Add(trainman);
                }

                output.data   = OutParams;
                output.result = 0;
            }
            catch (Exception ex)
            {
                output.resultStr = ex.Message;
                LogClass.log("Interface.GetPrepareTrainmans:" + ex.Message);
                throw ex;
            }
            return(output);
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 获取指定的包乘机车信息
        /// </summary>
        public InterfaceOutPut GetTogetherTrain(String Data)
        {
            InterfaceOutPut output = new InterfaceOutPut();

            output.result = 1;
            try
            {
                JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                InGetTogetherTrain   InParams             = javaScriptSerializer.Deserialize <InGetTogetherTrain>(Data);
                OutGetTogetherTrain  OutParams            = new OutGetTogetherTrain();

                string         strSql    = @"select * from VIEW_Nameplate_TrainmanJiaolu_TogetherTrain 
                         where strTrainGUID= @strTrainGUID order by dtCreateTime,nOrder";
                SqlParameter[] sqlParams = new SqlParameter[] {
                    new SqlParameter("strTrainGUID", InParams.strTrainGUID)
                };
                DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, strSql, sqlParams).Tables[0];

                bool bFind = false;
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    if (OutParams.Train.strTrainGUID == dt.Rows[i]["strTrainGUID"].ToString())
                    {
                        RRsOrderGroupInTrain group = new RRsOrderGroupInTrain();
                        group.strOrderGUID     = dt.Rows[i]["strOrderGUID"].ToString();
                        group.strTrainGUID     = dt.Rows[i]["strTrainGUID"].ToString();
                        group.nOrder           = int.Parse(dt.Rows[i]["nOrder"].ToString());
                        group.dtLastArriveTime = TF.RunSafty.Utils.Parse.TFParse.DBToDateTime(dt.Rows[i]["dtLastArriveTime"], DateTime.Parse("1899-01-01"));;
                        PSNameBoard.GroupFromDB(group.Group, dt.Rows[i]);
                        OutParams.Train.Groups.Add(group);
                        bFind = true;
                    }
                    if (bFind)
                    {
                        continue;
                    }
                    OutParams.Train.strTrainGUID          = dt.Rows[i]["strTrainGUID"].ToString();
                    OutParams.Train.strTrainmanJiaoluGUID = dt.Rows[i]["strTrainmanJiaoluGUID"].ToString();
                    OutParams.Train.strTrainTypeName      = dt.Rows[i]["strTrainTypeName"].ToString();
                    OutParams.Train.strTrainNumber        = dt.Rows[i]["strTrainNumber"].ToString();
                    if (dt.Rows[i]["strOrderGUID"].ToString() != "")
                    {
                        RRsOrderGroupInTrain group = new RRsOrderGroupInTrain();
                        group.strOrderGUID     = dt.Rows[i]["strOrderGUID"].ToString();
                        group.strTrainGUID     = dt.Rows[i]["strTrainGUID"].ToString();
                        group.nOrder           = int.Parse(dt.Rows[i]["nOrder"].ToString());
                        group.dtLastArriveTime = TF.RunSafty.Utils.Parse.TFParse.DBToDateTime(dt.Rows[i]["dtLastArriveTime"], DateTime.Parse("1899-01-01"));;
                        PSNameBoard.GroupFromDB(group.Group, dt.Rows[i]);
                        OutParams.Train.Groups.Add(group);
                    }
                }

                output.data   = OutParams;
                output.result = 0;
            }
            catch (Exception ex)
            {
                output.resultStr = ex.Message;
                LogClass.log("Interface.GetTogetherTrain:" + ex.Message);
                throw ex;
            }
            return(output);
        }
Ejemplo n.º 9
0
        /// <summary>
        /// 获取人员所在机组
        /// </summary>
        public InterfaceOutPut GetGroupOfTrainman(String Data)
        {
            InterfaceOutPut output = new InterfaceOutPut();

            output.result = 1;
            try
            {
                JavaScriptSerializer  javaScriptSerializer = new JavaScriptSerializer();
                InGetGroupOfTrainman  InParams             = javaScriptSerializer.Deserialize <InGetGroupOfTrainman>(Data);
                OutGetGroupOfTrainman OutParams            = new OutGetGroupOfTrainman();
                OutParams.Exist = 0;
                if (InParams.HasRestInfo == 0)
                {
                    //                    string strSql = @"select top 1 * from VIEW_Nameplate_Group
                    //                        where  strTrainmanNumber1 = @strTrainmanNumber or strTrainmanNumber2=@strTrainmanNumber or strTrainmanNumber3=@strTrainmanNumber or strTrainmanNumber4=@strTrainmanNumber";
                    //                        SqlParameter[] sqlParams = new SqlParameter[]{
                    //                        new SqlParameter("strTrainmanNumber",InParams.TrainmanNumber)
                    //                    };

                    string strSql = @"select  * from VIEW_Nameplate_Group 
                        where  strTrainmanNumber1 = '{0}' or strTrainmanNumber2='{0}' or strTrainmanNumber3='{0}' or strTrainmanNumber4='{0}'";

                    strSql = string.Format(strSql, InParams.TrainmanNumber);

                    DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, strSql).Tables[0];

                    if (dt.Rows.Count > 0)
                    {
                        OutParams.Exist = 1;
                        PSNameBoard.GroupFromDB(OutParams.Group, dt.Rows[0]);
                    }
                }
                else
                {
                    string         strSql    = @"select top 1 *,
                         (select max(dtInRoomTime) from 
		                 TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber1 and (DATEPART (Hour,dtInRoomTime) < 4 or DATEPART (Hour,dtInRoomTime) > 12) ) as InRoomTime1,
                      (select max(dtInRoomTime) from 
		                  TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber2 and (DATEPART (Hour,dtInRoomTime) < 4 or DATEPART (Hour,dtInRoomTime) > 12) ) as InRoomTime2,
                          (select max(dtInRoomTime) from 
		                  TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber3 and (DATEPART (Hour,dtInRoomTime) < 4 or DATEPART (Hour,dtInRoomTime) > 12) ) as InRoomTime3, 
                       (select max(dtInRoomTime) from 
		                  TAB_Plan_InRoom where strTrainmanNumber = strTrainmanNumber4 and (DATEPART (Hour,dtInRoomTime) < 4 or DATEPART (Hour,dtInRoomTime) > 12) ) as InRoomTime4 
                         from VIEW_Nameplate_Group
                         where  strTrainmanNumber1 = @strTrainmanNumber or strTrainmanNumber2=@strTrainmanNumber or strTrainmanNumber3=@strTrainmanNumber or strTrainmanNumber4=@strTrainmanNumber";
                    SqlParameter[] sqlParams = new SqlParameter[] {
                        new SqlParameter("strTrainmanNumber", InParams.TrainmanNumber)
                    };
                    DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, strSql, sqlParams).Tables[0];

                    if (dt.Rows.Count > 0)
                    {
                        OutParams.Exist = 1;
                        PSNameBoard.GroupFromDB(OutParams.Group, dt.Rows[0]);
                    }
                }
                output.data   = OutParams;
                output.result = 0;
            }
            catch (Exception ex)
            {
                output.resultStr = ex.Message;
                LogClass.log("Interface.GetGroupOfTrainman:" + ex.Message);
                throw ex;
            }
            return(output);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// 获取车间内指定类型的非运转人员
        /// </summary>
        public InterfaceOutPut GetUnRunTrainmansByType(String Data)
        {
            InterfaceOutPut output = new InterfaceOutPut();

            output.result = 1;
            try
            {
                JavaScriptSerializer       javaScriptSerializer = new JavaScriptSerializer();
                InGetUnRunTrainmansByType  InParams             = javaScriptSerializer.Deserialize <InGetUnRunTrainmansByType>(Data);
                OutGetUnRunTrainmansByType OutParams            = new OutGetUnRunTrainmansByType();
                string[] types = InParams.Types.Split(new char[1] {
                    ','
                }, StringSplitOptions.RemoveEmptyEntries);
                string strLeaveTypes = "";
                for (int i = 0; i < types.Length; i++)
                {
                    if (strLeaveTypes == "")
                    {
                        strLeaveTypes = string.Format("'{0}'", types[i]);
                    }
                    else
                    {
                        strLeaveTypes += string.Format(",'{0}'", types[i]);
                    }
                }
                if (strLeaveTypes == "")
                {
                    strLeaveTypes = string.Format("('{0}')", strLeaveTypes);
                }
                else
                {
                    strLeaveTypes = string.Format("({0})", strLeaveTypes);
                }

                string         strSql    = @"select *, 
                     (select top 1 strLeaveTypeGUID from VIEW_LeaveMgr_AskLeaveWithTypeName where strTrainmanID=strTrainmanNumber order by dBeginTime desc) as strLeaveTypeGUID, 
                     (select top 1 strTypeName from VIEW_LeaveMgr_AskLeaveWithTypeName where strTrainmanID=strTrainmanNumber order by dBeginTime desc) as strLeaveTypeName
                     from VIEW_Org_Trainman where strWorkShopGUID=@strWorkShopGUID
                     and nTrainmanState = 0 and 
                     (select top 1 strLeaveTypeGUID from VIEW_LeaveMgr_AskLeaveWithTypeName
                     where strTrainmanID=strTrainmanNumber order by dBeginTime desc) in " + strLeaveTypes + @"  
                    order by (select top 1 strLeaveTypeGUID from VIEW_LeaveMgr_AskLeaveWithTypeName 
                     where strTrainmanID=strTrainmanNumber order by dBeginTime desc),strTrainmanNumber ";
                SqlParameter[] sqlParams = new SqlParameter[] {
                    new SqlParameter("strWorkShopGUID", InParams.WorkShopGUID)
                };
                DataTable dt = SqlHelper.ExecuteDataset(SqlHelper.ConnString, CommandType.Text, strSql, sqlParams).Tables[0];
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    TrainmanLeave leave = new TrainmanLeave();
                    leave.strLeaveTypeGUID = dt.Rows[i]["strLeaveTypeGUID"].ToString();
                    leave.strLeaveTypeName = dt.Rows[i]["strLeaveTypeName"].ToString();
                    PSNameBoard.TrainmanFromDB(leave.Trainman, dt.Rows[i]);
                    OutParams.Trainmans.Add(leave);
                }
                output.data   = OutParams;
                output.result = 0;
            }
            catch (Exception ex)
            {
                output.resultStr = ex.Message;
                LogClass.log("Interface.GetUnRunTrainmansByType:" + ex.Message);
                throw ex;
            }
            return(output);
        }