/// <summary>
        /// 增加一条数据
        /// </summary>
        public bool Add(SeatManage.ClassModel.AMS_PlayList model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into AMS_PlayList(");
            strSql.Append("Number,CampusNum,PlayList,ReleaseDate,EffectDate,EndDate)");
            strSql.Append(" values (");
            strSql.Append("@Number,@CampusNum,@PlayList,@ReleaseDate,@EffectDate,@EndDate)");
            SqlParameter[] parameters =
            {
                new SqlParameter("@Number",      SqlDbType.NVarChar,  50),
                new SqlParameter("@CampusNum",   SqlDbType.NVarChar,  50),
                new SqlParameter("@PlayList",    SqlDbType.Text),
                new SqlParameter("@ReleaseDate", SqlDbType.DateTime),
                new SqlParameter("@EffectDate",  SqlDbType.DateTime),
                new SqlParameter("@EndDate",     SqlDbType.DateTime)
            };
            parameters[0].Value = model.PlayListNo;
            parameters[1].Value = "";
            parameters[2].Value = model.ToXml();
            parameters[3].Value = model.ReleaseDate.Value;
            parameters[4].Value = model.EffectDate;
            parameters[5].Value = model.EndDate;

            int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        /// <summary>
        /// 播放列表xml 转换成对象
        /// </summary>
        /// <param name="xmlPlayList">xml结构的播放列表</param>
        /// <returns></returns>
        private static AMS_PlayList Parse(XmlDocument xmlPlayList)
        {
            AMS_PlayList         plm        = new AMS_PlayList();
            List <AMS_VideoItem> videoFiles = new List <AMS_VideoItem>();
            XmlDocument          xmlDoc     = xmlPlayList;

            try
            {
                //查找根节点
                XmlNode node = xmlDoc.SelectSingleNode("//Root");
                plm.PlayListNo  = node.Attributes["Num"].Value;                        //列表编号
                plm.EffectDate  = DateTime.Parse(node.Attributes["EffectDate"].Value); //生效日期
                plm.PlayElapsed = int.Parse(node.Attributes["PlayElapsed"].Value);
                plm.EndDate     = DateTime.Parse(node.Attributes["EndDate"].Value);
                List <AMS_VideoItem> lists = new List <AMS_VideoItem>();
                XmlNodeList          nodes = xmlDoc.SelectNodes("//Root/VideoItems/Video");
                //遍历找到的视频项
                foreach (XmlNode n in nodes)
                {
                    lists.Add(
                        new AMS_VideoItem()
                    {
                        Name        = n.Attributes["name"].Value,
                        PlayTime    = n.Attributes["playtime"].Value,
                        RelativeUrl = n.Attributes["source"].Value,
                    }
                        );
                    //不重复的视频文件名称
                    int i;
                    for (i = 0; i < videoFiles.Count; i++)
                    {
                        if (videoFiles[i].Name == n.Attributes["name"].Value)
                        {
                            break;
                        }
                    }
                    if (i >= videoFiles.Count)
                    {
                        videoFiles.Add(new AMS_VideoItem()
                        {
                            Name = n.Attributes["name"].Value, RelativeUrl = n.Attributes["source"].Value
                        });
                    }
                }
                plm.VideoFiles         = videoFiles;
                plm.PlayVideoItems     = lists;
                plm.PlayListTimeLength = GetTimeLength(DateTime.Parse(DateTime.Now.ToShortDateString() + " " + lists[0].PlayTime), DateTime.Parse(DateTime.Now.ToShortDateString() + " " + lists[lists.Count - 1].PlayTime));
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(plm);
        }
        /// <summary>
        /// 结构转换成XML
        /// </summary>
        /// <param name="playlist">播放列表</param>
        /// <returns></returns>
        public string ToXml(AMS_PlayList playlist)
        {
            //TODO:转换成xml结构的算法
            //创建一个xml对象
            XmlDocument xmlDoc = new XmlDocument();
            //创建开头
            XmlDeclaration dec = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", null);

            xmlDoc.AppendChild(dec);
            //创建根节点
            XmlElement root = xmlDoc.CreateElement("Root");

            root.SetAttribute("Num", playlist.PlayListNo);
            root.SetAttribute("EffectDate", playlist.EffectDate.ToShortDateString());
            root.SetAttribute("EndDate", playlist.EndDate.ToShortDateString());
            root.SetAttribute("PlayElapsed", playlist.PlayElapsed.ToString());
            //创建二级节点
            XmlElement SecNode = xmlDoc.CreateElement("VideoItems");

            root.AppendChild(SecNode);
            //遍历媒体文件并添加到节点中
            foreach (AMS_VideoItem video in playlist.PlayVideoItems)
            {
                XmlElement ThirdNode = xmlDoc.CreateElement("Video");
                ThirdNode.SetAttribute("name", video.Name);
                ThirdNode.SetAttribute("playtime", video.PlayTime);
                ThirdNode.SetAttribute("source", video.RelativeUrl);
                SecNode.AppendChild(ThirdNode);
                //不重复的视频文件名称
                int i;
                for (i = 0; i < VideoFiles.Count; i++)
                {
                    if (VideoFiles[i].Name == video.Name)
                    {
                        break;
                    }
                }
                if (i >= VideoFiles.Count)
                {
                    VideoFiles.Add(video);
                }
            }
            //在根节点中添加二级节点
            root.AppendChild(SecNode);
            //添加根节点
            xmlDoc.AppendChild(root);
            return(xmlDoc.OuterXml);
        }
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public bool Update(SeatManage.ClassModel.AMS_PlayList model)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("update AMS_PlayList set ");
            strSql.Append("CampusNum=@CampusNum,");
            strSql.Append("PlayList=@PlayList,");
            strSql.Append("ReleaseDate=@ReleaseDate,");
            strSql.Append("EffectDate=@EffectDate,");
            strSql.Append("EndDate=@EndDate");
            strSql.Append(" where Number=@Number ");
            SqlParameter[] parameters =
            {
                new SqlParameter("@CampusNum",   SqlDbType.NVarChar,  50),
                new SqlParameter("@PlayList",    SqlDbType.Text),
                new SqlParameter("@ReleaseDate", SqlDbType.DateTime),
                new SqlParameter("@EffectDate",  SqlDbType.DateTime),
                new SqlParameter("@EndDate",     SqlDbType.DateTime),
                new SqlParameter("@Number",      SqlDbType.NVarChar, 50)
            };
            parameters[0].Value = "";
            parameters[1].Value = model.ToXml();
            if (model.ReleaseDate.HasValue)
            {
                parameters[2].Value = model.ReleaseDate.Value;
            }
            else
            {
                parameters[2].Value = DateTime.Parse("1900-1-1");
            }
            parameters[3].Value = model.EffectDate;
            parameters[4].Value = model.EndDate;
            parameters[5].Value = model.PlayListNo;

            int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);

            if (rows > 0)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
        /// <summary>
        /// 播放列表xml 转换成对象
        /// </summary>
        /// <param name="xmlPlayList">xml结构的播放列表</param>
        /// <returns></returns>
        public static AMS_PlayList Parse(string xmlPlayList)
        {
            AMS_PlayList plm    = new AMS_PlayList();
            XmlDocument  xmlDoc = new XmlDocument();

            try
            {
                //载入字符串类型的XML
                xmlDoc.LoadXml(xmlPlayList);
                plm = Parse(xmlDoc);
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(plm);
        }