/// <summary>
        /// 增加一条包含MD5的数据
        /// </summary>
        public bool AddMd5(SeatManage.ClassModel.AMS_PlayListMd5 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);
            }
        }
Пример #2
0
 /// <summary>
 /// 删除Md5播放列表
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public SeatManage.EnumType.HandleResult DeleteMd5Playlist(SeatManage.ClassModel.AMS_PlayListMd5 model)
 {
     if (playlistDal.Delete(model.PlayListNo))
     {
         return(SeatManage.EnumType.HandleResult.Successed);
     }
     else
     {
         return(SeatManage.EnumType.HandleResult.Failed);
     }
 }
Пример #3
0
        /// <summary>
        ///删除Md5播放列表
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public static EnumType.HandleResult DeleteMd5Playlist(SeatManage.ClassModel.AMS_PlayListMd5 model)
        {
            IWCFService.ISeatManageService seatService = new WcfServiceForSeatManage.SeatManageDateService();
            bool error = false;

            try
            {
                return(seatService.DeleteMd5Playlist(model));
            }
            catch (Exception ex)
            {
                error = true;
                SeatManageComm.WriteLog.Write("删除播放列表失败:" + ex.Message);
                return(EnumType.HandleResult.Failed);
            }
        }
        /// <summary>
        /// 更新一条包含MD5的数据
        /// </summary>
        public bool UpdateMd5(SeatManage.ClassModel.AMS_PlayListMd5 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>
        ///删除Md5播放列表
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public static EnumType.HandleResult DeleteMd5Playlist(SeatManage.ClassModel.AMS_PlayListMd5 model)
        {
            IWCFService.ISeatManageService seatService = WcfAccessProxy.ServiceProxy.CreateChannelSeatManageService();
            bool error = false;

            try
            {
                return(seatService.DeleteMd5Playlist(model));
            }
            catch (Exception ex)
            {
                error = true;
                SeatManageComm.WriteLog.Write("删除播放列表失败:" + ex.Message);
                return(EnumType.HandleResult.Failed);
            }
            finally
            {
                if (!error)
                {
                    (seatService as IDisposable).Dispose();
                }
            }
        }
Пример #6
0
        /// <summary>
        /// 获取播放列表,下载列表中的文件,并执行上传。
        /// 往数据库中添加,如果已存在,则执行更新
        ///
        ///  开始下载文件之前先判断文件在缓存中是否存在,已经存在则跳过,不再下载。
        ///  下载中某个文件下载错误,则返回下载失败的信息。
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public static bool GetPlaylist(int id)
        {
            try
            {
                FileOperate advertfileOperate = new FileOperate();
                SeatManage.Bll.FileOperate seatmanagefileOperate = new SeatManage.Bll.FileOperate();
                seatmanagefileOperate.Downloaded += new SeatManage.Bll.EventHandleFileTransport(seatmanagefileOperate_Downloaded);
                advertfileOperate.DownloadError  += new EventHandleFileOperateError(fileOperate_DownloadError);
                Model.AMS_PlayListMd5Model model = AdvertManage.BLL.AMS_PlayListBLL.GetMd5PlaylistById(id);

                foreach (Model.AMS_VideoMd5Item video in model.VideoFiles)
                {
                    string fileFullName = string.Format(@"{0}{1}", ServiceSet.TempFilePath, video.RelativeUrl);
                    //开始下载文件
                    if (!File.Exists(fileFullName))
                    {
                        bool downloadResult = advertfileOperate.FileDownLoad(fileFullName, video.RelativeUrl, SeatManage.EnumType.SeatManageSubsystem.MediaFiles);
                        if (!downloadResult)
                        {
                            //下载失败,直接返回false
                            return(false);
                        }
                    }
                }

                foreach (Model.AMS_VideoMd5Item video in model.VideoFiles)
                {
                    string fileFullName = string.Format(@"{0}{1}", ServiceSet.TempFilePath, video.RelativeUrl);
                    //文件下载完成,执行上传操作
                    bool uploadResult = seatmanagefileOperate.UpdateFile(fileFullName, video.RelativeUrl, SeatManage.EnumType.SeatManageSubsystem.MediaFiles);
                    if (!uploadResult)
                    {
                        //上传失败,直接返回false,不再尝试其他操作
                        return(false);
                    }
                }

                //判断播放列表是否存在
                SeatManage.ClassModel.AMS_PlayListMd5 seatPlayList = SeatManage.Bll.AMS_PlayList.GetMd5PlayListByNum(model.PlayListNo);
                if (seatPlayList != null)
                {
                    //播放列表存在,执行更新操作
                    SeatManage.ClassModel.AMS_PlayListMd5 playlist = SeatManage.ClassModel.AMS_PlayListMd5.Parse(model.ToXml());
                    seatPlayList.PlayListNo = model.PlayListNo;
                    playlist.ReleaseDate    = model.ReleaseDate;
                    SeatManage.Bll.AMS_PlayList.UpdateMd5Playlist(playlist);
                    //执行完成通知终端更新播放列表
                    List <SeatManage.ClassModel.TerminalInfo> terminalList = SeatManage.Bll.ClientConfigOperate.GetTerminalsInfo();
                    foreach (SeatManage.ClassModel.TerminalInfo terminal in terminalList)
                    {
                        terminal.IsUpdatePlayList = true;
                        SeatManage.Bll.ClientConfigOperate.UpdateTerminal(terminal);
                    }
                }
                else
                {
                    SeatManage.ClassModel.AMS_PlayListMd5 playlist = SeatManage.ClassModel.AMS_PlayListMd5.Parse(model.ToXml());
                    playlist.ReleaseDate = model.ReleaseDate;
                    SeatManage.Bll.AMS_PlayList.AddMd5Playlist(playlist);
                }
                foreach (Model.AMS_VideoMd5Item video in model.VideoFiles)
                {
                    string fileFullName = string.Format(@"{0}{1}", ServiceSet.TempFilePath, video.RelativeUrl);
                    if (File.Exists(fileFullName))
                    {
                        File.Delete(fileFullName);
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }