From 0b467b7c35becbc3732fe077d147d5d4e2222b37 Mon Sep 17 00:00:00 2001 From: lilili Date: Wed, 22 Mar 2023 17:47:47 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4=E8=B0=83=E6=8B=A8=E5=85=A5?= =?UTF-8?q?=E5=BA=93=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ICSManufactureService.cs | 10 ++-- .../ICSSoft.DataProject/ICSSubmitService.cs | 46 ++++++++------- .../ICSWareHouseLotInfoService.cs | 58 ++++++++++++++++--- .../ICSWareHouseService.cs | 3 +- 4 files changed, 83 insertions(+), 34 deletions(-) diff --git a/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSManufactureService.cs b/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSManufactureService.cs index 5770b54..ca5c61a 100644 --- a/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSManufactureService.cs +++ b/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSManufactureService.cs @@ -305,11 +305,11 @@ namespace ICSSoft.DataProject RAISERROR('" + language.GetNameByCode("WMSAPIInfo131") + @"',16,1); RETURN END - ELSE IF (@Status!='1') - BEGIN - RAISERROR('" + language.GetNameByCode("WMSAPIInfo132") + @"',16,1); - RETURN - END + --ELSE IF (@Status!='1') + --BEGIN + --RAISERROR('" + language.GetNameByCode("WMSAPIInfo132") + @"',16,1); + --RETURN + --END UPDATE a SET IssueQuantity=ISNULL(IssueQuantity,0)+'{2}' FROM ICSMOIssue a WHERE a.IssueCode='{0}' AND a.Sequence='{3}' AND a.WorkPoint='{1}' diff --git a/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSSubmitService.cs b/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSSubmitService.cs index ceaa4ce..4726bde 100644 --- a/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSSubmitService.cs +++ b/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSSubmitService.cs @@ -4859,8 +4859,11 @@ namespace ICSSoft.DataProject itemInfo.LotNo, itemInfo.CurrentQuantity, item.User, item.WorkPoint, "14", TransTypeEnum.StepTransferApplicationIn.GetDescription(), cmd, language, MergeID); } } - ICSWareHouseService.OneStepTransferDocInERP(TransTypeEnum.OneStepTransferDocIn.GetDescription(), Identification, cmd, language, BusinessCode); - + //上传ERP + if (Convert.ToBoolean(System.Configuration.ConfigurationManager.AppSettings["UploadERP"])) + { + ICSWareHouseService.OneStepTransferDocInERP(TransTypeEnum.OneStepTransferDocIn.GetDescription(), Identification, cmd, language, BusinessCode); + } if (!printTable.Equals("{}")) { cmd.Transaction.Commit(); @@ -4936,21 +4939,21 @@ namespace ICSSoft.DataProject item.TransCode = trans[1]; } //验证信息 - sql = @"DECLARE @Status VARCHAR(10) - SELECT @Status=Status FROM ICSTransfer WHERE TransferNO='{0}' and WorkPoint='{1}' AND Type = '1' - - IF (@Status IS NULL) - BEGIN - RAISERROR('" + language.GetNameByCode("WMSAPIInfo067") + @"',16,1); - RETURN - END - ELSE IF (@Status!='1') - BEGIN - RAISERROR('" + language.GetNameByCode("WMSAPIInfo068") + @"',16,1); - RETURN - END"; - sql = string.Format(sql, item.TransCode, item.WorkPoint); - DBHelper.ExecuteNonQuery(sql, cmd); + //sql = @"DECLARE @Status VARCHAR(10) + // SELECT @Status=Status FROM ICSTransfer WHERE TransferNO='{0}' and WorkPoint='{1}' AND Type = '1' + + // IF (@Status IS NULL) + // BEGIN + // RAISERROR('" + language.GetNameByCode("WMSAPIInfo067") + @"',16,1); + // RETURN + // END + // ELSE IF (@Status!='1') + // BEGIN + // RAISERROR('" + language.GetNameByCode("WMSAPIInfo068") + @"',16,1); + // RETURN + // END"; + //sql = string.Format(sql, item.TransCode, item.WorkPoint); + //DBHelper.ExecuteNonQuery(sql, cmd); foreach (var itemInfo in item.Detail) { @@ -4982,11 +4985,14 @@ namespace ICSSoft.DataProject //更新条码信息 printTable = ICSWareHouseLotInfoService.WareHouseLotInfoTransfer(Identification, item.TransCode, item.TransSequence, itemInfo.WarehouseCode, itemInfo.LocationCode, - itemInfo.LotNo, itemInfo.CurrentQuantity, item.User, item.WorkPoint, "6", TransTypeEnum.OneStepTransferDocIn.GetDescription(), cmd, language, MergeID); + itemInfo.LotNo, itemInfo.CurrentQuantity, item.User, item.WorkPoint, item.TransType, TransTypeEnum.OneStepTransferDocIn.GetDescription(), cmd, language, MergeID); } } - ICSWareHouseService.OneStepTransferDocInERP(TransTypeEnum.OneStepTransferDocIn.GetDescription(), Identification, cmd, language, BusinessCode); - + //上传ERP + if (Convert.ToBoolean(System.Configuration.ConfigurationManager.AppSettings["UploadERP"])) + { + ICSWareHouseService.OneStepTransferDocInERP(TransTypeEnum.OneStepTransferDocIn.GetDescription(), Identification, cmd, language, BusinessCode); + } if (!printTable.Equals("{}")) { cmd.Transaction.Commit(); diff --git a/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSWareHouseLotInfoService.cs b/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSWareHouseLotInfoService.cs index 36149de..422580a 100644 --- a/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSWareHouseLotInfoService.cs +++ b/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSWareHouseLotInfoService.cs @@ -960,6 +960,7 @@ namespace ICSSoft.DataProject RAISERROR('" + language.GetNameByCode("WMSAPIInfo167") + @"',16,1); RETURN END"; + sql = string.Format(sql, LotNo, WorkPoint, Quantity); if (!DBHelper.ExecuteNonQuery(sql, cmd)) @@ -1159,14 +1160,55 @@ namespace ICSSoft.DataProject } ///更新库存 - sql = @"UPDATE ICSWareHouseLotInfo SET WareHouseCode='{2}',LocationCode='{3}' WHERE LotNo='{0}' AND WorkPoint='{1}' - - IF EXISTS(SELECT a.LotNo FROM ICSWareHouseLotInfo a WHERE a.LotNo='{0}' AND a.WorkPoint='{1}' AND Quantity<0) - BEGIN - RAISERROR('" + language.GetNameByCode("WMSAPIInfo167") + @"',16,1); - RETURN - END"; - sql = string.Format(sql, LotNo, WorkPoint, WarehouseCode, LocationCode); + //sql = @"UPDATE ICSWareHouseLotInfo SET WareHouseCode='{2}',LocationCode='{3}' WHERE LotNo='{0}' AND WorkPoint='{1}' + + // IF EXISTS(SELECT a.LotNo FROM ICSWareHouseLotInfo a WHERE a.LotNo='{0}' AND a.WorkPoint='{1}' AND Quantity<0) + // BEGIN + // RAISERROR('" + language.GetNameByCode("WMSAPIInfo167") + @"',16,1); + // RETURN + // END"; + sql = $@"DECLARE @EATTRIBUTE INT; + SELECT + @EATTRIBUTE = a.EATTRIBUTE1 + FROM + ICSTransfer a + WHERE + TransferNO = '{TransCode}' + AND Sequence = '{TransSequence}' + AND WorkPoint = '{WorkPoint}' + AND Type = '{TransType}'; + IF + @EATTRIBUTE IS NULL BEGIN + UPDATE ICSWareHouseLotInfo + SET WareHouseCode = '{WarehouseCode}', + LocationCode = '{LocationCode}' + WHERE + LotNo = '{LotNo}' + AND WorkPoint = '{WorkPoint}'; + END + ELSE IF @EATTRIBUTE='' + BEGIN + UPDATE ICSWareHouseLotInfo + SET WareHouseCode = '{WarehouseCode}', + LocationCode = '{LocationCode}' + WHERE + LotNo = '{LotNo}' + AND WorkPoint = '{WorkPoint}'; + END + ELSE BEGIN + UPDATE ICSWareHouseLotInfo + SET WareHouseCode = '{WarehouseCode}', + LocationCode = '{LocationCode}', + WorkPoint =@EATTRIBUTE + WHERE + LotNo = '{LotNo}' + AND WorkPoint = '{WorkPoint}'; + + END + IF EXISTS ( SELECT a.LotNo FROM ICSWareHouseLotInfo a WHERE a.LotNo= '{LotNo}' AND a.WorkPoint= '{WorkPoint}' AND Quantity < 0 ) BEGIN + RAISERROR ( '{language.GetNameByCode("WMSAPIInfo167")}', 16, 1 ); + RETURN END;"; + sql = string.Format(sql, LotNo, WorkPoint, WarehouseCode, LocationCode, TransCode,TransSequence,TransType); if (!DBHelper.ExecuteNonQuery(sql, cmd)) { diff --git a/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSWareHouseService.cs b/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSWareHouseService.cs index d6f3a69..ee9b934 100644 --- a/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSWareHouseService.cs +++ b/ICSSoft.WMS.WebAPI/ICSSoft.DataProject/ICSWareHouseService.cs @@ -38,7 +38,8 @@ namespace ICSSoft.DataProject WHERE TransferNO='{0}' AND Sequence='{3}' AND WorkPoint='{1}' AND Type='1' IF EXISTS(SELECT a.ID FROM ICSTransfer a - WHERE a.TransferNO='{0}' AND a.Sequence='{3}' and a.WorkPoint='{1}' AND a.Type='1' AND a.TransferQuantity