schangxiang@126.com
2024-11-22 48f4481b61e6da5878415c3bc7ad5a1881244a93
2222
已添加6个文件
已修改23个文件
980 ■■■■ 文件已修改
CC/iWareCC_ASRS/Connected Services/StationService/Reference.cs 106 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/Connected Services/StationService/StationService.wsdl 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/Connected Services/StationService/item2.xsd 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/Connected Services/StationService/item3.xsd 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/00_269工位/DataProcess_269.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/01_BZ01工位(清灰,洗板后工位)/DataProcess_BZ01.cs 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/DataProcess_RobotBuffer_ModeChange.cs 139 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Inbound/1、DataProcess_BZ39.cs 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/ThreadService/02_BZ39工位(补板后工位)/Outbound/2、DataProcess_RobotBuffer_IssueOutboundTask.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareCC_ASRS/iWareCC.csproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareModel/EnumType/WMS/AreaCodeEnum.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareModel/EnumType/WMS/RbRunModeEnum.cs 33 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareModel/EnumType/WMS/UpiStatusEnum.cs 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareModel/iWareModel.csproj 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareSql/WmsDBModel/WmsDBModel.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareSql/WmsDBModel/wms_rbline_runmode.cs 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareSql/WmsDBModel/wms_sys_basic_data.cs 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
CC/iWareSql/iWareSql.csproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DBScript/02_DML/01_InitData.sql 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Configuration/Swagger.json 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Entity/WmsTask/WmsRbLineRunMode.cs 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/ReportCenter/RbRunModeEnum.cs 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/AreaCodeEnum.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/UpiStatusEnum.cs 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SDA/iWareSda/Devices/4-Station/StationModel/DB/RgvComm.cs 86 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SDA/iWareSda/Devices/4-Station/StationModel/StationEntity.cs 88 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SDA/iWareSda/Devices/4-Station/StationModel/Station_CacheEntity.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SDA/iWareSda/Devices/4-Station/StationService/IStationService.cs 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SDA/iWareSda/Devices/4-Station/StationService/StationService.cs 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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) {
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>
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>
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" />
CC/iWareCC_ASRS/ThreadService/00_269¹¤Î»/DataProcess_269.cs
@@ -60,7 +60,7 @@
                                    continue;
                                }
                                upiObj.AreaCode = (int)AreaCodeEnum.缓存分拣区;
                                upiObj.AreaCode = (int)AreaCodeEnum.待缓存分拣区;
                                wmsDB.SaveChanges();
                            }
CC/iWareCC_ASRS/ThreadService/01_BZ01¹¤Î»£¨Çå»Ò£¬Ï´°åºó¹¤Î»£©/DataProcess_BZ01.cs
@@ -63,15 +63,23 @@
                                }
                                //查询是否齐包
                                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.待缓存分拣区
                                ||
                                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())
@@ -87,6 +95,30 @@
                                    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();
                            }
                        }
                    }
                }
CC/iWareCC_ASRS/ThreadService/02_BZ39¹¤Î»£¨²¹°åºó¹¤Î»£©/DataProcess_RobotBuffer_ModeChange.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,139 @@
using 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方法执行后不显示错误信息的提示!!!【EditBy 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);
                }
            }
        }
    }
}
CC/iWareCC_ASRS/ThreadService/02_BZ39¹¤Î»£¨²¹°åºó¹¤Î»£©/Inbound/1¡¢DataProcess_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();
CC/iWareCC_ASRS/ThreadService/02_BZ39¹¤Î»£¨²¹°åºó¹¤Î»£©/Outbound/2¡¢DataProcess_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}");
                                    }
                                }
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、DataProcess_RobotBuffer_IssueOutboundTask.cs" />
    <Compile Include="ThreadService\02_BZ39工位(补板后工位)\Outbound\1、DataProcess_RobotBuffer_AutoQiTaoOutbound.cs" />
    <Compile Include="ThreadService\02_BZ39工位(补板后工位)\Outbound\3、DataProcess_RobotBuffer_FinishTaskForOutbound.cs" />
CC/iWareModel/EnumType/WMS/AreaCodeEnum.cs
@@ -12,37 +12,43 @@
    public enum AreaCodeEnum
    {
        /// <summary>
        /// å¾…缓存分拣区
        /// </summary>
        [Description("待缓存分拣区")]
        å¾…缓存分拣区 = 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
    }
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,
    }
}
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
}
}
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" />
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; }
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; }
    }
}
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; }
    }
}
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" />
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
    );
    
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
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Entity/WmsTask/WmsRbLineRunMode.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,59 @@
using 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; }
    }
}
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,
}
LA24030_LuLiPackageLine_Wms/Admin.NET.Application/Enum/WmsOrder/AreaCodeEnum.cs
@@ -9,36 +9,42 @@
public enum AreaCodeEnum
{
    /// <summary>
    /// å¾…缓存分拣区
    /// </summary>
    [Description("待缓存分拣区")]
    å¾…缓存分拣区 = 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
}
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,
}
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>
        /// æ¥æ–™é•¿åº¦
@@ -125,6 +130,13 @@
        [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; }
    }
}
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("向Station地址{0} å†™  " + true + "失败,返回结果:" + b2.resMsg,
                    msg = string.Format("向Station地址{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("向Station å‡ºåº“任务完成确认 åœ°å€{0} å†™  " + true + "失败,返回结果:" + b2.resMsg,
                        stationObj.W_OutboundFinishConfirm);
                    return false;
                }
                return true;
            }
            catch (Exception ex)
            {
                msg = ex.Message;
                var logcontext = string.Format("向Statio å‡ºåº“任务完成确认 å‡ºçް异叏:" + 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("向Station地址{0} å†™ è¯»ç è§£æžå®Œæˆ " + 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("向Station地址{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("向Station地址{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("向Station地址{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("向Station地址{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的任务完成ACK赋值
        /// </summary>
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:?还没有配置呢
            });
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的任务完成ACK赋值
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;