From e6ec7b77adda9f87175b3a584da05af4db2d2c9d Mon Sep 17 00:00:00 2001
From: lu <123456>
Date: 星期三, 15 十月 2025 17:46:48 +0800
Subject: [PATCH] 线头看板

---
 DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.resx        |  120 ++++++
 DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.cs          |   35 +
 DevApp/Gs.DevApp/Gs.DevApp.csproj                     |   18 
 DevApp/Gs.DevApp/App.config                           |    4 
 DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.Designer.cs |   83 ++++
 DevApp/Gs.DevApp/Program.cs                           |    4 
 DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.resx          |  123 ++++++
 DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.cs            |  179 +++++++++
 DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.Designer.cs   |  519 +++++++++++++++++++++++++++
 9 files changed, 1,079 insertions(+), 6 deletions(-)

diff --git a/DevApp/Gs.DevApp/App.config b/DevApp/Gs.DevApp/App.config
index 8cf35bf..c31e074 100644
--- a/DevApp/Gs.DevApp/App.config
+++ b/DevApp/Gs.DevApp/App.config
@@ -36,8 +36,8 @@
 	</runtime>
 
 	<appSettings>
-		<!--<add key="webapiurl" value="http://localhost:5263/" />-->
-		<add key="WebApiUrl" value="http://192.168.1.145:8081/" />
+		<add key="webapiurl" value="http://localhost:5263/" />
+		<!--<add key="WebApiUrl" value="http://192.168.1.145:8081/" />-->
 		<!--<add key="WebApiUrl" value="http://192.168.1.145:81/" />-->
 		<add key="LogPath" value="logs" />
 		<add key="ProductName" value="G-MES V2.0" />
diff --git a/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.Designer.cs b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.Designer.cs
new file mode 100644
index 0000000..256f004
--- /dev/null
+++ b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.Designer.cs
@@ -0,0 +1,519 @@
+锘縩amespace Gs.DevApp.DevFrm.WOM
+{
+    partial class KanBanLaTou
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.components = new System.ComponentModel.Container();
+            DevExpress.XtraEditors.Controls.EditorButtonImageOptions editorButtonImageOptions1 = new DevExpress.XtraEditors.Controls.EditorButtonImageOptions();
+            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject1 = new DevExpress.Utils.SerializableAppearanceObject();
+            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject2 = new DevExpress.Utils.SerializableAppearanceObject();
+            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject3 = new DevExpress.Utils.SerializableAppearanceObject();
+            DevExpress.Utils.SerializableAppearanceObject serializableAppearanceObject4 = new DevExpress.Utils.SerializableAppearanceObject();
+            this.repositoryItemComboBox1 = new DevExpress.XtraEditors.Repository.RepositoryItemComboBox();
+            this.toolBarMenu1 = new Gs.DevApp.UserControl.UcToolBarMenu();
+            this.xtraTabControl1 = new DevExpress.XtraTab.XtraTabControl();
+            this.xtraTabPage1 = new DevExpress.XtraTab.XtraTabPage();
+            this.split1 = new DevExpress.XtraEditors.SplitContainerControl();
+            this.gcMain1 = new DevExpress.XtraGrid.GridControl();
+            this.gridView1 = new DevExpress.XtraGrid.Views.Grid.GridView();
+            this.gv_lotNo = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gridColumn23 = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gv_itemId = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gv_itemNo = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gv_boardStyle = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gridColumn14 = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gv_fcovertQty = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gv_fbatchQty = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gv_fcheckResu = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gv_remarks = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gv_fcheckDate = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gridColumn15 = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gridColumn30 = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gridColumn13 = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gridColumn17 = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gridColumn5 = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.gridColumn6 = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.rptButtonUrl = new DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit();
+            this.gridColumn7 = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.pageBar1 = new UserControls.Data.UcPageBar();
+            this.repositoryItemComboBox2 = new DevExpress.XtraEditors.Repository.RepositoryItemComboBox();
+            this.picCheckBox = new System.Windows.Forms.PictureBox();
+            this.gridView2 = new DevExpress.XtraGrid.Views.Grid.GridView();
+            this.gridView3 = new DevExpress.XtraGrid.Views.Grid.GridView();
+            this.gridView4 = new DevExpress.XtraGrid.Views.Grid.GridView();
+            this.tips = new DevExpress.Utils.ToolTipController(this.components);
+            ((System.ComponentModel.ISupportInitialize)(this.repositoryItemComboBox1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.xtraTabControl1)).BeginInit();
+            this.xtraTabControl1.SuspendLayout();
+            this.xtraTabPage1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.split1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.split1.Panel1)).BeginInit();
+            this.split1.Panel1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.split1.Panel2)).BeginInit();
+            this.split1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.gcMain1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.gridView1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.rptButtonUrl)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.repositoryItemComboBox2)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.picCheckBox)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.gridView2)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.gridView3)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.gridView4)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // repositoryItemComboBox1
+            // 
+            this.repositoryItemComboBox1.AutoHeight = false;
+            this.repositoryItemComboBox1.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
+            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
+            this.repositoryItemComboBox1.Items.AddRange(new object[] {
+            "鈭�",
+            "脳"});
+            this.repositoryItemComboBox1.Name = "repositoryItemComboBox1";
+            // 
+            // toolBarMenu1
+            // 
+            this.toolBarMenu1.chkParameter = "0,0,0,0,000chk_iqc_detect01_submit";
+            this.toolBarMenu1.currentAction = null;
+            this.toolBarMenu1.defaultActions = null;
+            this.toolBarMenu1.Dock = System.Windows.Forms.DockStyle.Top;
+            this.toolBarMenu1.guidKey = null;
+            this.toolBarMenu1.isSetBtn = false;
+            this.toolBarMenu1.Location = new System.Drawing.Point(0, 0);
+            this.toolBarMenu1.Name = "toolBarMenu1";
+            this.toolBarMenu1.rptParameter = null;
+            this.toolBarMenu1.Size = new System.Drawing.Size(1344, 80);
+            this.toolBarMenu1.TabIndex = 0;
+            this.toolBarMenu1.xlsInService = null;
+            this.toolBarMenu1.xlsOutParameter = null;
+            // 
+            // xtraTabControl1
+            // 
+            this.xtraTabControl1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.xtraTabControl1.Location = new System.Drawing.Point(0, 80);
+            this.xtraTabControl1.Name = "xtraTabControl1";
+            this.xtraTabControl1.SelectedTabPage = this.xtraTabPage1;
+            this.xtraTabControl1.Size = new System.Drawing.Size(1344, 720);
+            this.xtraTabControl1.TabIndex = 3;
+            this.xtraTabControl1.TabPages.AddRange(new DevExpress.XtraTab.XtraTabPage[] {
+            this.xtraTabPage1});
+            // 
+            // xtraTabPage1
+            // 
+            this.xtraTabPage1.Controls.Add(this.split1);
+            this.xtraTabPage1.Name = "xtraTabPage1";
+            this.xtraTabPage1.Size = new System.Drawing.Size(1342, 688);
+            this.xtraTabPage1.Text = "鏁版嵁鍒楄〃";
+            // 
+            // split1
+            // 
+            this.split1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.split1.FixedPanel = DevExpress.XtraEditors.SplitFixedPanel.Panel2;
+            this.split1.Horizontal = false;
+            this.split1.Location = new System.Drawing.Point(0, 0);
+            this.split1.Name = "split1";
+            // 
+            // split1.Panel1
+            // 
+            this.split1.Panel1.Controls.Add(this.gcMain1);
+            this.split1.Panel1.Controls.Add(this.pageBar1);
+            this.split1.Panel1.Text = "Panel1";
+            // 
+            // split1.Panel2
+            // 
+            this.split1.Panel2.Text = "Panel2";
+            this.split1.ShowSplitGlyph = DevExpress.Utils.DefaultBoolean.True;
+            this.split1.Size = new System.Drawing.Size(1342, 688);
+            this.split1.SplitterPosition = 0;
+            this.split1.TabIndex = 4;
+            // 
+            // gcMain1
+            // 
+            this.gcMain1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.gcMain1.Location = new System.Drawing.Point(0, 0);
+            this.gcMain1.MainView = this.gridView1;
+            this.gcMain1.Name = "gcMain1";
+            this.gcMain1.RepositoryItems.AddRange(new DevExpress.XtraEditors.Repository.RepositoryItem[] {
+            this.rptButtonUrl});
+            this.gcMain1.Size = new System.Drawing.Size(1342, 638);
+            this.gcMain1.TabIndex = 2;
+            this.gcMain1.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
+            this.gridView1});
+            // 
+            // gridView1
+            // 
+            this.gridView1.Appearance.HeaderPanel.Options.UseTextOptions = true;
+            this.gridView1.Appearance.HeaderPanel.TextOptions.WordWrap = DevExpress.Utils.WordWrap.Wrap;
+            this.gridView1.Appearance.Row.Options.UseFont = true;
+            this.gridView1.Appearance.ViewCaption.Options.UseTextOptions = true;
+            this.gridView1.Appearance.ViewCaption.TextOptions.WordWrap = DevExpress.Utils.WordWrap.Wrap;
+            this.gridView1.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
+            this.gv_lotNo,
+            this.gridColumn23,
+            this.gv_itemId,
+            this.gv_itemNo,
+            this.gv_boardStyle,
+            this.gridColumn14,
+            this.gv_fcovertQty,
+            this.gv_fbatchQty,
+            this.gv_fcheckResu,
+            this.gv_remarks,
+            this.gv_fcheckDate,
+            this.gridColumn15,
+            this.gridColumn30,
+            this.gridColumn13,
+            this.gridColumn17,
+            this.gridColumn5,
+            this.gridColumn6,
+            this.gridColumn7});
+            this.gridView1.GridControl = this.gcMain1;
+            this.gridView1.IndicatorWidth = 50;
+            this.gridView1.Name = "gridView1";
+            this.gridView1.OptionsFind.ShowSearchNavButtons = false;
+            this.gridView1.OptionsView.ShowAutoFilterRow = true;
+            this.gridView1.OptionsView.ShowGroupPanel = false;
+            // 
+            // gv_lotNo
+            // 
+            this.gv_lotNo.AppearanceCell.Options.UseFont = true;
+            this.gv_lotNo.Caption = "鎸囦护鍗曞彿";
+            this.gv_lotNo.FieldName = "lotNo";
+            this.gv_lotNo.MinWidth = 30;
+            this.gv_lotNo.Name = "gv_lotNo";
+            this.gv_lotNo.OptionsColumn.AllowEdit = false;
+            this.gv_lotNo.Tag = "query_a.lot_no";
+            this.gv_lotNo.Visible = true;
+            this.gv_lotNo.VisibleIndex = 1;
+            this.gv_lotNo.Width = 98;
+            // 
+            // gridColumn23
+            // 
+            this.gridColumn23.Caption = "浜х嚎鍚嶇О";
+            this.gridColumn23.FieldName = "lineName";
+            this.gridColumn23.MinWidth = 25;
+            this.gridColumn23.Name = "gridColumn23";
+            this.gridColumn23.Visible = true;
+            this.gridColumn23.VisibleIndex = 4;
+            this.gridColumn23.Width = 72;
+            // 
+            // gv_itemId
+            // 
+            this.gv_itemId.AppearanceCell.Options.UseFont = true;
+            this.gv_itemId.Caption = "鐗╂枡ID";
+            this.gv_itemId.FieldName = "itemId";
+            this.gv_itemId.MinWidth = 30;
+            this.gv_itemId.Name = "gv_itemId";
+            this.gv_itemId.OptionsColumn.AllowEdit = false;
+            this.gv_itemId.Tag = "query_a.item_id";
+            this.gv_itemId.Width = 30;
+            // 
+            // gv_itemNo
+            // 
+            this.gv_itemNo.AppearanceCell.Options.UseFont = true;
+            this.gv_itemNo.Caption = "鐗╂枡缂栫爜";
+            this.gv_itemNo.FieldName = "itemNo2";
+            this.gv_itemNo.MinWidth = 30;
+            this.gv_itemNo.Name = "gv_itemNo";
+            this.gv_itemNo.OptionsColumn.AllowEdit = false;
+            this.gv_itemNo.Tag = "query_a.item_no";
+            this.gv_itemNo.Visible = true;
+            this.gv_itemNo.VisibleIndex = 5;
+            this.gv_itemNo.Width = 105;
+            // 
+            // gv_boardStyle
+            // 
+            this.gv_boardStyle.AppearanceCell.Options.UseFont = true;
+            this.gv_boardStyle.Caption = "鐗╂枡鍚嶇О";
+            this.gv_boardStyle.FieldName = "itemName";
+            this.gv_boardStyle.MinWidth = 30;
+            this.gv_boardStyle.Name = "gv_boardStyle";
+            this.gv_boardStyle.OptionsColumn.AllowEdit = false;
+            this.gv_boardStyle.Tag = "query_a.board_style";
+            this.gv_boardStyle.Visible = true;
+            this.gv_boardStyle.VisibleIndex = 6;
+            this.gv_boardStyle.Width = 127;
+            // 
+            // gridColumn14
+            // 
+            this.gridColumn14.Caption = "鐗╂枡瑙勬牸";
+            this.gridColumn14.FieldName = "itemModel";
+            this.gridColumn14.MinWidth = 30;
+            this.gridColumn14.Name = "gridColumn14";
+            this.gridColumn14.OptionsColumn.ReadOnly = true;
+            this.gridColumn14.Visible = true;
+            this.gridColumn14.VisibleIndex = 7;
+            this.gridColumn14.Width = 155;
+            // 
+            // gv_fcovertQty
+            // 
+            this.gv_fcovertQty.AppearanceCell.Options.UseFont = true;
+            this.gv_fcovertQty.Caption = "璁″垝鏁伴噺";
+            this.gv_fcovertQty.FieldName = "daaQty";
+            this.gv_fcovertQty.MinWidth = 30;
+            this.gv_fcovertQty.Name = "gv_fcovertQty";
+            this.gv_fcovertQty.OptionsColumn.AllowEdit = false;
+            this.gv_fcovertQty.OptionsColumn.ReadOnly = true;
+            this.gv_fcovertQty.Tag = "query_a.fcovert_qty";
+            this.gv_fcovertQty.Visible = true;
+            this.gv_fcovertQty.VisibleIndex = 8;
+            this.gv_fcovertQty.Width = 45;
+            // 
+            // gv_fbatchQty
+            // 
+            this.gv_fbatchQty.AppearanceCell.Options.UseFont = true;
+            this.gv_fbatchQty.Caption = "鐢熶骇鐘舵��";
+            this.gv_fbatchQty.FieldName = "fbatchQty";
+            this.gv_fbatchQty.MinWidth = 30;
+            this.gv_fbatchQty.Name = "gv_fbatchQty";
+            this.gv_fbatchQty.OptionsColumn.AllowEdit = false;
+            this.gv_fbatchQty.Tag = "query_a.fbatch_qty";
+            this.gv_fbatchQty.Width = 80;
+            // 
+            // gv_fcheckResu
+            // 
+            this.gv_fcheckResu.AppearanceCell.Options.UseFont = true;
+            this.gv_fcheckResu.Caption = "鎸囦护绫诲瀷";
+            this.gv_fcheckResu.FieldName = "fcheckResu";
+            this.gv_fcheckResu.MinWidth = 30;
+            this.gv_fcheckResu.Name = "gv_fcheckResu";
+            this.gv_fcheckResu.OptionsColumn.AllowEdit = false;
+            this.gv_fcheckResu.Tag = "query_a.fcheck_resu";
+            this.gv_fcheckResu.Visible = true;
+            this.gv_fcheckResu.VisibleIndex = 2;
+            this.gv_fcheckResu.Width = 92;
+            // 
+            // gv_remarks
+            // 
+            this.gv_remarks.AppearanceCell.Options.UseFont = true;
+            this.gv_remarks.Caption = "澶囨敞璇存槑";
+            this.gv_remarks.FieldName = "remarks";
+            this.gv_remarks.MinWidth = 30;
+            this.gv_remarks.Name = "gv_remarks";
+            this.gv_remarks.OptionsColumn.AllowEdit = false;
+            this.gv_remarks.Tag = "query_a.remarks";
+            this.gv_remarks.Width = 100;
+            // 
+            // gv_fcheckDate
+            // 
+            this.gv_fcheckDate.AppearanceCell.Options.UseFont = true;
+            this.gv_fcheckDate.Caption = "寮�宸ユ椂闂�";
+            this.gv_fcheckDate.FieldName = "fcheckDate";
+            this.gv_fcheckDate.MinWidth = 30;
+            this.gv_fcheckDate.Name = "gv_fcheckDate";
+            this.gv_fcheckDate.OptionsColumn.AllowEdit = false;
+            this.gv_fcheckDate.Tag = "query_a.fcheck_date";
+            this.gv_fcheckDate.Visible = true;
+            this.gv_fcheckDate.VisibleIndex = 9;
+            this.gv_fcheckDate.Width = 141;
+            // 
+            // gridColumn15
+            // 
+            this.gridColumn15.Caption = "瀹屽伐鏃堕棿";
+            this.gridColumn15.FieldName = "createDate";
+            this.gridColumn15.MinWidth = 25;
+            this.gridColumn15.Name = "gridColumn15";
+            this.gridColumn15.Visible = true;
+            this.gridColumn15.VisibleIndex = 10;
+            this.gridColumn15.Width = 72;
+            // 
+            // gridColumn30
+            // 
+            this.gridColumn30.Caption = "鎸囦护绫诲瀷";
+            this.gridColumn30.FieldName = "orderType";
+            this.gridColumn30.MinWidth = 25;
+            this.gridColumn30.Name = "gridColumn30";
+            this.gridColumn30.Width = 94;
+            // 
+            // gridColumn13
+            // 
+            this.gridColumn13.Caption = "浜х嚎ID";
+            this.gridColumn13.FieldName = "daa020";
+            this.gridColumn13.MinWidth = 25;
+            this.gridColumn13.Name = "gridColumn13";
+            this.gridColumn13.Width = 94;
+            // 
+            // gridColumn17
+            // 
+            this.gridColumn17.Caption = "涓婚敭Guid";
+            this.gridColumn17.FieldName = "guid";
+            this.gridColumn17.MinWidth = 25;
+            this.gridColumn17.Name = "gridColumn17";
+            this.gridColumn17.Width = 94;
+            // 
+            // gridColumn5
+            // 
+            this.gridColumn5.Caption = "鐢熶骇鐘舵��";
+            this.gridColumn5.FieldName = "txtColor";
+            this.gridColumn5.MinWidth = 25;
+            this.gridColumn5.Name = "gridColumn5";
+            this.gridColumn5.Visible = true;
+            this.gridColumn5.VisibleIndex = 3;
+            this.gridColumn5.Width = 72;
+            // 
+            // gridColumn6
+            // 
+            this.gridColumn6.Caption = "杩涘叆";
+            this.gridColumn6.ColumnEdit = this.rptButtonUrl;
+            this.gridColumn6.MinWidth = 25;
+            this.gridColumn6.Name = "gridColumn6";
+            this.gridColumn6.Visible = true;
+            this.gridColumn6.VisibleIndex = 0;
+            this.gridColumn6.Width = 77;
+            // 
+            // rptButtonUrl
+            // 
+            this.rptButtonUrl.AutoHeight = false;
+            editorButtonImageOptions1.Image = global::Gs.DevApp.Properties.Resources.boposition2_16x162;
+            editorButtonImageOptions1.ImageToTextAlignment = DevExpress.XtraEditors.ImageAlignToText.LeftCenter;
+            this.rptButtonUrl.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
+            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "杩涘叆鐪嬫澘", -1, true, true, false, editorButtonImageOptions1, new DevExpress.Utils.KeyShortcut(System.Windows.Forms.Keys.None), serializableAppearanceObject1, serializableAppearanceObject2, serializableAppearanceObject3, serializableAppearanceObject4, "", null, null, DevExpress.Utils.ToolTipAnchor.Default)});
+            this.rptButtonUrl.Name = "rptButtonUrl";
+            this.rptButtonUrl.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.HideTextEditor;
+            this.rptButtonUrl.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(this.rptButtonUrl_ButtonClick);
+            // 
+            // gridColumn7
+            // 
+            this.gridColumn7.Caption = "鐢熶骇缁勭粐";
+            this.gridColumn7.FieldName = "fSubsidiary";
+            this.gridColumn7.MinWidth = 25;
+            this.gridColumn7.Name = "gridColumn7";
+            this.gridColumn7.Visible = true;
+            this.gridColumn7.VisibleIndex = 11;
+            this.gridColumn7.Width = 93;
+            // 
+            // pageBar1
+            // 
+            this.pageBar1.CurrentPage = 1;
+            this.pageBar1.Dock = System.Windows.Forms.DockStyle.Bottom;
+            this.pageBar1.Location = new System.Drawing.Point(0, 638);
+            this.pageBar1.Margin = new System.Windows.Forms.Padding(3, 5, 3, 5);
+            this.pageBar1.Name = "pageBar1";
+            this.pageBar1.RecordCount = 0;
+            this.pageBar1.Size = new System.Drawing.Size(1342, 38);
+            this.pageBar1.TabIndex = 4;
+            this.pageBar1.TotalPages = 0;
+            // 
+            // repositoryItemComboBox2
+            // 
+            this.repositoryItemComboBox2.AutoHeight = false;
+            this.repositoryItemComboBox2.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
+            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
+            this.repositoryItemComboBox2.Items.AddRange(new object[] {
+            "鈭�",
+            "脳"});
+            this.repositoryItemComboBox2.Name = "repositoryItemComboBox2";
+            // 
+            // picCheckBox
+            // 
+            this.picCheckBox.Image = global::Gs.DevApp.Properties.Resources.ico_noCheck;
+            this.picCheckBox.Location = new System.Drawing.Point(921, 42);
+            this.picCheckBox.Name = "picCheckBox";
+            this.picCheckBox.Size = new System.Drawing.Size(100, 50);
+            this.picCheckBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
+            this.picCheckBox.TabIndex = 6;
+            this.picCheckBox.TabStop = false;
+            this.picCheckBox.Visible = false;
+            // 
+            // gridView2
+            // 
+            this.gridView2.Name = "gridView2";
+            // 
+            // gridView3
+            // 
+            this.gridView3.Name = "gridView3";
+            // 
+            // gridView4
+            // 
+            this.gridView4.Name = "gridView4";
+            // 
+            // KanBanLaTou
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 18F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1344, 800);
+            this.Controls.Add(this.picCheckBox);
+            this.Controls.Add(this.xtraTabControl1);
+            this.Controls.Add(this.toolBarMenu1);
+            this.Name = "KanBanLaTou";
+            this.Text = "绾垮ご鐪嬫澘";
+            ((System.ComponentModel.ISupportInitialize)(this.repositoryItemComboBox1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.xtraTabControl1)).EndInit();
+            this.xtraTabControl1.ResumeLayout(false);
+            this.xtraTabPage1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.split1.Panel1)).EndInit();
+            this.split1.Panel1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.split1.Panel2)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.split1)).EndInit();
+            this.split1.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.gcMain1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.gridView1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.rptButtonUrl)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.repositoryItemComboBox2)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.picCheckBox)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.gridView2)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.gridView3)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.gridView4)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+        #endregion
+        private UserControl.UcToolBarMenu toolBarMenu1;
+        private DevExpress.XtraTab.XtraTabControl xtraTabControl1;
+        private System.Windows.Forms.PictureBox picCheckBox;
+        private DevExpress.XtraTab.XtraTabPage xtraTabPage1;
+        private DevExpress.XtraEditors.SplitContainerControl split1;
+        private DevExpress.XtraGrid.GridControl gcMain1;
+        private UserControls.Data.UcPageBar pageBar1;
+        private DevExpress.XtraGrid.Views.Grid.GridView gridView1;
+        private DevExpress.XtraGrid.Columns.GridColumn gv_lotNo;
+        private DevExpress.XtraGrid.Columns.GridColumn gv_itemId;
+        private DevExpress.XtraGrid.Columns.GridColumn gv_itemNo;
+        private DevExpress.XtraGrid.Columns.GridColumn gv_boardStyle;
+        private DevExpress.XtraGrid.Columns.GridColumn gridColumn14;
+        private DevExpress.XtraGrid.Columns.GridColumn gv_fbatchQty;
+        private DevExpress.XtraGrid.Columns.GridColumn gv_fcheckResu;
+        private DevExpress.XtraGrid.Columns.GridColumn gv_fcovertQty;
+        private DevExpress.XtraGrid.Columns.GridColumn gv_remarks;
+        private DevExpress.XtraGrid.Columns.GridColumn gv_fcheckDate;
+        private DevExpress.XtraGrid.Views.Grid.GridView gridView2;
+        private DevExpress.XtraGrid.Views.Grid.GridView gridView3;
+        private DevExpress.XtraGrid.Views.Grid.GridView gridView4;
+        private DevExpress.XtraGrid.Columns.GridColumn gridColumn15;
+        private DevExpress.XtraGrid.Columns.GridColumn gridColumn17;
+        private DevExpress.XtraEditors.Repository.RepositoryItemComboBox repositoryItemComboBox1;
+        private DevExpress.XtraEditors.Repository.RepositoryItemComboBox repositoryItemComboBox2;
+        private DevExpress.XtraGrid.Columns.GridColumn gridColumn23;
+        private DevExpress.XtraGrid.Columns.GridColumn gridColumn30;
+        private DevExpress.XtraGrid.Columns.GridColumn gridColumn13;
+        private DevExpress.Utils.ToolTipController tips;
+        private DevExpress.XtraGrid.Columns.GridColumn gridColumn5;
+        private DevExpress.XtraGrid.Columns.GridColumn gridColumn6;
+        private DevExpress.XtraEditors.Repository.RepositoryItemButtonEdit rptButtonUrl;
+        private DevExpress.XtraGrid.Columns.GridColumn gridColumn7;
+    }
+}
\ No newline at end of file
diff --git a/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.cs b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.cs
new file mode 100644
index 0000000..b43788f
--- /dev/null
+++ b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.cs
@@ -0,0 +1,179 @@
+锘縰sing DevExpress.XtraEditors;
+using Gs.DevApp.DevFrm.IPQC;
+using Gs.DevApp.Entity;
+using Gs.DevApp.ToolBox;
+using Gs.DevApp.UserControl;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Configuration;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Net;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Gs.DevApp.DevFrm.WOM
+{
+    public partial class KanBanLaTou : DevExpress.XtraEditors.XtraForm
+    {
+        string _webServiceName = "KanBan/";
+        List<FilterEntity> _filterList = new List<FilterEntity>();
+        public KanBanLaTou()
+        {
+            InitializeComponent();
+            this.toolBarMenu1.btnLoadClick += ToolBarMenu1_btnLoadClick;
+            this.toolBarMenu1.btnQueryClick += ToolBarMenu1_btnQueryClick;
+            this.toolBarMenu1.getXmlConfig();
+            Gs.DevApp.ToolBox.UtilityHelper.SetGridViewParameter(gridView1, null, this, "fsubmitTxt", "", (value) =>
+            {
+               // Gs.DevApp.ToolBox.UtilityHelper.JumpTab(xtraTabControl1, 0);
+            }, tips);
+            //Gs.DevApp.ToolBox.UtilityHelper.SetTabParameter(gridView1, xtraTabControl1, pageBar1, (value) =>
+            //{
+            //    getModel(value, "0");
+            //}, (value) =>
+            //{
+            //    getPageList(this.pageBar1.CurrentPage);
+            //}, lbGuid);
+            getPageList(1);
+            pageBar1.PagerEvent += PageBar1_PagerEvent;
+        }
+
+        private void GridView1_ColumnFilterChanged(object sender, EventArgs e)
+        {
+            _filterList = Gs.DevApp.ToolBox.UtilityHelper.GetDilter(gridView1.Columns, gridView1);
+            Task.Delay(100);
+            getPageList(1);
+        }
+      
+        /// <summary>
+        /// 鍒嗛〉浜嬩欢
+        /// </summary>
+        /// <param name="curPage"></param>
+        /// <param name="pageSize"></param>
+        private void PageBar1_PagerEvent(int curPage, int pageSize)
+        {
+            getPageList(curPage);
+        }
+        /// <summary>
+        /// 鏌ヨ浜嬩欢
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void ToolBarMenu1_btnQueryClick(object sender, EventArgs e)
+        {
+            gridView1.ColumnFilterChanged -= GridView1_ColumnFilterChanged;
+            gridView1.ActiveFilter.Clear();
+            gridView1.ColumnFilterChanged += GridView1_ColumnFilterChanged;
+            var frm = new ShowFilter(gridView1.Columns, _filterList, this.GetType().FullName);
+            frm.UpdateParent += Frm_UpdateParent;
+            frm.ShowDialog();
+        }
+        /// <summary>
+        /// 鏌ヨ鍥炶皟
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void Frm_UpdateParent(object sender, UpdateParentEventArgs e)
+        {
+            _filterList = e.FilterList;
+            getPageList(1);
+        }
+      
+        /// <summary>
+        /// 鍒锋柊浜嬩欢
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void ToolBarMenu1_btnLoadClick(object sender, EventArgs e)
+        {
+            if (xtraTabControl1.SelectedTabPageIndex == 1)
+            { }
+            else
+            {
+                //_filterList.Clear();
+                //if (gridView1.ActiveFilter.Count > 0)
+                //{
+                //    gridView1.ColumnFilterChanged -= GridView1_ColumnFilterChanged;
+                //    gridView1.ActiveFilter.Clear();
+                //    gridView1.ColumnFilterChanged += GridView1_ColumnFilterChanged;
+                //}
+                //getPageList(1);
+                getPageList(this.pageBar1.CurrentPage);
+            }
+        }
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="curPage">绗嚑椤�</param>
+        /// <param name="pageSize">姣忛〉鍑犳潯</param>
+        private void getPageList(int curPage)
+        {
+            gcMain1.DataSource = null;
+            System.Text.StringBuilder _sbSqlWhere = new System.Text.StringBuilder();
+            _sbSqlWhere.Append(" and a.ERP_SCZZ in");
+            _sbSqlWhere.Append(ToolBox.UtilityHelper.GetOrgWhere());
+            _sbSqlWhere.Append(UtilityHelper.GetSearchWhere(_filterList));
+            PageQueryModel pgq = new PageQueryModel(curPage, this.pageBar1.RowsCount, "create_date", "desc", "", _sbSqlWhere.ToString());
+            string json = JsonConvert.SerializeObject(pgq);
+            try
+            {
+                string strReturn = UtilityHelper.HttpPost("", _webServiceName + "GetListPage", json);
+                ReturnModel<PageListModel> dd = UtilityHelper.ReturnToTablePage(strReturn);
+                if (dd.rtnCode > 0)
+                {
+                    DataTable dt = dd.rtnData.list;
+                    gcMain1.BindingContext = new BindingContext();
+                    gridView1.ColumnFilterChanged -= GridView1_ColumnFilterChanged;
+                    if (dt.Rows.Count > 0)
+                    {
+                        gcMain1.DataSource = dt;
+                        gcMain1.ForceInitialize();
+                        gridView1.BestFitColumns(); Gs.DevApp.ToolBox.UtilityHelper.SetGridLayout(gridView1);
+                    }
+                    else
+                        UtilityHelper.SetDefaultTable(gcMain1, gridView1);
+                    gridView1.ColumnFilterChanged += GridView1_ColumnFilterChanged;
+                    pageBar1.TotalPages = dd.rtnData.pages;//鎬婚〉
+                    pageBar1.CurrentPage = curPage;//褰撳墠椤�
+                    pageBar1.RecordCount = dd.rtnData.total;//鎬昏褰曟暟
+                }
+                else
+                {
+                    ToolBox.MsgHelper.ShowError("鎻愮ず锛�" + dd.rtnMsg);
+                }
+            }
+            catch (Exception ex)
+            {
+                ToolBox.MsgHelper.Warning("鎻愮ず锛�" + ex.Message);
+            }
+        }
+
+       
+        /// <summary>
+        /// 鍘绘楠�
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void rptButtonUrl_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
+        {
+            if (e.Button.Index == 0)
+            {
+                var userGuid =
+               string.IsNullOrEmpty(LoginInfoModel.CurrentUser.LoginUserGuid)
+                   ? Guid.NewGuid().ToString()
+                   : LoginInfoModel.CurrentUser.LoginUserGuid;
+
+                var rowhandle = gridView1.FocusedRowHandle;
+                var dr = gridView1.GetDataRow(rowhandle);
+                var qcGuid = dr["guid"].ToString() + "&mth=" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + "&userGuid=" + userGuid;
+                KanBanLaTouH5 frm = new KanBanLaTouH5(qcGuid);
+                frm.ShowDialog();
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.resx b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.resx
new file mode 100644
index 0000000..5160e8b
--- /dev/null
+++ b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTou.resx
@@ -0,0 +1,123 @@
+锘�<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <metadata name="tips.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+</root>
\ No newline at end of file
diff --git a/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.Designer.cs b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.Designer.cs
new file mode 100644
index 0000000..bc89067
--- /dev/null
+++ b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.Designer.cs
@@ -0,0 +1,83 @@
+锘縩amespace Gs.DevApp.DevFrm.WOM
+{
+    partial class KanBanLaTouH5
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.pane1 = new DevExpress.XtraEditors.PanelControl();
+            this.txtUrl = new DevExpress.XtraEditors.TextEdit();
+            ((System.ComponentModel.ISupportInitialize)(this.pane1)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.txtUrl.Properties)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // pane1
+            // 
+            this.pane1.AllowTouchScroll = true;
+            this.pane1.AlwaysScrollActiveControlIntoView = false;
+            this.pane1.Appearance.BorderColor = System.Drawing.Color.Red;
+            this.pane1.Appearance.Options.UseBorderColor = true;
+            this.pane1.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
+            this.pane1.Dock = System.Windows.Forms.DockStyle.Fill;
+            this.pane1.Location = new System.Drawing.Point(0, 24);
+            this.pane1.Name = "pane1";
+            this.pane1.Size = new System.Drawing.Size(905, 469);
+            this.pane1.TabIndex = 1;
+            // 
+            // txtUrl
+            // 
+            this.txtUrl.Dock = System.Windows.Forms.DockStyle.Top;
+            this.txtUrl.Location = new System.Drawing.Point(0, 0);
+            this.txtUrl.Name = "txtUrl";
+            this.txtUrl.Size = new System.Drawing.Size(905, 24);
+            this.txtUrl.TabIndex = 0;
+            this.txtUrl.Visible = false;
+            // 
+            // KanBanLaTouH5
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 18F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(905, 493);
+            this.Controls.Add(this.pane1);
+            this.Controls.Add(this.txtUrl);
+            this.IconOptions.Image = global::Gs.DevApp.Properties.Resources.logo_png_black;
+            this.Name = "KanBanLaTouH5";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
+            this.Text = "绾垮ご鐪嬫澘";
+            this.TopMost = true;
+            this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
+            ((System.ComponentModel.ISupportInitialize)(this.pane1)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.txtUrl.Properties)).EndInit();
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+
+        private DevExpress.XtraEditors.TextEdit txtUrl;
+        private DevExpress.XtraEditors.PanelControl pane1;
+    }
+}
\ No newline at end of file
diff --git a/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.cs b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.cs
new file mode 100644
index 0000000..e5d2d76
--- /dev/null
+++ b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.cs
@@ -0,0 +1,35 @@
+锘縰sing CefSharp.WinForms;
+using System;
+using System.Windows.Forms;
+
+namespace Gs.DevApp.DevFrm.WOM
+{
+    public partial class KanBanLaTouH5 : DevExpress.XtraEditors.XtraForm
+    {
+        private string guid = "";
+        private string WebApiUrl = "http://192.168.1.145:86/AutoUpdater/h5/kanBanLaTou.html";
+        private ChromiumWebBrowser chromeBrowser;
+        public KanBanLaTouH5(string _guid)
+        {
+            this.guid = _guid;
+            this.WebApiUrl = (WebApiUrl + "?guid=" + guid);
+            InitializeComponent();
+            this.Load += ShowFile_Load;
+            this.FormClosed += ShowFile_FormClosed;
+        }
+
+        private void ShowFile_FormClosed(object sender, FormClosedEventArgs e)
+        {
+            chromeBrowser.Dispose();
+        }
+
+        private void ShowFile_Load(object sender, EventArgs e)
+        {
+            chromeBrowser = new ChromiumWebBrowser(WebApiUrl);
+            this.pane1.Controls.Add(chromeBrowser);
+            chromeBrowser.Dock = DockStyle.Fill;
+            txtUrl.Text = WebApiUrl;
+            txtUrl.ReadOnly = true;
+        }
+    }
+}
\ No newline at end of file
diff --git a/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.resx b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.resx
new file mode 100644
index 0000000..1af7de1
--- /dev/null
+++ b/DevApp/Gs.DevApp/DevFrm/WOM/KanBanLaTouH5.resx
@@ -0,0 +1,120 @@
+锘�<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>
\ No newline at end of file
diff --git a/DevApp/Gs.DevApp/Gs.DevApp.csproj b/DevApp/Gs.DevApp/Gs.DevApp.csproj
index f307ef3..c11f9cc 100644
--- a/DevApp/Gs.DevApp/Gs.DevApp.csproj
+++ b/DevApp/Gs.DevApp/Gs.DevApp.csproj
@@ -1143,6 +1143,18 @@
     <Compile Include="DevFrm\WOM\Frm_WomFanGong.Designer.cs">
       <DependentUpon>Frm_WomFanGong.cs</DependentUpon>
     </Compile>
+    <Compile Include="DevFrm\WOM\KanBanLaTou.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="DevFrm\WOM\KanBanLaTou.Designer.cs">
+      <DependentUpon>KanBanLaTou.cs</DependentUpon>
+    </Compile>
+    <Compile Include="DevFrm\WOM\KanBanLaTouH5.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="DevFrm\WOM\KanBanLaTouH5.Designer.cs">
+      <DependentUpon>KanBanLaTouH5.cs</DependentUpon>
+    </Compile>
     <Compile Include="DevFrm\WOM\ShowGx.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -2096,6 +2108,12 @@
     <EmbeddedResource Include="DevFrm\WOM\Frm_WomFanGong.resx">
       <DependentUpon>Frm_WomFanGong.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="DevFrm\WOM\KanBanLaTou.resx">
+      <DependentUpon>KanBanLaTou.cs</DependentUpon>
+    </EmbeddedResource>
+    <EmbeddedResource Include="DevFrm\WOM\KanBanLaTouH5.resx">
+      <DependentUpon>KanBanLaTouH5.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="DevFrm\WOM\ShowGx.resx">
       <DependentUpon>ShowGx.cs</DependentUpon>
     </EmbeddedResource>
diff --git a/DevApp/Gs.DevApp/Program.cs b/DevApp/Gs.DevApp/Program.cs
index e0e4483..debf7ff 100644
--- a/DevApp/Gs.DevApp/Program.cs
+++ b/DevApp/Gs.DevApp/Program.cs
@@ -1,10 +1,6 @@
 锘縰sing CefSharp;
 using CefSharp.WinForms;
 using Gs.DevApp.DevFrm;
-using Gs.DevApp.DevFrm.QC;
-using Gs.DevApp.DevFrm.Work;
-using Gs.DevApp.Properties;
-using Gs.DevApp.ToolBox;
 using System;
 using System.Diagnostics;
 using System.IO;

--
Gitblit v1.9.3