Преглед на файлове

产品报损模块 新增批量报损

lishiyue преди 1 година
родител
ревизия
c4b5b43d78

+ 143 - 91
DK.Client/PMModule/F_PM_1101.Designer.cs

@@ -29,12 +29,12 @@
         private void InitializeComponent()
         {
             System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(F_PM_1101));
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
-            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle11 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle12 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
             this.gbSelect = new Dongke.IBOSS.PRD.Basics.BaseControls.C_GroupBox();
             this.txtUserCode = new Dongke.IBOSS.PRD.Basics.BaseControls.C_TextBox();
             this.cbAuditStatus = new Dongke.IBOSS.PRD.Basics.BaseControls.DKListBoxComboBox();
@@ -111,6 +111,7 @@
             this.ScrapProductID = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.ISPUBLICBODY = new System.Windows.Forms.DataGridViewCheckBoxColumn();
             this.SPECIALREPAIRFLAG = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.toolStripButton1 = new System.Windows.Forms.ToolStripButton();
             this.gbSelect.SuspendLayout();
             this.tsrOperate.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.dgvScrapProduct)).BeginInit();
@@ -157,10 +158,12 @@
             this.gbSelect.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.gbSelect.ForeColor = System.Drawing.SystemColors.ControlText;
             this.gbSelect.IsMustInput = false;
-            this.gbSelect.Location = new System.Drawing.Point(0, 38);
+            this.gbSelect.Location = new System.Drawing.Point(0, 57);
+            this.gbSelect.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.gbSelect.Name = "gbSelect";
             this.gbSelect.OriginalHeight = -1;
-            this.gbSelect.Size = new System.Drawing.Size(1119, 95);
+            this.gbSelect.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
+            this.gbSelect.Size = new System.Drawing.Size(1678, 142);
             this.gbSelect.TabIndex = 13;
             this.gbSelect.TabStop = false;
             this.gbSelect.Text = "查询条件 ▼";
@@ -172,10 +175,11 @@
             this.txtUserCode.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
             this.txtUserCode.ErrorMessage = "";
             this.txtUserCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.txtUserCode.Location = new System.Drawing.Point(312, 64);
+            this.txtUserCode.Location = new System.Drawing.Point(468, 96);
+            this.txtUserCode.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtUserCode.MaxLength = 20;
             this.txtUserCode.Name = "txtUserCode";
-            this.txtUserCode.Size = new System.Drawing.Size(134, 21);
+            this.txtUserCode.Size = new System.Drawing.Size(199, 21);
             this.txtUserCode.TabIndex = 103;
             // 
             // cbAuditStatus
@@ -192,11 +196,12 @@
             this.cbAuditStatus.ListBox.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.cbAuditStatus.ListBox.Location = new System.Drawing.Point(0, 0);
             this.cbAuditStatus.ListBox.Name = "";
-            this.cbAuditStatus.ListBox.Size = new System.Drawing.Size(171, 136);
+            this.cbAuditStatus.ListBox.Size = new System.Drawing.Size(256, 136);
             this.cbAuditStatus.ListBox.TabIndex = 0;
-            this.cbAuditStatus.Location = new System.Drawing.Point(939, 14);
+            this.cbAuditStatus.Location = new System.Drawing.Point(1408, 21);
+            this.cbAuditStatus.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.cbAuditStatus.Name = "cbAuditStatus";
-            this.cbAuditStatus.Size = new System.Drawing.Size(173, 20);
+            this.cbAuditStatus.Size = new System.Drawing.Size(258, 20);
             this.cbAuditStatus.TabIndex = 102;
             // 
             // lblAuditStatus
@@ -205,7 +210,8 @@
             this.lblAuditStatus.BackColor = System.Drawing.Color.Transparent;
             this.lblAuditStatus.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblAuditStatus.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblAuditStatus.Location = new System.Drawing.Point(883, 18);
+            this.lblAuditStatus.Location = new System.Drawing.Point(1324, 27);
+            this.lblAuditStatus.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblAuditStatus.Name = "lblAuditStatus";
             this.lblAuditStatus.Size = new System.Drawing.Size(53, 12);
             this.lblAuditStatus.TabIndex = 101;
@@ -215,7 +221,8 @@
             // 
             this.cbSelectTime.AutoSize = true;
             this.cbSelectTime.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.cbSelectTime.Location = new System.Drawing.Point(452, 17);
+            this.cbSelectTime.Location = new System.Drawing.Point(678, 26);
+            this.cbSelectTime.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.cbSelectTime.Name = "cbSelectTime";
             this.cbSelectTime.Size = new System.Drawing.Size(72, 16);
             this.cbSelectTime.TabIndex = 3;
@@ -229,10 +236,11 @@
             this.txtRreason.BackgroundColor = System.Drawing.SystemColors.Window;
             this.txtRreason.ErrorMessage = "";
             this.txtRreason.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.txtRreason.Location = new System.Drawing.Point(735, 64);
+            this.txtRreason.Location = new System.Drawing.Point(1102, 96);
+            this.txtRreason.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtRreason.MaxLength = 500;
             this.txtRreason.Name = "txtRreason";
-            this.txtRreason.Size = new System.Drawing.Size(134, 21);
+            this.txtRreason.Size = new System.Drawing.Size(199, 21);
             this.txtRreason.TabIndex = 13;
             // 
             // lblRreason
@@ -241,7 +249,8 @@
             this.lblRreason.BackColor = System.Drawing.Color.Transparent;
             this.lblRreason.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblRreason.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblRreason.Location = new System.Drawing.Point(676, 68);
+            this.lblRreason.Location = new System.Drawing.Point(1014, 102);
+            this.lblRreason.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblRreason.Name = "lblRreason";
             this.lblRreason.Size = new System.Drawing.Size(53, 12);
             this.lblRreason.TabIndex = 100;
@@ -253,10 +262,11 @@
             this.txtRemarks.BackgroundColor = System.Drawing.SystemColors.Window;
             this.txtRemarks.ErrorMessage = "";
             this.txtRemarks.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.txtRemarks.Location = new System.Drawing.Point(530, 64);
+            this.txtRemarks.Location = new System.Drawing.Point(795, 96);
+            this.txtRemarks.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtRemarks.MaxLength = 500;
             this.txtRemarks.Name = "txtRemarks";
-            this.txtRemarks.Size = new System.Drawing.Size(134, 21);
+            this.txtRemarks.Size = new System.Drawing.Size(199, 21);
             this.txtRemarks.TabIndex = 12;
             // 
             // txtGroutingUserCode
@@ -266,10 +276,11 @@
             this.txtGroutingUserCode.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
             this.txtGroutingUserCode.ErrorMessage = "";
             this.txtGroutingUserCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.txtGroutingUserCode.Location = new System.Drawing.Point(735, 39);
+            this.txtGroutingUserCode.Location = new System.Drawing.Point(1102, 58);
+            this.txtGroutingUserCode.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtGroutingUserCode.MaxLength = 20;
             this.txtGroutingUserCode.Name = "txtGroutingUserCode";
-            this.txtGroutingUserCode.Size = new System.Drawing.Size(134, 21);
+            this.txtGroutingUserCode.Size = new System.Drawing.Size(199, 21);
             this.txtGroutingUserCode.TabIndex = 9;
             // 
             // txtGoodsName
@@ -278,10 +289,11 @@
             this.txtGoodsName.BackgroundColor = System.Drawing.SystemColors.Window;
             this.txtGoodsName.ErrorMessage = "";
             this.txtGoodsName.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.txtGoodsName.Location = new System.Drawing.Point(530, 39);
+            this.txtGoodsName.Location = new System.Drawing.Point(795, 58);
+            this.txtGoodsName.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtGoodsName.MaxLength = 20;
             this.txtGoodsName.Name = "txtGoodsName";
-            this.txtGoodsName.Size = new System.Drawing.Size(134, 21);
+            this.txtGoodsName.Size = new System.Drawing.Size(199, 21);
             this.txtGoodsName.TabIndex = 9;
             // 
             // txtGoodsCode
@@ -292,10 +304,11 @@
             this.txtGoodsCode.ErrorMessage = "";
             this.txtGoodsCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.txtGoodsCode.ImeMode = System.Windows.Forms.ImeMode.Off;
-            this.txtGoodsCode.Location = new System.Drawing.Point(312, 39);
+            this.txtGoodsCode.Location = new System.Drawing.Point(468, 58);
+            this.txtGoodsCode.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtGoodsCode.MaxLength = 10;
             this.txtGoodsCode.Name = "txtGoodsCode";
-            this.txtGoodsCode.Size = new System.Drawing.Size(134, 21);
+            this.txtGoodsCode.Size = new System.Drawing.Size(199, 21);
             this.txtGoodsCode.TabIndex = 8;
             // 
             // c_Label1
@@ -304,7 +317,8 @@
             this.c_Label1.BackColor = System.Drawing.Color.Transparent;
             this.c_Label1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.c_Label1.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.c_Label1.Location = new System.Drawing.Point(253, 68);
+            this.c_Label1.Location = new System.Drawing.Point(380, 102);
+            this.c_Label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.c_Label1.Name = "c_Label1";
             this.c_Label1.Size = new System.Drawing.Size(53, 12);
             this.c_Label1.TabIndex = 95;
@@ -316,7 +330,8 @@
             this.lblGroutingUserCode.BackColor = System.Drawing.Color.Transparent;
             this.lblGroutingUserCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblGroutingUserCode.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblGroutingUserCode.Location = new System.Drawing.Point(676, 43);
+            this.lblGroutingUserCode.Location = new System.Drawing.Point(1014, 64);
+            this.lblGroutingUserCode.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblGroutingUserCode.Name = "lblGroutingUserCode";
             this.lblGroutingUserCode.Size = new System.Drawing.Size(53, 12);
             this.lblGroutingUserCode.TabIndex = 95;
@@ -328,7 +343,8 @@
             this.lblGoodsName.BackColor = System.Drawing.Color.Transparent;
             this.lblGoodsName.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblGoodsName.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblGoodsName.Location = new System.Drawing.Point(471, 43);
+            this.lblGoodsName.Location = new System.Drawing.Point(706, 64);
+            this.lblGoodsName.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblGoodsName.Name = "lblGoodsName";
             this.lblGoodsName.Size = new System.Drawing.Size(53, 12);
             this.lblGoodsName.TabIndex = 95;
@@ -340,7 +356,8 @@
             this.lblGoodsCode.BackColor = System.Drawing.Color.Transparent;
             this.lblGoodsCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblGoodsCode.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblGoodsCode.Location = new System.Drawing.Point(248, 43);
+            this.lblGoodsCode.Location = new System.Drawing.Point(372, 64);
+            this.lblGoodsCode.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblGoodsCode.Name = "lblGoodsCode";
             this.lblGoodsCode.Size = new System.Drawing.Size(53, 12);
             this.lblGoodsCode.TabIndex = 94;
@@ -351,9 +368,10 @@
             this.txtScrapDateEnd.CustomFormat = "yyyy-MM-dd";
             this.txtScrapDateEnd.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.txtScrapDateEnd.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
-            this.txtScrapDateEnd.Location = new System.Drawing.Point(735, 15);
+            this.txtScrapDateEnd.Location = new System.Drawing.Point(1102, 22);
+            this.txtScrapDateEnd.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtScrapDateEnd.Name = "txtScrapDateEnd";
-            this.txtScrapDateEnd.Size = new System.Drawing.Size(134, 21);
+            this.txtScrapDateEnd.Size = new System.Drawing.Size(199, 21);
             this.txtScrapDateEnd.TabIndex = 5;
             // 
             // lblTo
@@ -362,7 +380,8 @@
             this.lblTo.BackColor = System.Drawing.Color.Transparent;
             this.lblTo.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblTo.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblTo.Location = new System.Drawing.Point(691, 19);
+            this.lblTo.Location = new System.Drawing.Point(1036, 28);
+            this.lblTo.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblTo.Name = "lblTo";
             this.lblTo.Size = new System.Drawing.Size(17, 12);
             this.lblTo.TabIndex = 92;
@@ -373,9 +392,10 @@
             this.txtScrapDateStart.CustomFormat = "yyyy-MM-dd";
             this.txtScrapDateStart.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.txtScrapDateStart.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
-            this.txtScrapDateStart.Location = new System.Drawing.Point(530, 15);
+            this.txtScrapDateStart.Location = new System.Drawing.Point(795, 22);
+            this.txtScrapDateStart.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtScrapDateStart.Name = "txtScrapDateStart";
-            this.txtScrapDateStart.Size = new System.Drawing.Size(134, 21);
+            this.txtScrapDateStart.Size = new System.Drawing.Size(199, 21);
             this.txtScrapDateStart.TabIndex = 4;
             // 
             // txtResponProcedureName
@@ -384,10 +404,11 @@
             this.txtResponProcedureName.BackgroundColor = System.Drawing.SystemColors.Window;
             this.txtResponProcedureName.ErrorMessage = "";
             this.txtResponProcedureName.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.txtResponProcedureName.Location = new System.Drawing.Point(89, 39);
+            this.txtResponProcedureName.Location = new System.Drawing.Point(134, 58);
+            this.txtResponProcedureName.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtResponProcedureName.MaxLength = 50;
             this.txtResponProcedureName.Name = "txtResponProcedureName";
-            this.txtResponProcedureName.Size = new System.Drawing.Size(134, 21);
+            this.txtResponProcedureName.Size = new System.Drawing.Size(199, 21);
             this.txtResponProcedureName.TabIndex = 7;
             // 
             // txtProductionLineName
@@ -396,10 +417,11 @@
             this.txtProductionLineName.BackgroundColor = System.Drawing.SystemColors.Window;
             this.txtProductionLineName.ErrorMessage = "";
             this.txtProductionLineName.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.txtProductionLineName.Location = new System.Drawing.Point(312, 15);
+            this.txtProductionLineName.Location = new System.Drawing.Point(468, 22);
+            this.txtProductionLineName.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtProductionLineName.MaxLength = 50;
             this.txtProductionLineName.Name = "txtProductionLineName";
-            this.txtProductionLineName.Size = new System.Drawing.Size(134, 21);
+            this.txtProductionLineName.Size = new System.Drawing.Size(199, 21);
             this.txtProductionLineName.TabIndex = 2;
             // 
             // lblProductionLineName
@@ -408,7 +430,8 @@
             this.lblProductionLineName.BackColor = System.Drawing.Color.Transparent;
             this.lblProductionLineName.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblProductionLineName.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblProductionLineName.Location = new System.Drawing.Point(241, 19);
+            this.lblProductionLineName.Location = new System.Drawing.Point(362, 28);
+            this.lblProductionLineName.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblProductionLineName.Name = "lblProductionLineName";
             this.lblProductionLineName.Size = new System.Drawing.Size(65, 12);
             this.lblProductionLineName.TabIndex = 85;
@@ -420,7 +443,8 @@
             this.lblResponProcedureName.BackColor = System.Drawing.Color.Transparent;
             this.lblResponProcedureName.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblResponProcedureName.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblResponProcedureName.Location = new System.Drawing.Point(30, 42);
+            this.lblResponProcedureName.Location = new System.Drawing.Point(45, 63);
+            this.lblResponProcedureName.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblResponProcedureName.Name = "lblResponProcedureName";
             this.lblResponProcedureName.Size = new System.Drawing.Size(53, 12);
             this.lblResponProcedureName.TabIndex = 84;
@@ -432,7 +456,8 @@
             this.lblRemarks.BackColor = System.Drawing.Color.Transparent;
             this.lblRemarks.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblRemarks.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblRemarks.Location = new System.Drawing.Point(495, 68);
+            this.lblRemarks.Location = new System.Drawing.Point(742, 102);
+            this.lblRemarks.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblRemarks.Name = "lblRemarks";
             this.lblRemarks.Size = new System.Drawing.Size(29, 12);
             this.lblRemarks.TabIndex = 83;
@@ -445,10 +470,11 @@
             this.txtBarCode.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
             this.txtBarCode.ErrorMessage = "";
             this.txtBarCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.txtBarCode.Location = new System.Drawing.Point(89, 64);
+            this.txtBarCode.Location = new System.Drawing.Point(134, 96);
+            this.txtBarCode.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtBarCode.MaxLength = 11;
             this.txtBarCode.Name = "txtBarCode";
-            this.txtBarCode.Size = new System.Drawing.Size(134, 21);
+            this.txtBarCode.Size = new System.Drawing.Size(199, 21);
             this.txtBarCode.TabIndex = 10;
             // 
             // lblBarCode
@@ -457,7 +483,8 @@
             this.lblBarCode.BackColor = System.Drawing.Color.Transparent;
             this.lblBarCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblBarCode.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblBarCode.Location = new System.Drawing.Point(30, 68);
+            this.lblBarCode.Location = new System.Drawing.Point(45, 102);
+            this.lblBarCode.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblBarCode.Name = "lblBarCode";
             this.lblBarCode.Size = new System.Drawing.Size(53, 12);
             this.lblBarCode.TabIndex = 80;
@@ -471,10 +498,11 @@
             this.txtProductionLineCode.ErrorMessage = "";
             this.txtProductionLineCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.txtProductionLineCode.ImeMode = System.Windows.Forms.ImeMode.Off;
-            this.txtProductionLineCode.Location = new System.Drawing.Point(89, 15);
+            this.txtProductionLineCode.Location = new System.Drawing.Point(134, 22);
+            this.txtProductionLineCode.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtProductionLineCode.MaxLength = 20;
             this.txtProductionLineCode.Name = "txtProductionLineCode";
-            this.txtProductionLineCode.Size = new System.Drawing.Size(134, 21);
+            this.txtProductionLineCode.Size = new System.Drawing.Size(199, 21);
             this.txtProductionLineCode.TabIndex = 1;
             // 
             // txtResponProcedureCode
@@ -485,10 +513,11 @@
             this.txtResponProcedureCode.ErrorMessage = "";
             this.txtResponProcedureCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.txtResponProcedureCode.ImeMode = System.Windows.Forms.ImeMode.Off;
-            this.txtResponProcedureCode.Location = new System.Drawing.Point(966, 39);
+            this.txtResponProcedureCode.Location = new System.Drawing.Point(1449, 58);
+            this.txtResponProcedureCode.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.txtResponProcedureCode.MaxLength = 20;
             this.txtResponProcedureCode.Name = "txtResponProcedureCode";
-            this.txtResponProcedureCode.Size = new System.Drawing.Size(146, 21);
+            this.txtResponProcedureCode.Size = new System.Drawing.Size(217, 21);
             this.txtResponProcedureCode.TabIndex = 6;
             this.txtResponProcedureCode.Visible = false;
             // 
@@ -498,7 +527,8 @@
             this.lblResponProcedureCode.BackColor = System.Drawing.Color.Transparent;
             this.lblResponProcedureCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblResponProcedureCode.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblResponProcedureCode.Location = new System.Drawing.Point(883, 43);
+            this.lblResponProcedureCode.Location = new System.Drawing.Point(1324, 64);
+            this.lblResponProcedureCode.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblResponProcedureCode.Name = "lblResponProcedureCode";
             this.lblResponProcedureCode.Size = new System.Drawing.Size(77, 12);
             this.lblResponProcedureCode.TabIndex = 77;
@@ -511,7 +541,8 @@
             this.lblProductionLineCode.BackColor = System.Drawing.Color.Transparent;
             this.lblProductionLineCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblProductionLineCode.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblProductionLineCode.Location = new System.Drawing.Point(18, 19);
+            this.lblProductionLineCode.Location = new System.Drawing.Point(27, 28);
+            this.lblProductionLineCode.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblProductionLineCode.Name = "lblProductionLineCode";
             this.lblProductionLineCode.Size = new System.Drawing.Size(65, 12);
             this.lblProductionLineCode.TabIndex = 76;
@@ -524,10 +555,10 @@
             this.btnClearCondition.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnClearCondition.BackgroundImage")));
             this.btnClearCondition.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.btnClearCondition.ForeColor = System.Drawing.Color.White;
-            this.btnClearCondition.Location = new System.Drawing.Point(1017, 62);
-            this.btnClearCondition.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+            this.btnClearCondition.Location = new System.Drawing.Point(1526, 93);
+            this.btnClearCondition.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnClearCondition.Name = "btnClearCondition";
-            this.btnClearCondition.Size = new System.Drawing.Size(85, 30);
+            this.btnClearCondition.Size = new System.Drawing.Size(128, 45);
             this.btnClearCondition.TabIndex = 75;
             this.btnClearCondition.Text = "清空条件(&C)";
             this.btnClearCondition.UseVisualStyleBackColor = false;
@@ -540,10 +571,10 @@
             this.btnSearch.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnSearch.BackgroundImage")));
             this.btnSearch.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.btnSearch.ForeColor = System.Drawing.Color.White;
-            this.btnSearch.Location = new System.Drawing.Point(926, 62);
-            this.btnSearch.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+            this.btnSearch.Location = new System.Drawing.Point(1389, 93);
+            this.btnSearch.Margin = new System.Windows.Forms.Padding(4, 3, 4, 3);
             this.btnSearch.Name = "btnSearch";
-            this.btnSearch.Size = new System.Drawing.Size(85, 30);
+            this.btnSearch.Size = new System.Drawing.Size(128, 45);
             this.btnSearch.TabIndex = 74;
             this.btnSearch.Text = "查询(&Q)";
             this.btnSearch.UseVisualStyleBackColor = false;
@@ -555,7 +586,8 @@
             this.lblGroutingLineName.BackColor = System.Drawing.Color.Transparent;
             this.lblGroutingLineName.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblGroutingLineName.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblGroutingLineName.Location = new System.Drawing.Point(189, 19);
+            this.lblGroutingLineName.Location = new System.Drawing.Point(284, 28);
+            this.lblGroutingLineName.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblGroutingLineName.Name = "lblGroutingLineName";
             this.lblGroutingLineName.Size = new System.Drawing.Size(0, 12);
             this.lblGroutingLineName.TabIndex = 14;
@@ -566,7 +598,8 @@
             this.lblGroutingLineCode.BackColor = System.Drawing.Color.Transparent;
             this.lblGroutingLineCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.lblGroutingLineCode.ForeColor = System.Drawing.SystemColors.ControlText;
-            this.lblGroutingLineCode.Location = new System.Drawing.Point(12, 17);
+            this.lblGroutingLineCode.Location = new System.Drawing.Point(18, 26);
+            this.lblGroutingLineCode.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
             this.lblGroutingLineCode.Name = "lblGroutingLineCode";
             this.lblGroutingLineCode.Size = new System.Drawing.Size(0, 12);
             this.lblGroutingLineCode.TabIndex = 9;
@@ -583,12 +616,14 @@
             this.tsbtnApprover,
             this.toolStripSeparator3,
             this.tsbtnAdaptive,
-            this.tsbtnClose});
+            this.tsbtnClose,
+            this.toolStripButton1});
             this.tsrOperate.Location = new System.Drawing.Point(0, 0);
             this.tsrOperate.Name = "tsrOperate";
+            this.tsrOperate.Padding = new System.Windows.Forms.Padding(0, 0, 2, 0);
             this.tsrOperate.RenderMode = System.Windows.Forms.ToolStripRenderMode.System;
             this.tsrOperate.ShowItemToolTips = false;
-            this.tsrOperate.Size = new System.Drawing.Size(1131, 35);
+            this.tsrOperate.Size = new System.Drawing.Size(1696, 52);
             this.tsrOperate.TabIndex = 14;
             // 
             // tsbtnAdd
@@ -658,8 +693,8 @@
             this.dgvScrapProduct.AllowUserToDeleteRows = false;
             this.dgvScrapProduct.AllowUserToModifyRows = true;
             this.dgvScrapProduct.AllowUserToOrderColumns = true;
-            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235)))));
-            this.dgvScrapProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
+            dataGridViewCellStyle7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235)))));
+            this.dgvScrapProduct.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle7;
             this.dgvScrapProduct.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
             | System.Windows.Forms.AnchorStyles.Left) 
             | System.Windows.Forms.AnchorStyles.Right)));
@@ -670,14 +705,14 @@
             this.dgvScrapProduct.ChildNodeColumnText = null;
             this.dgvScrapProduct.ColumnDeep = 1;
             this.dgvScrapProduct.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
-            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
-            dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(58)))), ((int)(((byte)(70)))));
-            dataGridViewCellStyle2.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
-            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
-            this.dgvScrapProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+            dataGridViewCellStyle8.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle8.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(58)))), ((int)(((byte)(70)))));
+            dataGridViewCellStyle8.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            dataGridViewCellStyle8.ForeColor = System.Drawing.Color.White;
+            dataGridViewCellStyle8.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle8.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle8.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvScrapProduct.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle8;
             this.dgvScrapProduct.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
             this.dgvScrapProduct.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
             this.BarCode,
@@ -717,18 +752,19 @@
             this.SPECIALREPAIRFLAG});
             this.dgvScrapProduct.ColumnTreeView = null;
             this.dgvScrapProduct.ContextMenuVisible = ((Dongke.IBOSS.PRD.Basics.BaseControls.C_DataGridView.ContextMenuVisibleFlags)((Dongke.IBOSS.PRD.Basics.BaseControls.C_DataGridView.ContextMenuVisibleFlags.Refine | Dongke.IBOSS.PRD.Basics.BaseControls.C_DataGridView.ContextMenuVisibleFlags.FileOut)));
-            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
-            dataGridViewCellStyle5.BackColor = System.Drawing.SystemColors.Window;
-            dataGridViewCellStyle5.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            dataGridViewCellStyle5.ForeColor = System.Drawing.SystemColors.ControlText;
-            dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
-            dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
-            dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
-            this.dgvScrapProduct.DefaultCellStyle = dataGridViewCellStyle5;
+            dataGridViewCellStyle11.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
+            dataGridViewCellStyle11.BackColor = System.Drawing.SystemColors.Window;
+            dataGridViewCellStyle11.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            dataGridViewCellStyle11.ForeColor = System.Drawing.SystemColors.ControlText;
+            dataGridViewCellStyle11.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle11.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle11.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
+            this.dgvScrapProduct.DefaultCellStyle = dataGridViewCellStyle11;
             this.dgvScrapProduct.DynamicColumnName = "";
             this.dgvScrapProduct.EnableHeadersVisualStyles = false;
             this.dgvScrapProduct.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
             this.dgvScrapProduct.FormatQuantityColumns = null;
+            this.dgvScrapProduct.HasNode = false;
             this.dgvScrapProduct.HorizontalMergeColumn = null;
             this.dgvScrapProduct.IsAutoCountSum = true;
             this.dgvScrapProduct.IsAutoResizeColumns = false;
@@ -736,7 +772,8 @@
             this.dgvScrapProduct.IsOpenMergeCellFlag = false;
             this.dgvScrapProduct.IsSubTotalFlag = false;
             this.dgvScrapProduct.IsTopDeep = false;
-            this.dgvScrapProduct.Location = new System.Drawing.Point(0, 139);
+            this.dgvScrapProduct.Location = new System.Drawing.Point(0, 208);
+            this.dgvScrapProduct.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
             this.dgvScrapProduct.MergeColumnNames = null;
             this.dgvScrapProduct.MergeDetailColumnNames = null;
             this.dgvScrapProduct.MergeDetailOnlyColumn = null;
@@ -746,17 +783,18 @@
             this.dgvScrapProduct.RefreshAtHscroll = false;
             this.dgvScrapProduct.RowHeadersWidth = 50;
             this.dgvScrapProduct.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
-            dataGridViewCellStyle6.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(159)))), ((int)(((byte)(39)))), ((int)(((byte)(39)))));
-            this.dgvScrapProduct.RowsDefaultCellStyle = dataGridViewCellStyle6;
+            dataGridViewCellStyle12.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(159)))), ((int)(((byte)(39)))), ((int)(((byte)(39)))));
+            this.dgvScrapProduct.RowsDefaultCellStyle = dataGridViewCellStyle12;
             this.dgvScrapProduct.RowTemplate.Height = 21;
             this.dgvScrapProduct.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
-            this.dgvScrapProduct.Size = new System.Drawing.Size(1119, 296);
+            this.dgvScrapProduct.Size = new System.Drawing.Size(1678, 444);
             this.dgvScrapProduct.SortOrderColumnName = null;
             this.dgvScrapProduct.TabIndex = 14;
             this.dgvScrapProduct.Tag = true;
             this.dgvScrapProduct.TotalSumColumns = null;
             this.dgvScrapProduct.ViewRowFilter = "";
             this.dgvScrapProduct.VirtualMode = true;
+            this.dgvScrapProduct.VirtualNodes = false;
             this.dgvScrapProduct.CellDoubleClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvScrapProduct_CellDoubleClick);
             // 
             // BarCode
@@ -857,9 +895,9 @@
             // GroutingDate
             // 
             this.GroutingDate.DataPropertyName = "GroutingDate";
-            dataGridViewCellStyle3.Format = "yyyy-MM-dd";
-            dataGridViewCellStyle3.NullValue = null;
-            this.GroutingDate.DefaultCellStyle = dataGridViewCellStyle3;
+            dataGridViewCellStyle9.Format = "yyyy-MM-dd";
+            dataGridViewCellStyle9.NullValue = null;
+            this.GroutingDate.DefaultCellStyle = dataGridViewCellStyle9;
             this.GroutingDate.HeaderText = "注浆日期";
             this.GroutingDate.Name = "GroutingDate";
             this.GroutingDate.ReadOnly = true;
@@ -942,9 +980,9 @@
             // ScrapDate
             // 
             this.ScrapDate.DataPropertyName = "ScrapDate";
-            dataGridViewCellStyle4.Format = "yyyy-MM-dd";
-            dataGridViewCellStyle4.NullValue = null;
-            this.ScrapDate.DefaultCellStyle = dataGridViewCellStyle4;
+            dataGridViewCellStyle10.Format = "yyyy-MM-dd";
+            dataGridViewCellStyle10.NullValue = null;
+            this.ScrapDate.DefaultCellStyle = dataGridViewCellStyle10;
             this.ScrapDate.HeaderText = "废弃日期";
             this.ScrapDate.Name = "ScrapDate";
             this.ScrapDate.ReadOnly = true;
@@ -1032,14 +1070,27 @@
             this.SPECIALREPAIRFLAG.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
             this.SPECIALREPAIRFLAG.TrueValue = "1";
             // 
+            // toolStripButton1
+            // 
+            this.toolStripButton1.AutoSize = false;
+            this.toolStripButton1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.toolStripButton1.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
+            this.toolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta;
+            this.toolStripButton1.Name = "toolStripButton1";
+            this.toolStripButton1.Size = new System.Drawing.Size(60, 25);
+            this.toolStripButton1.Text = "批量报损";
+            this.toolStripButton1.Click += new System.EventHandler(this.toolStripButton1_Click);
+            // 
             // F_PM_1101
             // 
-            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
+            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 18F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
-            this.ClientSize = new System.Drawing.Size(1131, 447);
+            this.ClientSize = new System.Drawing.Size(1696, 670);
             this.Controls.Add(this.dgvScrapProduct);
             this.Controls.Add(this.tsrOperate);
             this.Controls.Add(this.gbSelect);
+            this.Font = new System.Drawing.Font("宋体", 13.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.Margin = new System.Windows.Forms.Padding(6, 6, 6, 6);
             this.Name = "F_PM_1101";
             this.Text = "产品报损";
             this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.F_PM_1101_FormClosed);
@@ -1131,5 +1182,6 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn ScrapProductID;
         private System.Windows.Forms.DataGridViewCheckBoxColumn ISPUBLICBODY;
         private System.Windows.Forms.DataGridViewCheckBoxColumn SPECIALREPAIRFLAG;
+        private System.Windows.Forms.ToolStripButton toolStripButton1;
     }
 }

+ 36 - 0
DK.Client/PMModule/F_PM_1101.cs

@@ -441,5 +441,41 @@ namespace Dongke.IBOSS.PRD.Client.PMModule
         }
 
         #endregion
+
+        /// <summary>
+        /// 批量报损
+        /// </summary>
+        /// <param name="sender"></param>
+        /// <param name="e"></param>
+        private void toolStripButton1_Click(object sender, EventArgs e)
+        {
+            try
+            {
+                F_PM_1107 frmFPM1107 = new F_PM_1107(Constant.FormMode.Add, "", 0, this.tsbtnApprover.Visible);
+                DialogResult dialogresult = frmFPM1107.ShowDialog();
+                if (dialogresult.Equals(DialogResult.OK))
+                {
+                    this.dgvScrapProduct.DataSource = null;
+                    DataSet dsScrap = (DataSet)DoAsync(new AsyncMethod(() =>
+                    {
+                        return this.GetScrapProduct();
+                    }));
+                    if (dsScrap != null)
+                    {
+                        if (dsScrap.Tables.Count != Constant.INT_IS_ZERO)
+                        {
+                            this.dgvScrapProduct.DataSource = ((DataSet)dsScrap).Tables[Constant.INT_IS_ZERO];
+                            this.dgvScrapProduct.ReadOnly = true;
+                        }
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                // 对异常进行共通处理
+                ExceptionManager.HandleEventException(this.ToString(),
+                    System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
+            }
+        }
     }
 }

+ 452 - 0
DK.Client/PMModule/F_PM_1107.Designer.cs

@@ -0,0 +1,452 @@
+namespace Dongke.IBOSS.PRD.Client.PMModule
+{
+    partial class F_PM_1107
+    {
+        /// <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()
+        {
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(F_PM_1107));
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
+            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
+            this.lblBarCode = new Dongke.IBOSS.PRD.Basics.BaseControls.C_Label();
+            this.lblRreason = new Dongke.IBOSS.PRD.Basics.BaseControls.C_Label();
+            this.lblRemarks = new Dongke.IBOSS.PRD.Basics.BaseControls.C_Label();
+            this.txtRemarks = new Dongke.IBOSS.PRD.Basics.BaseControls.C_TextBox();
+            this.btnSave = new Dongke.IBOSS.PRD.Basics.BaseControls.C_Button();
+            this.btnCancel = new Dongke.IBOSS.PRD.Basics.BaseControls.C_Button();
+            this.lblResponsible = new Dongke.IBOSS.PRD.Basics.BaseControls.C_Label();
+            this.dgvResponsible = new Dongke.IBOSS.PRD.Basics.BaseControls.C_DataGridView();
+            this.txtBarCode = new Dongke.IBOSS.PRD.Basics.BaseControls.C_TXT_BarCode();
+            this.cmbRreason = new Dongke.IBOSS.PRD.Basics.BaseControls.C_ComboBox();
+            this.lblAuditStatus = new Dongke.IBOSS.PRD.Basics.BaseControls.C_Label();
+            this.cmbAuditStatus = new Dongke.IBOSS.PRD.Basics.BaseControls.C_ComboBox();
+            this.c_Label1 = new Dongke.IBOSS.PRD.Basics.BaseControls.C_Label();
+            this.detailsView = new Dongke.IBOSS.PRD.Basics.BaseControls.C_DataGridView();
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.c_Label2 = new Dongke.IBOSS.PRD.Basics.BaseControls.C_Label();
+            this.StaffCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.UJobsName = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            ((System.ComponentModel.ISupportInitialize)(this.dgvResponsible)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.detailsView)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // lblBarCode
+            // 
+            this.lblBarCode.AutoSize = true;
+            this.lblBarCode.BackColor = System.Drawing.Color.Transparent;
+            this.lblBarCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lblBarCode.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(155)))), ((int)(((byte)(39)))), ((int)(((byte)(39)))));
+            this.lblBarCode.IsMustInput = true;
+            this.lblBarCode.Location = new System.Drawing.Point(12, 16);
+            this.lblBarCode.Name = "lblBarCode";
+            this.lblBarCode.Size = new System.Drawing.Size(53, 12);
+            this.lblBarCode.TabIndex = 0;
+            this.lblBarCode.Text = "产品条码";
+            // 
+            // lblRreason
+            // 
+            this.lblRreason.AutoSize = true;
+            this.lblRreason.BackColor = System.Drawing.Color.Transparent;
+            this.lblRreason.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lblRreason.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(155)))), ((int)(((byte)(39)))), ((int)(((byte)(39)))));
+            this.lblRreason.IsMustInput = true;
+            this.lblRreason.Location = new System.Drawing.Point(12, 402);
+            this.lblRreason.Name = "lblRreason";
+            this.lblRreason.Size = new System.Drawing.Size(53, 12);
+            this.lblRreason.TabIndex = 31;
+            this.lblRreason.Text = "损坯原因";
+            // 
+            // lblRemarks
+            // 
+            this.lblRemarks.AutoSize = true;
+            this.lblRemarks.BackColor = System.Drawing.Color.Transparent;
+            this.lblRemarks.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lblRemarks.ForeColor = System.Drawing.SystemColors.ControlText;
+            this.lblRemarks.Location = new System.Drawing.Point(12, 460);
+            this.lblRemarks.Name = "lblRemarks";
+            this.lblRemarks.Size = new System.Drawing.Size(29, 12);
+            this.lblRemarks.TabIndex = 32;
+            this.lblRemarks.Text = "备注";
+            // 
+            // txtRemarks
+            // 
+            this.txtRemarks.BackColor = System.Drawing.SystemColors.Window;
+            this.txtRemarks.BackgroundColor = System.Drawing.SystemColors.Window;
+            this.txtRemarks.ErrorMessage = "";
+            this.txtRemarks.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.txtRemarks.Location = new System.Drawing.Point(47, 433);
+            this.txtRemarks.MaxLength = 70;
+            this.txtRemarks.Multiline = true;
+            this.txtRemarks.Name = "txtRemarks";
+            this.txtRemarks.Size = new System.Drawing.Size(548, 53);
+            this.txtRemarks.TabIndex = 7;
+            // 
+            // btnSave
+            // 
+            this.btnSave.BackColor = System.Drawing.Color.Transparent;
+            this.btnSave.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnSave.BackgroundImage")));
+            this.btnSave.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.btnSave.ForeColor = System.Drawing.Color.White;
+            this.btnSave.Location = new System.Drawing.Point(647, 504);
+            this.btnSave.Name = "btnSave";
+            this.btnSave.Size = new System.Drawing.Size(85, 30);
+            this.btnSave.TabIndex = 8;
+            this.btnSave.Text = "保存(&S)";
+            this.btnSave.UseVisualStyleBackColor = false;
+            this.btnSave.Click += new System.EventHandler(this.btnSave_Click);
+            // 
+            // btnCancel
+            // 
+            this.btnCancel.BackColor = System.Drawing.Color.Transparent;
+            this.btnCancel.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnCancel.BackgroundImage")));
+            this.btnCancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
+            this.btnCancel.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.btnCancel.ForeColor = System.Drawing.Color.White;
+            this.btnCancel.Location = new System.Drawing.Point(746, 501);
+            this.btnCancel.Name = "btnCancel";
+            this.btnCancel.Size = new System.Drawing.Size(85, 30);
+            this.btnCancel.TabIndex = 9;
+            this.btnCancel.Text = "关闭";
+            this.btnCancel.UseVisualStyleBackColor = false;
+            this.btnCancel.Click += new System.EventHandler(this.btnCancel_Click);
+            // 
+            // lblResponsible
+            // 
+            this.lblResponsible.AutoSize = true;
+            this.lblResponsible.BackColor = System.Drawing.Color.Transparent;
+            this.lblResponsible.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lblResponsible.ForeColor = System.Drawing.SystemColors.ControlText;
+            this.lblResponsible.Location = new System.Drawing.Point(12, 126);
+            this.lblResponsible.Name = "lblResponsible";
+            this.lblResponsible.Size = new System.Drawing.Size(53, 12);
+            this.lblResponsible.TabIndex = 36;
+            this.lblResponsible.Text = "产品详情";
+            // 
+            // dgvResponsible
+            // 
+            this.dgvResponsible.AllowUserToAddRows = false;
+            this.dgvResponsible.AllowUserToDeleteRows = false;
+            this.dgvResponsible.AllowUserToModifyRows = true;
+            dataGridViewCellStyle1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235)))));
+            this.dgvResponsible.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
+            this.dgvResponsible.Anchor = System.Windows.Forms.AnchorStyles.None;
+            this.dgvResponsible.CellBackColorNochanged = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
+            this.dgvResponsible.CellBackColorReadOnly = System.Drawing.SystemColors.Control;
+            this.dgvResponsible.CellHeight = 23;
+            this.dgvResponsible.ChildNodeColumnName = null;
+            this.dgvResponsible.ChildNodeColumnText = null;
+            this.dgvResponsible.ColumnDeep = 1;
+            this.dgvResponsible.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
+            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(58)))), ((int)(((byte)(70)))));
+            dataGridViewCellStyle2.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            dataGridViewCellStyle2.ForeColor = System.Drawing.Color.White;
+            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.dgvResponsible.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
+            this.dgvResponsible.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.dgvResponsible.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.StaffCode,
+            this.UJobsName});
+            this.dgvResponsible.ColumnTreeView = null;
+            this.dgvResponsible.ContextMenuVisible = ((Dongke.IBOSS.PRD.Basics.BaseControls.C_DataGridView.ContextMenuVisibleFlags)((Dongke.IBOSS.PRD.Basics.BaseControls.C_DataGridView.ContextMenuVisibleFlags.Refine | Dongke.IBOSS.PRD.Basics.BaseControls.C_DataGridView.ContextMenuVisibleFlags.FileOut)));
+            this.dgvResponsible.DynamicColumnName = "";
+            this.dgvResponsible.EnableHeadersVisualStyles = false;
+            this.dgvResponsible.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.dgvResponsible.FormatQuantityColumns = null;
+            this.dgvResponsible.HasNode = false;
+            this.dgvResponsible.HorizontalMergeColumn = null;
+            this.dgvResponsible.IsAutoCountSum = true;
+            this.dgvResponsible.IsAutoResizeColumns = false;
+            this.dgvResponsible.IsClickF12 = false;
+            this.dgvResponsible.IsOpenMergeCellFlag = false;
+            this.dgvResponsible.IsSubTotalFlag = false;
+            this.dgvResponsible.IsTopDeep = false;
+            this.dgvResponsible.Location = new System.Drawing.Point(70, 126);
+            this.dgvResponsible.MergeColumnNames = null;
+            this.dgvResponsible.MergeDetailColumnNames = null;
+            this.dgvResponsible.MergeDetailOnlyColumn = null;
+            this.dgvResponsible.MergeOnlyColumn = null;
+            this.dgvResponsible.Name = "dgvResponsible";
+            this.dgvResponsible.RefreshAtHscroll = false;
+            this.dgvResponsible.RowHeadersWidth = 50;
+            this.dgvResponsible.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            dataGridViewCellStyle3.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(159)))), ((int)(((byte)(39)))), ((int)(((byte)(39)))));
+            this.dgvResponsible.RowsDefaultCellStyle = dataGridViewCellStyle3;
+            this.dgvResponsible.RowTemplate.Height = 21;
+            this.dgvResponsible.Size = new System.Drawing.Size(337, 262);
+            this.dgvResponsible.SortOrderColumnName = null;
+            this.dgvResponsible.TabIndex = 5;
+            this.dgvResponsible.Tag = true;
+            this.dgvResponsible.TotalSumColumns = null;
+            this.dgvResponsible.ViewRowFilter = "";
+            this.dgvResponsible.VirtualNodes = false;
+            // 
+            // txtBarCode
+            // 
+            this.txtBarCode.BackColor = System.Drawing.SystemColors.Window;
+            this.txtBarCode.BackgroundColor = System.Drawing.SystemColors.Window;
+            this.txtBarCode.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
+            this.txtBarCode.ErrorMessage = "";
+            this.txtBarCode.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.txtBarCode.ImeMode = System.Windows.Forms.ImeMode.Off;
+            this.txtBarCode.Location = new System.Drawing.Point(70, 12);
+            this.txtBarCode.MaxLength = 550;
+            this.txtBarCode.Multiline = true;
+            this.txtBarCode.Name = "txtBarCode";
+            this.txtBarCode.ScrollBars = System.Windows.Forms.ScrollBars.Both;
+            this.txtBarCode.Size = new System.Drawing.Size(92, 108);
+            this.txtBarCode.TabIndex = 1;
+            this.txtBarCode.TextValue = "";
+            this.txtBarCode.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.txtBarCode_KeyPress);
+            // 
+            // cmbRreason
+            // 
+            this.cmbRreason.BackColor = System.Drawing.SystemColors.Window;
+            this.cmbRreason.BackgroundColor = System.Drawing.SystemColors.Window;
+            this.cmbRreason.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbRreason.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.cmbRreason.FormattingEnabled = true;
+            this.cmbRreason.Location = new System.Drawing.Point(67, 394);
+            this.cmbRreason.Name = "cmbRreason";
+            this.cmbRreason.Size = new System.Drawing.Size(528, 20);
+            this.cmbRreason.TabIndex = 46;
+            // 
+            // lblAuditStatus
+            // 
+            this.lblAuditStatus.AutoSize = true;
+            this.lblAuditStatus.BackColor = System.Drawing.Color.Transparent;
+            this.lblAuditStatus.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lblAuditStatus.ForeColor = System.Drawing.SystemColors.ControlText;
+            this.lblAuditStatus.Location = new System.Drawing.Point(12, 504);
+            this.lblAuditStatus.Name = "lblAuditStatus";
+            this.lblAuditStatus.Size = new System.Drawing.Size(53, 12);
+            this.lblAuditStatus.TabIndex = 32;
+            this.lblAuditStatus.Text = "审核状态";
+            // 
+            // cmbAuditStatus
+            // 
+            this.cmbAuditStatus.BackColor = System.Drawing.SystemColors.Window;
+            this.cmbAuditStatus.BackgroundColor = System.Drawing.SystemColors.Window;
+            this.cmbAuditStatus.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.cmbAuditStatus.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.cmbAuditStatus.FormattingEnabled = true;
+            this.cmbAuditStatus.Location = new System.Drawing.Point(67, 501);
+            this.cmbAuditStatus.Name = "cmbAuditStatus";
+            this.cmbAuditStatus.Size = new System.Drawing.Size(144, 20);
+            this.cmbAuditStatus.TabIndex = 47;
+            // 
+            // c_Label1
+            // 
+            this.c_Label1.AutoSize = true;
+            this.c_Label1.BackColor = System.Drawing.Color.Transparent;
+            this.c_Label1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.c_Label1.ForeColor = System.Drawing.SystemColors.ControlText;
+            this.c_Label1.Location = new System.Drawing.Point(429, 126);
+            this.c_Label1.Name = "c_Label1";
+            this.c_Label1.Size = new System.Drawing.Size(29, 12);
+            this.c_Label1.TabIndex = 48;
+            this.c_Label1.Text = "详情";
+            // 
+            // detailsView
+            // 
+            this.detailsView.AllowUserToAddRows = false;
+            this.detailsView.AllowUserToDeleteRows = false;
+            this.detailsView.AllowUserToModifyRows = true;
+            dataGridViewCellStyle4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(235)))), ((int)(((byte)(235)))));
+            this.detailsView.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle4;
+            this.detailsView.Anchor = System.Windows.Forms.AnchorStyles.None;
+            this.detailsView.CellBackColorNochanged = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(255)))));
+            this.detailsView.CellBackColorReadOnly = System.Drawing.SystemColors.Control;
+            this.detailsView.CellHeight = 23;
+            this.detailsView.ChildNodeColumnName = null;
+            this.detailsView.ChildNodeColumnText = null;
+            this.detailsView.ColumnDeep = 1;
+            this.detailsView.ColumnHeadersBorderStyle = System.Windows.Forms.DataGridViewHeaderBorderStyle.Single;
+            dataGridViewCellStyle5.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter;
+            dataGridViewCellStyle5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(48)))), ((int)(((byte)(58)))), ((int)(((byte)(70)))));
+            dataGridViewCellStyle5.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            dataGridViewCellStyle5.ForeColor = System.Drawing.Color.White;
+            dataGridViewCellStyle5.SelectionBackColor = System.Drawing.SystemColors.Highlight;
+            dataGridViewCellStyle5.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
+            dataGridViewCellStyle5.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
+            this.detailsView.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle5;
+            this.detailsView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.DisableResizing;
+            this.detailsView.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.dataGridViewTextBoxColumn2,
+            this.dataGridViewTextBoxColumn1});
+            this.detailsView.ColumnTreeView = null;
+            this.detailsView.ContextMenuVisible = ((Dongke.IBOSS.PRD.Basics.BaseControls.C_DataGridView.ContextMenuVisibleFlags)((Dongke.IBOSS.PRD.Basics.BaseControls.C_DataGridView.ContextMenuVisibleFlags.Refine | Dongke.IBOSS.PRD.Basics.BaseControls.C_DataGridView.ContextMenuVisibleFlags.FileOut)));
+            this.detailsView.DynamicColumnName = "";
+            this.detailsView.EnableHeadersVisualStyles = false;
+            this.detailsView.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.detailsView.FormatQuantityColumns = null;
+            this.detailsView.HasNode = false;
+            this.detailsView.HorizontalMergeColumn = null;
+            this.detailsView.IsAutoCountSum = true;
+            this.detailsView.IsAutoResizeColumns = false;
+            this.detailsView.IsClickF12 = false;
+            this.detailsView.IsOpenMergeCellFlag = false;
+            this.detailsView.IsSubTotalFlag = false;
+            this.detailsView.IsTopDeep = false;
+            this.detailsView.Location = new System.Drawing.Point(464, 126);
+            this.detailsView.MergeColumnNames = null;
+            this.detailsView.MergeDetailColumnNames = null;
+            this.detailsView.MergeDetailOnlyColumn = null;
+            this.detailsView.MergeOnlyColumn = null;
+            this.detailsView.Name = "detailsView";
+            this.detailsView.RefreshAtHscroll = false;
+            this.detailsView.RowHeadersWidth = 50;
+            this.detailsView.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
+            dataGridViewCellStyle6.SelectionBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(159)))), ((int)(((byte)(39)))), ((int)(((byte)(39)))));
+            this.detailsView.RowsDefaultCellStyle = dataGridViewCellStyle6;
+            this.detailsView.RowTemplate.Height = 21;
+            this.detailsView.Size = new System.Drawing.Size(367, 262);
+            this.detailsView.SortOrderColumnName = null;
+            this.detailsView.TabIndex = 49;
+            this.detailsView.Tag = true;
+            this.detailsView.TotalSumColumns = null;
+            this.detailsView.ViewRowFilter = "";
+            this.detailsView.VirtualNodes = false;
+            // 
+            // dataGridViewTextBoxColumn2
+            // 
+            this.dataGridViewTextBoxColumn2.DataPropertyName = "ProductCode";
+            this.dataGridViewTextBoxColumn2.HeaderText = "产品条码";
+            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
+            this.dataGridViewTextBoxColumn2.ReadOnly = true;
+            // 
+            // dataGridViewTextBoxColumn1
+            // 
+            this.dataGridViewTextBoxColumn1.DataPropertyName = "notes";
+            this.dataGridViewTextBoxColumn1.HeaderText = "详情";
+            this.dataGridViewTextBoxColumn1.Name = "dataGridViewTextBoxColumn1";
+            // 
+            // c_Label2
+            // 
+            this.c_Label2.AutoSize = true;
+            this.c_Label2.BackColor = System.Drawing.Color.Transparent;
+            this.c_Label2.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.c_Label2.ForeColor = System.Drawing.SystemColors.ControlText;
+            this.c_Label2.Location = new System.Drawing.Point(188, 16);
+            this.c_Label2.Name = "c_Label2";
+            this.c_Label2.Size = new System.Drawing.Size(191, 12);
+            this.c_Label2.TabIndex = 50;
+            this.c_Label2.Text = "注:可输入产品条码最大的数量为50";
+            // 
+            // StaffCode
+            // 
+            this.StaffCode.DataPropertyName = "ProductCode";
+            this.StaffCode.HeaderText = "产品条码";
+            this.StaffCode.Name = "StaffCode";
+            this.StaffCode.ReadOnly = true;
+            // 
+            // UJobsName
+            // 
+            this.UJobsName.DataPropertyName = "notes";
+            this.UJobsName.HeaderText = "备注";
+            this.UJobsName.Name = "UJobsName";
+            // 
+            // F_PM_1107
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.CancelButton = this.btnCancel;
+            this.ClientSize = new System.Drawing.Size(860, 555);
+            this.Controls.Add(this.c_Label2);
+            this.Controls.Add(this.detailsView);
+            this.Controls.Add(this.c_Label1);
+            this.Controls.Add(this.cmbAuditStatus);
+            this.Controls.Add(this.cmbRreason);
+            this.Controls.Add(this.txtBarCode);
+            this.Controls.Add(this.dgvResponsible);
+            this.Controls.Add(this.lblResponsible);
+            this.Controls.Add(this.btnCancel);
+            this.Controls.Add(this.btnSave);
+            this.Controls.Add(this.txtRemarks);
+            this.Controls.Add(this.lblAuditStatus);
+            this.Controls.Add(this.lblRemarks);
+            this.Controls.Add(this.lblRreason);
+            this.Controls.Add(this.lblBarCode);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
+            this.IsSaveFormSize = false;
+            this.MaximizeBox = false;
+            this.MinimizeBox = false;
+            this.Name = "F_PM_1107";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.StatusSizingGrip = false;
+            this.Text = "F_PM_1107";
+            this.Load += new System.EventHandler(this.F_PM_1107_Load);
+            this.Controls.SetChildIndex(this.lblBarCode, 0);
+            this.Controls.SetChildIndex(this.lblRreason, 0);
+            this.Controls.SetChildIndex(this.lblRemarks, 0);
+            this.Controls.SetChildIndex(this.lblAuditStatus, 0);
+            this.Controls.SetChildIndex(this.txtRemarks, 0);
+            this.Controls.SetChildIndex(this.btnSave, 0);
+            this.Controls.SetChildIndex(this.btnCancel, 0);
+            this.Controls.SetChildIndex(this.lblResponsible, 0);
+            this.Controls.SetChildIndex(this.dgvResponsible, 0);
+            this.Controls.SetChildIndex(this.txtBarCode, 0);
+            this.Controls.SetChildIndex(this.cmbRreason, 0);
+            this.Controls.SetChildIndex(this.cmbAuditStatus, 0);
+            this.Controls.SetChildIndex(this.c_Label1, 0);
+            this.Controls.SetChildIndex(this.detailsView, 0);
+            this.Controls.SetChildIndex(this.c_Label2, 0);
+            ((System.ComponentModel.ISupportInitialize)(this.dgvResponsible)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.detailsView)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private Basics.BaseControls.C_Label lblBarCode;
+        private Basics.BaseControls.C_Label lblRreason;
+        private Basics.BaseControls.C_Label lblRemarks;
+        private Basics.BaseControls.C_TextBox txtRemarks;
+        private Basics.BaseControls.C_Button btnSave;
+        private Basics.BaseControls.C_Button btnCancel;
+        private Basics.BaseControls.C_Label lblResponsible;
+        private Basics.BaseControls.C_DataGridView dgvResponsible;
+        private Basics.BaseControls.C_TXT_BarCode txtBarCode;
+        private Basics.BaseControls.C_ComboBox cmbRreason;
+        private Basics.BaseControls.C_Label lblAuditStatus;
+        private Basics.BaseControls.C_ComboBox cmbAuditStatus;
+        private Basics.BaseControls.C_Label c_Label1;
+        private Basics.BaseControls.C_DataGridView detailsView;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn1;
+        private Basics.BaseControls.C_Label c_Label2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn StaffCode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn UJobsName;
+    }
+}

+ 903 - 0
DK.Client/PMModule/F_PM_1107.cs

@@ -0,0 +1,903 @@
+/*******************************************************************************
+ * 类的信息:
+ *       1.程序名称:F_PM_1107.cs
+ *       2.功能描述:批量报废信息窗体
+ * 编辑履历:
+ *      作者            日期               
+ *      李士越          2024/05/29         
+ *******************************************************************************/
+
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Windows.Forms;
+
+using Dongke.IBOSS.PRD.Basics.BaseResources;
+using Dongke.IBOSS.PRD.WCF.Proxys;
+using Dongke.IBOSS.PRD.WCF.Proxys.PMModuleService;
+using Dongke.IBOSS.PRD.Client.CommonModule;
+using Dongke.IBOSS.PRD.Basics.BaseControls;
+using Dongke.IBOSS.PRD.Basics.Library;
+using Dongke.IBOSS.PRD.WCF.DataModels;
+using Dongke.IBOSS.PRD.Client.Controls;
+
+namespace Dongke.IBOSS.PRD.Client.PMModule
+{
+	/// <summary>
+	/// 批量报废信息窗体
+	/// </summary>
+	public partial class F_PM_1107 : DKFormBase
+	{
+		#region 成员变量
+
+		//窗体模式ID
+		private Constant.FormMode _formType;
+		//修改产品报损信息ID
+		private string _barCode;
+		//页面报损工序的数据源
+		private List<ProductionDataEntity> _productionDataList = new List<ProductionDataEntity>();
+		//该产品在产信息实体
+		private InProductionEntity _isScrapProductEntity;
+		//用户选择报损工序实体
+		private ProductionDataEntity _scrapProductResponProcedure;
+		//当前责任人集合
+		private List<ScrapResponsibleEntity> _scrapResponsibleList = new List<ScrapResponsibleEntity>();
+		//修改用废弃产品实体
+		private ScrapProductEntity _updateEntity;
+		//修改用废弃责任工序实体
+		private ResponProcedureEntity _updateProcedureEntity;
+		//修改用责任人集合
+		private List<ScrapResponsibleEntity> _updateScrapResponsibleList;
+		//有效条码标示
+		private bool _yxBarCode = false;
+		//产品分级类别ID
+		private int _goodsLevelTypeID = Convert.ToInt32(Constant.GoodsLevelType.Damage);
+		//产品分级ID
+		private int _goodsLevelId;
+		//报损信息ID
+		private int _editSPId;
+		//是否允许审批
+		private bool _isScrap = false;
+		//未干补
+		int SpecialRepairFlag = 0;
+		//完成工序
+		int? _CompleteProcdureID = null;
+		//完成工序编码
+		string _CompleteProcdureCode = "";
+		//完成工序名称
+		string _CompleteProcdureName = "";
+		// 商标ID
+		int? _LogoID = null;
+		//可以报损的产品条码集合
+		List<string> ReportingLosses = new List<string>();
+		#endregion
+
+		#region 构造函数
+
+		/// <summary>
+		/// 窗体构造
+		/// </summary>
+		public F_PM_1107(Constant.FormMode formType, string BarCode, int EditSPId, bool isScrap)
+		{
+			InitializeComponent();
+			this._formType = formType;
+			this._barCode = BarCode;
+			this._editSPId = EditSPId;
+			this._isScrap = isScrap;
+			//if (formType == Constant.FormMode.Add)
+			//{
+			  	this.Text = "批量报损";
+			//}
+			//else
+			//{
+			//	this.Text = FormTitles.F_PM_1107_EDIT;
+			//}
+			//this.btnViewApprover.Text = ButtonText.BTN_VIEWAPPROVER;
+			this.btnSave.Text = ButtonText.BTN_SAVE;
+			this.btnCancel.Text = ButtonText.BTN_CLOSE;
+		}
+
+		#endregion
+
+		#region 事件
+
+		/// <summary>
+		/// 窗体加载
+		/// </summary>
+		/// <param name="sender"></param>
+		/// <param name="e"></param>
+		private void F_PM_1107_Load(object sender, EventArgs e)
+		{
+			try
+			{
+				//获取当前产品分级ID
+				this._goodsLevelId = Convert.ToInt32(SystemModuleProxy.Service.GetGoodsLevelDataById(_goodsLevelTypeID, null)
+						.Tables[0].Rows[0]["GoodsLevelID"]);
+				DataTable dt = new DataTable();
+				dt.Columns.Add("DictionaryID", typeof(int));
+				dt.Columns.Add("DictionaryValue", typeof(string));
+				DataRow drbydt = dt.NewRow();
+				drbydt["DictionaryID"] = 119;
+				drbydt["DictionaryValue"] = "盘点报损";
+				dt.Rows.Add(drbydt);
+				this.cmbRreason.DisplayMember = "DictionaryValue";
+				this.cmbRreason.ValueMember = "DictionaryID";
+				this.cmbRreason.DataSource = dt;
+				//绑定损坯状态
+				DataTable dtAuditStatus = new DataTable();
+				dtAuditStatus.Columns.Add("AuditStatusID");
+				dtAuditStatus.Columns.Add("AuditStatusValue");
+				DataRow dr = dtAuditStatus.NewRow();
+				dr = dtAuditStatus.NewRow();
+				dr["AuditStatusID"] = 1;
+				dr["AuditStatusValue"] = "损坯通过";
+				dtAuditStatus.Rows.Add(dr);
+				this.cmbAuditStatus.DisplayMember = "AuditStatusValue";
+				this.cmbAuditStatus.ValueMember = "AuditStatusID";
+				this.cmbAuditStatus.DataSource = dtAuditStatus;
+				if (this._formType == Constant.FormMode.Edit)
+				{
+					BindEntity();
+				}
+			}
+			catch (Exception ex)
+			{
+				// 对异常进行共通处理
+				ExceptionManager.HandleEventException(this.ToString(),
+					System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
+			}
+		}
+
+		/// <summary>
+		/// 提交操作
+		/// </summary>
+		/// <param name="sender"></param>
+		/// <param name="e"></param>
+		private void btnSave_Click(object sender, EventArgs e)
+		{
+			try
+			{
+				if (this.txtBarCode.Text == string.Empty)
+				{
+					this.txtBarCode.Focus();
+					return;
+				}
+				
+				
+				this.txtRemarks.Focus();//把光标移开,由于删除工号后,值未变
+				DataTable dt = new DataTable();
+				//备注
+				dt.Columns.Add("notes");
+				//产品编码
+				dt.Columns.Add("ProductCode");
+				foreach (var item in ReportingLosses) {
+					DataRow dr = dt.NewRow();
+					dr["notes"] = save(item);
+					dr["ProductCode"] = item;
+					dt.Rows.Add(dr);
+				}
+				this.detailsView.DataSource = dt; 
+			}
+			catch (Exception ex)
+			{
+				// 对异常进行共通处理
+				ExceptionManager.HandleEventException(this.ToString(),
+					System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
+			}
+		}
+		/// <summary>
+		/// 保存方法
+		/// </summary>
+		/// <param name="barcode"></param>
+		/// <returns></returns>
+		public string save(string barcode) {
+			string result = "";
+			try
+			{
+				if (this.txtBarCode.Text == string.Empty)
+				{
+					this.txtBarCode.Focus();
+					return "";
+				}
+
+				ServiceResultEntity sreByid = DoAsync<ServiceResultEntity>(() =>
+				{
+					ClientRequestEntity cre = new ClientRequestEntity();
+					cre.NameSpace = "F_PM_1107";
+					cre.Name = "ReadAllDataByProductCode";
+					cre.Properties["BARCODE"] = barcode;
+					return SystemModuleProxy.Service.DoRequest(cre);
+				});
+				if (sreByid.Data.Tables[0].Rows[0]["USERID"].ToString()==string.Empty || sreByid.Data.Tables[0].Rows[0]["USERID"].ToString()=="" || sreByid.Data.Tables[0].Rows[0]["USERID"].ToString()==null) {
+					return "信息不全,此产品不做任何处理";
+				}
+				ServiceResultEntity sreByuserid = DoAsync<ServiceResultEntity>(() =>
+				{
+					ClientRequestEntity cre = new ClientRequestEntity();
+					cre.NameSpace = "F_PM_1107";
+					cre.Name = "ReadStaffInformation";
+					cre.Properties["USERID"] = sreByid.Data.Tables[0].Rows[0]["USERID"].ToString();
+					return SystemModuleProxy.Service.DoRequest(cre);
+				});
+				this.txtRemarks.Focus();//把光标移开,由于删除工号后,值未变
+				if (this._formType == Constant.FormMode.Add)
+				{
+					//获取责任人集合
+					List<ScrapResponsibleEntity> addResponsibleList = new List<ScrapResponsibleEntity>() 
+					{
+                        new ScrapResponsibleEntity() {
+						 BarCode = sreByid.Data.Tables[0].Rows[0]["BarCode"].ToString(),
+						 StaffID = Convert.ToInt32(sreByuserid.Data.Tables[0].Rows[0]["STAFFID"].ToString()),
+						 StaffStatus = Convert.ToInt32(sreByuserid.Data.Tables[0].Rows[0]["Staffstatus"].ToString()),
+						 UserID = Convert.ToInt32(sreByuserid.Data.Tables[0].Rows[0]["USERID"].ToString()),
+						 UserCode = sreByuserid.Data.Tables[0].Rows[0]["Staffcode"].ToString() + "",
+						 UJobsID = Convert.ToInt32(sreByuserid.Data.Tables[0].Rows[0]["UJobsId"].ToString()),
+						 SJobsID = Convert.ToInt32(sreByuserid.Data.Tables[0].Rows[0]["JOBS"].ToString()),
+						} 
+				    }; 
+					//如果选择了责任工序就一定要选择责任人
+					//if (cbResponProcedure.Text != string.Empty && addResponsibleList.Count == Constant.INT_IS_ZERO)
+					if (addResponsibleList.Count == Constant.INT_IS_ZERO)
+					{
+						//MessageBox.Show("请选择责任人!",
+						//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+						return "请选择责任人!";
+					}
+					//首先判断责任类型
+					int thisResponType = 0;
+					if (sreByid.Data.Tables[0].Rows.Count == 0 && addResponsibleList.Count == Constant.INT_IS_ZERO)
+					{
+						thisResponType = 1;
+					}
+					else if (sreByid.Data.Tables[0].Rows.Count > 0 && addResponsibleList.Count != Constant.INT_IS_ZERO)
+					{
+						thisResponType = 3;
+					}
+					else if (sreByid.Data.Tables[0].Rows.Count == 0 && addResponsibleList.Count != Constant.INT_IS_ZERO)
+					{
+						thisResponType = 2;
+					}
+					if (thisResponType == Constant.INT_IS_ZERO)
+					{
+						//MessageBox.Show("责任类别不正确!",
+						//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+						return "责任类别不正确!";
+					}
+					//新建报损产品实体
+					ScrapProductEntity addScrapProduct = new ScrapProductEntity();
+					addScrapProduct.BarCode = sreByid.Data.Tables[0].Rows[0]["BarCode"].ToString();
+					addScrapProduct.ProductionLineID = int.Parse(sreByid.Data.Tables[0].Rows[0]["PRODUCTIONLINEID"].ToString());
+					addScrapProduct.ProductionLineCode = sreByid.Data.Tables[0].Rows[0]["PRODUCTIONLINECODE"].ToString();
+					addScrapProduct.ProductionLineName = sreByid.Data.Tables[0].Rows[0]["PRODUCTIONLINENAME"].ToString();
+					addScrapProduct.GoodsID = int.Parse(sreByid.Data.Tables[0].Rows[0]["GOODSID"].ToString());
+					addScrapProduct.GoodsCode = sreByid.Data.Tables[0].Rows[0]["GOODSCODE"].ToString();
+					addScrapProduct.GoodsName = sreByid.Data.Tables[0].Rows[0]["GOODSNAME"].ToString();
+					addScrapProduct.GroutingDailyID = int.Parse(sreByid.Data.Tables[0].Rows[0]["GROUTINGDAILYID"].ToString());
+					addScrapProduct.GroutingDailyDetailID = int.Parse(sreByid.Data.Tables[0].Rows[0]["GROUTINGDAILYDETAILID"].ToString());
+					addScrapProduct.GroutingDate = Convert.ToDateTime(sreByid.Data.Tables[0].Rows[0]["GROUTINGDATE"].ToString());
+					addScrapProduct.GroutingLineID = int.Parse(sreByid.Data.Tables[0].Rows[0]["GROUTINGLINEID"].ToString());
+					addScrapProduct.GroutingLineCode = sreByid.Data.Tables[0].Rows[0]["GROUTINGLINECODE"].ToString();
+					addScrapProduct.GroutingLineName = sreByid.Data.Tables[0].Rows[0]["GROUTINGLINENAME"].ToString();
+					addScrapProduct.GMouldTypeID = int.Parse(sreByid.Data.Tables[0].Rows[0]["GMOULDTYPEID"].ToString());
+					addScrapProduct.GroutingLineDetailID = int.Parse(sreByid.Data.Tables[0].Rows[0]["GROUTINGLINEDETAILID"].ToString());
+					addScrapProduct.GroutingMouldCode = sreByid.Data.Tables[0].Rows[0]["GROUTINGMOULDCODE"].ToString();
+					addScrapProduct.MouldCode = sreByid.Data.Tables[0].Rows[0]["MOULDCODE"].ToString();
+					addScrapProduct.GoodsLevelTypeID = _goodsLevelTypeID;
+					addScrapProduct.GoodsLevelID = _goodsLevelId;
+					addScrapProduct.ScrapDate = DateTime.Now;
+					addScrapProduct.Rreason = "盘点报损";
+					addScrapProduct.ResponUserID = Convert.ToInt32(sreByuserid.Data.Tables[0].Rows[0]["USERID"].ToString());
+					addScrapProduct.ResponUserCode = sreByuserid.Data.Tables[0].Rows[0]["Staffcode"].ToString() + "";
+					addScrapProduct.ResponUserName = sreByuserid.Data.Tables[0].Rows[0]["Staffname"].ToString();
+					addScrapProduct.Remarks = this.txtRemarks.Text;
+					addScrapProduct.AuditStatus = 0;
+					addScrapProduct.SettlementFlag = 0;
+					addScrapProduct.ResponType = thisResponType;
+					addScrapProduct.GroutingUserID = Convert.ToInt32(sreByid.Data.Tables[0].Rows[0]["GROUTINGUSERID"].ToString());
+					addScrapProduct.GroutingUserCode = sreByid.Data.Tables[0].Rows[0]["GROUTINGUSERCODE"].ToString();
+					addScrapProduct.GroutingNum = decimal.Parse(sreByid.Data.Tables[0].Rows[0]["GROUTINGNUM"].ToString());
+					addScrapProduct.IsPublicBody = Convert.ToInt32(sreByid.Data.Tables[0].Rows[0]["ISPUBLICBODY"].ToString());
+					addScrapProduct.IsReFire = Convert.ToInt32(sreByid.Data.Tables[0].Rows[0]["ISREFIRE"].ToString());
+					addScrapProduct.AuditStatus = Convert.ToInt32(cmbAuditStatus.SelectedValue);
+					addScrapProduct.SpecialRepairflag = int.Parse(sreByid.Data.Tables[0].Rows[0]["SPECIALREPAIRFLAG"].ToString());
+					addScrapProduct.LogoID = int.Parse(sreByid.Data.Tables[0].Rows[0]["LogoID"].ToString());
+					if (sreByid.Data.Tables[0].Rows[0]["PROCEDUREID"].ToString() != null)
+					{
+						addScrapProduct.ProcedureID = int.Parse(sreByid.Data.Tables[0].Rows[0]["PROCEDUREID"].ToString());
+						//addScrapProduct.ProcedureName = this.txtCompleteProcdure.Text;
+						addScrapProduct.ProcedureName = sreByid.Data.Tables[0].Rows[0]["ProcedureName"].ToString();
+						addScrapProduct.ProcedureCode = sreByid.Data.Tables[0].Rows[0]["ProcedureCode"].ToString();
+					}
+					ResponProcedureEntity addRProcedure = new ResponProcedureEntity();
+					//如果存在责任工序的话,也要添加责任工序
+					if (thisResponType == Constant.INT_IS_THREE)
+					{
+
+						addRProcedure.BarCode = sreByid.Data.Tables[0].Rows[0]["BarCode"].ToString();
+						addRProcedure.ProductionDataID = int.Parse(sreByid.Data.Tables[0].Rows[0]["PRODUCTIONDATAID"].ToString());
+						addRProcedure.ProductionLineID = int.Parse(sreByid.Data.Tables[0].Rows[0]["PRODUCTIONLINEID"].ToString());
+						addRProcedure.ProductionLineCode = sreByid.Data.Tables[0].Rows[0]["PRODUCTIONLINECODE"].ToString();
+						addRProcedure.ProductionLineName = sreByid.Data.Tables[0].Rows[0]["PRODUCTIONLINENAME"].ToString();
+						addRProcedure.ProcedureID = int.Parse(sreByid.Data.Tables[0].Rows[0]["PROCEDUREID"].ToString());
+						addRProcedure.ProcedureCode = sreByid.Data.Tables[0].Rows[0]["ProcedureCode"].ToString();
+						addRProcedure.ProcedureName = sreByid.Data.Tables[0].Rows[0]["ProcedureName"].ToString();
+						addRProcedure.UserID = Convert.ToInt32(sreByuserid.Data.Tables[0].Rows[0]["USERID"].ToString());
+						addRProcedure.UserCode = sreByuserid.Data.Tables[0].Rows[0]["Staffcode"].ToString() + "";
+						addRProcedure.UserName = sreByuserid.Data.Tables[0].Rows[0]["Staffname"].ToString();
+						addRProcedure.Remarks = "";
+					}
+					int addReturn = (int)DoAsync(new BaseAsyncMethod(() =>
+					{
+						return PMModuleProxy.Service.AddScrapProduct(addScrapProduct, addRProcedure, addResponsibleList);
+					}));
+					if (addReturn > Constant.INT_IS_ZERO)
+					{
+						//成功
+						//MessageBox.Show(string.Format(Messages.MSG_CMN_I001, "废弃产品", "保存"),
+						//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
+						//this.DialogResult = DialogResult.OK;
+						return string.Format(Messages.MSG_CMN_I001, "废弃产品", "保存");
+					}
+					else if (addReturn == Constant.RETURN_IS_DATACHANGED)
+					{
+						//成功
+						//MessageBox.Show(string.Format(Messages.MSG_CMN_W007, "操作的数据已经发生了变化"),
+						//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
+						//this.DialogResult = DialogResult.OK;
+						return string.Format(Messages.MSG_CMN_W007, "操作的数据已经发生了变化");
+					}
+					else
+					{
+						//失败
+						//MessageBox.Show(string.Format(Messages.MSG_CMN_W001, "废弃产品", "保存"),
+						//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
+						return string.Format(Messages.MSG_CMN_W001, "废弃产品", "保存");
+					}
+				}
+			}
+			catch (Exception ex)
+			{
+				// 对异常进行共通处理
+				ExceptionManager.HandleEventException(this.ToString(),
+					System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
+			}
+			return result;
+		} 
+		/// <summary>
+		/// 窗体关闭
+		/// </summary>
+		/// <param name="sender"></param>
+		/// <param name="e"></param>
+		private void btnCancel_Click(object sender, EventArgs e)
+		{
+			this.Close();
+		}
+
+		 
+		 /// <summary>
+		 /// 按下回车后调用产品条码检验
+		 /// </summary>
+		 /// <param name="sender"></param>
+		 /// <param name="e"></param>
+		private void txtBarCode_KeyPress(object sender, KeyPressEventArgs e)
+		{
+			try
+			{
+				//清除所有产品条码
+				ReportingLosses.Clear();
+				if ((int)e.KeyChar == 13 && (this.txtBarCode.Text != "" && this.txtBarCode.Text != string.Empty && this.txtBarCode.Text != null)) // 按了回车键
+				{
+					var dt = new DataTable();
+					//备注
+					dt.Columns.Add("notes"); 
+					//产品编码
+					dt.Columns.Add("ProductCode"); 
+					var sss = SplitLong11(this.txtBarCode.Text);
+					foreach (var item in sss)
+					{
+						var pubg = ReadAllDataByProductCode(item);
+						DataRow dr = dt.NewRow();
+						dr["notes"] = pubg ;
+						dr["ProductCode"] = item; 
+						dt.Rows.Add(dr);
+						if (pubg =="没有问题") { ReportingLosses.Add(item); }
+						
+					}
+					this.dgvResponsible.DataSource = dt; 
+				}
+			}
+			catch (Exception ex)
+			{
+				// 对异常进行共通处理
+				ExceptionManager.HandleEventException(this.ToString(),
+					System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
+			}
+		}
+		/// <summary>
+		/// 字符串按11位分割
+		/// </summary>
+		/// <param name="item"></param>
+		/// <returns></returns>
+		public List<string> SplitLong11(string item) {
+			List<string> result = new List<string>();
+			// 检查字符串长度是否大于或等于分组大小  
+			if (item.Length >= 11)
+			{
+				for (int i = 0; i < item.Length; i += 11)
+				{
+					// 截取当前分组,注意不要超出字符串长度  
+					int length = Math.Min(11, this.txtBarCode.Text.Length - i);
+					string chunk = this.txtBarCode.Text.Substring(i, length);
+					result.Add(chunk);
+				}
+			}
+			return result;
+		}
+		#endregion
+		/// <summary>
+		/// 产品条码检验
+		/// </summary>
+		/// <param name="item"></param>
+		/// <returns></returns>
+		private string ReadAllDataByProductCode(string item)
+		{	 
+			string notes = "没有问题";
+			try
+			{ 
+				string doRuselt = (string)DoAsync(new BaseAsyncMethod(() =>
+				{
+					return PMModuleProxy.Service.ScrapProductChack(item);
+				}));
+
+				string[] doRuselts = doRuselt.Split(':');
+				int isHave = Convert.ToInt32(doRuselts[0]);
+				if (isHave == 2)
+				{
+					return notes = "不是在产产品不能报损!";
+					//MessageBox.Show("产品编码为" + item + " 不是在产产品不能报损!",
+					//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+					//this.txtBarCode.Text = "";
+					//this.txtBarCode.Focus();
+					//Product = false; 
+				}
+				if (isHave == 3)
+				{
+					return notes = "当前工号没有此产品所在工序"+ doRuselts[1] + "的操作权限,不能报损!";
+					//MessageBox.Show(string.Format("产品编码为" + item + " 当前工号没有此产品所在工序【{0}】的操作权限,不能报损!", doRuselts[1]),
+					//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+					//this.txtBarCode.Text = "";
+					//this.txtBarCode.Focus();
+					//Product = false; 
+				}
+				if (isHave == 4)
+				{
+					return notes = doRuselts[1];
+					//   MessageBox.Show(doRuselts[1],
+					//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+					//this.txtBarCode.Text = "";
+					//this.txtBarCode.Focus();
+					//Product = false; 
+				}
+				if (isHave == Constant.INT_IS_ZERO)
+				{
+					return notes = "已经存在报损记录!";
+					//   MessageBox.Show("产品编码为" + item + " 已经存在报损记录!",
+					//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+					//this.txtBarCode.Text = "";
+					//this.txtBarCode.Focus();
+					//Product = false; 
+				}
+				DataSet dsReturn = (DataSet)DoAsync(new BaseAsyncMethod(() =>
+				{
+					return PMModuleProxy.Service.GetInProductionAndProductionData(item);
+				}));
+				if (dsReturn != null)
+				{
+					if (dsReturn.Tables.Count == Constant.INT_IS_TWO)
+					{
+
+						if (dsReturn.Tables[0].Rows.Count == Constant.INT_IS_ZERO)  //在产表中没有数据
+						{
+							//目前不在生产线上也只报损 2015/07/14 modify wangx
+
+							DataSet dsDailyDetail = (DataSet)DoAsync(new BaseAsyncMethod(() =>
+							{
+								return PMModuleProxy.Service.GetBarCodeInGroutingDailyDetail(item);
+							}));
+							if (dsDailyDetail != null && dsDailyDetail.Tables[0].Rows.Count == 0)
+							{
+								return notes = "条码无效,无法报损!";
+								//MessageBox.Show("产品编码为" + item + " 条码无效,无法报损!",
+								//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+								//this.txtBarCode.Text = "";
+								//this.txtBarCode.Focus();
+								//Product = false; 
+							}
+							return notes = "不是在产产品不能报损!";
+							// 2015/07/14 modify wangx end
+							////产品不在生产线上
+							//MessageBox.Show("产品编码为" + item + " 不是在产产品不能报损!",
+							//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+							//this.txtBarCode.Text = "";
+							//this.txtBarCode.Focus();
+							//////判断条码是否有效
+							//Product = false; 
+						}
+						//获取产品情况以及经过工序情况
+						DataTable dtInProduction = dsReturn.Tables[0];
+						//2015-05-26 begin modify by wangx
+						if (dtInProduction != null && dtInProduction.Rows.Count > 0)
+						{
+							if (dtInProduction.Rows[0]["endmode"].ToString() == "2")//代表已经产成品
+							{
+								return notes = "已经生产完成,无法报损!";
+								//MessageBox.Show("产品编码为" + item + " 已经生产完成,无法报损!",
+								//   this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+								//this.txtBarCode.Text = "";
+								//this.txtBarCode.Focus();
+								//Product = false; 
+							}
+							if (dtInProduction.Rows[0]["IsReworkFlag"].ToString() == "1")//代表已经返工
+							{
+								return notes = "已经是返工状态,无法报损!";
+								//MessageBox.Show("产品编码为" + item + " 已经是返工状态,无法报损!",
+								//   this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+								//this.txtBarCode.Text = "";
+								//this.txtBarCode.Focus();
+								//Product = false; 
+							}
+						}
+						//2015-05-26 end
+
+						//获取节点类型
+						//如果存在该类型的字段的话,判断一下
+						// string a = dtInProduction.Columns[dtInProduction.Columns.Count - 1].ColumnName;
+						foreach (DataColumn dcFor in dtInProduction.Columns)
+						{
+							if (dcFor.ColumnName.ToLower() == "proceduremodeltypeid")
+							{
+								int modelType = Convert.ToInt32(dtInProduction.Rows[0]["ProcedureModelTypeID"]);
+								// 装车,入窑,出窑,窑车补件不能报损
+								if (modelType == Constant.INT_IS_ONE || modelType == Constant.INT_IS_TWO || modelType == Constant.INT_IS_THREE || modelType == Constant.INT_IS_SIX)
+								{
+									return notes = "处于无法报损的特殊工序中!";
+									//某些特殊工序不可报损
+									//MessageBox.Show("产品编码为" + item + " 处于无法报损的特殊工序中!",
+									//	this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+									//this.txtBarCode.Text = "";
+									//this.txtBarCode.Focus();
+									//Product = false; 
+								}
+							}
+						} 
+						List<InProductionEntity> inProductionList = DataConvert.TableConvertToObject<InProductionEntity>(dtInProduction);
+						if (inProductionList.Count != Constant.INT_IS_ZERO)
+						{
+							this._isScrapProductEntity = inProductionList[0];
+						}
+						else
+						{
+							if (this._updateEntity == null)
+							{
+								return null;
+							}
+							if (this._updateEntity.GoodsLevelTypeID != this._goodsLevelTypeID)
+							{
+								return null;
+							}
+							//失败,条码不存在数据或无法转换
+							MessageBox.Show(Messages.MSG_PM_W007,
+								this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+							return null;
+						}
+					 
+					}
+					else
+					{
+						if (this._updateEntity == null)
+						{
+							return null;
+						}
+						if (this._updateEntity.GoodsLevelTypeID != this._goodsLevelTypeID)
+						{
+							return null;
+						}
+
+						//失败
+						MessageBox.Show(Messages.MSG_PM_W007,
+							this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1);
+					}
+					
+				}
+
+			}
+			catch (Exception ex)
+			{
+				// 对异常进行共通处理
+				ExceptionManager.HandleEventException(this.ToString(),
+					System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
+			}
+			return notes;
+		}
+
+		 
+
+		#region 私有方法
+
+		/// <summary>
+		/// 加载数据
+		/// </summary>
+		private void BindEntity()
+		{
+			try
+			{
+				//条码控件不可用
+				this.txtBarCode.Enabled = false;
+
+				this._updateEntity = new ScrapProductEntity();
+				this._updateEntity.BarCode = _barCode;
+				this._updateEntity.ScrapProductID = _editSPId;
+				//绑定生产工序集合
+				DataSet dsReturn = (DataSet)DoAsync(new BaseAsyncMethod(() =>
+				{
+					return PMModuleProxy.Service.GetInProductionAndProductionData(_barCode);
+				}));
+				if (dsReturn != null)
+				{
+					if (dsReturn.Tables.Count == Constant.INT_IS_TWO)
+					{
+						//获取产品情况以及经过工序情况
+						DataTable dtInProduction = dsReturn.Tables[0];
+						DataTable dtProductionData = dsReturn.Tables[1];
+						//foreach (DataRow drFor in dtInProduction.Rows)
+						//{
+						//	this.txtProductionLineName.Text = drFor["ProductionLineName"].ToString();
+						//	this.txtGoodsCode.Text = drFor["GoodsCode"].ToString();
+						//	this.txtGroutingLine.Text = drFor["GroutingLineCode"].ToString();
+						//	this.txtMouldCode.Text = drFor["GroutingMouldCode"].ToString();
+						//	this.txtGroutingUser.Text = drFor["GroutingUserCode"].ToString();
+						//}
+						//this.cbResponProcedure.DataSource = dtProductionData;
+						//this.cbResponProcedure.DisplayMember = "ProcedureName";
+						//this.cbResponProcedure.ValueMember = "ProcedureID";
+						this._productionDataList = DataTableToListByProductionData(dtProductionData);
+						if (this._productionDataList.Count != Constant.INT_IS_ZERO)
+						{
+							this._scrapProductResponProcedure = this._productionDataList[0];
+						}
+						 
+					}
+				}
+				//获取报废产品实体
+				DataSet dsScrap = (DataSet)DoAsync(new BaseAsyncMethod(() =>
+				{
+					return PMModuleProxy.Service.GetScrapProduct(this._updateEntity);
+				}));
+				if (dsScrap != null)
+				{
+					if (dsScrap.Tables.Count != Constant.INT_IS_ZERO)
+					{
+						DataRow drScrap = dsScrap.Tables[0].Rows[0];
+						this._updateEntity.BarCode = drScrap["BarCode"].ToString();
+						if (drScrap["ProductionLineID"].ToString() != "")
+						{
+							this._updateEntity.ProductionLineID = Convert.ToInt32(drScrap["ProductionLineID"]);
+							this._updateEntity.ProductionLineCode = drScrap["ProductionLineCode"].ToString();
+							this._updateEntity.ProductionLineName = drScrap["ProductionLineName"].ToString();
+							//this.txtGoodsCode.Text = drScrap["GoodsCode"].ToString();
+							//this.txtGroutingLine.Text = drScrap["GroutingLineCode"].ToString();
+							//this.txtMouldCode.Text = drScrap["GroutingMouldCode"].ToString();
+							//this.txtGroutingUser.Text = drScrap["GroutingUserCode"].ToString();
+							this._CompleteProcdureID = Convert.ToInt32(drScrap["ProcedureID"]);
+							this._CompleteProcdureCode = drScrap["ProcedureCode"].ToString();
+							//this.txtCompleteProcdure.Text = drScrap["ProcedureName"].ToString();
+						}
+						//else  //等于空时,取模具信息
+						//{
+						//	this.txtGoodsCode.Text = drScrap["GoodsCode"].ToString();
+						//	this.txtGroutingLine.Text = drScrap["GroutingLineCode"].ToString();
+						//	this.txtMouldCode.Text = drScrap["GroutingMouldCode"].ToString();
+						//	this.txtGroutingUser.Text = drScrap["GroutingUserCode"].ToString();
+						//}
+						if (drScrap["logoid"].ToString() != "")
+						{
+							this._LogoID = Convert.ToInt32(drScrap["logoid"]);
+						}
+						this._updateEntity.GoodsID = Convert.ToInt32(drScrap["GoodsID"]);
+						this._updateEntity.GoodsCode = drScrap["GoodsCode"].ToString();
+						this._updateEntity.GoodsName = drScrap["GoodsName"].ToString();
+						this._updateEntity.GroutingDailyID = Convert.ToInt32(drScrap["GroutingDailyID"]);
+						this._updateEntity.GroutingDailyDetailID = Convert.ToInt32(drScrap["GroutingDailyDetailID"]);
+						this._updateEntity.GroutingDate = Convert.ToDateTime(drScrap["GroutingDate"]);
+						this._updateEntity.GroutingLineID = Convert.ToInt32(drScrap["GroutingLineID"]);
+						this._updateEntity.GroutingLineCode = drScrap["GroutingLineCode"].ToString();
+						this._updateEntity.GroutingLineName = drScrap["GroutingLineName"].ToString();
+						this._updateEntity.GMouldTypeID = Convert.ToInt32(drScrap["GMouldTypeID"]);
+						this._updateEntity.GroutingLineDetailID = Convert.ToInt32(drScrap["GroutingLineDetailID"]);
+						this._updateEntity.GroutingMouldCode = drScrap["GroutingMouldCode"].ToString();
+						this._updateEntity.MouldCode = drScrap["MouldCode"].ToString();
+						this._updateEntity.GoodsLevelTypeID = Convert.ToInt32(drScrap["GoodsLevelTypeID"]);
+						this._updateEntity.GoodsLevelID = Convert.ToInt32(drScrap["GoodsLevelID"]);
+						this._updateEntity.ScrapDate = Convert.ToDateTime(drScrap["ScrapDate"]);
+						this._updateEntity.Rreason = drScrap["Rreason"].ToString();
+						this._updateEntity.Remarks = drScrap["Remarks"].ToString();
+						this._updateEntity.AuditStatus = Convert.ToInt32(drScrap["AuditStatus"]);
+						this._updateEntity.ResponType = Convert.ToInt32(drScrap["ResponType"]);
+						this._updateEntity.SpecialRepairflag = Convert.ToInt32(drScrap["SpecialRepairflag"]);
+						this.SpecialRepairFlag = Convert.ToInt32(drScrap["SpecialRepairflag"]);
+						if (drScrap["Auditor"] != DBNull.Value)
+						{
+							this._updateEntity.Auditor = Convert.ToInt32(drScrap["Auditor"]);
+						}
+						if (drScrap["AuditDate"] != DBNull.Value)
+						{
+							this._updateEntity.AuditlDate = Convert.ToDateTime(drScrap["AuditDate"]);
+						}
+						this._updateEntity.SettlementFlag = Convert.ToInt32(drScrap["SettlementFlag"]);
+						if (drScrap["ResponProcedureID"] != DBNull.Value) //ProcedureID--改到ResponProcedureID
+						{
+							this._updateEntity.ResponProcedureID = Convert.ToInt32(drScrap["ResponProcedureID"]);
+						}
+						if (drScrap["UserID"] != DBNull.Value)
+						{
+							this._updateEntity.ResponUserID = Convert.ToInt32(drScrap["UserID"]);
+						}
+						if (drScrap["UserCode"] != DBNull.Value)
+						{
+							this._updateEntity.ResponUserCode = drScrap["UserCode"].ToString();
+						}
+						if (drScrap["UserName"] != DBNull.Value)
+						{
+							this._updateEntity.ResponUserName = drScrap["UserName"].ToString();
+						}
+						if (drScrap["ScrapFine"] != DBNull.Value)
+						{
+							this._updateEntity.ScrapFine = Convert.ToDecimal(drScrap["ScrapFine"]);
+						}
+						this.cmbAuditStatus.SelectedValue = this._updateEntity.AuditStatus;
+						if (this._updateEntity.GoodsLevelTypeID != this._goodsLevelTypeID ||
+							(this._updateEntity.AuditStatus == Constant.INT_IS_ONE || this._updateEntity.AuditStatus == Constant.INT_IS_TWO))  //除关闭窗体外所有功能不可用
+						{
+							this.txtBarCode.Enabled = false;
+							//this.txtGoodsCode.Enabled = false;
+							//this.txtProductionLineName.Enabled = false;
+							//this.cbResponProcedure.Enabled = false;
+							// 报损日期不能修改
+							//this.txtScrapDate.Enabled = false;
+							this.cmbRreason.Enabled = false;
+							this.txtRemarks.Enabled = false;
+							//this.scbUser.Enabled = false;
+							this.dgvResponsible.Enabled = false;
+							this.btnSave.Enabled = false;
+							//this.btnViewApprover.Visible = false;
+							this.cmbAuditStatus.Enabled = false;
+						} 
+					}
+				}
+				else
+				{
+					this.Close();
+					return;
+				}
+				//获取报废责任工序实体
+				if (Convert.ToInt32(_updateEntity.ResponType) == Constant.INT_IS_THREE)
+				{
+					DataSet dsResPro = (DataSet)DoAsync(new BaseAsyncMethod(() =>
+					{
+						return PMModuleProxy.Service.GetResponProcedureBySPId(Convert.ToInt32(_updateEntity.ScrapProductID));
+					}));
+					this._updateProcedureEntity = new ResponProcedureEntity();
+					if (dsResPro != null && dsResPro.Tables[0].Rows.Count > 0) //如果原来存在责任工序实体
+					{
+						DataRow drResPro = dsResPro.Tables[0].Rows[0];
+						this._updateProcedureEntity.ResponProcedureID = Convert.ToInt32(drResPro["ResponProcedureID"]);
+						//this.scbUser.Enabled = false;
+					}
+					this._updateProcedureEntity.BarCode = _updateEntity.BarCode;
+				}
+				//获取报废责任人实体集合
+				if (Convert.ToInt32(_updateEntity.ResponType) != Constant.INT_IS_ONE)
+				{
+					this._updateScrapResponsibleList = new List<ScrapResponsibleEntity>();
+					DataSet dsResponsible = (DataSet)DoAsync(new BaseAsyncMethod(() =>
+					{
+						return PMModuleProxy.Service.GetScrapResponsibleBySPId(Convert.ToInt32(_updateEntity.ScrapProductID));
+					}));
+					DataTableToListByScrapResponsible(dsResponsible);
+				}
+				//控件赋值
+				this.txtBarCode.Text = _updateEntity.BarCode;
+				//this.txtGoodsCode.Text = _updateEntity.GoodsCode;
+				//this.txtProductionLineName.Text = _updateEntity.ProductionLineName;
+				//this.cbResponProcedure.SelectedValue = _updateEntity.ResponProcedureID; 
+				try
+				{
+					this.cmbRreason.Text = _updateEntity.Rreason;
+				}
+				catch
+				{
+					this.cmbRreason.Text = "";
+				}
+				this.txtRemarks.Text = _updateEntity.Remarks;
+				//this.txtScrapFine.Text = _updateEntity.ScrapFine.ToString();
+				//this._updateEntity.ScrapFine
+				if (this._updateEntity.ResponUserID != null)
+				 {
+				//	scbUser.SearchedPKMember = Convert.ToInt32(_updateEntity.ResponUserID);
+				//	scbUser.InitValue(_updateEntity.ResponUserName, _updateEntity.ResponUserCode);
+					//this.dkUser.UserID = _updateEntity.ResponUserID;
+					//               this.dkUser.UserCode = _updateEntity.ResponUserCode;
+					//               this.dkUser.UserName = _updateEntity.ResponUserName;
+				}
+				else if (this._scrapResponsibleList.Count != Constant.INT_IS_ZERO)
+				{
+					//scbUser.SearchedPKMember = Convert.ToInt32(_scrapResponsibleList[0].UserID);
+					//scbUser.InitValue(_scrapResponsibleList[0].UserName, _scrapResponsibleList[0].UserCode);
+					//this.dkUser.UserID = _scrapResponsibleList[0].UserID;
+					//               this.dkUser.UserCode = _scrapResponsibleList[0].UserCode;
+					//               this.dkUser.UserName = _scrapResponsibleList[0].UserName;
+				}
+			}
+			catch (Exception ex)
+			{
+				throw ex;
+			}
+		}
+
+		/// <summary>
+		/// 数据表到实体转换
+		/// </summary>
+		/// <param name="dsScrapResponsible"></param>
+		private void DataTableToListByScrapResponsible(DataSet dsScrapResponsible)
+		{
+			foreach (DataRow drFor in dsScrapResponsible.Tables[0].Rows)
+			{
+				ScrapResponsibleEntity srEntity = new ScrapResponsibleEntity();
+				srEntity.ResponsibleID = Convert.ToInt32(drFor["ResponsibleID"]);
+				srEntity.ScrapProductID = Convert.ToInt32(drFor["ScrapProductID"]);
+				srEntity.BarCode = drFor["BarCode"].ToString();
+				srEntity.ResponType = Convert.ToInt32(drFor["ResponType"]);
+				if (drFor["ResponProcedureID"] != DBNull.Value)
+				{
+					srEntity.ResponProcedureID = Convert.ToInt32(drFor["ResponProcedureID"]);
+				}
+				srEntity.StaffID = Convert.ToInt32(drFor["StaffID"]);
+				srEntity.UserID = Convert.ToInt32(drFor["UserID"]);
+				srEntity.UserCode = drFor["UserCode"].ToString();
+				srEntity.UJobsID = Convert.ToInt32(drFor["UJobsID"]);
+				srEntity.SJobsID = Convert.ToInt32(drFor["SJobsID"]);
+				srEntity.StaffStatus = Convert.ToInt32(drFor["StaffStatus"]);
+				srEntity.AccountID = Convert.ToInt32(drFor["AccountID"]);
+				srEntity.CreateTime = Convert.ToDateTime(drFor["CreateTime"]);
+				srEntity.CreateUserID = Convert.ToInt32(drFor["CreateUserID"]);
+				srEntity.UpdateTime = Convert.ToDateTime(drFor["UpdateTime"]);
+				srEntity.UpdateUserID = Convert.ToInt32(drFor["UpdateUserID"]);
+				srEntity.OPTimeStamp = Convert.ToDateTime(drFor["OPTimeStamp"]);
+				srEntity.UserName = drFor["userName"].ToString();
+				this._scrapResponsibleList.Add(srEntity);
+			}
+		}
+
+		/// <summary>
+		/// 数据表到实体转换
+		/// </summary>
+		/// <param name="dtProductionData"></param>
+		/// <returns></returns>
+		private List<ProductionDataEntity> DataTableToListByProductionData(DataTable dtProductionData)
+		{
+			List<ProductionDataEntity> pdList = new List<ProductionDataEntity>();
+			foreach (DataRow drFor in dtProductionData.Rows)
+			{
+				ProductionDataEntity pdEntity = new ProductionDataEntity();
+				pdEntity.ProductionDataID = Convert.ToInt32(drFor["ProductionDataID"]);
+				pdEntity.ProcedureID = Convert.ToInt32(drFor["ProcedureID"]);
+				pdEntity.ProcedureCode = drFor["ProcedureCode"].ToString();
+				pdEntity.ProcedureName = drFor["ProcedureName"].ToString();
+				pdList.Add(pdEntity);
+			}
+			return pdList;
+		}
+
+		#endregion 
+	}
+}

+ 149 - 0
DK.Client/PMModule/F_PM_1107.resx

@@ -0,0 +1,149 @@
+<?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>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="btnSave.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAFUAAAAeCAYAAABdalL1AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+        vAAADrwBlbxySQAAAI5JREFUaEPt0KERxCAUQMFrEImOowUsioJSAb3gaOLfnLjJRMNzT2wD+ymlhPb1
+        3mOMEWutMPUQUwGmAkwFmAowFWAqwFSAqQBTAaYCTAWYCnilXtcV2tdaM/U0UwGmAmqtT2rOObTvnzrn
+        NPUUUwGmAkwFmAowFWAqwFSAqYBf6n3fpp70Sk0phfY9qTO+PIZEBQZ3CrAAAAAASUVORK5CYII=
+</value>
+  </data>
+  <data name="btnCancel.BackgroundImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAFUAAAAeCAYAAABdalL1AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
+        vAAADrwBlbxySQAAAI5JREFUaEPt0KERxCAUQMFrEImOowUsioJSAb3gaOLfnLjJRMNzT2wD+ymlhPb1
+        3mOMEWutMPUQUwGmAkwFmAowFWAqwFSAqQBTAaYCTAWYCnilXtcV2tdaM/U0UwGmAmqtT2rOObTvnzrn
+        NPUUUwGmAkwFmAowFWAqwFSAqYBf6n3fpp70Sk0phfY9qTO+PIZEBQZ3CrAAAAAASUVORK5CYII=
+</value>
+  </data>
+  <metadata name="StaffCode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="UJobsName.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+</root>

+ 9 - 0
DK.Client/PMModule/PMModule.csproj

@@ -128,6 +128,12 @@
     <Compile Include="F_PM_0504.Designer.cs">
       <DependentUpon>F_PM_0504.cs</DependentUpon>
     </Compile>
+    <Compile Include="F_PM_1107.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="F_PM_1107.Designer.cs">
+      <DependentUpon>F_PM_1107.cs</DependentUpon>
+    </Compile>
     <Compile Include="F_PM_3401.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -814,6 +820,9 @@
     <EmbeddedResource Include="F_PM_0504.resx">
       <DependentUpon>F_PM_0504.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="F_PM_1107.resx">
+      <DependentUpon>F_PM_1107.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="F_PM_3401.resx">
       <DependentUpon>F_PM_3401.cs</DependentUpon>
     </EmbeddedResource>

+ 82 - 0
DK.Service/SystemModuleLogic/SystemModuleLogic.cs

@@ -7722,5 +7722,87 @@ namespace Dongke.IBOSS.PRD.Service.SystemModuleLogic
 			}
 		}
 		#endregion
+		/// <summary>
+		/// 查找最后的责任工序
+		/// </summary>
+		/// <param name="sUserInfo"></param>
+		/// <param name="cre"></param>
+		/// <returns></returns>
+		public static ServiceResultEntity ReadAllDataByProductCode(SUserInfo sUserInfo, ClientRequestEntity cre)
+		{
+			ServiceResultEntity sre = new ServiceResultEntity();
+			IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
+			try
+			{
+				string sqlString = "SELECT P.*, A.ProcedureCode, A.ProcedureName FROM " +
+					"TP_PM_INPRODUCTION P  INNER  JOIN TP_PC_PROCEDURE A ON P.PROCEDUREID = A.PROCEDUREID  " +
+					"WHERE P.BARCODE = '"+ cre.Properties["BARCODE"].ToString() + "' ";
+				 
+				oracleConn.Open();
+				DataSet result = oracleConn.GetSqlResultToDs(sqlString);
+				oracleConn.Close();
+				sre.Data = result;
+				sre.Status = Constant.ServiceResultStatus.Success;
+				return sre;
+			}
+			catch (Exception ex)
+			{
+				if (oracleConn.ConnState == ConnectionState.Open)
+				{
+					oracleConn.Close();
+				}
+				throw ex;
+			}
+		}
+		/// <summary>
+		/// 查找员工信息
+		/// </summary>
+		/// <param name="sUserInfo"></param>
+		/// <param name="cre"></param>
+		/// <returns></returns>
+		public static ServiceResultEntity ReadStaffInformation(SUserInfo sUserInfo, ClientRequestEntity cre)
+		{
+			ServiceResultEntity sre = new ServiceResultEntity();
+			IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
+			try
+			{
+				string strSql = " SELECT TUser.userid,Staff.Staffid,Staff.Staffname,Staff.Organizationid,"
+								   + "  Staff.Jobs,Staff.Staffstatus,Staff.Staffcode,'' Remarks,"
+								   + "  (CASE Staff.staffStatus"
+								   + "  WHEN 0 THEN '未入职'"
+								   + "  WHEN 1 THEN '试用 '"
+								   + "  WHEN 2 THEN '转正'"
+								   + "  WHEN 3 THEN '离职'"
+								   + "  ELSE '' END) AS staffStatusName,"
+								   + "  Jobs.Jobsname,Org.Organizationname,TUser.UserCode,TUserJobs.Jobsname as UJobsName,TUserJobs.JobsId as UJobsId"
+								   + "  FROM TP_HR_Staff Staff "
+								   + "  LEFT JOIN TP_MST_Jobs Jobs ON Jobs.Jobsid = Staff.Jobs "
+								   + "  LEFT JOIN TP_MST_Organization Org ON Org.Organizationid = Staff.Organizationid "
+								   + "  LEFT JOIN TP_MST_UserStaff TUserStaff on TUserStaff.StaffID = Staff.StaffID "
+								   + "  LEFT JOIN TP_MST_User TUser on TUserStaff.Userid = TUser.Userid"
+								   + "  LEFT JOIN TP_MST_Jobs TUserJobs on TUserJobs.Jobsid = TUserStaff.Ujobsid"
+								   + "  WHERE Staff.Accountid = :accountID "
+								   + "  AND TUser.Userid  = :userId"
+								   + "  AND Staff.Staffstatus in(1,2)";
+				OracleParameter[] paras = new OracleParameter[]{
+					new OracleParameter(":accountID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input),
+					new OracleParameter(":userId", OracleDbType.Int32, cre.Properties["USERID"], ParameterDirection.Input),
+				};
+				oracleConn.Open();
+				DataSet result = oracleConn.GetSqlResultToDs(strSql, paras);
+				oracleConn.Close();
+				sre.Data = result;
+				sre.Status = Constant.ServiceResultStatus.Success;
+				return sre;
+			}
+			catch (Exception ex)
+			{
+				if (oracleConn.ConnState == ConnectionState.Open)
+				{
+					oracleConn.Close();
+				}
+				throw ex;
+			}
+		}
 	}
 }

+ 16 - 0
WCF.Service/WCF.Services/SystemModuleService.cs

@@ -2723,6 +2723,22 @@ namespace Dongke.IBOSS.PRD.WCF.Services
                         return result;
                     }
                 }
+                else if ("F_PM_1107" == cre.NameSpace) {
+                    // 查找最后的责任工序
+                    if ("ReadAllDataByProductCode" == cre.Name)
+                    {
+                        ServiceResultEntity result = ServiceInvoker.Invoke<ServiceResultEntity>(this,
+                            () => SystemModuleLogic.ReadAllDataByProductCode(SUserInfo, cre));
+                        return result;
+                    }
+                    //查找员工信息
+                    else if ("ReadStaffInformation" == cre.Name)
+                    {
+                        ServiceResultEntity result = ServiceInvoker.Invoke<ServiceResultEntity>(this,
+                            () => SystemModuleLogic.ReadStaffInformation(SUserInfo, cre));
+                        return result;
+                    }
+                }
                 return null;
             }
             catch (Exception ex)