Просмотр исходного кода

报损数据异常 找回在产数据

fenglinyong 2 лет назад
Родитель
Сommit
c7d187c343
1 измененных файлов с 94 добавлено и 0 удалено
  1. 94 0
      DK.Service/PMModuleLogic/PMModuleLogicDALPartial.cs

+ 94 - 0
DK.Service/PMModuleLogic/PMModuleLogicDALPartial.cs

@@ -3860,6 +3860,100 @@ namespace Dongke.IBOSS.PRD.Service.PMModuleLogic
 
 				returnRows += oracleTrConn.ExecuteNonQuery(sqlInsInProdString, InProductparas);
 
+				//清洗数据后导致在产数据确实,后补数据 冯林勇 2024-02-19 add
+				string sqlProduction = "select * from TP_PM_InProduction where barcode=:barcode ";
+				OracleParameter[] sqlProductionparam = new OracleParameter[] {
+					new OracleParameter(":barcode",OracleDbType.Varchar2, barcode,ParameterDirection.Input)
+				};
+				DataSet dsProduction = oracleTrConn.GetSqlResultToDs(sqlProduction, sqlProductionparam);
+				if (dsProduction == null && dsProduction.Tables[0].Rows.Count == 0)
+				{
+					sqlInsInProdString = @"
+														insert into TP_PM_InProduction(BARCODE, PRODUCTIONLINEID, PRODUCTIONLINECODE, PRODUCTIONLINENAME, 
+                                                    PROCEDUREMODEL, MODELTYPE, REWORKPROCEDUREID, 
+                                                    ISPUBLICBODY, GOODSID, GOODSCODE, GOODSNAME, 
+                                                    USERID, GROUTINGDAILYID, GROUTINGDAILYDETAILID, GROUTINGDATE, 
+                                                    GROUTINGLINEID, GROUTINGLINECODE, GROUTINGLINENAME, GMOULDTYPEID, 
+                                                    CANMANYTIMES, GROUTINGLINEDETAILID, GROUTINGMOULDCODE, MOULDCODE, 
+                                                    REMARKS, ACCOUNTID, VALUEFLAG, CREATETIME, 
+                                                    CREATEUSERID, UPDATETIME, UPDATEUSERID,
+                                                    ISREFIRE, GOODSLEVELID, GOODSLEVELTYPEID, DEFECTFLAG, 
+                                                     GROUTINGUSERID, GROUTINGUSERCODE, GROUTINGNUM, 
+                                                    KILNID, KILNCODE, KILNNAME, KILNCARID, 
+                                                    KILNCARCODE, KILNCARNAME, KILNCARBATCHNO, KILNCARPOSITION,SpecialRepairFlag,FlowProcedureID
+                                                    ,FlowProcedureTime,ProcedureID,ProcedureTime,ProductionDataID,logoid,IsReworkFlag,SemiCheckID
+                                            ) 
+														SELECT
+														S.BARCODE
+														,S.PRODUCTIONLINEID
+														,S.PRODUCTIONLINECODE
+														,S.PRODUCTIONLINENAME
+														,PDT.PROCEDUREMODEL
+														,PDT.MODELTYPE
+														,NULL
+														,0
+														,S.GOODSID
+														,S.GOODSCODE
+														,S.GOODSNAME
+														,PDT.USERID
+														,S.GROUTINGDAILYID
+														,S.GROUTINGDAILYDETAILID
+														,S.GROUTINGDATE
+														,S.GROUTINGLINEID
+														,S.GROUTINGLINECODE
+														,S.GROUTINGLINENAME
+														,S.GMOULDTYPEID
+														,PDT.CANMANYTIMES
+														,S.GROUTINGLINEDETAILID
+														,S.GROUTINGMOULDCODE
+														,S.MOULDCODE
+														,''
+														,1
+														,1
+														,PDO.CREATETIME
+														,PDO.CREATEUSERID
+														,PDT.UPDATETIME
+														,:UpdateUserID
+														,0
+														,''
+														,1
+														,1
+														,DT.USERID
+														,DT.USERCODE
+														,DT.GROUTINGCOUNT
+														,S.KILNID
+														,S.KILNCODE
+														,S.KILNNAME
+														,S.KILNCARID
+														,S.KILNCARCODE
+														,S.KILNCARNAME
+														,S.KILNCARBATCHNO
+														,S.KILNCARPOSITION
+														,S.SPECIALREPAIRFLAG
+														,PDT.PROCEDUREID
+														,PDT.CREATETIME
+														,PDT.PROCEDUREID
+														,PDT.CREATETIME
+														,PDT.PRODUCTIONDATAID
+														,PDT.LOGOID
+														,PDT.ISREWORKED
+														,NULL
+													FROM
+														TP_PM_SCRAPPRODUCT S
+													INNER JOIN TP_PM_PRODUCTIONDATA PDO ON S.BARCODE = PDO.BARCODE AND  PDO.MODELTYPE = 5
+													INNER JOIN (SELECT * FROM TP_PM_PRODUCTIONDATA A WHERE A.BARCODE =:barcode ORDER BY A.CREATETIME DESC) PDT ON S.BARCODE = PDT.BARCODE
+													INNER JOIN TP_PM_GROUTINGDAILYDETAIL DT ON S.BARCODE = DT.BARCODE
+													WHERE S.BARCODE = :barcode
+													and ROWNUM < 2";
+					InProductparas = new OracleParameter[]{
+					  new OracleParameter(":UpdateUserID",OracleDbType.Int32, sUserInfo.UserID,ParameterDirection.Input),
+						new OracleParameter(":barcode",OracleDbType.Varchar2, barcode,ParameterDirection.Input),
+					};
+					returnRows += oracleTrConn.ExecuteNonQuery(sqlInsInProdString, InProductparas);
+				}
+				//清洗数据后导致在产数据确实,后补数据 冯林勇 2024-02-19 add
+
+
 				//第三步,删除回收站中的条码
 				string sqlDelInProductTrashString = "delete from TP_PM_InProductionTrash where barcode=:barcode ";
 				OracleParameter[] TrashProductparas = new OracleParameter[]{