示例#1
0
        /// <summary>
        /// 修改显示信息
        /// </summary>
        /// <returns></returns>
        public bool UpdateLEDShowInfo(LEDShowInfo lEDShowInfo)
        {
            string sSql = $@"Update LEDShowInfo set BeginTime='{lEDShowInfo.BeginTime}',EndTime ='{lEDShowInfo.EndTime}',Content = '{lEDShowInfo.Content}',
FontColor = '{lEDShowInfo.FontColor}',FontName = '{lEDShowInfo.FontName}',FontSize='{lEDShowInfo.FontSize}',Duration='{lEDShowInfo.Duration}'  where ID = '{lEDShowInfo.ID}'";

            return(server.ExecuteNonQuery(sSql) > 0);
        }
示例#2
0
        /// <summary>
        /// 屏幕发送节目显示或是保存到数据库定时发送显示
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSendData_Click(object sender, EventArgs e)
        {
            try
            {
                LEDShowInfo showInfo = new LEDShowInfo();

                showInfo.ScreenId   = cmbLEDId.Text;
                showInfo.AddressNum = Convert.ToInt32(cmbLEDId.SelectedValue);
                showInfo.Content    = string.IsNullOrEmpty(txtContent.Text) ? "日期星期时间显示" : txtContent.Text;
                showInfo.FontColor  = fontColor.ToString();
                showInfo.FontName   = fontName;
                showInfo.FontSize   = fontSize;
                showInfo.ShowStyle  = Convert.ToInt32(cmbShowType.SelectedValue);
                showInfo.FontBold   = chkFoild.Checked;
                showInfo.Position   = cmbPosition.Text.Equals("居中") ? 1 : cmbPosition.Text.Equals("左对齐") ? 0 : cmbPosition.Text.Equals("右对齐") ? 2 : 1;
                showInfo.Duration   = Convert.ToInt32(txtTIme.Text);
                if (LEDShow.SendData(Convert.ToInt32(cmbLEDId.SelectedValue)))
                {
                    showInfo.SendState = "自定义实时发送成功";
                    ledShowInfo.InserScreenLog(showInfo);
                    MessageBox.Show("发送成功!");//显示日志记录
                }
                else
                {
                    showInfo.SendState = "自定义实时发送失败";
                    ledShowInfo.InserScreenLog(showInfo);
                    MessageBox.Show("发送失败!");//显示日志记录
                }
            }
            catch { }
        }
示例#3
0
 private void dgvTemShow_CellClick(object sender, DataGridViewCellEventArgs e)
 {
     try
     {
         if (dgvTemShow.CurrentRow != null)
         {
             if (dgvTemShow.Columns[e.ColumnIndex].Name == "修改")
             {
                 if (dgvTemShow.CurrentRow.Cells["修改"].FormattedValue.ToString() == "修改")
                 {
                     LEDShowInfo lEDShowInfo = new LEDShowInfo();
                     lEDShowInfo.ID        = Convert.ToInt32(dgvTemShow.CurrentRow.Cells["ID"].Value);
                     lEDShowInfo.BeginTime = dgvTemShow.CurrentRow.Cells["BeginTime"].Value.ToString();
                     lEDShowInfo.EndTime   = dgvTemShow.CurrentRow.Cells["EndTime"].Value.ToString();
                     lEDShowInfo.Content   = dgvTemShow.CurrentRow.Cells["Content"].Value.ToString();
                     lEDShowInfo.FontColor = dgvTemShow.CurrentRow.Cells["FontColor"].Value.ToString();
                     lEDShowInfo.FontName  = dgvTemShow.CurrentRow.Cells["FontName"].Value.ToString();
                     lEDShowInfo.FontSize  = Convert.ToInt32(dgvTemShow.CurrentRow.Cells["FontSize"].Value);
                     lEDShowInfo.Duration  = Convert.ToInt32(dgvTemShow.CurrentRow.Cells["Duration"].Value);
                     if (bllLedShowInfo.UpdateLEDShowInfo(lEDShowInfo))
                     {
                         MessageBox.Show("修改成功!");
                         btnSearch_Click(null, null);
                     }
                     else
                     {
                         MessageBox.Show("修改失败!");
                     }
                 }
             }
         }
     }
     catch (Exception ex) { MessageBox.Show(ex.ToString()); }
 }
示例#4
0
        /// <summary>
        /// 添加显示发送记录
        /// </summary>
        /// <param name="ledShowInfo"></param>
        /// <returns></returns>
        public bool InserScreenLog(LEDShowInfo ledShowInfo)
        {
            string sSql = $@"Insert into ScreenShowLog(ScreenId,SendState,AddressNum,BeginTime,EndTime,Content,FontColor,FontName,FontSize,ShowStyle,FontBold,Position,Duration) 
values('{ledShowInfo.ScreenId}','{ledShowInfo.SendState}','{ledShowInfo.AddressNum}','{ledShowInfo.BeginTime}','{ledShowInfo.EndTime}',
'{ledShowInfo.Content}','{ledShowInfo.FontColor}','{ledShowInfo.FontName}','{ledShowInfo.FontSize}','{ledShowInfo.ShowStyle}','{ledShowInfo.FontBold}',
'{ledShowInfo.Position}','{ledShowInfo.Duration}')";

            return(server.ExecuteNonQuery(sSql) > 0);
        }
示例#5
0
        /// <summary>
        /// 新增预设显示信息
        /// </summary>
        /// <param name="ledShowInfo"></param>
        /// <returns></returns>
        public bool InsertLedShowInfo(LEDShowInfo ledShowInfo)
        {
            string sSql = $@"Insert into LedShowInfo(ScreenId,AddressNum,BeginTime,EndTime,Content,FontColor,FontName,FontSize,ShowStyle,FontBold,Position,Tag,Duration,DeleteUpProgram,GroupName) 
values('{ledShowInfo.ScreenId}','{ledShowInfo.AddressNum}','{ledShowInfo.BeginTime}','{ledShowInfo.EndTime}',
'{ledShowInfo.Content}','{ledShowInfo.FontColor}','{ledShowInfo.FontName}','{ledShowInfo.FontSize}','{ledShowInfo.ShowStyle}','{ledShowInfo.FontBold}',
'{ledShowInfo.Position}','{ledShowInfo.Tag}','{ledShowInfo.Duration}','{ledShowInfo.DeleteUpProgram}','{ledShowInfo.GroupName}')";

            return(server.ExecuteNonQuery(sSql) > 0);
        }
示例#6
0
 /// <summary>
 ///保存到发送记录表中
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btnSendData_Click(object sender, EventArgs e)
 {
     try
     {
         if (string.IsNullOrEmpty(txtScreenId.Text.Trim()))
         {
             MessageBox.Show("请录入需要显示的屏幕编号!");
             return;
         }
         if (string.IsNullOrEmpty(txtTIme.Text))
         {
             MessageBox.Show("请录入显示时长!");
             return;
         }
         showType = Convert.ToInt32(cmbShowType.SelectedValue); //播放方式
         CurrentInfo.DataSendErro = string.Empty;               //主界面错误提示信息
         foreach (var item in screenInfo)
         {
             int         fontSize    = 0;//字体大小
             LEDShowInfo lEDShowInfo = new LEDShowInfo();
             if (dtScreen.Rows.Count > 0)
             {
                 DataRow[] screenRow = dtScreen.Select($"AddressNum = {item.Key}");
                 sWidth  = Convert.ToInt32(screenRow[0]["ScreenWidth"]);
                 sHeight = Convert.ToInt32(screenRow[0]["ScreenHeight"]);
                 lEDShowInfo.FontSize = allFontSize == 0 ? fontSize = Convert.ToInt32(screenRow[0]["FontSize"]) : fontSize = allFontSize;//字体大小设置了就用设置的,没有设置就用屏幕自带参数
             }
             lEDShowInfo.AddressNum      = Convert.ToInt32(item.Key);
             lEDShowInfo.ScreenId        = item.Value;
             lEDShowInfo.ShowStyle       = showType;
             lEDShowInfo.FontName        = fontName;
             lEDShowInfo.FontColor       = fontColor;
             lEDShowInfo.FontSize        = fontSize;
             lEDShowInfo.Content         = cmbContent.Text.Trim();
             lEDShowInfo.Duration        = Convert.ToInt32(txtTIme.Text);
             lEDShowInfo.DeleteUpProgram = chkDelete.Checked;
             if (chkDate.Checked)                                                                                 //保存发送记录表定时发送
             {
                 if (dtpEnd.Value.Hour <= dtpBegin.Value.Hour && dtpEnd.Value.Minute - dtpBegin.Value.Minute < 1) //显示时长提示
                 {
                     MessageBox.Show("设置的显示时间少于1分钟,请重新设置!");
                     return;
                 }
                 lEDShowInfo.Tag       = 0;
                 lEDShowInfo.BeginTime = dtpBegin.Value.ToShortTimeString();
                 lEDShowInfo.EndTime   = dtpEnd.Value.ToShortTimeString();
                 if (!bllLedShowInfo.InsertLedShowInfo(lEDShowInfo))
                 {
                     CurrentInfo.DataSendErro += item.Value + ",  ";
                 }
             }
             else //实时发送,不定时
             {
                 if (chkDelete.Checked)
                 {
                     LEDShow.DeleteProgram(item.Key);//删除指定控制卡所有节目
                 }
                 int programInx = LEDShow.AddProgram(item.Key, Convert.ToInt32(txtTIme.Text));
                 if (LEDShow.LedOpen(item.Key))
                 {
                     int postion = cmbPosition.Text.Equals("居中") ? 1 : cmbPosition.Text.Equals("左对齐") ? 0 : cmbPosition.Text.Equals("右对齐") ? 2 : 1; //左对齐 1居中 2右对齐
                     if (string.IsNullOrEmpty(cmbPosition.Text))
                     {
                         //单行文本不存在位置显示
                         LEDShow.AddSingleText(item.Key, sWidth, sHeight, cmbContent.Text, programInx, showType, fontName, fontSize, 0x00FF, chkFoild.Checked, postion);
                     }
                     else
                     {
                         //文本区域显示(左对齐 1居中 2右对齐)
                         LEDShow.AddText(item.Key, sWidth, sHeight, cmbContent.Text, programInx, showType, fontName, fontSize, 0x00FF, chkFoild.Checked, postion);
                     }
                     if (LEDShow.SendData(item.Key))
                     {
                         lEDShowInfo.SendState = "模板实时发送成功";
                         //bllLedShowInfo.InsertLedShowInfo(lEDShowInfo);
                         bllLedShowInfo.InserScreenLog(lEDShowInfo);
                     }
                     else
                     {
                         lEDShowInfo.SendState     = "模板实时发送失败";
                         CurrentInfo.DataSendErro += item.Value + ", ";
                         bllLedShowInfo.InserScreenLog(lEDShowInfo);
                         return;
                     }
                 }
                 else
                 {
                     CurrentInfo.DataSendErro += item.Value + ", ";
                     return;
                 }
             }
         }
         MessageBox.Show("发送成功!");
         if (!string.IsNullOrEmpty(CurrentInfo.DataSendErro))
         {
             CurrentInfo.DataSendErro += "  发送失败!";
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
 }
示例#7
0
        /// <summary>
        /// timer 实时显示
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void ShowTimer_Tick(object sender, EventArgs e)
        {
            try
            {
                //预设显示
                DataTable dtShow = ledShowInfo.GetLEDShowInfos($@" and  Tag = 0  and  BeginTime <= CONVERT (CHAR(10), GETDATE(), 108) and EndTime >= CONVERT (CHAR(10), GETDATE(), 108) order by BeginTime");
                for (int i = 0; i < dtShow.Rows.Count; i++)
                {
                    try
                    {
                        int addressNum = Convert.ToInt32(dtShow.Rows[i]["AddressNum"]);
                        if (Convert.ToInt32(dtShow.Rows[i]["DeleteUpProgram"]) == 1)
                        {
                            LEDShow.DeleteProgram(addressNum);                                                        //删除指定控制卡所有节目
                        }
                        int programInx = LEDShow.AddProgram(addressNum, Convert.ToInt32(dtShow.Rows[i]["Duration"])); //添加节目
                        int fontsize   = Convert.ToInt32(dtShow.Rows[i]["SonFontSize"]) == 0 ? Convert.ToInt32(dtShow.Rows[i]["FontSize"]) : Convert.ToInt32(dtShow.Rows[i]["SonFontSize"]);

                        //开始显示日志记录和发送失败记录
                        LEDShowInfo showInfo = new LEDShowInfo();
                        showInfo.ScreenId   = dtShow.Rows[i]["ScreenId"].ToString();
                        showInfo.AddressNum = Convert.ToInt32(dtShow.Rows[i]["AddressNum"]);
                        showInfo.BeginTime  = dtShow.Rows[i]["BeginTime"].ToString();
                        showInfo.EndTime    = dtShow.Rows[i]["EndTime"].ToString();
                        showInfo.Content    = dtShow.Rows[i]["Content"].ToString();
                        showInfo.FontColor  = dtShow.Rows[i]["FontColor"].ToString();
                        showInfo.FontName   = dtShow.Rows[i]["FontName"].ToString();
                        showInfo.FontSize   = Convert.ToInt32(dtShow.Rows[i]["FontSize"]);
                        showInfo.ShowStyle  = Convert.ToInt32(dtShow.Rows[i]["ShowStyle"]);
                        showInfo.FontBold   = Convert.ToBoolean(dtShow.Rows[i]["FontBold"]);
                        showInfo.Position   = Convert.ToInt32(dtShow.Rows[i]["Position"]);
                        showInfo.Duration   = Convert.ToInt32(dtShow.Rows[i]["Duration"]);
                        if (LEDShow.LedOpen(Convert.ToInt32(addressNum)))
                        {
                            //添加显示内容
                            LEDShow.AddText(addressNum, Convert.ToInt32(dtShow.Rows[i]["ScreenWidth"]), Convert.ToInt32(dtShow.Rows[i]["ScreenHeight"]),
                                            dtShow.Rows[i]["Content"].ToString(), programInx, Convert.ToInt32(dtShow.Rows[i]["ShowStyle"]), dtShow.Rows[i]["FontName"].ToString(),
                                            fontsize, 0x00FF, Convert.ToBoolean(dtShow.Rows[i]["FontBold"]),
                                            Convert.ToInt32(dtShow.Rows[i]["Position"])); //最后0  左对齐 1居中 2右对齐
                            if (LEDShow.SendData(addressNum))                             //发送数据
                            {
                                showInfo.SendState = "开始显示成功";
                                ledShowInfo.UpdateLEDShowInfoState(Convert.ToInt32(dtShow.Rows[i]["ID"]), 2); //更新状态显示成功-已显示
                                ledShowInfo.InserScreenLog(showInfo);                                         //发送成功日志记录
                            }
                            else
                            {
                                showInfo.SendState        = "开始显示失败";
                                CurrentInfo.DataSendErro += dtShow.Rows[i]["ScreenId"].ToString() + ",";
                                ledShowInfo.UpdateLEDShowInfoState(Convert.ToInt32(dtShow.Rows[i]["ID"]), 1); //更新状态显示失败
                                ledShowInfo.InserScreenLog(showInfo);                                         //发送失败日志记录
                            }
                        }
                        else
                        {
                            showInfo.SendState = "打开屏幕失败";
                            ledShowInfo.UpdateLEDShowInfoState(Convert.ToInt32(dtShow.Rows[i]["ID"]), 1); //更新状态显示失败
                            ledShowInfo.InserScreenLog(showInfo);                                         //发送失败日志记录
                            continue;
                        }
                    }
                    catch {
                        CurrentInfo.DataSendErro += dtShow.Rows[i]["ScreenId"].ToString() + ",";
                        continue;
                    }
                }
                //到结束时间,停止显示
                DataTable dtOutShow = ledShowInfo.GetLEDShowInfos($@" and  Tag = 2  and  EndTime < CONVERT (CHAR(10), GETDATE(), 108)");
                for (int i = 0; i < dtOutShow.Rows.Count; i++)
                {
                    try
                    {
                        int         addressNum  = Convert.ToInt32(dtOutShow.Rows[i]["AddressNum"]);
                        LEDShowInfo showEndInfo = new LEDShowInfo();
                        showEndInfo.ScreenId   = dtOutShow.Rows[i]["ScreenId"].ToString();
                        showEndInfo.AddressNum = Convert.ToInt32(dtOutShow.Rows[i]["AddressNum"]);
                        showEndInfo.BeginTime  = dtOutShow.Rows[i]["BeginTime"].ToString();
                        showEndInfo.EndTime    = dtOutShow.Rows[i]["EndTime"].ToString();
                        showEndInfo.Content    = dtOutShow.Rows[i]["Content"].ToString();
                        showEndInfo.FontColor  = dtOutShow.Rows[i]["FontColor"].ToString();
                        showEndInfo.FontName   = dtOutShow.Rows[i]["FontName"].ToString();
                        showEndInfo.FontSize   = Convert.ToInt32(dtOutShow.Rows[i]["FontSize"]);
                        showEndInfo.ShowStyle  = Convert.ToInt32(dtOutShow.Rows[i]["ShowStyle"]);
                        showEndInfo.FontBold   = Convert.ToBoolean(dtOutShow.Rows[i]["FontBold"]);
                        showEndInfo.Position   = Convert.ToInt32(dtOutShow.Rows[i]["Position"]);
                        showEndInfo.Duration   = Convert.ToInt32(dtOutShow.Rows[i]["Duration"]);
                        LEDShow.DeleteProgram(addressNum);
                        if (LEDShow.DeleteProgram(addressNum) && LEDShow.User_CloseScreen(addressNum))       //删除现有显示 关屏
                        {
                            ledShowInfo.UpdateLEDShowInfoState(Convert.ToInt32(dtOutShow.Rows[i]["ID"]), 0); //更新状态
                            showEndInfo.SendState = "结束显示成功";
                            ledShowInfo.InserScreenLog(showEndInfo);                                         //记录日志
                        }
                        else
                        {
                            showEndInfo.SendState = "结束显示失败";
                            ledShowInfo.InserScreenLog(showEndInfo);//记录日志
                        }
                    }
                    catch
                    {
                        CurrentInfo.DataSendErro += dtOutShow.Rows[i]["ScreenId"].ToString() + ",";
                        continue;
                    }
                }
                lblError.Text = "显示失败:" + CurrentInfo.DataSendErro;
            }
            catch (Exception ex) { MessageBox.Show(ex.ToString()); }
        }
示例#8
0
 /// <summary>
 /// 保存定时显示
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void btnSave_Click(object sender, EventArgs e)
 {
     try
     {
         if (!string.IsNullOrEmpty(cmbAreaId.Text) && GroupNum.Value > 0 && !string.IsNullOrEmpty(cmbByOrder.Text) &&
             !string.IsNullOrEmpty(cmbScreens.Text) && !string.IsNullOrEmpty(txtGoupName.Text) && !string.IsNullOrEmpty(txtTIme.Text))
         {
             if (GroupNum.Value > cmbScreens.Items.Count)
             {
                 MessageBox.Show("超出屏幕总数!");
                 return;
             }
             if (dtpEnd.Value.Hour <= dtpBegin.Value.Hour && dtpEnd.Value.Minute - dtpBegin.Value.Minute < 1)//显示时长提示
             {
                 MessageBox.Show("设置的显示时间少于1分钟,请重新设置!");
                 return;
             }
             if (cmbByOrder.Text.Equals("正序"))
             {
                 if (cmbScreens.SelectedIndex + GroupNum.Value > cmbScreens.Items.Count)
                 {
                     MessageBox.Show("超出区域屏幕范围!");
                     return;
                 }
                 else
                 {
                     for (int i = 0; i < Convert.ToInt32(GroupNum.Value); i++)
                     {
                         LEDShowInfo lEDShowInfo = new LEDShowInfo();
                         lEDShowInfo.ScreenId   = ledInfo.Keys.ToArray()[cmbScreens.SelectedIndex + i];
                         lEDShowInfo.AddressNum = Convert.ToInt32(ledInfo.Values.ToArray()[cmbScreens.SelectedIndex + i]);
                         lEDShowInfo.Content    = i.ToString() + "←" + (i + 1).ToString() + "→" + (i + 2).ToString();
                         lEDShowInfo.BeginTime  = dtpBegin.Value.ToShortTimeString();
                         lEDShowInfo.EndTime    = dtpEnd.Value.ToShortTimeString();
                         lEDShowInfo.FontColor  = fontColor;
                         lEDShowInfo.FontName   = fontName;
                         //lEDShowInfo.FontSize = fontSize;
                         lEDShowInfo.ShowStyle       = 1;
                         lEDShowInfo.Position        = cmbPosition.Text.Equals("居中") ? 1 : cmbPosition.Text.Equals("左对齐") ? 0 : cmbPosition.Text.Equals("右对齐") ? 2 : 1;
                         lEDShowInfo.FontBold        = chkFontBold.Checked;
                         lEDShowInfo.Duration        = Convert.ToInt32(txtTIme.Text);
                         lEDShowInfo.GroupName       = txtGoupName.Text.Trim();
                         lEDShowInfo.DeleteUpProgram = chkDeleteProgram.Checked;
                         ledShowInfo.InsertLedShowInfo(lEDShowInfo);//保存到显示记录表中
                     }
                 }
             }
             else if (cmbByOrder.Text.Equals("倒序"))
             {
                 if (cmbScreens.SelectedIndex + 1 - GroupNum.Value < 0)
                 {
                     MessageBox.Show("超出区域屏幕范围!");
                     return;
                 }
                 else
                 {
                     for (int i = Convert.ToInt32(GroupNum.Value); i > 0; i--)
                     {
                         LEDShowInfo lEDShowInfo = new LEDShowInfo();
                         lEDShowInfo.ScreenId   = ledInfo.Keys.ToArray()[cmbScreens.SelectedIndex - Convert.ToInt32(GroupNum.Value) + i];
                         lEDShowInfo.AddressNum = Convert.ToInt32(ledInfo.Values.ToArray()[cmbScreens.SelectedIndex - Convert.ToInt32(GroupNum.Value) + i]);
                         lEDShowInfo.Content    = (i + 1).ToString() + "←" + i.ToString() + "→" + (i - 1).ToString();
                         lEDShowInfo.BeginTime  = dtpBegin.Value.ToShortTimeString();
                         lEDShowInfo.EndTime    = dtpEnd.Value.ToShortTimeString();
                         lEDShowInfo.FontColor  = fontColor;
                         lEDShowInfo.FontName   = fontName;
                         //lEDShowInfo.FontSize = fontSize;
                         lEDShowInfo.ShowStyle       = 1;
                         lEDShowInfo.Position        = cmbPosition.Text.Equals("居中") ? 1 : cmbPosition.Text.Equals("左对齐") ? 0 : cmbPosition.Text.Equals("右对齐") ? 2 : 0;
                         lEDShowInfo.FontBold        = chkFontBold.Checked;
                         lEDShowInfo.Duration        = Convert.ToInt32(txtTIme.Text);
                         lEDShowInfo.GroupName       = txtGoupName.Text.Trim();
                         lEDShowInfo.DeleteUpProgram = chkDeleteProgram.Checked;
                         ledShowInfo.InsertLedShowInfo(lEDShowInfo);//保存到显示记录表中
                     }
                 }
             }
             MessageBox.Show("保存成功!");
         }
         else
         {
             MessageBox.Show("请继续完善信息!");
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show("保存错误!" + ex.ToString());
     }
 }
示例#9
0
 /// <summary>
 /// 修改信息
 /// </summary>
 /// <param name="id"></param>
 /// <returns></returns>
 public bool UpdateLEDShowInfo(LEDShowInfo lEDShowInfo)
 {
     return(dalLedShowInfo.UpdateLEDShowInfo(lEDShowInfo));
 }
示例#10
0
 /// <summary>
 /// 添加显示记录
 /// </summary>
 /// <param name="lEDShowInfo"></param>
 /// <returns></returns>
 public bool InserScreenLog(LEDShowInfo lEDShowInfo)
 {
     return(dalLedShowInfo.InserScreenLog(lEDShowInfo));
 }
示例#11
0
 /// <summary>
 /// 新增预设显示
 /// </summary>
 /// <param name="lEDShowInfo"></param>
 /// <returns></returns>
 public bool InsertLedShowInfo(LEDShowInfo lEDShowInfo)
 {
     return(dalLedShowInfo.InsertLedShowInfo(lEDShowInfo));
 }