示例#1
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);
        }
示例#2
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);
        }