From 48f4481b61e6da5878415c3bc7ad5a1881244a93 Mon Sep 17 00:00:00 2001 From: schangxiang@126.com <schangxiang@126.com> Date: 周五, 22 11月 2024 07:57:46 +0800 Subject: [PATCH] 2222 --- DBScript/02_DML/01_InitData.sql | 19 + LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/UpiStatusEnum.cs | 12 SDA/iWareSda/Devices/4-Station/StationService/IStationService.cs | 22 + CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/DataProcess_RobotBuffer_ModeChange.cs | 139 ++++++++ SDA/iWareSda/Devices/4-Station/StationModel/DB/RgvComm.cs | 88 +++- CC/iWareCC_ASRS/Connected Services/StationService/StationService.wsdl | 38 ++ SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs | 10 CC/iWareModel/EnumType/WMS/RbRunModeEnum.cs | 33 + CC/iWareModel/EnumType/WMS/UpiStatusEnum.cs | 44 ++ CC/iWareModel/EnumType/WMS/AreaCodeEnum.cs | 16 CC/iWareSql/WmsDBModel/wms_rbline_runmode.cs | 47 ++ CC/iWareCC_ASRS/Connected Services/StationService/item3.xsd | 4 CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs | 106 ++++- CC/iWareSql/iWareSql.csproj | 1 SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs | 88 +++++ CC/iWareSql/WmsDBModel/WmsDBModel.cs | 1 SDA/iWareSda/Devices/4-Station/StationService/StationService.cs | 73 ++++ CC/iWareCC_ASRS/ThreadService/01_BZ01工位(清灰,洗板后工位)/DataProcess_BZ01.cs | 60 ++ CC/iWareSql/WmsDBModel/wms_sys_basic_data.cs | 7 CC/iWareCC_ASRS/Connected Services/StationService/item2.xsd | 41 ++ LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Entity/WmsTask/WmsRbLineRunMode.cs | 59 +++ CC/iWareModel/iWareModel.csproj | 2 CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Inbound/1、DataProcess_BZ39.cs | 32 + LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/RbRunModeEnum.cs | 29 + LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/AreaCodeEnum.cs | 16 LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Configuration/Swagger.json | 4 CC/iWareCC_ASRS/ThreadService/00_269工位/DataProcess_269.cs | 2 CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Outbound/2、DataProcess_RobotBuffer_IssueOutboundTask.cs | 12 CC/iWareCC_ASRS/iWareCC.csproj | 1 29 files changed, 888 insertions(+), 118 deletions(-) diff --git a/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs b/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs index 647c159..58620f9 100644 --- a/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs +++ b/CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs @@ -475,6 +475,9 @@ private bool W_InboundFinishConfirmField; [System.Runtime.Serialization.OptionalFieldAttribute()] + private int W_Inbound_TaskIDField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] private bool W_IsRotateField; [System.Runtime.Serialization.OptionalFieldAttribute()] @@ -484,6 +487,12 @@ private short W_LengthField; [System.Runtime.Serialization.OptionalFieldAttribute()] + private bool W_OutboundFinishConfirmField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int W_Outbound_TaskIDField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] private string W_PackageLengthField; [System.Runtime.Serialization.OptionalFieldAttribute()] @@ -491,9 +500,6 @@ [System.Runtime.Serialization.OptionalFieldAttribute()] private bool W_ReqOutField; - - [System.Runtime.Serialization.OptionalFieldAttribute()] - private string W_TaskIDField; [System.Runtime.Serialization.OptionalFieldAttribute()] private short W_WidthField; @@ -619,6 +625,19 @@ } [System.Runtime.Serialization.DataMemberAttribute()] + public int W_Inbound_TaskID { + get { + return this.W_Inbound_TaskIDField; + } + set { + if ((this.W_Inbound_TaskIDField.Equals(value) != true)) { + this.W_Inbound_TaskIDField = value; + this.RaisePropertyChanged("W_Inbound_TaskID"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] public bool W_IsRotate { get { return this.W_IsRotateField; @@ -658,6 +677,32 @@ } [System.Runtime.Serialization.DataMemberAttribute()] + public bool W_OutboundFinishConfirm { + get { + return this.W_OutboundFinishConfirmField; + } + set { + if ((this.W_OutboundFinishConfirmField.Equals(value) != true)) { + this.W_OutboundFinishConfirmField = value; + this.RaisePropertyChanged("W_OutboundFinishConfirm"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int W_Outbound_TaskID { + get { + return this.W_Outbound_TaskIDField; + } + set { + if ((this.W_Outbound_TaskIDField.Equals(value) != true)) { + this.W_Outbound_TaskIDField = value; + this.RaisePropertyChanged("W_Outbound_TaskID"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] public string W_PackageLength { get { return this.W_PackageLengthField; @@ -692,19 +737,6 @@ if ((this.W_ReqOutField.Equals(value) != true)) { this.W_ReqOutField = value; this.RaisePropertyChanged("W_ReqOut"); - } - } - } - - [System.Runtime.Serialization.DataMemberAttribute()] - public string W_TaskID { - get { - return this.W_TaskIDField; - } - set { - if ((object.ReferenceEquals(this.W_TaskIDField, value) != true)) { - this.W_TaskIDField = value; - this.RaisePropertyChanged("W_TaskID"); } } } @@ -1441,11 +1473,23 @@ [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IStationService/InboundFinishConfirm", ReplyAction="http://tempuri.org/IStationService/InboundFinishConfirmResponse")] System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> InboundFinishConfirmAsync(int deviceId, string stationCode); - [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IStationService/WriteInStoreTaskInfo", ReplyAction="http://tempuri.org/IStationService/WriteInStoreTaskInfoResponse")] - iWareCC.StationService.SdaResEntity WriteInStoreTaskInfo(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height); + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IStationService/OutboundFinishConfirm", ReplyAction="http://tempuri.org/IStationService/OutboundFinishConfirmResponse")] + iWareCC.StationService.SdaResEntity OutboundFinishConfirm(int deviceId, string stationCode); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IStationService/OutboundFinishConfirm", ReplyAction="http://tempuri.org/IStationService/OutboundFinishConfirmResponse")] + System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> OutboundFinishConfirmAsync(int deviceId, string stationCode); [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IStationService/WriteInStoreTaskInfo", ReplyAction="http://tempuri.org/IStationService/WriteInStoreTaskInfoResponse")] - System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> WriteInStoreTaskInfoAsync(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height); + iWareCC.StationService.SdaResEntity WriteInStoreTaskInfo(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height, int inbound_TaskID); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IStationService/WriteInStoreTaskInfo", ReplyAction="http://tempuri.org/IStationService/WriteInStoreTaskInfoResponse")] + System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> WriteInStoreTaskInfoAsync(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height, int inbound_TaskID); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IStationService/WriteOutStoreTaskInfo", ReplyAction="http://tempuri.org/IStationService/WriteOutStoreTaskInfoResponse")] + iWareCC.StationService.SdaResEntity WriteOutStoreTaskInfo(int deviceId, string stationCode, string sourcePlaceNo, int outbound_TaskID); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IStationService/WriteOutStoreTaskInfo", ReplyAction="http://tempuri.org/IStationService/WriteOutStoreTaskInfoResponse")] + System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> WriteOutStoreTaskInfoAsync(int deviceId, string stationCode, string sourcePlaceNo, int outbound_TaskID); [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IStationService/WriteStation_FinishACK", ReplyAction="http://tempuri.org/IStationService/WriteStation_FinishACKResponse")] iWareCC.StationService.SdaResEntity WriteStation_FinishACK(int deviceId, bool value, int plcTaskId); @@ -1581,12 +1625,28 @@ return base.Channel.InboundFinishConfirmAsync(deviceId, stationCode); } - public iWareCC.StationService.SdaResEntity WriteInStoreTaskInfo(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height) { - return base.Channel.WriteInStoreTaskInfo(deviceId, stationCode, toPlaceNo, length, width, height); + public iWareCC.StationService.SdaResEntity OutboundFinishConfirm(int deviceId, string stationCode) { + return base.Channel.OutboundFinishConfirm(deviceId, stationCode); } - public System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> WriteInStoreTaskInfoAsync(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height) { - return base.Channel.WriteInStoreTaskInfoAsync(deviceId, stationCode, toPlaceNo, length, width, height); + public System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> OutboundFinishConfirmAsync(int deviceId, string stationCode) { + return base.Channel.OutboundFinishConfirmAsync(deviceId, stationCode); + } + + public iWareCC.StationService.SdaResEntity WriteInStoreTaskInfo(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height, int inbound_TaskID) { + return base.Channel.WriteInStoreTaskInfo(deviceId, stationCode, toPlaceNo, length, width, height, inbound_TaskID); + } + + public System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> WriteInStoreTaskInfoAsync(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height, int inbound_TaskID) { + return base.Channel.WriteInStoreTaskInfoAsync(deviceId, stationCode, toPlaceNo, length, width, height, inbound_TaskID); + } + + public iWareCC.StationService.SdaResEntity WriteOutStoreTaskInfo(int deviceId, string stationCode, string sourcePlaceNo, int outbound_TaskID) { + return base.Channel.WriteOutStoreTaskInfo(deviceId, stationCode, sourcePlaceNo, outbound_TaskID); + } + + public System.Threading.Tasks.Task<iWareCC.StationService.SdaResEntity> WriteOutStoreTaskInfoAsync(int deviceId, string stationCode, string sourcePlaceNo, int outbound_TaskID) { + return base.Channel.WriteOutStoreTaskInfoAsync(deviceId, stationCode, sourcePlaceNo, outbound_TaskID); } public iWareCC.StationService.SdaResEntity WriteStation_FinishACK(int deviceId, bool value, int plcTaskId) { diff --git a/CC/iWareCC_ASRS/Connected Services/StationService/StationService.wsdl b/CC/iWareCC_ASRS/Connected Services/StationService/StationService.wsdl index abb88a5..b205f97 100644 --- a/CC/iWareCC_ASRS/Connected Services/StationService/StationService.wsdl +++ b/CC/iWareCC_ASRS/Connected Services/StationService/StationService.wsdl @@ -75,11 +75,23 @@ <wsdl:message name="IStationService_InboundFinishConfirm_OutputMessage"> <wsdl:part name="parameters" element="tns:InboundFinishConfirmResponse" /> </wsdl:message> + <wsdl:message name="IStationService_OutboundFinishConfirm_InputMessage"> + <wsdl:part name="parameters" element="tns:OutboundFinishConfirm" /> + </wsdl:message> + <wsdl:message name="IStationService_OutboundFinishConfirm_OutputMessage"> + <wsdl:part name="parameters" element="tns:OutboundFinishConfirmResponse" /> + </wsdl:message> <wsdl:message name="IStationService_WriteInStoreTaskInfo_InputMessage"> <wsdl:part name="parameters" element="tns:WriteInStoreTaskInfo" /> </wsdl:message> <wsdl:message name="IStationService_WriteInStoreTaskInfo_OutputMessage"> <wsdl:part name="parameters" element="tns:WriteInStoreTaskInfoResponse" /> + </wsdl:message> + <wsdl:message name="IStationService_WriteOutStoreTaskInfo_InputMessage"> + <wsdl:part name="parameters" element="tns:WriteOutStoreTaskInfo" /> + </wsdl:message> + <wsdl:message name="IStationService_WriteOutStoreTaskInfo_OutputMessage"> + <wsdl:part name="parameters" element="tns:WriteOutStoreTaskInfoResponse" /> </wsdl:message> <wsdl:message name="IStationService_WriteStation_FinishACK_InputMessage"> <wsdl:part name="parameters" element="tns:WriteStation_FinishACK" /> @@ -144,9 +156,17 @@ <wsdl:input wsaw:Action="http://tempuri.org/IStationService/InboundFinishConfirm" message="tns:IStationService_InboundFinishConfirm_InputMessage" /> <wsdl:output wsaw:Action="http://tempuri.org/IStationService/InboundFinishConfirmResponse" message="tns:IStationService_InboundFinishConfirm_OutputMessage" /> </wsdl:operation> + <wsdl:operation name="OutboundFinishConfirm"> + <wsdl:input wsaw:Action="http://tempuri.org/IStationService/OutboundFinishConfirm" message="tns:IStationService_OutboundFinishConfirm_InputMessage" /> + <wsdl:output wsaw:Action="http://tempuri.org/IStationService/OutboundFinishConfirmResponse" message="tns:IStationService_OutboundFinishConfirm_OutputMessage" /> + </wsdl:operation> <wsdl:operation name="WriteInStoreTaskInfo"> <wsdl:input wsaw:Action="http://tempuri.org/IStationService/WriteInStoreTaskInfo" message="tns:IStationService_WriteInStoreTaskInfo_InputMessage" /> <wsdl:output wsaw:Action="http://tempuri.org/IStationService/WriteInStoreTaskInfoResponse" message="tns:IStationService_WriteInStoreTaskInfo_OutputMessage" /> + </wsdl:operation> + <wsdl:operation name="WriteOutStoreTaskInfo"> + <wsdl:input wsaw:Action="http://tempuri.org/IStationService/WriteOutStoreTaskInfo" message="tns:IStationService_WriteOutStoreTaskInfo_InputMessage" /> + <wsdl:output wsaw:Action="http://tempuri.org/IStationService/WriteOutStoreTaskInfoResponse" message="tns:IStationService_WriteOutStoreTaskInfo_OutputMessage" /> </wsdl:operation> <wsdl:operation name="WriteStation_FinishACK"> <wsdl:input wsaw:Action="http://tempuri.org/IStationService/WriteStation_FinishACK" message="tns:IStationService_WriteStation_FinishACK_InputMessage" /> @@ -262,6 +282,15 @@ <soap:body use="literal" /> </wsdl:output> </wsdl:operation> + <wsdl:operation name="OutboundFinishConfirm"> + <soap:operation soapAction="http://tempuri.org/IStationService/OutboundFinishConfirm" style="document" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> <wsdl:operation name="WriteInStoreTaskInfo"> <soap:operation soapAction="http://tempuri.org/IStationService/WriteInStoreTaskInfo" style="document" /> <wsdl:input> @@ -271,6 +300,15 @@ <soap:body use="literal" /> </wsdl:output> </wsdl:operation> + <wsdl:operation name="WriteOutStoreTaskInfo"> + <soap:operation soapAction="http://tempuri.org/IStationService/WriteOutStoreTaskInfo" style="document" /> + <wsdl:input> + <soap:body use="literal" /> + </wsdl:input> + <wsdl:output> + <soap:body use="literal" /> + </wsdl:output> + </wsdl:operation> <wsdl:operation name="WriteStation_FinishACK"> <soap:operation soapAction="http://tempuri.org/IStationService/WriteStation_FinishACK" style="document" /> <wsdl:input> diff --git a/CC/iWareCC_ASRS/Connected Services/StationService/item2.xsd b/CC/iWareCC_ASRS/Connected Services/StationService/item2.xsd index b2b4a80..0bf77f3 100644 --- a/CC/iWareCC_ASRS/Connected Services/StationService/item2.xsd +++ b/CC/iWareCC_ASRS/Connected Services/StationService/item2.xsd @@ -170,6 +170,21 @@ </xs:sequence> </xs:complexType> </xs:element> + <xs:element name="OutboundFinishConfirm"> + <xs:complexType> + <xs:sequence> + <xs:element minOccurs="0" name="deviceId" type="xs:int" /> + <xs:element minOccurs="0" name="stationCode" nillable="true" type="xs:string" /> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="OutboundFinishConfirmResponse"> + <xs:complexType> + <xs:sequence> + <xs:element xmlns:q12="http://schemas.datacontract.org/2004/07/iWareSda" minOccurs="0" name="OutboundFinishConfirmResult" nillable="true" type="q12:SdaResEntity" /> + </xs:sequence> + </xs:complexType> + </xs:element> <xs:element name="WriteInStoreTaskInfo"> <xs:complexType> <xs:sequence> @@ -179,13 +194,31 @@ <xs:element minOccurs="0" name="length" type="xs:short" /> <xs:element minOccurs="0" name="width" type="xs:short" /> <xs:element minOccurs="0" name="height" type="xs:short" /> + <xs:element minOccurs="0" name="inbound_TaskID" type="xs:int" /> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="WriteInStoreTaskInfoResponse"> <xs:complexType> <xs:sequence> - <xs:element xmlns:q12="http://schemas.datacontract.org/2004/07/iWareSda" minOccurs="0" name="WriteInStoreTaskInfoResult" nillable="true" type="q12:SdaResEntity" /> + <xs:element xmlns:q13="http://schemas.datacontract.org/2004/07/iWareSda" minOccurs="0" name="WriteInStoreTaskInfoResult" nillable="true" type="q13:SdaResEntity" /> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="WriteOutStoreTaskInfo"> + <xs:complexType> + <xs:sequence> + <xs:element minOccurs="0" name="deviceId" type="xs:int" /> + <xs:element minOccurs="0" name="stationCode" nillable="true" type="xs:string" /> + <xs:element minOccurs="0" name="sourcePlaceNo" nillable="true" type="xs:string" /> + <xs:element minOccurs="0" name="outbound_TaskID" type="xs:int" /> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="WriteOutStoreTaskInfoResponse"> + <xs:complexType> + <xs:sequence> + <xs:element xmlns:q14="http://schemas.datacontract.org/2004/07/iWareSda" minOccurs="0" name="WriteOutStoreTaskInfoResult" nillable="true" type="q14:SdaResEntity" /> </xs:sequence> </xs:complexType> </xs:element> @@ -201,7 +234,7 @@ <xs:element name="WriteStation_FinishACKResponse"> <xs:complexType> <xs:sequence> - <xs:element xmlns:q13="http://schemas.datacontract.org/2004/07/iWareSda" minOccurs="0" name="WriteStation_FinishACKResult" nillable="true" type="q13:SdaResEntity" /> + <xs:element xmlns:q15="http://schemas.datacontract.org/2004/07/iWareSda" minOccurs="0" name="WriteStation_FinishACKResult" nillable="true" type="q15:SdaResEntity" /> </xs:sequence> </xs:complexType> </xs:element> @@ -219,7 +252,7 @@ <xs:element name="WriteScanValidateACKResponse"> <xs:complexType> <xs:sequence> - <xs:element xmlns:q14="http://schemas.datacontract.org/2004/07/iWareSda" minOccurs="0" name="WriteScanValidateACKResult" nillable="true" type="q14:SdaResEntity" /> + <xs:element xmlns:q16="http://schemas.datacontract.org/2004/07/iWareSda" minOccurs="0" name="WriteScanValidateACKResult" nillable="true" type="q16:SdaResEntity" /> </xs:sequence> </xs:complexType> </xs:element> @@ -237,7 +270,7 @@ <xs:element name="WriteStation_XigangGetDataForOutResponse"> <xs:complexType> <xs:sequence> - <xs:element xmlns:q15="http://schemas.datacontract.org/2004/07/iWareSda" minOccurs="0" name="WriteStation_XigangGetDataForOutResult" nillable="true" type="q15:SdaResEntity" /> + <xs:element xmlns:q17="http://schemas.datacontract.org/2004/07/iWareSda" minOccurs="0" name="WriteStation_XigangGetDataForOutResult" nillable="true" type="q17:SdaResEntity" /> </xs:sequence> </xs:complexType> </xs:element> diff --git a/CC/iWareCC_ASRS/Connected Services/StationService/item3.xsd b/CC/iWareCC_ASRS/Connected Services/StationService/item3.xsd index c44b458..b24b7be 100644 --- a/CC/iWareCC_ASRS/Connected Services/StationService/item3.xsd +++ b/CC/iWareCC_ASRS/Connected Services/StationService/item3.xsd @@ -42,13 +42,15 @@ <xs:element minOccurs="0" name="W_Destination_Out" nillable="true" type="xs:string" /> <xs:element minOccurs="0" name="W_Height" type="xs:short" /> <xs:element minOccurs="0" name="W_InboundFinishConfirm" type="xs:boolean" /> + <xs:element minOccurs="0" name="W_Inbound_TaskID" type="xs:int" /> <xs:element minOccurs="0" name="W_IsRotate" type="xs:boolean" /> <xs:element minOccurs="0" name="W_KittingInfo" nillable="true" type="xs:string" /> <xs:element minOccurs="0" name="W_Length" type="xs:short" /> + <xs:element minOccurs="0" name="W_OutboundFinishConfirm" type="xs:boolean" /> + <xs:element minOccurs="0" name="W_Outbound_TaskID" type="xs:int" /> <xs:element minOccurs="0" name="W_PackageLength" nillable="true" type="xs:string" /> <xs:element minOccurs="0" name="W_PackageWidth" nillable="true" type="xs:string" /> <xs:element minOccurs="0" name="W_ReqOut" type="xs:boolean" /> - <xs:element minOccurs="0" name="W_TaskID" nillable="true" type="xs:string" /> <xs:element minOccurs="0" name="W_Width" type="xs:short" /> <xs:element minOccurs="0" name="W_X_Offset" nillable="true" type="xs:string" /> <xs:element minOccurs="0" name="W_Y_Offset" nillable="true" type="xs:string" /> diff --git "a/CC/iWareCC_ASRS/ThreadService/00_269\345\267\245\344\275\215/DataProcess_269.cs" "b/CC/iWareCC_ASRS/ThreadService/00_269\345\267\245\344\275\215/DataProcess_269.cs" index 5eb3170..ce9dfce 100644 --- "a/CC/iWareCC_ASRS/ThreadService/00_269\345\267\245\344\275\215/DataProcess_269.cs" +++ "b/CC/iWareCC_ASRS/ThreadService/00_269\345\267\245\344\275\215/DataProcess_269.cs" @@ -60,7 +60,7 @@ continue; } - upiObj.AreaCode = (int)AreaCodeEnum.缂撳瓨鍒嗘嫞鍖�; + upiObj.AreaCode = (int)AreaCodeEnum.寰呯紦瀛樺垎鎷e尯; wmsDB.SaveChanges(); } diff --git "a/CC/iWareCC_ASRS/ThreadService/01_BZ01\345\267\245\344\275\215\357\274\210\346\270\205\347\201\260\357\274\214\346\264\227\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_BZ01.cs" "b/CC/iWareCC_ASRS/ThreadService/01_BZ01\345\267\245\344\275\215\357\274\210\346\270\205\347\201\260\357\274\214\346\264\227\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_BZ01.cs" index 8c4b728..b99875d 100644 --- "a/CC/iWareCC_ASRS/ThreadService/01_BZ01\345\267\245\344\275\215\357\274\210\346\270\205\347\201\260\357\274\214\346\264\227\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_BZ01.cs" +++ "b/CC/iWareCC_ASRS/ThreadService/01_BZ01\345\267\245\344\275\215\357\274\210\346\270\205\347\201\260\357\274\214\346\264\227\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_BZ01.cs" @@ -63,30 +63,62 @@ } //鏌ヨ鏄惁榻愬寘 var allList = wmsDB.mes_batchOrderUPI_new.Where(x => x.PackageCode == upiObj.PackageCode).ToList(); - var isQiTaoList = allList.Where(x => x.AreaCode == (int)AreaCodeEnum.缂撳瓨鍒嗘嫞鍖�).ToList(); + var isQiTaoList = allList.Where(x => x.AreaCode == (int)AreaCodeEnum.寰呯紦瀛樺垎鎷e尯 + || + x.AreaCode == (int)AreaCodeEnum.缂撳瓨鍒嗘嫞鍖� + || + x.AreaCode == (int)AreaCodeEnum.鐮佸灈鍖哄煙 + || + x.AreaCode == (int)AreaCodeEnum.鏈哄櫒浜哄矝缂撳瓨鍖哄煙 + ).ToList(); if (isQiTaoList.Count() != allList.Count()) {//涓嶉綈鍖� qitaoReault = false; + upiObj.AreaCode = (int)AreaCodeEnum.缂撳瓨鍒嗘嫞鍖�; } else {//榻愬寘 qitaoReault = true; + upiObj.AreaCode = (int)AreaCodeEnum.鐮佸灈鍖哄煙; } + + using (StationServiceClient client = new StationServiceClient()) + { + var res = await client.WriteQiTaoInfoAsync((int)EDevice.Station, rgvLocation, qitaoReault); + if (!res.result) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"{rgvLocation.ToString()}-鎺ㄩ�侀綈濂楃粨鏋滃け璐�,WriteQiTaoInfoAsync杩斿洖:{res.resMsg}"; + continue; + } + else + { + Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-鎺ㄩ�侀綈濂楃粨鏋滄垚鍔�,WriteQiTaoInfoAsync锛屽弬鏁�: 绔欑偣{rgvLocation},榻愬缁撴灉:{qitaoReault}"); + } + } + + //鏇存柊UPI鐘舵�� + var upiObjList = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == upiCode).ToList(); + foreach (var item in upiObjList) + { + if (qitaoReault) + { + item.UpiStatus = (int)UpiStatusEnum.宸查綈鍖�; + } + else + { + item.UpiStatus = (int)UpiStatusEnum.涓嶉綈鍖�; + } + } + //鏇存柊 鏈�鍚庝竴娆″湪 BZ_01鐨勭郴缁熷鐞嗙殑鏉夸欢 鏁版嵁 + var rbRunMode = wmsDB.wms_rbline_runmode.FirstOrDefault(); + rbRunMode.PlanNo = upiObj.PlanNo; + rbRunMode.OrderId = upiObj.OrderId; + rbRunMode.PackageCode = upiObj.PackageCode; + + wmsDB.SaveChanges(); } - using (StationServiceClient client = new StationServiceClient()) - { - var res = await client.WriteQiTaoInfoAsync((int)EDevice.Station, rgvLocation, qitaoReault); - if (!res.result) - { - SystemWarningMsg._lbl_alert_DataProcess_BZ01 = $"{rgvLocation.ToString()}-鎺ㄩ�侀綈濂楃粨鏋滃け璐�,WriteQiTaoInfoAsync杩斿洖:{res.resMsg}"; - continue; - } - else - { - Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-鎺ㄩ�侀綈濂楃粨鏋滄垚鍔�,WriteQiTaoInfoAsync锛屽弬鏁�: 绔欑偣{rgvLocation},榻愬缁撴灉:{qitaoReault}"); - } - } + } } } diff --git "a/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_RobotBuffer_ModeChange.cs" "b/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_RobotBuffer_ModeChange.cs" new file mode 100644 index 0000000..595fc18 --- /dev/null +++ "b/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/DataProcess_RobotBuffer_ModeChange.cs" @@ -0,0 +1,139 @@ +锘縰sing Admin.NET.Application; +using iWareCC.Common.Helper; +using iWareCC.StationService; +using iWareCommon.Common.Globle; +using iWareCommon.Utils; +using iWareModel; +using iWareSql.DataAccess; +using iWareSql.DBModel; +using iWareSql.WmsDBModel; +using System; +using System.Collections.Generic; +using System.Linq; +using System.ServiceModel.Configuration; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using WZ.Useful.Commons; +using XiGang.Core.Model; + +namespace iWareCC.ThreadService +{ + /// <summary> + /// 鏈哄櫒浜虹紦瀛樺矝 妯″紡鍒囨崲 澶勭悊 + /// </summary> + public static class DataProcess_RobotBuffer_ModeChange + { + public static async void Handler() + { + var alertMsg = ""; + LogType logType = LogType.DataProcess_BZ39; + while (true) + { + Thread.Sleep(2000);//浼戠湢2绉掞紝灏嗕紤鐪犲啓鍒板墠闈紝鏄负浜嗕笅闈㈢殑continue鏂规硶鎵ц鍚庝笉鏄剧ず閿欒淇℃伅鐨勬彁绀猴紒锛侊紒銆怑ditBy shaocx,2022-05-24銆� + SystemWarningMsg._lbl_alert_DataProcess_BZ39 = string.Empty; + try + { + if (SystemValue.isAllowRuning_DataProcess_BZ39 && SystemValue.isStartedModel) + { + var rgvLocation = StationLocationEnum.BZ39.ToString(); + /* + * 1銆佸鏋� bz01 鐨勬澘鏂欐槸鏂板寘 锛屽苟涓旀湁瑕佸嚭搴撶殑闇�姹傦紝灏卞垏鎹㈠埌鍑哄簱妯″紡锛屽惁鍒欐槸鍏ュ簱妯″紡 + * 2銆� + */ + + + var obj = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation.ToString()).FirstOrDefault(); + if (obj.R_ReqParseData) + { + var result = obj.R_ReadCodeResult; + if (string.IsNullOrEmpty(result)) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-璇锋眰浜嗚В鐮侊紝浣嗘槸缁撴灉鏄┖鐨�,姝ゆ寰幆缁撴潫"; + continue; + } + var upiCode = result; + var qitaoReault = false; + using (WmsDBModel wmsDB = new WmsDBModel()) + { + var rbRunMode = wmsDB.wms_rbline_runmode.FirstOrDefault(); + var lastUpi = rbRunMode.UPI; + var lastPackageCode = rbRunMode.PackageCode; + + var rgvLocation_BZ01 = StationLocationEnum.BZ01.ToString(); + var currUpi_BZ01 = ""; + var obj_BZ01 = FormCC.stationView.R_StationForReadCommList.Where(x => x.StationCode == rgvLocation_BZ01.ToString()).FirstOrDefault(); + if (obj.R_ReqParseData) + { + currUpi_BZ01 = obj_BZ01.R_ReadCodeResult; + } + if (string.IsNullOrEmpty(currUpi_BZ01)) + { + + } + + var rgvLocation22 = StationLocationEnum.BZ01.ToString(); + /* + * 1銆佷粠鏁版嵁搴撲腑鍒ゆ柇鏄惁榻愬 + * 2銆佹牴鎹綈濂楃粨鏋滐紝鎺ㄩ�佺粰PLC + */ + + + //瑕佹槸鏈夊凡涓嬪彂鐨勪换鍔★紝灏变笉瑕佹墽琛� + var isValidate = TaskHandler.ValidateIssueTaskForRobotBuffer(wmsDB); + if (!isValidate) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-鏈夆�樺凡涓嬪彂鈥欑殑浠诲姟锛屼笉鑳藉鐞�,姝ゆ寰幆缁撴潫"; + continue; + } + + + + var taskList = wmsDB.wms_rbline_task.Where(x => x.PlaceCode == obj.R_OutboundNumber + && x.RbTaskType == (int)RbTaskTypeEnum.鍑哄簱浠诲姟 + && x.TaskStatus == (int)TaskStatusEnum.鏂板缓).OrderBy(x => x.PackageCode).ToList(); + if (taskList == null) + { + SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()},鏍规嵁 R_OutboundNumber:{obj.R_OutboundNumber}娌℃湁鎵惧埌宸蹭笅鍙戠殑浠诲姟 "; + continue; + } + + var doTask = taskList.FirstOrDefault(); + + var upiObj = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == upiCode).FirstOrDefault(); + if (upiObj == null) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()},鏍规嵁UPI:{upiCode}娌℃湁鎵惧埌瀵硅薄 "; + continue; + } + + //杩欓噷鏀逛负 涓嬪彂 鍑哄簱浠诲姟 + using (StationServiceClient client = new StationServiceClient()) + { + var res = await client.WriteOutStoreTaskInfoAsync((int)EDevice.Station, rgvLocation, doTask.PlaceCode, Convert.ToInt32(doTask.TaskNo)); + if (!res.result) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 澶辫触,WriteOutStoreTaskInfoAsync 杩斿洖:{res.resMsg}"; + continue; + } + else + { + Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 鎴愬姛,WriteOutStoreTaskInfoAsync锛屽弬鏁�: 绔欑偣{rgvLocation}"); + } + } + + wmsDB.SaveChanges(); + } + } + } + } + catch (Exception ex) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ39 += " 鍑虹幇寮傚父:" + ex.Message + SysGloble.SPLIT_STR; + Log4NetHelper.WriteErrorLog(logType, " 鍑虹幇寮傚父锛�" + ex.Message, ex); + } + } + } + + } +} diff --git "a/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Inbound/1\343\200\201DataProcess_BZ39.cs" "b/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Inbound/1\343\200\201DataProcess_BZ39.cs" index 12475a8..4cb7bf2 100644 --- "a/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Inbound/1\343\200\201DataProcess_BZ39.cs" +++ "b/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Inbound/1\343\200\201DataProcess_BZ39.cs" @@ -75,20 +75,6 @@ continue; } - using (StationServiceClient client = new StationServiceClient()) - { - var res = await client.WriteInStoreTaskInfoAsync((int)EDevice.Station, rgvLocation, place.PlaceCode, (short)upiObj.Length, - (short)upiObj.Width, (short)upiObj.Thk); - if (!res.result) - { - SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 澶辫触,WriteInStoreTaskInfoAsync 杩斿洖:{res.resMsg}"; - continue; - } - else - { - Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 鎴愬姛,WriteInStoreTaskInfoAsync锛屽弬鏁�: 绔欑偣{rgvLocation}"); - } - } //璁板綍浠诲姟 var _id = Yitter.IdGenerator.YitIdHelper.NextId(); @@ -122,6 +108,24 @@ wmsDB.wms_rbline_task.Add(task); + using (StationServiceClient client = new StationServiceClient()) + { + var res = await client.WriteInStoreTaskInfoAsync((int)EDevice.Station, rgvLocation, place.PlaceCode, + (short)upiObj.Length, + (short)upiObj.Width, (short)upiObj.Thk, Convert.ToInt32(task.TaskNo)); + if (!res.result) + { + SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 澶辫触,WriteInStoreTaskInfoAsync 杩斿洖:{res.resMsg}"; + continue; + } + else + { + Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 鎴愬姛,WriteInStoreTaskInfoAsync锛屽弬鏁�: 绔欑偣{rgvLocation}"); + } + } + + + place.PlaceStatus = (int)PlaceStatusEnum.閿佸畾; wmsDB.SaveChanges(); diff --git "a/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Outbound/2\343\200\201DataProcess_RobotBuffer_IssueOutboundTask.cs" "b/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Outbound/2\343\200\201DataProcess_RobotBuffer_IssueOutboundTask.cs" index a940e3c..b70a353 100644 --- "a/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Outbound/2\343\200\201DataProcess_RobotBuffer_IssueOutboundTask.cs" +++ "b/CC/iWareCC_ASRS/ThreadService/02_BZ39\345\267\245\344\275\215\357\274\210\350\241\245\346\235\277\345\220\216\345\267\245\344\275\215\357\274\211/Outbound/2\343\200\201DataProcess_RobotBuffer_IssueOutboundTask.cs" @@ -72,11 +72,8 @@ SystemWarningMsg._lbl_Alert_DataProcess_RobotBuffer_FinishTaskForOutbound = $"{rgvLocation.ToString()},鏍规嵁 R_OutboundNumber:{obj.R_OutboundNumber}娌℃湁鎵惧埌宸蹭笅鍙戠殑浠诲姟 "; continue; } - var groups = taskList.GroupBy(x => x.PackageCode).ToList(); - foreach (var gg in groups) - { - } + var doTask = taskList.FirstOrDefault(); var upiObj = wmsDB.mes_batchOrderUPI_new.Where(x => x.UPI == upiCode).FirstOrDefault(); if (upiObj == null) @@ -88,16 +85,15 @@ //杩欓噷鏀逛负 涓嬪彂 鍑哄簱浠诲姟 using (StationServiceClient client = new StationServiceClient()) { - var res = await client.WriteInStoreTaskInfoAsync((int)EDevice.Station, rgvLocation, "", (short)upiObj.Length, - (short)upiObj.Width, (short)upiObj.Thk); + var res = await client.WriteOutStoreTaskInfoAsync((int)EDevice.Station, rgvLocation, doTask.PlaceCode, Convert.ToInt32(doTask.TaskNo)); if (!res.result) { - SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 澶辫触,WriteInStoreTaskInfoAsync 杩斿洖:{res.resMsg}"; + SystemWarningMsg._lbl_alert_DataProcess_BZ39 = $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 澶辫触,WriteOutStoreTaskInfoAsync 杩斿洖:{res.resMsg}"; continue; } else { - Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍏ュ簱浠诲姟 鎴愬姛,WriteInStoreTaskInfoAsync锛屽弬鏁�: 绔欑偣{rgvLocation}"); + Log4NetHelper.WriteInfoLog(logType, $"{rgvLocation.ToString()}-涓嬪彂鍑哄簱浠诲姟 鎴愬姛,WriteOutStoreTaskInfoAsync锛屽弬鏁�: 绔欑偣{rgvLocation}"); } } diff --git a/CC/iWareCC_ASRS/iWareCC.csproj b/CC/iWareCC_ASRS/iWareCC.csproj index 6f96d19..04c7263 100644 --- a/CC/iWareCC_ASRS/iWareCC.csproj +++ b/CC/iWareCC_ASRS/iWareCC.csproj @@ -155,6 +155,7 @@ <Compile Include="DeviceThreadFactory\DeviceThreadService\SrmThreadService\SrmTaskThreadService.cs" /> <Compile Include="ThreadService\00_269宸ヤ綅\DataProcess_269.cs" /> <Compile Include="ThreadService\01_BZ01宸ヤ綅锛堟竻鐏帮紝娲楁澘鍚庡伐浣嶏級\DataProcess_BZ01.cs" /> + <Compile Include="ThreadService\02_BZ39宸ヤ綅锛堣ˉ鏉垮悗宸ヤ綅锛塡DataProcess_RobotBuffer_ModeChange.cs" /> <Compile Include="ThreadService\02_BZ39宸ヤ綅锛堣ˉ鏉垮悗宸ヤ綅锛塡Outbound\2銆丏ataProcess_RobotBuffer_IssueOutboundTask.cs" /> <Compile Include="ThreadService\02_BZ39宸ヤ綅锛堣ˉ鏉垮悗宸ヤ綅锛塡Outbound\1銆丏ataProcess_RobotBuffer_AutoQiTaoOutbound.cs" /> <Compile Include="ThreadService\02_BZ39宸ヤ綅锛堣ˉ鏉垮悗宸ヤ綅锛塡Outbound\3銆丏ataProcess_RobotBuffer_FinishTaskForOutbound.cs" /> diff --git a/CC/iWareModel/EnumType/WMS/AreaCodeEnum.cs b/CC/iWareModel/EnumType/WMS/AreaCodeEnum.cs index 6d77c03..e8f37f5 100644 --- a/CC/iWareModel/EnumType/WMS/AreaCodeEnum.cs +++ b/CC/iWareModel/EnumType/WMS/AreaCodeEnum.cs @@ -12,37 +12,43 @@ public enum AreaCodeEnum { /// <summary> + /// 寰呯紦瀛樺垎鎷e尯 + /// </summary> + [Description("寰呯紦瀛樺垎鎷e尯")] + 寰呯紦瀛樺垎鎷e尯 = 1, + + /// <summary> /// 缂撳瓨鍒嗘嫞鍖� /// </summary> [Description("缂撳瓨鍒嗘嫞鍖�")] - 缂撳瓨鍒嗘嫞鍖� = 1, + 缂撳瓨鍒嗘嫞鍖� = 2, /// <summary> /// 鏈哄櫒浜哄矝缂撳瓨鍖哄煙 /// </summary> [Description("鏈哄櫒浜哄矝缂撳瓨鍖哄煙")] - 鏈哄櫒浜哄矝缂撳瓨鍖哄煙 = 2, + 鏈哄櫒浜哄矝缂撳瓨鍖哄煙 = 3, /// <summary> /// 鐮佸灈鍖哄煙 /// </summary> [Description("鐮佸灈鍖哄煙")] - 鐮佸灈鍖哄煙 = 3, + 鐮佸灈鍖哄煙 = 4, /// <summary> /// 鍚堝寘瑁佸垏鍖� /// </summary> [Description("鍚堝寘瑁佸垏鍖�")] - 鍚堝寘瑁佸垏鍖� = 4, + 鍚堝寘瑁佸垏鍖� = 5, /// <summary> /// 鍖呰绾垮尯鍩� /// </summary> [Description("鍖呰绾垮尯鍩�")] - 鍖呰绾垮尯鍩� = 5 + 鍖呰绾垮尯鍩� = 6 } diff --git a/CC/iWareModel/EnumType/WMS/RbRunModeEnum.cs b/CC/iWareModel/EnumType/WMS/RbRunModeEnum.cs new file mode 100644 index 0000000..7980f82 --- /dev/null +++ b/CC/iWareModel/EnumType/WMS/RbRunModeEnum.cs @@ -0,0 +1,33 @@ +锘� + +using System.ComponentModel; + +namespace Admin.NET.Application +{ + + /// <summary> + /// 鏈哄櫒浜虹紦瀛樺矝杩愯妯″紡 + /// </summary> + [Description("鏈哄櫒浜虹紦瀛樺矝杩愯妯″紡")] + public enum RbRunModeEnum + { + /// <summary> + /// 鍏ュ簱妯″紡 + /// </summary> + [Description("鍏ュ簱妯″紡")] + 鍏ュ簱妯″紡 = 1, + + /// <summary> + /// 鍑哄簱妯″紡 + /// </summary> + [Description("鍑哄簱妯″紡")] + 鍑哄簱妯″紡 = 2, + + /// <summary> + /// 寮哄埗鍑哄簱妯″紡 + /// </summary> + [Description("寮哄埗鍑哄簱妯″紡")] + 寮哄埗鍑哄簱妯″紡 = 3, + + } +} \ No newline at end of file diff --git a/CC/iWareModel/EnumType/WMS/UpiStatusEnum.cs b/CC/iWareModel/EnumType/WMS/UpiStatusEnum.cs new file mode 100644 index 0000000..00e9d98 --- /dev/null +++ b/CC/iWareModel/EnumType/WMS/UpiStatusEnum.cs @@ -0,0 +1,44 @@ +锘� + +using System.ComponentModel; + +namespace Admin.NET.Application { + +/// <summary> +/// 鏉挎枡鐘舵�佹灇涓� +/// </summary> +[Description("鏉挎枡鐘舵�佹灇涓�")] +public enum UpiStatusEnum +{ + /// <summary> + /// 鍒濆 + /// </summary> + [Description("鍒濆")] + 鍒濆 = 0, + + /// <summary> + /// 涓嶉綈鍖� + /// </summary> + [Description("涓嶉綈鍖�")] + 涓嶉綈鍖� = 1, + + /// <summary> + /// 宸查綈鍖� + /// </summary> + [Description("宸查綈鍖�")] + 宸查綈鍖� = 2, + + /// <summary> + /// 宸茬爜鍨� + /// </summary> + [Description("宸茬爜鍨�")] + 宸茬爜鍨� = 3, + + /// <summary> + /// 宸插悎鍖� + /// </summary> + [Description("宸插悎鍖�")] + 宸插悎鍖� = 4 + +} +} \ No newline at end of file diff --git a/CC/iWareModel/iWareModel.csproj b/CC/iWareModel/iWareModel.csproj index b61fc9f..d2e2f0e 100644 --- a/CC/iWareModel/iWareModel.csproj +++ b/CC/iWareModel/iWareModel.csproj @@ -112,9 +112,11 @@ <Compile Include="EnumType\TaskExcuteTypeEnum.cs" /> <Compile Include="EnumType\ThreadDirectionEnum.cs" /> <Compile Include="EnumType\WMS\AreaCodeEnum.cs" /> + <Compile Include="EnumType\WMS\RbRunModeEnum.cs" /> <Compile Include="EnumType\WMS\RbTaskTypeEnum.cs" /> <Compile Include="EnumType\WMS\StockStatusEnum.cs" /> <Compile Include="EnumType\WMS\TaskStatusEnum.cs" /> + <Compile Include="EnumType\WMS\UpiStatusEnum.cs" /> <Compile Include="EnumType\WMS\WmsPlaceEnum.cs" /> <Compile Include="EnumType\XiGangPublicCommon\AddTransferTaskEnum.cs" /> <Compile Include="EnumType\XiGangPublicCommon\MainInOutFlagEnum.cs" /> diff --git a/CC/iWareSql/WmsDBModel/WmsDBModel.cs b/CC/iWareSql/WmsDBModel/WmsDBModel.cs index 0385382..4ad1a5e 100644 --- a/CC/iWareSql/WmsDBModel/WmsDBModel.cs +++ b/CC/iWareSql/WmsDBModel/WmsDBModel.cs @@ -70,6 +70,7 @@ public virtual DbSet<wms_config_serial_sn> wms_config_serial_sn { get; set; } public virtual DbSet<wms_config_sncode_rule> wms_config_sncode_rule { get; set; } public virtual DbSet<wms_log_action> wms_log_action { get; set; } + public virtual DbSet<wms_rbline_runmode> wms_rbline_runmode { get; set; } public virtual DbSet<wms_rbline_task> wms_rbline_task { get; set; } public virtual DbSet<wms_record_print> wms_record_print { get; set; } public virtual DbSet<wms_record_trans> wms_record_trans { get; set; } diff --git a/CC/iWareSql/WmsDBModel/wms_rbline_runmode.cs b/CC/iWareSql/WmsDBModel/wms_rbline_runmode.cs new file mode 100644 index 0000000..f719ea4 --- /dev/null +++ b/CC/iWareSql/WmsDBModel/wms_rbline_runmode.cs @@ -0,0 +1,47 @@ +namespace iWareSql.WmsDBModel +{ + using System; + using System.Collections.Generic; + using System.ComponentModel.DataAnnotations; + using System.ComponentModel.DataAnnotations.Schema; + using System.Data.Entity.Spatial; + + public partial class wms_rbline_runmode + { + [DatabaseGenerated(DatabaseGeneratedOption.None)] + public long Id { get; set; } + + [StringLength(50)] + public string UPI { get; set; } + + [StringLength(50)] + public string PlanNo { get; set; } + + [StringLength(50)] + public string OrderId { get; set; } + + [StringLength(50)] + public string PackageCode { get; set; } + + public int? LineRunMode { get; set; } + + [StringLength(50)] + public string LineRunModeName { get; set; } + + public DateTime? CreateTime { get; set; } + + public DateTime? UpdateTime { get; set; } + + public long? CreateUserId { get; set; } + + [StringLength(64)] + public string CreateUserName { get; set; } + + public long? UpdateUserId { get; set; } + + [StringLength(64)] + public string UpdateUserName { get; set; } + + public bool IsDelete { get; set; } + } +} diff --git a/CC/iWareSql/WmsDBModel/wms_sys_basic_data.cs b/CC/iWareSql/WmsDBModel/wms_sys_basic_data.cs index 0d4e564..22ed97e 100644 --- a/CC/iWareSql/WmsDBModel/wms_sys_basic_data.cs +++ b/CC/iWareSql/WmsDBModel/wms_sys_basic_data.cs @@ -28,6 +28,9 @@ public DateTime? LastUnLineTime { get; set; } + [StringLength(50)] + public string OperationRemark { get; set; } + public DateTime? CreateTime { get; set; } public DateTime? UpdateTime { get; set; } @@ -43,9 +46,5 @@ public string UpdateUserName { get; set; } public bool IsDelete { get; set; } - - - [StringLength(50)] - public string OperationRemark { get; set; } } } diff --git a/CC/iWareSql/iWareSql.csproj b/CC/iWareSql/iWareSql.csproj index 7707b83..1a74c5c 100644 --- a/CC/iWareSql/iWareSql.csproj +++ b/CC/iWareSql/iWareSql.csproj @@ -217,6 +217,7 @@ <Compile Include="WmsDBModel\wms_config_serial_sn.cs" /> <Compile Include="WmsDBModel\wms_config_sncode_rule.cs" /> <Compile Include="WmsDBModel\wms_log_action.cs" /> + <Compile Include="WmsDBModel\wms_rbline_runmode.cs" /> <Compile Include="WmsDBModel\wms_rbline_task.cs" /> <Compile Include="WmsDBModel\wms_record_print.cs" /> <Compile Include="WmsDBModel\wms_record_trans.cs" /> diff --git a/DBScript/02_DML/01_InitData.sql b/DBScript/02_DML/01_InitData.sql index 5b4c7d0..6e17630 100644 --- a/DBScript/02_DML/01_InitData.sql +++ b/DBScript/02_DML/01_InitData.sql @@ -25,5 +25,22 @@ 0 ); - + DELETE wms_rbline_runmode ; +INSERT INTO wms_rbline_runmode( + [id], + [CreateUserName], + [CreateTime], + [UpdateUserName], + [UpdateTime], + [IsDelete] +) +VALUES + ( + '613664349835335', + 'sys', + getdate(), + 'sys', + getdate(), + 0 + ); \ No newline at end of file diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Configuration/Swagger.json b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Configuration/Swagger.json index f7cc3ec..d94d598 100644 --- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Configuration/Swagger.json +++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Configuration/Swagger.json @@ -2,11 +2,11 @@ "$schema": "https://gitee.com/dotnetchina/Furion/raw/v4/schemas/v4/furion-schema.json", "SpecificationDocumentSettings": { - "DocumentTitle": "iWareWMS鍘熸枡搴�(鏍囧噯鐗�)", + "DocumentTitle": "椴佷附鏈ㄤ笟鍖呰绾�", "GroupOpenApiInfos": [ { "Group": "Default", - "Title": "iWareWMS鍘熸枡搴�(鏍囧噯鐗�)", + "Title": "椴佷附鏈ㄤ笟鍖呰绾�", "Description": "甯姪涓浗鍒堕�犱笟瀹炵幇鑷姩鍖栥�佹櫤鑳藉寲銆�", "Version": "1.0.0", "Order": 1000 diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Entity/WmsTask/WmsRbLineRunMode.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Entity/WmsTask/WmsRbLineRunMode.cs new file mode 100644 index 0000000..695ad1b --- /dev/null +++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Entity/WmsTask/WmsRbLineRunMode.cs @@ -0,0 +1,59 @@ +锘縰sing Admin.NET.Core; + +/* + * @author : 鍒樻枃濂� + * @date : 2024/5/29涓婂崍10:26:39 + * @desc : 璋冨害浠诲姟 + */ +namespace Admin.NET.Application.Entity +{ + /// <summary> + /// 鏈哄櫒浜虹紦瀛樺矝杩愯妯″紡 + /// </summary> + [SugarTable("wms_rbline_runmode", "鏈哄櫒浜虹紦瀛樺矝杩愯妯″紡")] + public class WmsRbLineRunMode : EntityBase + { + /// <summary> + /// 鏈�鍚庝竴娆″湪 BZ_01鐨勭郴缁熷鐞嗙殑鏉夸欢 + [SugarColumn(ColumnName = "UPI", ColumnDescription = "閮ㄤ欢鏉$爜", Length = 50)] + public string? UPI { get; set; } + + /// <summary> + /// 鏈�鍚庝竴娆″湪 BZ_01鐨勭郴缁熷鐞嗙殑鏉夸欢 + /// </summary> + [SugarColumn(ColumnName = "PlanNo", ColumnDescription = "鎵规鍙�", Length = 50)] + public string? PlanNo { get; set; } + + /// <summary> + /// 鏈�鍚庝竴娆″湪 BZ_01鐨勭郴缁熷鐞嗙殑鏉夸欢 + /// </summary> + [SugarColumn(ColumnName = "OrderId", ColumnDescription = "璁㈠崟鍙�", Length = 50)] + public string? OrderId { get; set; } + + + /// <summary> + /// 鏈�鍚庝竴娆″湪 BZ_01鐨勭郴缁熷鐞嗙殑鏉夸欢 + /// </summary> + [SugarColumn(ColumnName = "PackageCode", ColumnDescription = "鍖呰鍙�", Length = 50)] + public string? PackageCode { get; set; } + + + /// <summary> + /// 杩愯妯″紡 + /// </summary> + + [SugarColumn(ColumnName = "LineRunMode", ColumnDescription = "杩愯妯″紡")] + public RbRunModeEnum? LineRunMode { get; set; } + + + /// <summary> + /// 杩愯妯″紡鍚嶇О + /// </summary> + [SugarColumn(ColumnName = "LineRunModeName", ColumnDescription = "杩愯妯″紡鍚嶇О", Length = 50)] + + public string? LineRunModeName { get; set; } + + + + } +} \ No newline at end of file diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/RbRunModeEnum.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/RbRunModeEnum.cs new file mode 100644 index 0000000..c31b9fe --- /dev/null +++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/RbRunModeEnum.cs @@ -0,0 +1,29 @@ +锘� + +namespace Admin.NET.Application; + +/// <summary> +/// 鏈哄櫒浜虹紦瀛樺矝杩愯妯″紡 +/// </summary> +[Description("鏈哄櫒浜虹紦瀛樺矝杩愯妯″紡")] +public enum RbRunModeEnum +{ + /// <summary> + /// 鍏ュ簱妯″紡 + /// </summary> + [Description("鍏ュ簱妯″紡")] + 鍏ュ簱妯″紡 = 1, + + /// <summary> + /// 鍑哄簱妯″紡 + /// </summary> + [Description("鍑哄簱妯″紡")] + 鍑哄簱妯″紡 = 2, + + /// <summary> + /// 寮哄埗鍑哄簱妯″紡 + /// </summary> + [Description("寮哄埗鍑哄簱妯″紡")] + 寮哄埗鍑哄簱妯″紡 = 3, + +} diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/AreaCodeEnum.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/AreaCodeEnum.cs index 73264ad..291e835 100644 --- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/AreaCodeEnum.cs +++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/AreaCodeEnum.cs @@ -9,36 +9,42 @@ public enum AreaCodeEnum { /// <summary> + /// 寰呯紦瀛樺垎鎷e尯 + /// </summary> + [Description("寰呯紦瀛樺垎鎷e尯")] + 寰呯紦瀛樺垎鎷e尯 = 1, + + /// <summary> /// 缂撳瓨鍒嗘嫞鍖� /// </summary> [Description("缂撳瓨鍒嗘嫞鍖�")] - 缂撳瓨鍒嗘嫞鍖� = 1, + 缂撳瓨鍒嗘嫞鍖� = 2, /// <summary> /// 鏈哄櫒浜哄矝缂撳瓨鍖哄煙 /// </summary> [Description("鏈哄櫒浜哄矝缂撳瓨鍖哄煙")] - 鏈哄櫒浜哄矝缂撳瓨鍖哄煙 = 2, + 鏈哄櫒浜哄矝缂撳瓨鍖哄煙 = 3, /// <summary> /// 鐮佸灈鍖哄煙 /// </summary> [Description("鐮佸灈鍖哄煙")] - 鐮佸灈鍖哄煙 = 3, + 鐮佸灈鍖哄煙 = 4, /// <summary> /// 鍚堝寘瑁佸垏鍖� /// </summary> [Description("鍚堝寘瑁佸垏鍖�")] - 鍚堝寘瑁佸垏鍖� = 4, + 鍚堝寘瑁佸垏鍖� = 5, /// <summary> /// 鍖呰绾垮尯鍩� /// </summary> [Description("鍖呰绾垮尯鍩�")] - 鍖呰绾垮尯鍩� = 5 + 鍖呰绾垮尯鍩� = 6 } diff --git a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/UpiStatusEnum.cs b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/UpiStatusEnum.cs index 2c2701d..e3b694c 100644 --- a/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/UpiStatusEnum.cs +++ b/LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/UpiStatusEnum.cs @@ -15,21 +15,27 @@ 鍒濆 = 0, /// <summary> + /// 涓嶉綈鍖� + /// </summary> + [Description("涓嶉綈鍖�")] + 涓嶉綈鍖� = 1, + + /// <summary> /// 宸查綈鍖� /// </summary> [Description("宸查綈鍖�")] - 宸查綈鍖� = 1, + 宸查綈鍖� = 2, /// <summary> /// 宸茬爜鍨� /// </summary> [Description("宸茬爜鍨�")] - 宸茬爜鍨� = 2, + 宸茬爜鍨� = 3, /// <summary> /// 宸插悎鍖� /// </summary> [Description("宸插悎鍖�")] - 宸插悎鍖� = 3, + 宸插悎鍖� = 4, } diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/DB/RgvComm.cs b/SDA/iWareSda/Devices/4-Station/StationModel/DB/RgvComm.cs index bbd757c..a03aaca 100644 --- a/SDA/iWareSda/Devices/4-Station/StationModel/DB/RgvComm.cs +++ b/SDA/iWareSda/Devices/4-Station/StationModel/DB/RgvComm.cs @@ -37,11 +37,16 @@ public int W_Destination_In { get; set; } /// <summary> - /// 浠诲姟鍙� + /// 鍏ュ簱浠诲姟鍙� /// </summary> - [Description("浠诲姟鍙�")] - public string W_TaskID { get; set; } + [Description("鍏ュ簱浠诲姟鍙�")] + public int W_Inbound_TaskID { get; set; } + /// <summary> + /// 鍑哄簱浠诲姟鍙� + /// </summary> + [Description("鍑哄簱浠诲姟鍙�")] + public int W_Outbound_TaskID { get; set; } /// <summary> /// 鏉ユ枡闀垮害 @@ -124,7 +129,14 @@ /// </summary> [Description("鍏ュ簱瀹屾垚宸茬‘璁�")] public bool W_InboundFinishConfirm { get; set; } - + + + /// <summary> + /// 鍑哄簱瀹屾垚宸茬‘璁� + /// </summary> + [Description("鍑哄簱瀹屾垚宸茬‘璁�")] + public bool W_OutboundFinishConfirm { get; set; } + } /// <summary> @@ -162,11 +174,9 @@ [Description("鍏ュ簱浠诲姟鍙�")] public string W_Inbound_TaskID { get; set; } - /// <summary> - /// 鍑哄簱浠诲姟鍙� - /// </summary> - [Description("鍑哄簱浠诲姟鍙�")] - public string W_Outbound_TaskID { get; set; } + + + /// <summary> /// 鏉ユ枡闀垮害 @@ -186,18 +196,6 @@ /// </summary> [Description("鏉ユ枡楂樺害")] public string W_Height { get; set; } - - /// <summary> - /// 璇锋眰鍑哄簱 - /// </summary> - [Description("璇锋眰鍑哄簱")] - public string W_ReqOut { get; set; } - - /// <summary> - /// 鍒嗛厤鍑哄簱搴撲綅鍙� - /// </summary> - [Description("鍒嗛厤鍑哄簱搴撲綅鍙�")] - public string W_Destination_Out { get; set; } /// <summary> /// 妯″紡锛�1锛氬叆搴擄紝 2锛氬嚭搴� 3锛氬己鍒跺嚭搴擄級 @@ -258,11 +256,35 @@ /// </summary> [Description("鍏ュ簱瀹屾垚宸茬‘璁�")] public string W_InboundFinishConfirm { get; set; } - ///// <summary> - ///// 浠诲姟鍙� - ///// </summary> - //[Description("浠诲姟鍙�")] - //public string W_TaskID { get; set; } + + + #region 鍑哄簱鐩稿叧 + + /// <summary> + /// 鍑哄簱浠诲姟鍙� + /// </summary> + [Description("鍑哄簱浠诲姟鍙�")] + public string W_Outbound_TaskID { get; set; } + + /// <summary> + /// 璇锋眰鍑哄簱 + /// </summary> + [Description("璇锋眰鍑哄簱")] + public string W_ReqOut { get; set; } + + /// <summary> + /// 鍒嗛厤鍑哄簱搴撲綅鍙� + /// </summary> + [Description("鍒嗛厤鍑哄簱搴撲綅鍙�")] + public string W_Destination_Out { get; set; } + + /// <summary> + /// 鍑哄簱瀹屾垚宸茬‘璁� + /// </summary> + [Description("鍑哄簱瀹屾垚宸茬‘璁�")] + public string W_OutboundFinishConfirm { get; set; } + + #endregion } @@ -412,5 +434,19 @@ [Description("鏈哄櫒浜哄嚭搴撳簱浣嶅彿")] public string R_OutboundNumber { get; set; } + + + /// <summary> + /// 鍏ュ簱浠诲姟鍙� + /// </summary> + [Description("鍏ュ簱浠诲姟鍙�")] + public string R_Inbound_TaskID { get; set; } + + /// <summary> + /// 鍑哄簱浠诲姟鍙� + /// </summary> + [Description("鍑哄簱浠诲姟鍙�")] + public string R_Outbound_TaskID { get; set; } + } } diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs b/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs index 5841fab..d61a45d 100644 --- a/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs +++ b/SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs @@ -242,7 +242,7 @@ MessageModel b2 = this.plcService.WriteValuePoint(stationObj.W_InboundFinishConfirm, true, view_stationObj.W_DataFinish); if (!b2.result) { - msg = string.Format("鍚慡tation鍦板潃{0} 鍐� " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + msg = string.Format("鍚慡tation鍦板潃{0} 鍏ュ簱瀹屾垚纭 鍐� " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, stationObj.W_InboundFinishConfirm); return false; } @@ -259,7 +259,35 @@ } } - public bool WriteInStoreTaskInfo(string stationCode, string toPlaceNo, short length, short width, short height, out string msg) + public bool OutboundFinishConfirm(string stationCode, out string msg) + { + try + { + msg = ""; + var stationObj = this.DBBlockForWrite.W_StationForWriteCommList.Where(x => x.StationCode == stationCode).FirstOrDefault(); + + var view_stationObj = this.View.W_StationForWriteCommList.Where(x => x.StationCode == stationCode).FirstOrDefault(); + MessageModel b2 = this.plcService.WriteValuePoint(stationObj.W_OutboundFinishConfirm, true, view_stationObj.W_OutboundFinishConfirm); + if (!b2.result) + { + msg = string.Format("鍚慡tation 鍑哄簱浠诲姟瀹屾垚纭 鍦板潃{0} 鍐� " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_OutboundFinishConfirm); + return false; + } + + return true; + } + catch (Exception ex) + { + msg = ex.Message; + var logcontext = string.Format("鍚慡tatio 鍑哄簱浠诲姟瀹屾垚纭 鍑虹幇寮傚父:" + JsonConvert.SerializeObject(ex), + ""); + Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, logcontext, ex); + return false; + } + } + + public bool WriteInStoreTaskInfo(string stationCode, string toPlaceNo, short length, short width, short height, out string msg, int inbound_TaskID) { try { @@ -272,6 +300,15 @@ { msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 璇荤爜瑙f瀽瀹屾垚 " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, stationObj.W_DataFinish); + return false; + } + + + b2 = this.plcService.WriteValuePoint(stationObj.W_Inbound_TaskID, inbound_TaskID, view_stationObj.W_Inbound_TaskID); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鍏ュ簱浠诲姟鍙� " + inbound_TaskID + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Inbound_TaskID); return false; } @@ -318,6 +355,53 @@ } + public bool WriteOutStoreTaskInfo(string stationCode, string sourcePlaceNo, out string msg, int outbound_TaskID) + { + try + { + msg = ""; + var stationObj = this.DBBlockForWrite.W_StationForWriteCommList.Where(x => x.StationCode == stationCode).FirstOrDefault(); + + var view_stationObj = this.View.W_StationForWriteCommList.Where(x => x.StationCode == stationCode).FirstOrDefault(); + MessageModel b2 = this.plcService.WriteValuePoint(stationObj.W_Outbound_TaskID, true, view_stationObj.W_Outbound_TaskID); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 鍑哄簱浠诲姟鍙� " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Outbound_TaskID); + return false; + } + + + b2 = this.plcService.WriteValuePoint(stationObj.W_ReqOut, true, view_stationObj.W_ReqOut); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 璇锋眰鍑哄簱 " + true + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_ReqOut); + return false; + } + + b2 = this.plcService.WriteValuePoint(stationObj.W_Destination_Out, Convert.ToInt32(sourcePlaceNo), view_stationObj.W_Destination_Out); + if (!b2.result) + { + msg = string.Format("鍚慡tation鍦板潃{0} 鍐� 搴撲綅鍙� " + sourcePlaceNo + "澶辫触,杩斿洖缁撴灉:" + b2.resMsg, + stationObj.W_Destination_Out); + return false; + } + + + return true; + } + catch (Exception ex) + { + msg = ex.Message; + var logcontext = string.Format("WriteOutStoreTaskInfo 鍑虹幇寮傚父:" + JsonConvert.SerializeObject(ex), + ""); + Log4NetHelper.WriteErrorLog(Station_CacheEntity.curLogType, logcontext, ex); + return false; + } + } + + /// <summary> /// Station鐨勪换鍔″畬鎴怉CK璧嬪�� /// </summary> diff --git a/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs b/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs index 2298f85..2a7b2ef 100644 --- a/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs +++ b/SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs @@ -165,6 +165,9 @@ W_InboundFinishConfirm = W_DBHeaderWithSeparate_BZ39 + "0.1", W_Destination_In = W_DBHeaderWithSeparate_BZ39 + "2.0", + W_Inbound_TaskID = W_DBHeaderWithSeparate_BZ39 + "",//TODO锛�?杩樻病鏈夐厤缃憿 + W_Outbound_TaskID = W_DBHeaderWithSeparate_BZ39 + "",//TODO锛�?杩樻病鏈夐厤缃憿 + W_Length = W_DBHeaderWithSeparate_BZ39 + "6.0", W_Width = W_DBHeaderWithSeparate_BZ39 + "8.0", W_Height = W_DBHeaderWithSeparate_BZ39 + "10.0", @@ -173,6 +176,7 @@ W_ReqOut = W_DBHeaderWithSeparate_BZ39 + "12.0", W_Destination_Out = W_DBHeaderWithSeparate_BZ39 + "14.0", W_Mode = W_DBHeaderWithSeparate_BZ39 + "18.0", + W_OutboundFinishConfirm = W_DBHeaderWithSeparate_BZ39 + "" //TODO锛�?杩樻病鏈夐厤缃憿 }); @@ -214,7 +218,11 @@ R_OutboundFinish = W_DBHeaderWithSeparate_BZ39 + "50.2", R_ReadCodeResult = W_DBHeaderWithSeparate_BZ39 + "52.0", R_InboundNumber = W_DBHeaderWithSeparate_BZ39 + "104.0", - R_OutboundNumber = W_DBHeaderWithSeparate_BZ39 + "108.0" + R_OutboundNumber = W_DBHeaderWithSeparate_BZ39 + "108.0", + + R_Inbound_TaskID = W_DBHeaderWithSeparate_BZ39 + "",//TODO锛�?杩樻病鏈夐厤缃憿 + R_Outbound_TaskID = W_DBHeaderWithSeparate_BZ39 + "",//TODO锛�?杩樻病鏈夐厤缃憿 + }); diff --git a/SDA/iWareSda/Devices/4-Station/StationService/IStationService.cs b/SDA/iWareSda/Devices/4-Station/StationService/IStationService.cs index 7a1538b..b6b350d 100644 --- a/SDA/iWareSda/Devices/4-Station/StationService/IStationService.cs +++ b/SDA/iWareSda/Devices/4-Station/StationService/IStationService.cs @@ -102,13 +102,33 @@ SdaResEntity InboundFinishConfirm(int deviceId, string stationCode); /// <summary> + /// 鍑哄簱瀹屾垚宸茬‘璁� + /// </summary> + /// <param name="deviceId"></param> + /// <param name="value"></param> + /// <returns></returns> + [OperationContract] + SdaResEntity OutboundFinishConfirm(int deviceId, string stationCode); + + /// <summary> /// 鍐欏叆鍏ュ簱浠诲姟淇℃伅 /// </summary> /// <param name="deviceId"></param> /// <param name="value"></param> /// <returns></returns> [OperationContract] - SdaResEntity WriteInStoreTaskInfo(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height); + SdaResEntity WriteInStoreTaskInfo(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height, int inbound_TaskID); + + /// <summary> + /// 鍐欏叆鍑哄簱浠诲姟淇℃伅 + /// </summary> + /// <param name="deviceId"></param> + /// <param name="stationCode"></param> + /// <param name="sourcePlaceNo"></param> + /// <param name="outbound_TaskID"></param> + /// <returns></returns> + [OperationContract] + SdaResEntity WriteOutStoreTaskInfo(int deviceId, string stationCode, string sourcePlaceNo, int outbound_TaskID); /// <summary> /// Station鐨勪换鍔″畬鎴怉CK璧嬪�� diff --git a/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs b/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs index b7eb1da..6abd3ce 100644 --- a/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs +++ b/SDA/iWareSda/Devices/4-Station/StationService/StationService.cs @@ -471,12 +471,12 @@ } /// <summary> - /// 鍐欏叆鍏ュ簱浠诲姟淇℃伅 + /// 鍑哄簱瀹屾垚宸茬‘璁� /// </summary> /// <param name="deviceId"></param> /// <param name="value"></param> /// <returns></returns> - public SdaResEntity WriteInStoreTaskInfo(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height) + public SdaResEntity OutboundFinishConfirm(int deviceId, string stationCode) { SdaResEntity _SdaResEntity = new SdaResEntity(); try @@ -489,7 +489,74 @@ var Station = StationResult.resData as StationEntity; string msg = ""; - var result = Station.WriteInStoreTaskInfo(stationCode, toPlaceNo, length, width, height, out msg); + var result = Station.OutboundFinishConfirm(stationCode, out msg); + _SdaResEntity.result = result; + _SdaResEntity.resMsg = msg; + return _SdaResEntity; + } + catch (Exception ex) + { + _SdaResEntity.result = false; + _SdaResEntity.resMsg = ex.Message; + return _SdaResEntity; + } + } + + /// <summary> + /// 鍐欏叆鍏ュ簱浠诲姟淇℃伅 + /// </summary> + /// <param name="deviceId"></param> + /// <param name="value"></param> + /// <returns></returns> + public SdaResEntity WriteInStoreTaskInfo(int deviceId, string stationCode, string toPlaceNo, short length, short width, short height, int inbound_TaskID) + { + SdaResEntity _SdaResEntity = new SdaResEntity(); + try + { + var StationResult = Station_CacheEntity.GetDeviceObj(deviceId); + if (!StationResult.result) + { + return StationResult; + } + var Station = StationResult.resData as StationEntity; + + string msg = ""; + var result = Station.WriteInStoreTaskInfo(stationCode, toPlaceNo, length, width, height, out msg, inbound_TaskID); + _SdaResEntity.result = result; + _SdaResEntity.resMsg = msg; + return _SdaResEntity; + } + catch (Exception ex) + { + _SdaResEntity.result = false; + _SdaResEntity.resMsg = ex.Message; + return _SdaResEntity; + } + } + + + /// <summary> + /// 鍐欏叆鍑哄簱浠诲姟淇℃伅 + /// </summary> + /// <param name="deviceId"></param> + /// <param name="stationCode"></param> + /// <param name="sourcePlaceNo"></param> + /// <param name="outbound_TaskID"></param> + /// <returns></returns> + public SdaResEntity WriteOutStoreTaskInfo(int deviceId, string stationCode, string sourcePlaceNo, int outbound_TaskID) + { + SdaResEntity _SdaResEntity = new SdaResEntity(); + try + { + var StationResult = Station_CacheEntity.GetDeviceObj(deviceId); + if (!StationResult.result) + { + return StationResult; + } + var Station = StationResult.resData as StationEntity; + + string msg = ""; + var result = Station.WriteOutStoreTaskInfo(stationCode, sourcePlaceNo, out msg, outbound_TaskID); _SdaResEntity.result = result; _SdaResEntity.resMsg = msg; return _SdaResEntity; -- Gitblit v1.9.3