コード例 #1
0
 public formPanelSelectForItem(LedItem item)
 {
     this.InitializeComponent();
     this.originalItem = item;
     this.mode         = ExecuteMode.CopyItem;
     this.DisplayLanuageText();
 }
コード例 #2
0
        public bool Check(int index)
        {
            if (this.index + 1 != index && this.index != index)
            {
                string strErr = "{0}号LED流水号校验错误:上位机当前流水号为{1},PLC当前流水号为{2}; ";
                Logger.Error(string.Format(strErr, stateItemCode, this.index + 1, index));

                Stack <LedItem> data = new Stack <LedItem>();

                LedItem item = new LedItem();
                item.Name = string.Format("{0}号LED流水号校验错误:", stateItemCode);
                data.Push(item);

                item      = new LedItem();
                item.Name = string.Format("PC当前流水号为{0},", this.index + 1);
                data.Push(item);

                item      = new LedItem();
                item.Name = string.Format("PLC当前流水号为{0};", index);
                data.Push(item);

                LedItem[] ledItems = data.ToArray();
                Array.Reverse(ledItems);

                Show(ledItems);
                return(false);
            }
            else
            {
                return(true);
            }
        }
コード例 #3
0
        public bool Check(int index)
        {
            if (this.index + 1 != index && this.index != index)
            {
                string strErr = "{0}号扫码器流水号检正错误:上位机流水号为:[{1}],PLC流水号为:[{2}],请人工确认。 ";
                Logger.Error(string.Format(strErr, stateItemCode, this.index + 1, index));

                Stack <LedItem> data = new Stack <LedItem>();

                LedItem item = new LedItem();
                item.Name = string.Format("{0}扫码器流水号错误", stateItemCode);
                data.Push(item);

                item      = new LedItem();
                item.Name = string.Format("PC当前流水号为:{0}", this.index + 1);
                data.Push(item);

                item      = new LedItem();
                item.Name = string.Format("PLC当前流水号为:{0}", index);
                data.Push(item);

                LedItem[] ledItems = data.ToArray();
                Array.Reverse(ledItems);

                Show(ledItems);
                return(false);
            }
            else
            {
                return(true);
            }
        }
コード例 #4
0
        public bool WriteToPlc(Context context)
        {
            bool result = false;

            int[] data = new int[2];

            string sql = "SELECT * FROM {0} WHERE ROW_INDEX  = {1}";

            sql = string.Format(sql, dataView, this.index);
            DataTable table = ExecuteQuery(sql).Tables[0];

            if (table.Rows.Count > 0)
            {
                int lineCode = Convert.ToInt32(table.Rows[0]["LINECODE"]);

                switch (context.Attributes["SupplyToSortLine"].ToString())
                {
                case "01":
                    lineCode = 1;
                    break;

                case "02":
                    lineCode = 2;
                    break;

                default:
                    break;
                }

                int supplyAddress = Convert.ToInt32(lineCode.ToString() + table.Rows[0]["SUPPLYADDRESS"].ToString().PadLeft(2, "0"[0]));

                data[0] = supplyAddress;
                data[1] = this.index;

                if (dispatcher.WriteToService(plcServicesName, releaseItemName, data))
                {
                    result = true;
                    Logger.Info(string.Format("{0}号扫码器,写分流数据成功,目标:'{1}'流水号:'{2}'", stateItemCode, data[0], this.index));
                }
            }
            else
            {
                Logger.Info(string.Format("{0}号扫码器,无任务数据!", stateItemCode));

                Stack <LedItem> LedItemData = new Stack <LedItem>();

                LedItem item = new LedItem();
                item.Name = string.Format("{0}号扫码器,无任务数据!", stateItemCode);
                LedItemData.Push(item);

                LedItem[] ledItems = LedItemData.ToArray();
                Array.Reverse(ledItems);

                Show(ledItems);

                result = false;
            }

            return(result);
        }
コード例 #5
0
 public formPanelSelectForItem(LedItem item, string name)
 {
     this.InitializeComponent();
     this.originalItem = item;
     this.itemName     = name;
     this.mode         = ExecuteMode.ShareItem;
     this.DisplayLanuageText();
 }
コード例 #6
0
		public bool CheckAnimationAndBackground(LedPanel _this_Panel)
		{
			bool result = false;
			for (int i = 0; i < _this_Panel.Items.Count; i++)
			{
				LedItem ledItem = _this_Panel.Items[i];
				if (ledItem.Background.Enabled)
				{
					result = true;
					break;
				}
				for (int j = 0; j < ledItem.Subareas.Count; j++)
				{
					LedSubarea ledSubarea = ledItem.Subareas[j];
					if (ledSubarea.Type == LedSubareaType.Animation)
					{
						result = true;
						break;
					}
					if (ledSubarea.Type == LedSubareaType.PictureText)
					{
						for (int k = 0; k < ledSubarea.Contents.Count; k++)
						{
							LedPictureText ledPictureText = (LedPictureText)ledSubarea.Contents[k];
							if (ledPictureText.PictureTextType == LedPictureTextType.Animation)
							{
								result = true;
								break;
							}
							if (ledPictureText.Background.Enabled)
							{
								result = true;
								break;
							}
						}
					}
					else if (ledSubarea.Type == LedSubareaType.Subtitle)
					{
						LedDText ledDText = (LedDText)ledSubarea.SelectedContent;
						if (ledDText.Background.Enabled)
						{
							result = true;
							break;
						}
					}
					else if (ledSubarea.SelectedContent.Background.Enabled)
					{
						result = true;
						break;
					}
				}
			}
			this.isAnimation = result;
			return result;
		}
コード例 #7
0
		private void GetAnimationAndBackground(LedPanel _this_Panel)
		{
			for (int i = 0; i < _this_Panel.Items.Count; i++)
			{
				LedItem ledItem = _this_Panel.Items[i];
				if (ledItem.Background.Enabled)
				{
					this.MakeAnimation(new System.Drawing.Size(_this_Panel.Width, _this_Panel.Height), ledItem.Background);
				}
				for (int j = 0; j < ledItem.Subareas.Count; j++)
				{
					LedSubarea ledSubarea = ledItem.Subareas[j];
					if (ledSubarea.Type == LedSubareaType.Animation)
					{
						LedAnimation ledAnimation = (LedAnimation)ledSubarea.SelectedContent;
						this.MakeAnimation(ledAnimation);
						if (ledAnimation.Background.Enabled)
						{
							this.MakeAnimation(ledSubarea.Size, ledAnimation.Background);
						}
					}
					else if (ledSubarea.Type == LedSubareaType.PictureText)
					{
						for (int k = 0; k < ledSubarea.Contents.Count; k++)
						{
							LedPictureText ledPictureText = (LedPictureText)ledSubarea.Contents[k];
							if (ledPictureText.PictureTextType == LedPictureTextType.Animation)
							{
								this.MakeAnimation((LedAnimation)ledPictureText);
							}
							if (ledPictureText.Background.Enabled)
							{
								this.MakeAnimation(ledSubarea.Size, ledPictureText.Background);
							}
						}
					}
					else if (ledSubarea.Type == LedSubareaType.Subtitle)
					{
						LedDText ledDText = (LedDText)ledSubarea.SelectedContent;
						if (ledDText.Background.Enabled)
						{
							this.MakeAnimation(ledSubarea.Size, ledDText.Background);
						}
					}
					else if (ledSubarea.SelectedContent.Background.Enabled)
					{
						this.MakeAnimation(ledSubarea.Size, ledSubarea.SelectedContent.Background);
					}
				}
			}
		}
コード例 #8
0
        public LedItem[] TableToLedItemArray(DataTable table)
        {
            Stack <LedItem> data = new Stack <LedItem>();

            foreach (DataRow row in table.Rows)
            {
                if (data.Count != 0)
                {
                    LedItem item = data.Pop();
                    if (item.Name == row["CIGARETTENAME"].ToString())
                    {
                        item.Count++;
                        data.Push(item);
                    }
                    else
                    {
                        data.Push(item);//添加原来

                        if (data.Count >= 10)
                        {
                            break;
                        }

                        //添加新的
                        item       = new LedItem();
                        item.Name  = row["CIGARETTENAME"].ToString();
                        item.Count = 1;
                        data.Push(item);
                    }
                }
                else
                {
                    LedItem item = new LedItem();
                    item.Name  = row["CIGARETTENAME"].ToString();
                    item.Count = 1;
                    data.Push(item);
                }
            }

            LedItem[] ledItems = data.ToArray();
            Array.Reverse(ledItems);
            return(ledItems);
        }
コード例 #9
0
ファイル: formDisplay.cs プロジェクト: a532367171/LEDV6
 public void DisplayItem(LedItem pItem)
 {
     if (pItem == null)
     {
         return;
     }
     for (int i = 0; i < pItem.Subareas.Count; i++)
     {
         LedSubareaDisplayHolder ledSubareaDisplayHolder = new LedSubareaDisplayHolder(pItem.Subareas[i]);
         this.holderList.Add(ledSubareaDisplayHolder);
         this.Panel_Item.Controls.Add(ledSubareaDisplayHolder);
     }
     this.nowItem        = pItem;
     this.nowEdgeDisplay = new EdgeDisplay(pItem.Edge, pItem);
     if (this.nowItem.Edge.Enabled)
     {
         this.timer_ItemEdge.Start();
     }
     formDisplay.zoon = 1m;
 }
コード例 #10
0
 public EdgeDisplay(LedEdge edge, LedItem pItem)
 {
     this.ledEdge       = edge;
     this.ledItem       = pItem;
     this.subSize       = new System.Drawing.Size(pItem.ParentPanel.Width, pItem.ParentPanel.Height);
     this.circular      = (this.subSize.Width + this.subSize.Height) * 2;
     this.circularCount = 0m;
     if (this.ledEdge.Enabled)
     {
         this.AlphaBitmap = new System.Drawing.Bitmap((this.subSize.Width + this.subSize.Height) * 2, edge.Height);
         this.EdgeBitmap  = new System.Drawing.Bitmap((this.subSize.Width + this.subSize.Height) * 2, edge.Height);
         System.Drawing.Graphics     graphics = System.Drawing.Graphics.FromImage(this.EdgeBitmap);
         System.Drawing.TextureBrush brush    = new System.Drawing.TextureBrush(LedGlobal.LedEdgeList[edge.Index]);
         graphics.FillRectangle(brush, new System.Drawing.Rectangle(0, 0, this.EdgeBitmap.Width, this.EdgeBitmap.Height));
         if (this.ledEdge.Mode == LedEdgeMode.Static | this.ledEdge.Mode == LedEdgeMode.Blink)
         {
             this.EdgeBitmap = this.SetCornerAlpha(this.EdgeBitmap);
             this.SplitBitmapToItemEdge(this.EdgeBitmap);
         }
     }
 }
コード例 #11
0
        public void LoadBackground(LedItem pItem)
        {
            this.Item          = pItem;
            this.IsContent     = false;
            this.backgroundNo1 = pItem.GetBackgroud(1);
            this.backgroundNo2 = pItem.GetBackgroud(2);
            this.backgroundNo3 = pItem.GetBackgroud(3);
            if (this.backgroundNo2 == null)
            {
                this.backgroundNo2    = new LedBackground();
                this.backgroundNo2.No = 2;
                LedBackground expr_5A = this.backgroundNo2;
                expr_5A.ID += ColorfulBackground.material_no.ToString();
                ColorfulBackground.material_no++;
                pItem.AddBackground(this.backgroundNo2);
                Thread.Sleep(100);
            }
            if (this.backgroundNo3 == null)
            {
                this.backgroundNo3    = new LedBackground();
                this.backgroundNo3.No = 3;
                LedBackground expr_B8 = this.backgroundNo3;
                expr_B8.ID += ColorfulBackground.material_no.ToString();
                ColorfulBackground.material_no++;
                pItem.AddBackground(this.backgroundNo3);
            }
            if (this.backgroundNo1.MaterialName == string.Empty)
            {
                this.backgroundNo1.MaterialName = "BM0000.swf";
                this.backgroundNo1.MaterialType = LedMaterialType.Flash;
            }
            else if (!formBackgroundEffectSelecter.LoadedMaterials.ContainsKey(this.backgroundNo1.MaterialName))
            {
                this.backgroundNo1.MaterialName = "BM0000.swf";
                this.backgroundNo1.MaterialType = LedMaterialType.Flash;
            }
            if (this.backgroundNo2.MaterialName == string.Empty)
            {
                this.backgroundNo2.MaterialName = "BM0000.swf";
                this.backgroundNo2.MaterialType = LedMaterialType.Flash;
            }
            else if (!formBackgroundEffectSelecter.LoadedMaterials.ContainsKey(this.backgroundNo2.MaterialName))
            {
                this.backgroundNo2.MaterialName = "BM0000.swf";
                this.backgroundNo2.MaterialType = LedMaterialType.Flash;
            }
            if (this.backgroundNo3.MaterialName == string.Empty)
            {
                this.backgroundNo3.MaterialName = "BM0000.swf";
                this.backgroundNo3.MaterialType = LedMaterialType.Flash;
            }
            else if (!formBackgroundEffectSelecter.LoadedMaterials.ContainsKey(this.backgroundNo3.MaterialName))
            {
                this.backgroundNo3.MaterialName = "BM0000.swf";
                this.backgroundNo3.MaterialType = LedMaterialType.Flash;
            }
            string saveDirectory = pItem.ParentPanel.GetSaveDirectory();

            this.backgroundNo1.SaveDirectory = (this.backgroundNo2.SaveDirectory = (this.backgroundNo3.SaveDirectory = saveDirectory));
            this.ChkBackState();
            this.DisplayBackground(3);
        }
コード例 #12
0
 private void btnOK_Click(object sender, EventArgs e)
 {
     try
     {
         int num = 0;
         foreach (TreeNode treeNode in this.tvwPanel.Nodes)
         {
             if (treeNode.Nodes != null)
             {
                 foreach (TreeNode treeNode2 in treeNode.Nodes)
                 {
                     if (treeNode2 != null && treeNode2.Checked && (treeNode2.Tag.GetType() == typeof(LedPanel) || treeNode2.Tag.GetType() == typeof(LedPanelCloud)))
                     {
                         num++;
                     }
                 }
             }
         }
         if (num == 0)
         {
             MessageBox.Show(this, formMain.ML.GetStr("formPanelSelectForItem_Message_PleaseSelectPanel"));
         }
         else
         {
             if (this.mode == ExecuteMode.ShareItem)
             {
                 this.originalItem.SharedItemOfPanelIDs.Clear();
             }
             foreach (TreeNode treeNode3 in this.tvwPanel.Nodes)
             {
                 if (treeNode3.Nodes != null)
                 {
                     foreach (TreeNode treeNode4 in treeNode3.Nodes)
                     {
                         if (treeNode4 != null && treeNode4.Checked && (treeNode4.Tag.GetType() == typeof(LedPanel) || treeNode4.Tag.GetType() == typeof(LedPanelCloud)))
                         {
                             LedPanel ledPanel = (LedPanel)treeNode4.Tag;
                             if (this.mode == ExecuteMode.CopyItem)
                             {
                                 LedItem ledItem = new LedItem();
                                 if (ledPanel.Items == null)
                                 {
                                     ledPanel.Items = new List <LedItem>();
                                 }
                                 int num2 = ledPanel.Items.Count;
                                 if (num2 > 0)
                                 {
                                     foreach (LedItem current in ledPanel.Items)
                                     {
                                         if (num2 < current.No)
                                         {
                                             num2 = current.No;
                                         }
                                     }
                                 }
                                 num2++;
                                 ledItem.TextName    = formMain.ML.GetStr("Display_Item") + num2;
                                 ledItem.ValueName   = ledItem.TextName;
                                 ledItem.No          = num2;
                                 ledItem.ParentPanel = ledPanel;
                                 if (this.originalItem != null)
                                 {
                                     ledItem.Copy(this.originalItem);
                                 }
                                 ledPanel.AddItem(ledItem);
                             }
                             else if (this.mode == ExecuteMode.CopyPanelItems)
                             {
                                 ledPanel.CopyItems(this.originalPanel, formMain.ML.GetStr("Display_Item"));
                             }
                             else if (this.mode == ExecuteMode.ShareItem)
                             {
                                 LedSharedItem ledSharedItem = new LedSharedItem();
                                 if (ledPanel.Items == null)
                                 {
                                     ledPanel.Items = new List <LedItem>();
                                 }
                                 ledSharedItem.Share(this.originalItem);
                                 ledSharedItem.TextName = this.itemName;
                                 ledPanel.AddSharedItem(ledSharedItem);
                                 this.originalItem.SharedItemOfPanelIDs.Add(ledPanel.ID);
                             }
                         }
                     }
                 }
             }
             if (this.mode == ExecuteMode.ShareItem)
             {
                 this.originalItem.TextName          = this.itemName;
                 this.originalItem.Shared            = true;
                 formMain.ledsys.SharedItemNoCounter = 1;
             }
             base.DialogResult = DialogResult.OK;
             base.Close();
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(this, formMain.ML.GetStr("formPanelSelectForItem_Message_ExceptionError") + ex.Message);
     }
 }
コード例 #13
0
ファイル: formGprsSendAll.cs プロジェクト: a532367171/LEDV6
 private void SendSingle(object pObj)
 {
     try
     {
         GprsContentInfo gprsContentInfo = (GprsContentInfo)pObj;
         gprsContentInfo.FontSize    = formGprsSendAll.getFontSizeByHeight(gprsContentInfo.Height, 0.1f);
         gprsContentInfo.Content     = formGprsSendAll.textList.EDText.Text;
         gprsContentInfo.ContentFont = formGprsSendAll.textList.EDText.Font.GetFont((float)gprsContentInfo.FontSize);
         byte[]   bytes    = GprsAdministrator.API_DownLoadRoutingData(gprsContentInfo.Id);
         LedPanel ledPanel = LedPanel.Parse(bytes);
         gprsContentInfo.LedModel = ledPanel.CardType.ToString().Replace("_", "-");
         gprsContentInfo.Width    = ledPanel.Width;
         gprsContentInfo.Height   = ledPanel.Height;
         gprsContentInfo.Panel    = ledPanel;
         LedItem ledItem = new LedItem();
         ledItem.Edge = formMain.NewEdgeData();
         LedDText ledDText = new LedDText();
         ledDText.EffectsSetting.EntryMode  = 3;
         ledDText.EffectsSetting.EntrySpeed = formGprsSendAll.textList.EffectsSetting.EntrySpeed;
         ledDText.Edge             = formMain.NewEdgeData();
         ledDText.EDText.Text      = gprsContentInfo.Content;
         ledDText.EDText.ForeColor = LedColorConst.Red;
         ledDText.EDText.Font      = new LedFont(gprsContentInfo.ContentFont);
         ledDText.EDText.Kerning   = formGprsSendAll.textList.EDText.Kerning;
         ledDText.DrawMode         = LedDrawMode.Full;
         System.Drawing.Size size = new System.Drawing.Size(gprsContentInfo.Width, gprsContentInfo.Height);
         ledItem.AddSubarea(new LedSubarea(0, 0, size.Width, size.Height, ledDText)
         {
             Type = LedSubareaType.PictureText
         });
         ledPanel.AddItem(ledItem);
         ledDText.PreviewDraw();
         gprsContentInfo.BitmapList = ledDText.BmpList;
         Process process = new Process();
         process.PanelBytes   = ledPanel.ToBytes();
         process.BmpDataBytes = ledPanel.ToItemBmpDataBytes();
         process.ItemBytes    = ledPanel.ToItemBytes();
         IList <byte>   list  = new List <byte>();
         IList <byte[]> list2 = protocol_GPRS.Send_Pack_GPRS(formMain.ledsys.SelectedPanel.CardAddress, 0, LedCmdType.Send_Begin, process, formMain.ledsys.SelectedPanel.ProtocolVersion);
         if (list2 != null && list2.Count > 0)
         {
             for (int i = 0; i < list2.Count; i++)
             {
                 for (int j = 0; j < list2[i].Length; j++)
                 {
                     list.Add(list2[i][j]);
                 }
             }
         }
         byte[] array = new byte[list.Count];
         list.CopyTo(array, 0);
         string     text       = Application.StartupPath + "\\" + gprsContentInfo.TerminalCode + "GPRS.zhd";
         FileStream fileStream = new FileStream(text, FileMode.Create, FileAccess.Write);
         fileStream.Write(array, 0, array.Length);
         fileStream.Close();
         GprsAdministrator.API_UPLoadFile2(gprsContentInfo.Id, text, 1052);
         this.gprsSenderForm.UpdateSendPanel(gprsContentInfo.Id);
         gprsContentInfo.Status = "已上传";
         this.removepanel(gprsContentInfo);
     }
     catch
     {
     }
 }