Quellcode durchsuchen

1.成型线分组配置2.半成品卡控(注浆、交坯)3.系统参数增加三个4.绑定分组注浆5.撤销报表查询报错6.成瓷库出库扫码头切换商标方法

qinqi vor 6 Tagen
Ursprung
Commit
b56a88f266

Datei-Diff unterdrückt, da er zu groß ist
+ 554 - 532
DK.Client/PCModule/F_PC_0103_1.Designer.cs


+ 12 - 2
DK.Client/PCModule/F_PC_0103_1.cs

@@ -230,8 +230,12 @@ namespace Dongke.IBOSS.PRD.Client.PCModule
 				this._lineEntity.GROUTINGLINENAME = this.txtGroutingLineName.Text.Trim();
 				this._lineEntity.REMARKS = this.txtRemarks.Text.Trim();
 
-                //xuwei add 2019-11-13 高压注浆
-                this._lineEntity.HIGHPRESSUREFLAG = HighPressureFlag.Checked ? 1 : 0;
+				//qq add 20260311 高压线组及序号
+				this._lineEntity.HLINECODE = this.txtHighLineCode.Text.Trim();
+				this._lineEntity.HLINEINDEX = this.txtHighLineIndex.Text.Trim();
+
+				//xuwei add 2019-11-13 高压注浆
+				this._lineEntity.HIGHPRESSUREFLAG = HighPressureFlag.Checked ? 1 : 0;
 				//xuwei end 
 				//xuwei add 2021-09-12 部门
 				this._lineEntity.WORKSHOP = Convert.ToInt32(txtWorkShop.Text);
@@ -1160,6 +1164,10 @@ namespace Dongke.IBOSS.PRD.Client.PCModule
 					this.TestFlag.Checked = this._lineEntity.TestFlag == 1 ? true : false;
 					//feiy end
 
+					//add qq 20260311
+					this.txtHighLineCode.Text = this._lineEntity.HLINECODE.ToString();
+					this.txtHighLineIndex.Text = this._lineEntity.HLINEINDEX.ToString();
+
 					if (this._lineEntity.ValueFlag2 == "1")
 					{
 						this.chkEnable.Checked = true;
@@ -1267,6 +1275,8 @@ namespace Dongke.IBOSS.PRD.Client.PCModule
 				this._lineEntity.UPDATETIME = Convert.ToDateTime(drGrouting["UPDATETIME"]);
 				this._lineEntity.UPDATEUSERID = Convert.ToInt32(drGrouting["UPDATEUSERID"]);
 				this._lineEntity.OPTIMESTAMP = Convert.ToDateTime(drGrouting["OPTIMESTAMP"]);
+				this._lineEntity.HLINECODE = drGrouting["H_LINECODE"].ToString();
+				this._lineEntity.HLINEINDEX = drGrouting["H_LINEINDEX"].ToString();
 			}
 			catch (Exception ex)
 			{

Datei-Diff unterdrückt, da er zu groß ist
+ 793 - 1003
DK.Client/PCModule/F_PC_0104_1.Designer.cs


+ 6 - 0
DK.Client/PCModule/F_PC_0104_1.resx

@@ -190,6 +190,12 @@
   <metadata name="TESTFLAGNAME.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>
+  <metadata name="H_LINECODE.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="H_LINEINDEX.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
   <metadata name="GMouldStatus.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
     <value>True</value>
   </metadata>

+ 51 - 8
DK.Client/SystemModule/F_MST_0401.Designer.cs

@@ -108,7 +108,10 @@
 			this.txtSPM023 = new Dongke.WinForm.Controls.TxtNumerical();
 			this.txtSPM022 = new Dongke.WinForm.Controls.TxtNumerical();
 			this.groupBox9 = new System.Windows.Forms.GroupBox();
+			this.chkgroutControl = new Dongke.IBOSS.PRD.Basics.BaseControls.C_CheckBox();
+			this.chkdeliverControl = new Dongke.IBOSS.PRD.Basics.BaseControls.C_CheckBox();
 			this.chkControl = new Dongke.IBOSS.PRD.Basics.BaseControls.C_CheckBox();
+			this.chkSPM033 = new Dongke.IBOSS.PRD.Basics.BaseControls.C_CheckBox();
 			this.groupBox1.SuspendLayout();
 			this.groupBox2.SuspendLayout();
 			this.groupBox3.SuspendLayout();
@@ -399,7 +402,7 @@
 			this.btnInit.BackgroundImage = ((System.Drawing.Image)(resources.GetObject("btnInit.BackgroundImage")));
 			this.btnInit.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
 			this.btnInit.ForeColor = System.Drawing.Color.White;
-			this.btnInit.Location = new System.Drawing.Point(372, 371);
+			this.btnInit.Location = new System.Drawing.Point(372, 390);
 			this.btnInit.Name = "btnInit";
 			this.btnInit.Size = new System.Drawing.Size(83, 30);
 			this.btnInit.TabIndex = 97;
@@ -414,7 +417,7 @@
 			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(471, 371);
+			this.btnSave.Location = new System.Drawing.Point(471, 390);
 			this.btnSave.Name = "btnSave";
 			this.btnSave.Size = new System.Drawing.Size(79, 30);
 			this.btnSave.TabIndex = 98;
@@ -430,7 +433,7 @@
 			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(556, 371);
+			this.btnCancel.Location = new System.Drawing.Point(556, 390);
 			this.btnCancel.Name = "btnCancel";
 			this.btnCancel.Size = new System.Drawing.Size(78, 30);
 			this.btnCancel.TabIndex = 99;
@@ -937,7 +940,7 @@
 			// 
 			this.groupBox4.Controls.Add(this.lblLabel11);
 			this.groupBox4.Controls.Add(this.cobSPM016);
-			this.groupBox4.Location = new System.Drawing.Point(12, 331);
+			this.groupBox4.Location = new System.Drawing.Point(12, 350);
 			this.groupBox4.Name = "groupBox4";
 			this.groupBox4.Size = new System.Drawing.Size(200, 70);
 			this.groupBox4.TabIndex = 7;
@@ -1113,7 +1116,7 @@
 			this.btnSetBackInP.BackColor = System.Drawing.Color.Transparent;
 			this.btnSetBackInP.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
 			this.btnSetBackInP.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-			this.btnSetBackInP.Location = new System.Drawing.Point(271, 371);
+			this.btnSetBackInP.Location = new System.Drawing.Point(271, 390);
 			this.btnSetBackInP.Name = "btnSetBackInP";
 			this.btnSetBackInP.Size = new System.Drawing.Size(105, 30);
 			this.btnSetBackInP.TabIndex = 96;
@@ -1168,6 +1171,7 @@
 			// 
 			// groupBox8
 			// 
+			this.groupBox8.Controls.Add(this.chkSPM033);
 			this.groupBox8.Controls.Add(this.txtSPM001);
 			this.groupBox8.Controls.Add(this.chkSPM024);
 			this.groupBox8.Controls.Add(this.lblLabel2);
@@ -1179,7 +1183,7 @@
 			this.groupBox8.Controls.Add(this.txtSPM021);
 			this.groupBox8.Location = new System.Drawing.Point(12, 173);
 			this.groupBox8.Name = "groupBox8";
-			this.groupBox8.Size = new System.Drawing.Size(200, 152);
+			this.groupBox8.Size = new System.Drawing.Size(200, 171);
 			this.groupBox8.TabIndex = 1;
 			this.groupBox8.TabStop = false;
 			this.groupBox8.Text = "注浆限制";
@@ -1250,14 +1254,38 @@
 			// 
 			// groupBox9
 			// 
+			this.groupBox9.Controls.Add(this.chkgroutControl);
+			this.groupBox9.Controls.Add(this.chkdeliverControl);
 			this.groupBox9.Controls.Add(this.chkControl);
 			this.groupBox9.Location = new System.Drawing.Point(493, 275);
 			this.groupBox9.Name = "groupBox9";
-			this.groupBox9.Size = new System.Drawing.Size(141, 50);
+			this.groupBox9.Size = new System.Drawing.Size(141, 85);
 			this.groupBox9.TabIndex = 100;
 			this.groupBox9.TabStop = false;
 			this.groupBox9.Text = "计划卡控默认选项";
 			// 
+			// chkgroutControl
+			// 
+			this.chkgroutControl.AutoSize = true;
+			this.chkgroutControl.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+			this.chkgroutControl.Location = new System.Drawing.Point(6, 39);
+			this.chkgroutControl.Name = "chkgroutControl";
+			this.chkgroutControl.Size = new System.Drawing.Size(96, 16);
+			this.chkgroutControl.TabIndex = 5;
+			this.chkgroutControl.Text = "开启注浆卡控";
+			this.chkgroutControl.UseVisualStyleBackColor = true;
+			// 
+			// chkdeliverControl
+			// 
+			this.chkdeliverControl.AutoSize = true;
+			this.chkdeliverControl.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+			this.chkdeliverControl.Location = new System.Drawing.Point(6, 59);
+			this.chkdeliverControl.Name = "chkdeliverControl";
+			this.chkdeliverControl.Size = new System.Drawing.Size(96, 16);
+			this.chkdeliverControl.TabIndex = 4;
+			this.chkdeliverControl.Text = "开启交坯卡控";
+			this.chkdeliverControl.UseVisualStyleBackColor = true;
+			// 
 			// chkControl
 			// 
 			this.chkControl.AutoSize = true;
@@ -1269,12 +1297,24 @@
 			this.chkControl.Text = "开启产成品交接卡控";
 			this.chkControl.UseVisualStyleBackColor = true;
 			// 
+			// chkSPM033
+			// 
+			this.chkSPM033.AutoSize = true;
+			this.chkSPM033.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+			this.chkSPM033.Location = new System.Drawing.Point(94, 149);
+			this.chkSPM033.Name = "chkSPM033";
+			this.chkSPM033.RightToLeft = System.Windows.Forms.RightToLeft.Yes;
+			this.chkSPM033.Size = new System.Drawing.Size(96, 16);
+			this.chkSPM033.TabIndex = 9;
+			this.chkSPM033.Text = "高压绑定注浆";
+			this.chkSPM033.UseVisualStyleBackColor = true;
+			// 
 			// F_MST_0401
 			// 
 			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(646, 426);
+			this.ClientSize = new System.Drawing.Size(646, 445);
 			this.Controls.Add(this.groupBox9);
 			this.Controls.Add(this.groupBox4);
 			this.Controls.Add(this.groupBox1);
@@ -1421,5 +1461,8 @@
         private WinForm.Controls.TxtNumerical txtSPM022;
 		private System.Windows.Forms.GroupBox groupBox9;
 		private Basics.BaseControls.C_CheckBox chkControl;
+		private Basics.BaseControls.C_CheckBox chkgroutControl;
+		private Basics.BaseControls.C_CheckBox chkdeliverControl;
+		private Basics.BaseControls.C_CheckBox chkSPM033;
 	}
 }

+ 38 - 1
DK.Client/SystemModule/F_MST_0401.cs

@@ -465,6 +465,10 @@ namespace Dongke.IBOSS.PRD.Client.SystemModule
                                 chkSPM024.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
                                 chkSPM024.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
                                 break;
+                            case "S_PM_033":
+                                chkSPM033.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
+                                chkSPM033.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
+                                break;
                             #endregion
 
                             #region 产成品交接
@@ -545,6 +549,30 @@ namespace Dongke.IBOSS.PRD.Client.SystemModule
                                     this.chkControl.Checked = true;
                                 } 
                                 break;
+                            //注浆卡控 1:开启卡控;0:关闭卡控
+                            case "S_PC_003":
+                                string groutcaontrolFlag = _systemData.Rows[i][loadWay] + "";
+                                if (groutcaontrolFlag == "0")
+                                {
+                                    this.chkgroutControl.Checked = false;
+                                }
+                                else if (groutcaontrolFlag == "1")
+                                {
+                                    this.chkgroutControl.Checked = true;
+                                }
+                                break;
+                            //交坯卡控 1:开启卡控;0:关闭卡控
+                            case "S_PC_004":
+                                string delivercaontrolFlag = _systemData.Rows[i][loadWay] + "";
+                                if (delivercaontrolFlag == "0")
+                                {
+                                    this.chkdeliverControl.Checked = false;
+                                }
+                                else if (delivercaontrolFlag == "1")
+                                {
+                                    this.chkdeliverControl.Checked = true;
+                                }
+                                break;
                             #endregion
                             default:
                                 break;
@@ -707,6 +735,9 @@ namespace Dongke.IBOSS.PRD.Client.SystemModule
                         case "S_PM_024":
                             _systemData.Rows[i]["SettingValue"] = (this.chkSPM024.Checked ? "1" : "0");
                             break;
+                        case "S_PM_033":
+                            _systemData.Rows[i]["SettingValue"] = (this.chkSPM033.Checked ? "1" : "0");
+                            break;
                         #endregion
 
                         #region 产成品交接
@@ -757,7 +788,13 @@ namespace Dongke.IBOSS.PRD.Client.SystemModule
 
                         #region 计划卡控管理
                         case "S_PC_002":
-                            _systemData.Rows[i]["SettingValue"] = (this.chkControl.Checked ? "1" : "0");
+                            _systemData.Rows[i]["SettingValue"] = this.chkControl.Checked ? "1" : "0";
+                            break;
+                        case "S_PC_003":
+                            _systemData.Rows[i]["SettingValue"] = this.chkgroutControl.Checked ? "1" : "0";
+                            break;
+                        case "S_PC_004":
+                            _systemData.Rows[i]["SettingValue"] = this.chkdeliverControl.Checked ? "1" : "0";
                             break;
                         #endregion
                         default:

+ 11 - 2
DK.Service/PCModuleLogic/PCModuleLogicDALPartial.cs

@@ -6702,7 +6702,11 @@ namespace Dongke.IBOSS.PRD.Service.PCModuleLogic
 				sbSql.Append("ValueFlag=:ValueFlag2,");
 				sbSql.Append("UpdateTime=:UpdateTime,");
 				sbSql.Append("UpdateUserID=:UpdateUserID,");
-				sbSql.Append("UserCount=:UserCount");
+				sbSql.Append("UserCount=:UserCount,");
+				//qq end 20260311 注浆线组
+				sbSql.Append("H_LINECODE=:HLINECODE,");
+				sbSql.Append("H_LINEINDEX=:HLINEINDEX");
+
 				sbSql.Append(" where GroutingLineID=:GroutingLineID and OPTimeStamp=:OPTimeStamp and GMouldStatus=1");
 				if (groutingLineEntity.VALUEFLAG == 0)
 				{
@@ -6804,7 +6808,12 @@ namespace Dongke.IBOSS.PRD.Service.PCModuleLogic
 							groutingLineEntity.OPTIMESTAMP,ParameterDirection.Input),
 						new OracleParameter(":UserCount",OracleDbType.Int32,
 							detailUserList.Rows.Count,ParameterDirection.Input),
-					};
+						//qq end 20260311 注浆线组
+						new OracleParameter(":HLINECODE",OracleDbType.NVarchar2,
+							groutingLineEntity.HLINECODE,ParameterDirection.Input),
+						new OracleParameter(":HLINEINDEX",OracleDbType.NVarchar2,
+							groutingLineEntity.HLINEINDEX,ParameterDirection.Input), 
+			};
 				//执行修改语句
 				returnRows = oracleTrConn.ExecuteNonQuery(sbSql.ToString(), Paras);
 				//时间戳无法匹配

+ 4 - 0
DK.Service/PDAModuleLogic/PDAModuleLogic.csproj

@@ -129,6 +129,10 @@
       <Project>{5d0fe449-2391-4b60-ace9-b0435cb18f23}</Project>
       <Name>DKIBOSSPRDLogic</Name>
     </ProjectReference>
+    <ProjectReference Include="..\PMModuleService\PMModuleService.csproj">
+      <Project>{2fabf900-b503-4da8-9f42-44ee73aafcdb}</Project>
+      <Name>PMModuleService</Name>
+    </ProjectReference>
     <ProjectReference Include="..\Service.DataModels\Service.DataModels.csproj">
       <Project>{16c72702-c162-4cd3-9ccc-40b9d8491ccd}</Project>
       <Name>Service.DataModels</Name>

Datei-Diff unterdrückt, da er zu groß ist
+ 670 - 353
DK.Service/PDAModuleLogic/PDAModuleLogicWorkShop3.cs


+ 4 - 0
DK.Service/PMModuleLogic/PMModuleLogic.csproj

@@ -147,6 +147,10 @@
       <Project>{75A1A28D-7076-4DC7-A1D4-703B884ECDEB}</Project>
       <Name>PDAModuleLogic</Name>
     </ProjectReference>
+    <ProjectReference Include="..\PMModuleService\PMModuleService.csproj">
+      <Project>{2fabf900-b503-4da8-9f42-44ee73aafcdb}</Project>
+      <Name>PMModuleService</Name>
+    </ProjectReference>
     <ProjectReference Include="..\SAPDataService\SAPHegiiDataService.csproj">
       <Project>{41d66009-a06f-4632-869c-110ab1c3b969}</Project>
       <Name>SAPHegiiDataService</Name>

+ 385 - 101
DK.Service/PMModuleLogic/PMModuleLogicDAL.cs

@@ -32,7 +32,8 @@ using static Dongke.IBOSS.PRD.Service.SAPHegiiDataService.SAPDataLogic;
 using Dongke.IBOSS.PRD.WCF.DataModels.PMModule;
 using System.Linq;
 using Dongke.IBOSS.PRD.WCF.DataModels.PDAModule;
-using Dongke.IBOSS.PRD.Service.SAPHegiiDataService;
+using Dongke.IBOSS.PRD.Service.SAPHegiiDataService; 
+using Dongke.IBOSS.PRD.Service.PMModuleService;
 using Newtonsoft.Json;
 
 namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
@@ -151,6 +152,91 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                 }
                 //if (nodeBegin == -1) errMsg = "条码不正确,请检查!";
 
+                #region 校验是否需要半成品卡控及卡控数量是否允许交坯操作 20251218 add by qq 
+                DataTable resultTable = new DataTable();
+                DataTable gddIDTable = new DataTable();
+                int systemSetvalue = 0;
+                //获取当前日期 
+                object date = CMNModuleLogic.GetAccountDate(oracleTrConn, sUserInfo); 
+                DateTime accountDatejp = Convert.ToDateTime(date).Date;
+                if (procedure.ModelType == (int)Constant.ProcedureModelType.DeliverMud)
+                {
+                    //查询系统参数,是否交坯卡控
+                    systemSetvalue = PMModuleService.PMModuleLogic.getSystemSet(oracleTrConn, "S_PC_004", sUserInfo);
+                     
+                    //拼接交坯产品条码
+                    string barcodeCodes = ""; 
+                    for (int i = 0; i < barcodeTable.Rows.Count; i++)
+                    { 
+                        barcodeCodes += "'" + barcodeTable.Rows[i]["BARCODE"].ToString() + "',";   
+                    }
+                    //查询产品商标汇总数量
+                    string barcodesDetailsql = $@"SELECT  D.GOODSCODE, D.LOGOID , COUNT(D.GROUTINGDAILYDETAILID)  COUNT ,'' MAT20,0 PRODPLANID 
+                                    FROM tp_pm_groutingdailydetail D 
+                                    WHERE D.ACCOUNTID = { sUserInfo.AccountID}
+                                     AND D.VALUEFLAG = '1' 
+                                    AND D.BARCODE IN ({ barcodeCodes.Substring(0,barcodeCodes.Length - 1) })
+                                       GROUP BY D.GOODSCODE,D.LOGOID ";
+
+                    resultTable = oracleTrConn.GetSqlResultToDt(barcodesDetailsql);
+
+                    //查询产品注浆信息
+                    string groutingdailyDetailsql = $@"SELECT  D.GOODSCODE, D.LOGOID , D.GROUTINGDAILYDETAILID
+                                    FROM tp_pm_groutingdailydetail D 
+                                    WHERE D.ACCOUNTID = { sUserInfo.AccountID}
+                                     AND D.VALUEFLAG = '1' 
+                                    AND D.BARCODE IN ({ barcodeCodes.Substring(0,barcodeCodes.Length - 1) }) ";
+
+                    gddIDTable = oracleTrConn.GetSqlResultToDt(groutingdailyDetailsql);
+
+                    //S_PC_004为1时,需要校验当月该半成品物料的计划数量
+                    if (systemSetvalue == 1)
+                    {
+                        for (int i = 0; i < resultTable.Rows.Count; i++)
+                        {
+                            //查询对应半成品物料(根据注浆的产品及商标)
+                            string mat20 = PMModuleService.PMModuleLogic.getmaterialcodeMat20(oracleTrConn, resultTable.Rows[i]["GOODSCODE"].ToString(), Convert.ToInt32(resultTable.Rows[i]["LOGOID"]));
+
+                            if (!string.IsNullOrWhiteSpace(mat20))
+                            {
+                                resultTable.Rows[i]["MAT20"] = mat20;
+                                //查询半成品物料当月对应的计划数量,类型为交坯,第二个参数:2
+                                DataTable planTabel = PMModuleService.PMModuleLogic.getPlanDetail(oracleTrConn, 2, mat20, accountDatejp);
+
+                                if (planTabel != null && planTabel.Rows.Count > 0)
+                                {
+                                    resultTable.Rows[i]["PRODPLANID"] = Convert.ToInt32(planTabel.Rows[0]["PRODPLANID"]);
+                                    //有计划,计划数量
+                                    decimal planCount = Convert.ToDecimal(planTabel.Rows[0]["PLANCOUNT"]);
+                                    //已完成数量
+                                    decimal completedCount = 0;
+                                    if (!string.IsNullOrWhiteSpace(planTabel.Rows[0]["COMPLETEDCOUNT"].ToString()))
+                                    {
+                                        completedCount = Convert.ToDecimal(planTabel.Rows[0]["COMPLETEDCOUNT"]);
+                                    }
+                                    if (Convert.ToDecimal(resultTable.Rows[i]["Count"]) > planCount - completedCount)
+                                    { 
+                                        errMsg = "无法交坯:此次交坯超过产销卡控计划交坯数量,请核实。";
+                                        dr[Constant.BarCodeResultTableColumns.out_errMsg.ToString()] = errMsg;
+                                        dr[Constant.BarCodeResultTableColumns.out_missFlag.ToString()] = 0;
+                                        dtBarCode.Rows.Add(dr);
+                                        return dtBarCode;
+                                    }
+                                }
+                                else
+                                {
+                                    //无计划,无法交坯
+                                    errMsg = "无法交坯:该物料无产销计划,请核实。";
+                                    dr[Constant.BarCodeResultTableColumns.out_errMsg.ToString()] = errMsg;
+                                    dr[Constant.BarCodeResultTableColumns.out_missFlag.ToString()] = 0;
+                                    dtBarCode.Rows.Add(dr);
+                                    return dtBarCode;
+                                }
+                            }
+                        }
+                    } 
+                }
+                #endregion
 
                 #region 标准计件和坯库
                 if (procedure.ModelType == (int)Constant.ProcedureModelType.Normal
@@ -367,6 +453,68 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                         }
                         #endregion
                     }
+
+                    #region 交坯之后反写半成品卡控计划物料计划交坯数量 add by qq 20251218
+                    for (int i = 0; i < resultTable.Rows.Count; i++)
+                    {
+                        int proPlanID = 0;
+                        //S_PC_003为0时,需要查找每个产品对应的当月该半成品物料的计划ID
+                        //为1时,校验时已经查询过,无须再查
+                        if (systemSetvalue == 0)
+                        {
+                            //查询对应半成品物料(根据注浆的产品及商标)
+                            string mat20 = PMModuleService.PMModuleLogic.getmaterialcodeMat20(oracleTrConn, resultTable.Rows[i]["GOODSCODE"].ToString(), Convert.ToInt32(resultTable.Rows[i]["LOGOID"]));
+
+                            if (!string.IsNullOrWhiteSpace(mat20))
+                            {
+                                resultTable.Rows[i]["MAT20"] = mat20;
+                                //查询半成品物料当月对应的计划数量
+                                DataTable planTabel = PMModuleService.PMModuleLogic.getPlanDetail(oracleTrConn, 2, mat20, accountDatejp);
+
+                                if (planTabel != null && planTabel.Rows.Count > 0)
+                                {
+                                    //有计划,计划ID
+                                    proPlanID = Convert.ToInt32(planTabel.Rows[0]["PRODPLANID"]);
+                                }
+                            }
+                        }
+                        else
+                        {
+                            if (!string.IsNullOrWhiteSpace(resultTable.Rows[i]["PRODPLANID"].ToString()))
+                            {
+                                proPlanID = Convert.ToInt32(resultTable.Rows[i]["PRODPLANID"]);
+                            }
+                        }
+
+                        if (proPlanID > 0)
+                        {
+                            string proSql = "UPDATE TP_SEMIFINISHED_PRODPLAN SET COMPLETEDCOUNT = COMPLETEDCOUNT + :PLANCOUNT WHERE PRODPLANID = :PRODPLANID AND MATERIALCODE = :MAT20";
+                            OracleParameter[] proParas = new OracleParameter[]
+                            {
+                                new OracleParameter(":PLANCOUNT", OracleDbType.Int32, Convert.ToInt32(resultTable.Rows[i]["Count"]), ParameterDirection.Input),
+                                new OracleParameter(":PRODPLANID", OracleDbType.Int32, proPlanID, ParameterDirection.Input),
+                                new OracleParameter(":MAT20", OracleDbType.Varchar2, resultTable.Rows[i]["MAT20"].ToString(), ParameterDirection.Input),
+                            };
+                            int executeResult = oracleTrConn.ExecuteNonQuery(proSql, proParas);
+
+                            //查找注浆明细中该产品商标都有哪些,插入关联表
+                            DataRow[] groutingDailyDetailRows = gddIDTable.Select("GOODSCODE = '" + resultTable.Rows[i]["GOODSCODE"].ToString()
+                                + "' and LOGOID = " + resultTable.Rows[i]["LOGOID"].ToString());
+                            foreach (DataRow dailydetailDataRow in groutingDailyDetailRows)
+                            {
+                                proSql = "INSERT INTO TP_SEMIFINISHED_PRODPLANBAR (PRODPLANID,GROUTINGDAILYDETAILID,ACCOUNTID,CREATEUSERID) VALUES(:PRODPLANID,:GROUTINGDAILYDETAILID,:ACCOUNTID,:CREATEUSERID)";
+                                proParas = new OracleParameter[]
+                                {
+                                    new OracleParameter(":PRODPLANID", OracleDbType.Int32, proPlanID, ParameterDirection.Input),
+                                    new OracleParameter(":GROUTINGDAILYDETAILID", OracleDbType.Int32, Convert.ToInt32( dailydetailDataRow["GROUTINGDAILYDETAILID"]), ParameterDirection.Input),
+                                    new OracleParameter(":ACCOUNTID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input),
+                                    new OracleParameter(":CREATEUSERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input),
+                                };
+                                executeResult = oracleTrConn.ExecuteNonQuery(proSql, proParas);
+                            }
+                        }
+                    }
+                    #endregion
                 }
 
                 #endregion
@@ -11167,8 +11315,8 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                                                                      UNION ALL
                                                                      --生产数据该产品商标在装配环节保存的数量(装配环节没有变更商标) 
                                                                      SELECT  pd.goodsid ,pd.logoid ,COUNT(distinct pd.barcode) changenum
-                                                                       FROM tp_pm_productiondata pd  
-                                                                       LEFT JOIN tp_pc_procedure p ON pd.procedureid = p.procedureid 
+                                                                       FROM TP_PM_FINISHEDPRODUCT pd  
+                                                                     --  LEFT JOIN tp_pc_procedure p ON pd.procedureid = p.procedureid 
                                                                        left join (SELECT pp.goodsid,pp.logoid,pp.quantity,gdd.materialcode,pp.begintime ,pp.endtime
                                                                                         FROM tp_pm_production_plan pp
                                                                                         LEFT JOIN tp_pm_groutingdailydetail gdd ON pp.goodsid = gdd.goodsid  
@@ -11176,11 +11324,11 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                                                                                          and pp.logoid = :logoid
                                                                                         AND pp.begintime <= SYSDATE
                                                                                         AND pp.endtime > SYSDATE AND pp.CONTROLRANGE = 1 AND pp.VALUEFLAG = 1 ) plans1 on plans1.goodsid = pd.goodsid and plans1.logoid = pd.logoid
-                                                                                  WHERE  pd.createtime >= plans1.begintime
-                                                                                  and pd.createtime < plans1.endtime
+                                                                                  WHERE  pd.fhtime >= trunc(plans1.begintime)
+                                                                                  and pd.fhtime < trunc(plans1.endtime)
                                                                                   and pd.valueflag = 1 
-                                                                                  and p.modeltype = '-5' 
-                                                                                  and p.procedureid not in(126,152) 
+                                                                                  --and p.modeltype = '-5' 
+                                                                                  --and p.procedureid not in(126,152) 
                                                                                   AND NOT EXISTS (SELECT s.barcode
                                                                                       FROM tp_pm_logochangedrecord s
                                                                                       LEFT JOIN tp_pc_procedure p ON s.procedureid = p.procedureid
@@ -11189,6 +11337,14 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                                                                                       and p.procedureid not in(126,152) 
                                                                                       --AND  s.oldlogoid = pd.logoid
                                                                                       AND  s.oldlogoid <> s.newlogoid)  
+                                                                                       AND  EXISTS (SELECT pdd.barcode
+                                                                                      FROM tp_pm_productiondata pdd
+                                                                                      LEFT JOIN tp_pc_procedure p ON pdd.procedureid = p.procedureid
+                                                                                     WHERE pdd.barcode = pd.barcode
+                                                                                      AND  p.modeltype = '-5'
+                                                                                      AND pdd.valueflag = 1  
+                                                                                      and p.procedureid not in(126,152) 
+                                                                                      and pdd.createtime >=plans1.begintime )
                                                                                 GROUP BY pd.goodsid,pd.logoid
                                                 ) changedata
                                                 WHERE changedata.logoid = :logoid  ";
@@ -18824,6 +18980,61 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                 rutenRows = oracleTrConn.ExecuteNonQuery(sql, Paras);
                 returnRows += rutenRows;
 
+                #region 编辑时,撤销交坯对应减去计划中实际交坯数及关联数据 20251218 
+                //获取当前日期 
+                object date = CMNModuleLogic.GetAccountDate(oracleTrConn, sUserInfo);
+                DateTime accountDatejp = Convert.ToDateTime(date).Date;
+                
+                //查询产品注浆信息
+                string groutingdailyDetailsql = $@"SELECT  D.GOODSCODE, D.LOGOID , D.GROUTINGDAILYDETAILID
+                                FROM tp_pm_groutingdailydetail D 
+                                WHERE D.ACCOUNTID = { sUserInfo.AccountID}
+                                AND D.VALUEFLAG = '1' 
+                                AND D.BARCODE IN ('{barcode}')";
+
+                DataTable gddIDTable = oracleTrConn.GetSqlResultToDt(groutingdailyDetailsql);
+                //撤销交坯
+                //查询对应半成品物料(根据注浆的产品及商标)
+                string mat20 = PMModuleService.PMModuleLogic.getmaterialcodeMat20(oracleTrConn, gddIDTable.Rows[0]["GOODSCODE"].ToString(), Convert.ToInt32(gddIDTable.Rows[0]["LOGOID"]));
+                int proPlanID = 0;
+                if (!string.IsNullOrWhiteSpace(mat20))
+                {
+                    //查询半成品物料当月对应的计划数量
+                    DataTable planTabel = PMModuleService.PMModuleLogic.getPlanDetail(oracleTrConn, 2, mat20, accountDatejp);
+
+                    if (planTabel != null && planTabel.Rows.Count > 0)
+                    {
+                        proPlanID = Convert.ToInt32(planTabel.Rows[0]["PRODPLANID"]);
+                    }
+                }
+                if (proPlanID > 0)
+                {
+                    string proSql = "DELETE FROM  TP_SEMIFINISHED_PRODPLANBAR WHERE PRODPLANID = :PRODPLANID and GROUTINGDAILYDETAILID = :GROUTINGDAILYDETAILID";
+                    OracleParameter[] proParas = new OracleParameter[]
+                    {
+                        new OracleParameter(":PRODPLANID", OracleDbType.Int32, proPlanID, ParameterDirection.Input),
+                        new OracleParameter(":GROUTINGDAILYDETAILID", OracleDbType.Int32, Convert.ToInt32( gddIDTable.Rows[0]["GROUTINGDAILYDETAILID"]), ParameterDirection.Input),
+                        new OracleParameter(":ACCOUNTID", OracleDbType.Int32, sUserInfo.AccountID, ParameterDirection.Input),
+                        new OracleParameter(":CREATEUSERID", OracleDbType.Int32, sUserInfo.UserID, ParameterDirection.Input),
+                    };
+                    int executeResult = oracleTrConn.ExecuteNonQuery(proSql, proParas);
+
+                    //确保之前的交坯数据绑定在该月计划单上
+                    if (executeResult > 0)
+                    {
+                        proSql = "UPDATE TP_SEMIFINISHED_PRODPLAN SET COMPLETEDCOUNT = COMPLETEDCOUNT - :PLANCOUNT WHERE PRODPLANID = :PRODPLANID ";
+                        proParas = new OracleParameter[]
+                        {
+                                new OracleParameter(":PLANCOUNT", OracleDbType.Int32, 1, ParameterDirection.Input),
+                                new OracleParameter(":PRODPLANID", OracleDbType.Int32, proPlanID, ParameterDirection.Input),
+                        };
+                        executeResult = oracleTrConn.ExecuteNonQuery(proSql, proParas);
+                    }
+                }
+ 
+                     
+                #endregion
+
                 if (returnRows <= 0)
                 {
                     oracleTrConn.Rollback();
@@ -19302,7 +19513,7 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
         /// 设置条码商标 
         /// </summary>
         /// <returns></returns>
-        public static int SaveBarCodeLogo(string barcode, int logoid, SUserInfo sUserInfo, out string returnMessage)
+        public static int SaveBarCodeLogo(string barcode, int logoid, SUserInfo sUserInfo, out string returnMessage,int cckflag=0)
         {
             int returnRows = 0;
             returnMessage = "";
@@ -19337,7 +19548,7 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                 //sql = @"select g.logoid, f.fhuserid from tp_pm_groutingdailydetail g
                 //        left join tp_pm_finishedproduct f on g.barcode = f.barcode
                 //        where g.barcode=:barcode";
-                sql = @"select g.logoid,g.GROUTINGDAILYDETAILID,g.materialcode,f.fhuserid from tp_pm_groutingdailydetail g
+                sql = @"select g.logoid,g.GROUTINGDAILYDETAILID,g.materialcode,f.fhuserid,f.barcode from tp_pm_groutingdailydetail g
                         left join tp_pm_finishedproduct f on g.barcode = f.barcode
                         where g.barcode=:barcode";
                 //end
@@ -19349,6 +19560,7 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                 {
                     oldLogoID = dt.Rows[0]["logoid"];
                     object fhuserid = dt.Rows[0]["fhuserid"];
+                    string fhbarcode = dt.Rows[0]["barcode"].ToString();
                     //lsq 20210723 已注浆非产成品没有商标可以变更商标
                     //begin
                     pdid = dt.Rows[0]["GROUTINGDAILYDETAILID"];
@@ -19365,6 +19577,11 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                         // "已交接的产品不能变更商标";
                         return -3;
                     }
+                    if (!string.IsNullOrWhiteSpace(fhbarcode))
+                    {
+                        // "成品不能变更商标";
+                        return -3;
+                    }
                 }
 
                 #region 根据生产计划,判断商标数量
@@ -19459,8 +19676,8 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                                                                              and pp.logoid = :logoid
                                                                             AND pp.begintime <= SYSDATE
                                                                             AND pp.endtime > SYSDATE AND pp.CONTROLRANGE = 2 AND pp.VALUEFLAG = 1) plans1 on plans1.goodsid = fp.goodsid and plans1.logoid = fp.logoid
-                                                                WHERE  fp.createtime >= plans1.begintime
-                                                                AND fp.createtime < plans1.endtime
+                                                                WHERE  fp.FHTIME >= plans1.begintime
+                                                                AND fp.FHTIME < plans1.endtime
                                                                 and fp.valueflag = 1
                                                                 AND NOT EXISTS (SELECT s.barcode
                                                                                 FROM tp_pm_logochangedrecord s
@@ -19480,7 +19697,7 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
                                     if (!string.IsNullOrWhiteSpace(quantityTable.Rows[0]["CHANGENUM"].ToString()))
                                     {
                                         //实际变换商标的数量大于计划的数量,不能再变
-                                        if (Convert.ToDecimal(quantityTable.Rows[0]["CHANGENUM"]) >= Convert.ToDecimal(planTable.Rows[0]["quantity"]))
+                                        if (Convert.ToDecimal(quantityTable.Rows[0]["CHANGENUM"])- Convert.ToDecimal(cckflag) >= Convert.ToDecimal(planTable.Rows[0]["quantity"]))
                                         {
                                             return -5;
                                         }
@@ -31027,33 +31244,41 @@ updateuserid=:updateuserid where barcode=:barcode";
                                                                        AND s.valueflag = 1 AND s.createtime >= l.createtime)
                                                              GROUP BY ip.goodsid ,ip.logoid 
                                                          UNION ALL
-                                                         --生产数据该产品商标在装配环节保存的数量(装配环节没有变更商标) 
-                                                         SELECT  pd.goodsid ,pd.logoid ,COUNT(distinct pd.barcode) changenum
-                                                           FROM tp_pm_productiondata pd  
-                                                           LEFT JOIN tp_pc_procedure p ON pd.procedureid = p.procedureid 
-                                                           left join (SELECT pp.goodsid,pp.logoid,pp.quantity,gdd.materialcode,pp.begintime ,pp.endtime
-                                                                            FROM tp_pm_production_plan pp
-                                                                            LEFT JOIN tp_pm_groutingdailydetail gdd ON pp.goodsid = gdd.goodsid  
-                                                                            WHERE gdd.barcode =  :barcode
-                                                                             and pp.logoid = :logoid
-                                                                            AND pp.begintime <= SYSDATE
-                                                                            AND pp.endtime > SYSDATE AND pp.CONTROLRANGE = 1 AND pp.VALUEFLAG = 1 ) plans1 on plans1.goodsid = pd.goodsid and plans1.logoid = pd.logoid
-                                                                      WHERE  pd.createtime >= plans1.begintime
-                                                                      and pd.createtime < plans1.endtime
-                                                                      and pd.valueflag = 1 
-                                                                      and p.modeltype = '-5' 
-                                                                      and p.procedureid not in(126,152) 
-                                                                      AND NOT EXISTS (SELECT s.barcode
-                                                                          FROM tp_pm_logochangedrecord s
-                                                                          LEFT JOIN tp_pc_procedure p ON s.procedureid = p.procedureid
-                                                                         WHERE s.barcode = pd.barcode
-                                                                          AND  p.modeltype = '-5' 
-                                                                          and p.procedureid not in(126,152) 
-                                                                          --AND  s.oldlogoid = pd.logoid
-                                                                          AND  s.oldlogoid <> s.newlogoid)  
-                                                                    GROUP BY pd.goodsid,pd.logoid
-                                    ) changedata
-                                    WHERE changedata.logoid = :logoid   ";
+                                                                     --生产数据该产品商标在装配环节保存的数量(装配环节没有变更商标) 
+                                                                     SELECT  pd.goodsid ,pd.logoid ,COUNT(distinct pd.barcode) changenum
+                                                                       FROM TP_PM_FINISHEDPRODUCT pd  
+                                                                     --  LEFT JOIN tp_pc_procedure p ON pd.procedureid = p.procedureid 
+                                                                       left join (SELECT pp.goodsid,pp.logoid,pp.quantity,gdd.materialcode,pp.begintime ,pp.endtime
+                                                                                        FROM tp_pm_production_plan pp
+                                                                                        LEFT JOIN tp_pm_groutingdailydetail gdd ON pp.goodsid = gdd.goodsid  
+                                                                                        WHERE gdd.barcode =  :barcode
+                                                                                         and pp.logoid = :logoid
+                                                                                        AND pp.begintime <= SYSDATE
+                                                                                        AND pp.endtime > SYSDATE AND pp.CONTROLRANGE = 1 AND pp.VALUEFLAG = 1 ) plans1 on plans1.goodsid = pd.goodsid and plans1.logoid = pd.logoid
+                                                                                  WHERE  pd.fhtime >= trunc(plans1.begintime)
+                                                                                  and pd.fhtime < trunc(plans1.endtime)
+                                                                                  and pd.valueflag = 1 
+                                                                                  --and p.modeltype = '-5' 
+                                                                                  --and p.procedureid not in(126,152) 
+                                                                                  AND NOT EXISTS (SELECT s.barcode
+                                                                                      FROM tp_pm_logochangedrecord s
+                                                                                      LEFT JOIN tp_pc_procedure p ON s.procedureid = p.procedureid
+                                                                                     WHERE s.barcode = pd.barcode
+                                                                                      AND  p.modeltype = '-5' 
+                                                                                      and p.procedureid not in(126,152) 
+                                                                                      --AND  s.oldlogoid = pd.logoid
+                                                                                      AND  s.oldlogoid <> s.newlogoid)  
+                                                                                       AND  EXISTS (SELECT pdd.barcode
+                                                                                      FROM tp_pm_productiondata pdd
+                                                                                      LEFT JOIN tp_pc_procedure p ON pdd.procedureid = p.procedureid
+                                                                                     WHERE pdd.barcode = pd.barcode
+                                                                                      AND  p.modeltype = '-5'
+                                                                                      AND pdd.valueflag = 1  
+                                                                                      and p.procedureid not in(126,152) 
+                                                                                      and pdd.createtime >=plans1.begintime )
+                                                                                GROUP BY pd.goodsid,pd.logoid
+                                                ) changedata
+                                                WHERE changedata.logoid = :logoid   ";
                             DataTable quantityTable = oracleTrConn.GetSqlResultToDt(sql, new OracleParameter[]{
                                     new OracleParameter(":barcode",OracleDbType.Varchar2, barcode,ParameterDirection.Input),
                                     new OracleParameter(":logoid",OracleDbType.Varchar2, logoid,ParameterDirection.Input),
@@ -33067,7 +33292,7 @@ updateuserid=:updateuserid where barcode=:barcode";
                 for (int i = 0; i < dtData.Rows.Count; i++)
                 {
                     #region 产品是否在产成表中
-                    sql = "select FHUserCode,LCFHUserCode,GoodsCode,GoodsID from TP_PM_FinishedProduct where Barcode=:Barcode";
+                    sql = "select FHUserCode,LCFHUserCode,GoodsCode,GoodsID from TP_PM_FinishedProduct where Barcode=:Barcode for update";
                     Paras = new OracleParameter[]{
                         new OracleParameter(":Barcode",OracleDbType.Varchar2, dtData.Rows[i]["barcode"].ToString(),ParameterDirection.Input),
                     };
@@ -33101,73 +33326,130 @@ updateuserid=:updateuserid where barcode=:barcode";
                     }
 
                     #region 更新产成品相关信息
-                    sql = @"update TP_PM_FinishedProduct
-                            set LCFHUserID=:LCFHUserID,
-                                LCFHUserCode=:LCFHUserCode,
-                                LCFHBatchNo=:LCFHBatchNo,
-                                LCFHTime=sysdate,
-                                UpdateUserID=:UpdateUserID
-                            where Barcode=:Barcode";
-                    Paras = new OracleParameter[]{
-                                    new OracleParameter(":Barcode",OracleDbType.Varchar2, dtData.Rows[i]["barcode"].ToString(),ParameterDirection.Input),
-                                    new OracleParameter(":LCFHUserID",OracleDbType.Int32, sUserInfo.UserID,ParameterDirection.Input),
-                                    new OracleParameter(":UpdateUserID",OracleDbType.Int32, sUserInfo.UserID,ParameterDirection.Input),
-                                    new OracleParameter(":LCFHUserCode",OracleDbType.Varchar2, sUserInfo.UserCode,ParameterDirection.Input),
-                                    new OracleParameter(":LCFHBatchNo",OracleDbType.Varchar2, fhBatchNo,ParameterDirection.Input),
-                                };
-                    oracleTrConn2.ExecuteNonQuery(sql, Paras);
+                    //sql = @"update TP_PM_FinishedProduct
+                    //        set LCFHUserID=:LCFHUserID,
+                    //            LCFHUserCode=:LCFHUserCode,
+                    //            LCFHBatchNo=:LCFHBatchNo,
+                    //            LCFHTime=sysdate,
+                    //            UpdateUserID=:UpdateUserID
+                    //        where Barcode=:Barcode";
+                    //Paras = new OracleParameter[]{
+                    //                new OracleParameter(":Barcode",OracleDbType.Varchar2, dtData.Rows[i]["barcode"].ToString(),ParameterDirection.Input),
+                    //                new OracleParameter(":LCFHUserID",OracleDbType.Int32, sUserInfo.UserID,ParameterDirection.Input),
+                    //                new OracleParameter(":UpdateUserID",OracleDbType.Int32, sUserInfo.UserID,ParameterDirection.Input),
+                    //                new OracleParameter(":LCFHUserCode",OracleDbType.Varchar2, sUserInfo.UserCode,ParameterDirection.Input),
+                    //                new OracleParameter(":LCFHBatchNo",OracleDbType.Varchar2, fhBatchNo,ParameterDirection.Input),
+                    //            };
+                    //oracleTrConn2.ExecuteNonQuery(sql, Paras);
                     #endregion
 
-                    //查询最近一次裸瓷保存的生产数据ID
-                    sql = "select MAX(productionDataID) productionDataID from TP_PM_PRODUCTIONDATA where Barcode=:Barcode AND PROCEDUREID = 159 ";
-                    Paras = new OracleParameter[]{
-                        new OracleParameter(":Barcode",OracleDbType.Varchar2, dtData.Rows[i]["barcode"].ToString(),ParameterDirection.Input),
-                    };
-                    DataTable productionDataIDdt = oracleTrConn2.GetSqlResultToDt(sql, Paras);
-
-                    sql = "select MATERIALCODE from tp_pm_groutingdailydetail where Barcode=:Barcode  ";
-                    Paras = new OracleParameter[]{
-                        new OracleParameter(":Barcode",OracleDbType.Varchar2, dtData.Rows[i]["barcode"].ToString(),ParameterDirection.Input),
-                    };
-                    DataTable materialcodedt = oracleTrConn2.GetSqlResultToDt(sql, Paras);
+                    ////查询最近一次裸瓷保存的生产数据ID
+                    //sql = "select MAX(productionDataID) productionDataID from TP_PM_PRODUCTIONDATA where Barcode=:Barcode AND PROCEDUREID = 159 ";
+                    //Paras = new OracleParameter[]{
+                    //    new OracleParameter(":Barcode",OracleDbType.Varchar2, dtData.Rows[i]["barcode"].ToString(),ParameterDirection.Input),
+                    //};
+                    //DataTable productionDataIDdt = oracleTrConn2.GetSqlResultToDt(sql, Paras);
 
-                    // 交接记录
-                    sql = " INSERT INTO TP_PM_LCFHDO\n" +
-                    "  (GroutingDailyDetailID\n" +
-                    "  ,LCFHUserID\n" +
-                    "  ,LCFHUserCode\n" +
-                    "  ,LCFHBatchNo\n" +
-                    "  ,LCFHTime\n" +
-                    "  ,OnlyCode\n" +
-                    "  ,FINISHEDLOADBATCHNO\n" +
-                    "  ,MATERIALCODE\n" +
-                    "  ,PRODUCTIONDATAID\n" +
-                    "  ,AccountID\n" +
-                    "  ,CreateUserID)\n" +
-                    "  SELECT t.groutingdailydetailid\n" +
-                    "        ,t.lcfhuserid\n" +
-                    "        ,t.lcfhusercode\n" +
-                    "        ,t.lcfhbatchno\n" +
-                    "        ,t.lcfhtime\n" +
-                    "        ,t.onlycode\n" +
-                    "        ,t.FINISHEDLOADBATCHNO\n" +
-                    "        ,:MATERIALCODE\n" +
-                    "        ,:PRODUCTIONDATAID\n" + 
-                    "        ,t.AccountID\n" +
-                    "        ,:UpdateUserID\n" +
-                    "    FROM TP_PM_FinishedProduct t\n" +
-                    "   WHERE t.barcode = :BarCode";
-                    Paras = new OracleParameter[]
-                    {
-                        new OracleParameter(":BarCode",OracleDbType.NVarchar2,dtData.Rows[i]["barcode"],ParameterDirection.Input),
-                        new OracleParameter(":UpdateUserID",OracleDbType.Int32,sUserInfo.UserID,ParameterDirection.Input),
-                        new OracleParameter(":PRODUCTIONDATAID",OracleDbType.Int32,Convert.ToInt32( productionDataIDdt.Rows[0]["productionDataID"]),ParameterDirection.Input),
-                        new OracleParameter(":MATERIALCODE",OracleDbType.NVarchar2, materialcodedt.Rows[0]["MATERIALCODE"].ToString(),ParameterDirection.Input),
-                    };
-                    int resultRow = oracleTrConn2.ExecuteNonQuery(sql, Paras);
+                    //sql = "select MATERIALCODE from tp_pm_groutingdailydetail where Barcode=:Barcode  ";
+                    //Paras = new OracleParameter[]{
+                    //    new OracleParameter(":Barcode",OracleDbType.Varchar2, dtData.Rows[i]["barcode"].ToString(),ParameterDirection.Input),
+                    //};
+                    //DataTable materialcodedt = oracleTrConn2.GetSqlResultToDt(sql, Paras);
+
+                    //// 交接记录
+                    //sql = " INSERT INTO TP_PM_LCFHDO\n" +
+                    //"  (GroutingDailyDetailID\n" +
+                    //"  ,LCFHUserID\n" +
+                    //"  ,LCFHUserCode\n" +
+                    //"  ,LCFHBatchNo\n" +
+                    //"  ,LCFHTime\n" +
+                    //"  ,OnlyCode\n" +
+                    //"  ,FINISHEDLOADBATCHNO\n" +
+                    //"  ,MATERIALCODE\n" +
+                    //"  ,PRODUCTIONDATAID\n" +
+                    //"  ,AccountID\n" +
+                    //"  ,CreateUserID)\n" +
+                    //"  SELECT t.groutingdailydetailid\n" +
+                    //"        ,t.lcfhuserid\n" +
+                    //"        ,t.lcfhusercode\n" +
+                    //"        ,t.lcfhbatchno\n" +
+                    //"        ,t.lcfhtime\n" +
+                    //"        ,t.onlycode\n" +
+                    //"        ,t.FINISHEDLOADBATCHNO\n" +
+                    //"        ,:MATERIALCODE\n" +
+                    //"        ,:PRODUCTIONDATAID\n" + 
+                    //"        ,t.AccountID\n" +
+                    //"        ,:UpdateUserID\n" +
+                    //"    FROM TP_PM_FinishedProduct t\n" +
+                    //"   WHERE t.barcode = :BarCode";
+                    //Paras = new OracleParameter[]
+                    //{
+                    //    new OracleParameter(":BarCode",OracleDbType.NVarchar2,dtData.Rows[i]["barcode"],ParameterDirection.Input),
+                    //    new OracleParameter(":UpdateUserID",OracleDbType.Int32,sUserInfo.UserID,ParameterDirection.Input),
+                    //    new OracleParameter(":PRODUCTIONDATAID",OracleDbType.Int32,Convert.ToInt32( productionDataIDdt.Rows[0]["productionDataID"]),ParameterDirection.Input),
+                    //    new OracleParameter(":MATERIALCODE",OracleDbType.NVarchar2, materialcodedt.Rows[0]["MATERIALCODE"].ToString(),ParameterDirection.Input),
+                    //};
+                    //int resultRow = oracleTrConn2.ExecuteNonQuery(sql, Paras);
                     #endregion
                 }
 
+                #region 批量更新交接表。一板产品的交接时间不一致 add qq 20260126 
+                // 获取一个时间
+                string fixedTimeSql = "SELECT SYSDATE FROM DUAL";
+                DataTable dt = oracleTrConn2.GetSqlResultToDt(fixedTimeSql);
+                DateTime fixedTime = Convert.ToDateTime(dt.Rows[0][0]);
+
+                sql = @" UPDATE TP_PM_FinishedProduct bar
+                      SET bar.LCFHUserID = :LCFHUserID,
+                          bar.LCFHUserCode = :LCFHUserCode,
+                          bar.LCFHBatchNo = :LCFHBatchNo,
+                          bar.LCFHTime = :LCFHTime,
+                          bar.UpdateUserID = :UpdateUserID
+                      WHERE 1 = 1 " + fifter;
+                Paras = new OracleParameter[]{ 
+                    new OracleParameter(":LCFHUserID",OracleDbType.Int32, sUserInfo.UserID,ParameterDirection.Input),
+                    new OracleParameter(":UpdateUserID",OracleDbType.Int32, sUserInfo.UserID,ParameterDirection.Input),
+                    new OracleParameter(":LCFHUserCode",OracleDbType.Varchar2, sUserInfo.UserCode,ParameterDirection.Input),
+                    new OracleParameter(":LCFHBatchNo",OracleDbType.Varchar2, fhBatchNo,ParameterDirection.Input),
+                    new OracleParameter(":LCFHTime",OracleDbType.Date, fixedTime,ParameterDirection.Input),
+                };
+                oracleTrConn2.ExecuteNonQuery(sql, Paras);
+
+                //交接记录
+                sql = @" INSERT INTO TP_PM_LCFHDO
+                      (GroutingDailyDetailID, LCFHUserID, LCFHUserCode, LCFHBatchNo, 
+                       LCFHTime, OnlyCode, FINISHEDLOADBATCHNO, MATERIALCODE, 
+                       PRODUCTIONDATAID, AccountID, CreateUserID)
+                    SELECT bar.groutingdailydetailid,
+                           bar.LCFHUserID,
+                           bar.LCFHUserCode,
+                           bar.LCFHBatchNo,
+                           bar.LCFHTime,
+                           bar.onlycode,
+                           bar.FINISHEDLOADBATCHNO,
+                           gdd.MATERIALCODE,
+                           pd.PRODUCTIONDATAID,
+                           bar.AccountID,
+                           :UpdateUserID
+                    FROM TP_PM_FinishedProduct bar
+                    LEFT JOIN (
+                        SELECT bar.Barcode, MAX(bar.PRODUCTIONDATAID) as PRODUCTIONDATAID
+                        FROM TP_PM_PRODUCTIONDATA bar
+                        WHERE bar.PROCEDUREID = 159 " 
+                        + fifter + @" GROUP BY bar.Barcode
+                    ) pd ON bar.Barcode = pd.Barcode
+                    LEFT JOIN (
+                        SELECT bar.Barcode, bar.MATERIALCODE
+                        FROM tp_pm_groutingdailydetail bar
+                        WHERE 1 = 1 " + fifter + @" ) gdd ON bar.Barcode = gdd.Barcode
+                    WHERE 1 = 1 " + fifter;
+
+                Paras = new OracleParameter[]{ 
+                    new OracleParameter(":UpdateUserID",OracleDbType.Int32, sUserInfo.UserID,ParameterDirection.Input), 
+                };
+                int resultRow = oracleTrConn2.ExecuteNonQuery(sql, Paras);
+                #endregion
+                 
                 #region 同步美云接口
                 //查询该板数据
                 sql = @"SELECT  BAR.BARCODE,GDD.MATERIALCODE,NVL(BAR.BANMA,BAR.FINISHEDLOADBATCHNO) BANMA,BAR.LCFHTIME,BAR.LCFHUSERCODE,BAR.LCFHBATCHNO,BAR.FINISHEDLOADBATCHNO
@@ -33211,6 +33493,8 @@ updateuserid=:updateuserid where barcode=:barcode";
                         //调用接口 
                         try
                         {
+                            // 插入日志记录调用美云接口开始时间
+                            OutputLog.TraceLog(LogPriority.Information, "美云接口调用开始时间", "POST", postString, LocalPath.LogExePath + "SAP_HEGII\\Info_030");
                             result = SAPDataLogic.PostData(urlmy, postString, "POST");
                         }
                         catch (Exception ex)

+ 4 - 0
DK.Service/PMModuleLogic/PMModuleLogicPartial.cs

@@ -5346,6 +5346,7 @@ and (TP_PM_ProductionDataIn.modeltype <> 5 or (exists (select 1 from tp_pm_grout
 										{
 											resultEntity.Result = -1;
 											resultEntity.Message = "物料不一致;SAP返回物料【"+ matnr + "】";
+											return resultEntity;
 										}  
 									}
 									else
@@ -5353,6 +5354,7 @@ and (TP_PM_ProductionDataIn.modeltype <> 5 or (exists (select 1 from tp_pm_grout
 
 										resultEntity.Result = -1;
 										resultEntity.Message = message;
+										return resultEntity;
 									}
 								}
 							 
@@ -5662,6 +5664,7 @@ and (TP_PM_ProductionDataIn.modeltype <> 5 or (exists (select 1 from tp_pm_grout
 										{
 											resultEntity.Result = -1;
 											resultEntity.Message = "物料不一致;SAP返回物料【" + matnr + "】";
+											return resultEntity;
 										}
 									}
 									else
@@ -5669,6 +5672,7 @@ and (TP_PM_ProductionDataIn.modeltype <> 5 or (exists (select 1 from tp_pm_grout
 
 										resultEntity.Result = -1;
 										resultEntity.Message = message;
+										return resultEntity;
 									}
 								}
 

Datei-Diff unterdrückt, da er zu groß ist
+ 800 - 164
DK.Service/PMModuleService/PMModuleLogic.cs


+ 40 - 11
DK.Service/ReportModuleLogic/ReportModuleLogic.cs

@@ -9110,12 +9110,28 @@ namespace Dongke.IBOSS.PRD.Service.ReportModuleLogic
             "           AND (:PUserIDS IS NULL OR\n" +
             "               instr(:PUserIDS, ',' || pd.userid || ',') > 0)\n" +
             "           AND (:backusercode IS NULL OR\n" +
-            "               instr(pd.BACKOUTUSERCODE, :backusercode) > 0)\n" +
-            "           AND (:ptimebegin IS NULL OR pd.createtime >= :ptimebegin)\n" +
-            "           AND (:ptimeend IS NULL OR pd.createtime <= :ptimeend)\n" +
-            "           AND (:backtimebegin IS NULL OR pd.backouttime >= :backtimebegin)\n" +
-            "           AND (:backtimeend IS NULL OR pd.backouttime <= :backtimeend)\n" +
-            "         GROUP BY GROUPING SETS((pd.productionlineid, pd.procedureid, p.procedurename, p.displayno, gt2.goodstypecode, gt2.goodstypename, gt.goodstypecode, gt.goodstypename, goods.goodsid, goods.goodscode, pd.userid, pd.usercode),(pd.productionlineid, pd.procedureid, p.procedurename, p.displayno, gt2.goodstypecode, gt2.goodstypename),(pd.productionlineid, pd.procedureid, p.procedurename, p.displayno),())\n" +
+            "               instr(pd.BACKOUTUSERCODE, :backusercode) > 0)\n";
+            if (se.PTimeStart.HasValue)
+            {
+                sqlString += "   AND ( pd.createtime >= :ptimebegin)\n";
+            }
+            if (se.PTimeEnd.HasValue)
+            {
+                sqlString += "   AND (pd.createtime <= :ptimeend)\n";
+            }
+            if (se.BackTimeStart.HasValue)
+            {
+                sqlString += "   AND ( pd.backouttime >= :backtimebegin)\n";
+            }
+            if (se.BackTimeEnd.HasValue)
+            {
+                sqlString += "   AND ( pd.backouttime <= :backtimeend)\n";
+            }
+            //"           AND (:ptimebegin IS NULL OR pd.createtime >= :ptimebegin)\n" +
+            //"           AND (:ptimeend IS NULL OR pd.createtime <= :ptimeend)\n" +
+            //"           AND (:backtimebegin IS NULL OR pd.backouttime >= :backtimebegin)\n" +
+            //"           AND (:backtimeend IS NULL OR pd.backouttime <= :backtimeend)\n" +
+            sqlString += "         GROUP BY GROUPING SETS((pd.productionlineid, pd.procedureid, p.procedurename, p.displayno, gt2.goodstypecode, gt2.goodstypename, gt.goodstypecode, gt.goodstypename, goods.goodsid, goods.goodscode, pd.userid, pd.usercode),(pd.productionlineid, pd.procedureid, p.procedurename, p.displayno, gt2.goodstypecode, gt2.goodstypename),(pd.productionlineid, pd.procedureid, p.procedurename, p.displayno),())\n" +
             "         ORDER BY p.displayno\n" +
             "                 ,gt2.goodstypecode\n" +
             "                 ,gt.goodstypecode\n" +
@@ -9238,11 +9254,24 @@ namespace Dongke.IBOSS.PRD.Service.ReportModuleLogic
             "   AND (:goodscode IS NULL OR instr(goods.goodscode, :goodscode) > 0)\n" +
             "           AND (:PUserIDS IS NULL OR\n" +
             "               instr(:PUserIDS, ',' || pd.userid || ',') > 0)\n" +
-            "   AND (:backusercode IS NULL OR instr(pd.BACKOUTUSERCODE, :backusercode) > 0)\n" +
-            "   AND (:ptimebegin IS NULL OR pd.createtime >= :ptimebegin)\n" +
-            "   AND (:ptimeend IS NULL OR pd.createtime <= :ptimeend)\n" +
-            "   AND (:backtimebegin IS NULL OR pd.backouttime >= :backtimebegin)\n" +
-            "   AND (:backtimeend IS NULL OR pd.backouttime <= :backtimeend)\n" +
+            "   AND (:backusercode IS NULL OR instr(pd.BACKOUTUSERCODE, :backusercode) > 0)\n";
+            if (se.PTimeStart.HasValue)
+            {
+                sqlString += "   AND ( pd.createtime >= :ptimebegin)\n";
+            }
+            if (se.PTimeEnd.HasValue)
+            {
+                sqlString += "   AND (pd.createtime <= :ptimeend)\n";
+            }
+            if (se.BackTimeStart.HasValue)
+            {
+                sqlString += "   AND ( pd.backouttime >= :backtimebegin)\n";
+            }
+            if (se.BackTimeEnd.HasValue)
+            {
+                sqlString += "   AND ( pd.backouttime <= :backtimeend)\n";
+            }
+            sqlString +=
             "   AND (:puserid IS NULL OR pd.userid = :puserid)\n" +
             "   AND (:goodsid IS NULL OR pd.goodsid = :goodsid)\n" +
             "   AND (:procedureid IS NULL OR pd.procedureid = :procedureid)\n" +

+ 5 - 0
WCF.Service/WCF.Contracts/IPDAModule.cs

@@ -1773,6 +1773,11 @@ namespace Dongke.IBOSS.PRD.WCF.Contracts
         [OperationContract]
         ActionResult SaveBarCodeLogo(string accountCode, string userCode, string userPassword, string sessionKey, string barcode, int logoid);
 
+        [WebInvoke(BodyStyle = WebMessageBodyStyle.WrappedRequest
+   , ResponseFormat = WebMessageFormat.Json
+   , RequestFormat = WebMessageFormat.Json)]
+        [OperationContract]
+        ActionResult SaveBarCodeLogoQRCCK(string accountCode, string userCode, string userPassword, string sessionKey, string barcode, int logoid);
 
         [WebInvoke(BodyStyle = WebMessageBodyStyle.WrappedRequest
    , ResponseFormat = WebMessageFormat.Json

+ 11 - 0
WCF.Service/WCF.Contracts/ISmartDevice.cs

@@ -174,5 +174,16 @@ namespace Dongke.IBOSS.PRD.WCF.Contracts
         [OperationContract]
         string CheckSecurityCodeByBarcode(string accountCode, string userCode, string barCode, string securityCode);
         #endregion
+
+        /// <summary>
+        /// 切换商标
+        /// </summary>
+        /// <param name="accountCode"></param>
+        /// <param name="userCode"></param>
+        /// <param name="barcode"></param>
+        /// <param name="ws_id">工位ID</param>
+        /// <returns></returns>
+        [OperationContract]
+        string SaveBarCodeLogo(string accountCode, string userCode, string barcode,int newlogoid, int ws_id);
     }
 }

+ 22 - 0
WCF.Service/WCF.DataModels/PCModule/GroutingLineEntity.cs

@@ -43,6 +43,8 @@ namespace Dongke.IBOSS.PRD.WCF.DataModels
         private DateTime _optimestamp;
         private int _canmanytimes;
         private string _goodscode;
+        private string _hlinecode;
+        private string _hlineindex;
         /// <summary>
         /// 成型生产线ID
         /// </summary>
@@ -416,6 +418,26 @@ namespace Dongke.IBOSS.PRD.WCF.DataModels
             get { return _TestFlag; }
         }
         //xuwei end
+
+        /// <summary>
+        /// 注浆线组
+        /// </summary>
+        [DataMember]
+        public string HLINECODE
+        {
+            set { _hlinecode = value; }
+            get { return _hlinecode; }
+        }
+
+        /// <summary>
+        /// 注浆线组序号
+        /// </summary>
+        [DataMember]
+        public string HLINEINDEX
+        {
+            set { _hlineindex = value; }
+            get { return _hlineindex; }
+        }
         #endregion Model
     }
 }

+ 75 - 1
WCF.Service/WCF.Services/PDAModuleService.cs

@@ -6503,7 +6503,7 @@ namespace Dongke.IBOSS.PRD.WCF.Services
                 }
                 else if (returnValue == -3)
                 {
-                    actionResult.Message = "已交接的产品不能变更商标";
+                    actionResult.Message = "产品不能变更商标";
                     actionResult.Status = (int)Constant.PDAResult.Fail;
                 }
                 else if (returnValue == -5)
@@ -6535,7 +6535,81 @@ namespace Dongke.IBOSS.PRD.WCF.Services
             }
             return actionResult;
         }
+        /// <summary>
+        /// 乾润成瓷库出库专用
+        /// </summary>
+        /// <param name="accountCode"></param>
+        /// <param name="userCode"></param>
+        /// <param name="userPassword"></param>
+        /// <param name="sessionKey"></param>
+        /// <param name="barcode"></param>
+        /// <param name="logoid"></param>
+        /// <returns></returns>
+        public ActionResult SaveBarCodeLogoQRCCK(string accountCode, string userCode, string userPassword, string sessionKey, string barcode, int logoid)
+        {
+            ActionResult actionResult = new ActionResult();
+            try
+            {
+                // 验证请求头信息
+                actionResult = this.DoPDACheck(accountCode, userCode, userPassword, sessionKey);
+
+                // 验证失败
+                if (actionResult.Status != (int)Constant.PDAResult.Success)
+                {
+                    return actionResult;
+                }
 
+                string returnMessage = "";
+                int returnValue = ServiceInvoker.Invoke<int>(this,
+                   () => PMModuleLogicDAL.SaveBarCodeLogo(barcode, logoid, sUserInfo, out returnMessage,1));
+                actionResult.Result = JsonHelper.ToJson(returnValue);
+                if (returnValue > 0)
+                {
+                    actionResult.Status = (int)Constant.PDAResult.Success;
+                }
+                else if (returnValue == -2)
+                {
+                    //lsq 20210723 已注浆非产成品没有商标可以变更商标
+                    //begin
+                    //actionResult.Message = "条码不存在";
+                    actionResult.Message = "该条码未注浆";
+                    //end
+                    actionResult.Status = (int)Constant.PDAResult.Fail;
+                }
+                else if (returnValue == -3)
+                {
+                    actionResult.Message = "已交接的产品不能变更商标";
+                    actionResult.Status = (int)Constant.PDAResult.Fail;
+                }
+                else if (returnValue == -5)
+                {
+                    actionResult.Message = "该商标已超过生产计划允许变更数量,不能变更商标";
+                    actionResult.Status = (int)Constant.PDAResult.Fail;
+                }
+                else if (returnValue == -6)
+                {
+                    actionResult.Message = "该商标无计划,不允许变更商标";
+                    actionResult.Status = (int)Constant.PDAResult.Fail;
+                }
+                else
+                {
+                    actionResult.Message = returnMessage;
+                    actionResult.Status = (int)Constant.PDAResult.Fail;
+                }
+            }
+            catch (Exception ex)
+            {
+                //LogFileOperation.Error(DataManager.LogFileName, ex.Message);
+                OutputLog.TraceLog(LogPriority.Error,
+                                this.ToString(),
+                                System.Reflection.MethodBase.GetCurrentMethod().Name,
+                                ex.ToString(),
+                                LocalPath.LogExePath);
+                actionResult.Status = (int)Constant.PDAResult.Exception;
+                actionResult.Message = Constant.PDA_RESULT_EXCEPTION;
+            }
+            return actionResult;
+        }
 
         public ActionResult SaveBarCodeLogoAndGlazetype(string accountCode, string userCode, string userPassword, string sessionKey,
             string barcode, int logoid, int glazetypeid)

+ 68 - 0
WCF.Service/WCF.Services/SmartDeviceService.cs

@@ -943,5 +943,73 @@ namespace Dongke.IBOSS.PRD.WCF.Services
             }
         }
         #endregion
+
+        /// <summary>
+        /// 切换商标
+        /// </summary>
+        /// <returns></returns>
+        public string SaveBarCodeLogo(string accountCode, string userCode, string barcode,int newlogoid, int ws_id)
+        {
+            string inputCode = $" accountCode:{accountCode} userCode:{userCode} barcode:{barcode} newlogoid:{newlogoid} ws_id:{ws_id}";
+            try
+            {
+                #region 验证用户 并配置参数 sUserInfo
+                DataTable userInfo = SmartDeviceLogic.CheckUserCode(accountCode, userCode);
+                if (userInfo == null)
+                {
+                    OutputLog.TraceLog(LogPriority.Warning,
+                            this.ToString(),
+                            System.Reflection.MethodBase.GetCurrentMethod().Name,
+                            " userInfo is null " + inputCode,
+                            LocalPath.LogExePath + "SmartDevice\\");
+                    return "EU-01";
+                }
+                SUserInfo sUserInfo = new SUserInfo();
+                sUserInfo.AccountID = Convert.ToInt32(userInfo.Rows[0]["AccountID"]);
+                sUserInfo.AccountCode = accountCode;
+                sUserInfo.UserID = Convert.ToInt32(userInfo.Rows[0]["userid"]);
+                sUserInfo.UserCode = userCode;
+                #endregion
+
+                #region 调用原始业务逻辑
+                string returnMessage = "";
+                int returnValue = PMModuleLogicDAL.SaveBarCodeLogo(barcode, newlogoid, sUserInfo, out returnMessage);
+                 
+                if (returnValue > 0)
+                {
+                    return "OK";
+                }
+                else if (returnValue == -2)
+                {  
+                    return "EE=该条码未注浆";
+                }
+                else if (returnValue == -3)
+                { 
+                    return "EE=已交接的产品不能变更商标";
+                }
+                else if (returnValue == -5)
+                { 
+                    return "EE=该商标已超过生产计划允许变更数量,不能变更商标";
+                }
+                else if (returnValue == -6)
+                { 
+                    return "EE=该商标无计划,不允许变更商标";
+                }
+                else
+                { 
+                    return "EE=" + returnMessage;
+                }
+                #endregion 
+            }
+            catch (Exception ex)
+            {
+                OutputLog.TraceLog(LogPriority.Error,
+                        this.ToString(),
+                        System.Reflection.MethodBase.GetCurrentMethod().Name,
+                        inputCode + ex.ToString(),
+                        LocalPath.LogExePath);
+                return "EE";
+            }
+        }
     }
 }

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.